You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
lynn (they) 13ded1e7c4
Merge pull request #1229 from urfave/lynncyrin-patch-1
3 years ago
.github Update stale.yml 3 years ago
altsrc Update altsrc/map_input_source.go 4 years ago
autocomplete Added manual and script for PowerShell autocomplete 4 years ago
docs Merge pull request #1214 from anicoll/flag_lineage_fix 3 years ago
internal Reduce desiredMinBinarySize 4 years ago
testdata fish.go: support PathFlag.TakesFile [#1156] 4 years ago
.flake8 Allow slightly longer lines in Python scripts 7 years ago
.gitignore add diffing 4 years ago
CODE_OF_CONDUCT.md Merge master @1.22.1 with v2 5 years ago
LICENSE Update license text 8 years ago
README.md Link directly to pkg.go.dev 3 years ago
app.go Fix: typo 3 years ago
app_test.go remove repeated comment 3 years ago
args.go add is set method to flag interface - refer #294 5 years ago
category.go amend comments 4 years ago
cli.go Merge master @1.22.1 with v2 5 years ago
command.go fix: Propagate App.Reader to subcommands 3 years ago
command_test.go added test for successfully used -v flag on command with subcommands 4 years ago
context.go Fix Context.Value. 3 years ago
context_test.go Add test for the else path. 3 years ago
docs.go make the man page section selectable 3 years ago
docs_test.go make the man page section selectable 3 years ago
errors.go Update docs and tests around cli.Exit 4 years ago
errors_test.go Update docs and tests around cli.Exit 4 years ago
fish.go Revert "Refactor fishAddFileFlag for better flexibility [#1156]" 4 years ago
fish_test.go fish.go: support PathFlag.TakesFile [#1156] 4 years ago
flag.go Issue #1066: Display `(accepts multiple inputs)` for SliceFlags in the 3 years ago
flag_bool.go refactor flag names - make it more explicitly 4 years ago
flag_duration.go refactor flag names - make it more explicitly 4 years ago
flag_float64.go refactor flag names - make it more explicitly 4 years ago
flag_float64_slice.go Fix possible panics in slice type assertion 4 years ago
flag_generic.go refactor flag names - make it more explicitly 4 years ago
flag_int.go refactor flag names - make it more explicitly 4 years ago
flag_int64.go refactor flag names - make it more explicitly 4 years ago
flag_int64_slice.go fix for parent context not setting child flags 3 years ago
flag_int_slice.go fix for parent context not setting child flags 3 years ago
flag_path.go refactor flag names - make it more explicitly 4 years ago
flag_string.go refactor flag names - make it more explicitly 4 years ago
flag_string_slice.go bugfix: don't overwrite existing stringslice refence 4 years ago
flag_test.go Merge pull request #1208 from Madhur1997/master 3 years ago
flag_timestamp.go Verify whether there is a Value before overriding 4 years ago
flag_uint.go refactor flag names - make it more explicitly 4 years ago
flag_uint64.go refactor flag names - make it more explicitly 4 years ago
funcs.go Fix test cases for context, docs, errors, fish, flags and funcs 5 years ago
go.mod Bump gopkg.in/yaml.v2 to v2.2.3 4 years ago
go.sum Bump gopkg.in/yaml.v2 to v2.2.3 4 years ago
help.go Merge pull request #1175 from imle/imle/add-better-multi-line-description-formatting 4 years ago
help_test.go Added template functions for multi-line Description formatting. 4 years ago
helpers_test.go remove unused code 4 years ago
parse.go revert testing change 5 years ago
sort.go Merge master @1.22.1 with v2 5 years ago
sort_test.go Merge master @1.22.1 with v2 5 years ago
template.go make the man page section selectable 3 years ago

README.md

cli

GoDoc codebeat Go Report Card codecov

cli is a simple, fast, and fun package for building command line apps in Go. The goal is to enable developers to write fast and distributable command line applications in an expressive way.

Usage Documentation

Usage documentation exists for each major version. Don't know what version you're on? You're probably using the version from the master branch, which is currently v2.

Guides for migrating to newer versions:

Installation

Using this package requires a working Go environment. See the install instructions for Go.

Go Modules are required when using this package. See the go blog guide on using Go Modules.

Using v2 releases

$ GO111MODULE=on go get github.com/urfave/cli/v2
...
import (
  "github.com/urfave/cli/v2" // imports as package "cli"
)
...

Using v1 releases

$ GO111MODULE=on go get github.com/urfave/cli
...
import (
  "github.com/urfave/cli"
)
...

GOPATH

Make sure your PATH includes the $GOPATH/bin directory so your commands can be easily used:

export PATH=$PATH:$GOPATH/bin

Supported platforms

cli is tested against multiple versions of Go on Linux, and against the latest released version of Go on OS X and Windows. This project uses Github Actions for builds. To see our currently supported go versions and platforms, look at the ./.github/workflows/cli.yml.