From 81f5e7b3b3f6e2687ebca03e212e0e7bc2da171f Mon Sep 17 00:00:00 2001 From: Jelle van der Waa Date: Sun, 21 Jan 2024 13:25:57 +0100 Subject: feat(version): add command to automatically detect and setup nvchecker Introduce a new version subcommand `setup` which does a best effort to generate the most minimal required .nvchecker.toml file for specific sources. It supports a wide range of common sources like: - Git, GitHub, GitLab, Hackage, NPM, PyPI, RubyGems, CPAN, crates.io The creation logic is based on matching a domain for a source which is something predictable and then simply passes an array of the url parts for every source creator to extract the useful bits out of the url array. Component: pkgctl version setup Co-authored-by: Levente Polyak Signed-off-by: Jelle van der Waa --- contrib/completion/bash/devtools.in | 12 ++++++++++++ contrib/completion/zsh/_devtools.in | 10 ++++++++++ 2 files changed, 22 insertions(+) (limited to 'contrib/completion') diff --git a/contrib/completion/bash/devtools.in b/contrib/completion/bash/devtools.in index 11fa234..136c80f 100644 --- a/contrib/completion/bash/devtools.in +++ b/contrib/completion/bash/devtools.in @@ -350,6 +350,7 @@ _pkgctl_repo_switch_opts() { _pkgctl_version_cmds=( check + setup upgrade ) @@ -360,6 +361,17 @@ _pkgctl_version_check_args=( _pkgctl_version_check_opts() { _filedir -d; } +_pkgctl_version_setup_args=( + --prefer-platform-api + --url + --no-check + -f --force + -h --help +) + +_pkgctl_version_setup_opts() { _filedir -d; } +_pkgctl_version_setup_args__url_opts() { :; } + _pkgctl_version_upgrade_args=( -v --verbose -h --help diff --git a/contrib/completion/zsh/_devtools.in b/contrib/completion/zsh/_devtools.in index ee6da85..f430dae 100644 --- a/contrib/completion/zsh/_devtools.in +++ b/contrib/completion/zsh/_devtools.in @@ -291,6 +291,7 @@ _pkgctl_args=( _pkgctl_version_cmds=( "pkgctl version command" "check[Compares local package versions against upstream versions]" + "setup[Automatically detect and setup a basic nvchecker config]" "upgrade[Adjust the PKGBUILD to match the latest upstream version]" ) @@ -300,6 +301,15 @@ _pkgctl_version_check_args=( '*:git_dir:_files -/' ) +_pkgctl_version_setup_args=( + '(-f --force)'{-f,--force}'[Do not prompt before overwriting]' + '--prefer-platform-api[Prefer platform specific GitHub/GitLab API for complex cases]' + '--url[Derive check target from URL instead of source array]:url:' + '--no-check[Do not run version check after setup]' + '(-h --help)'{-h,--help}'[Display usage]' + '*:git_dir:_files -/' +) + _pkgctl_version_upgrade_args=( '(-v --verbose)'{-v,--verbose}'[Display results including up-to-date versions]' '(-h --help)'{-h,--help}'[Display usage]' -- cgit v1.2.3-54-g00ecf