mirror of
https://github.com/lilydjwg/nvchecker.git
synced 2025-03-10 06:14:02 +00:00
Merge pull request #141 from felixonmars/nvtake-to-specific-version
Allow nvtake to update to a specific version
This commit is contained in:
commit
61e53b6698
1 changed files with 16 additions and 11 deletions
|
@ -18,7 +18,8 @@ def take() -> None:
|
|||
parser.add_argument('--ignore-nonexistent', action='store_true',
|
||||
help='ignore nonexistent names')
|
||||
parser.add_argument('names', metavar='NAME', nargs='*',
|
||||
help='software name to be updated')
|
||||
help='software name to be updated. use NAME=VERSION to update '
|
||||
'to a specific version instead of the new version.')
|
||||
args = parser.parse_args()
|
||||
if core.process_common_arguments(args):
|
||||
return
|
||||
|
@ -41,17 +42,21 @@ def take() -> None:
|
|||
oldvers.update(newvers)
|
||||
else:
|
||||
for name in args.names:
|
||||
try:
|
||||
oldvers[name] = newvers[name]
|
||||
except KeyError:
|
||||
if args.ignore_nonexistent:
|
||||
logger.warning('nonexistent in newver, ignored', name=name)
|
||||
continue
|
||||
if "=" in name:
|
||||
name, newver = name.split("=")
|
||||
oldvers[name] = newver
|
||||
else:
|
||||
try:
|
||||
oldvers[name] = newvers[name]
|
||||
except KeyError:
|
||||
if args.ignore_nonexistent:
|
||||
logger.warning('nonexistent in newver, ignored', name=name)
|
||||
continue
|
||||
|
||||
logger.critical(
|
||||
"doesn't exist in 'newver' set.", name=name,
|
||||
)
|
||||
sys.exit(2)
|
||||
logger.critical(
|
||||
"doesn't exist in 'newver' set.", name=name,
|
||||
)
|
||||
sys.exit(2)
|
||||
|
||||
try:
|
||||
oldverf.rename(
|
||||
|
|
Loading…
Add table
Reference in a new issue