|
|
|
|
Changelog for python311-argh-0.31.2-1.5.noarch.rpm :
* Tue Jan 30 2024 Dirk Müller - update to 0.31.2: * broken support for `Optional[List]` (but not `Optional[list]`), a narrower case of the problem fixed earlier * Sat Jan 20 2024 Dirk Müller - update to 0.31.1: * broken support for type alias `List` * cleaned up the README, rearranged other documentation. * Mon Jan 08 2024 Dirk Müller - update to 0.31.0: * The typing hints introspection feature is automatically enabled for any command (function) which does not have any arguments specified via AATTarg decorator. * A small change in the legacy argument mapping policy BY_NAME_IF_HAS_DEFAULT concerning the order of variadic positional vs. keyword-only arguments. The following function now results in main alpha [args ...] beta instead of main alpha beta [args ...]: def main(alpha, *args, beta): ... This does not concern the default name mapping policy. Even for the legacy one it\'s an edge case which is extremely unlikely to appear in any real-life application. * Added experimental support for basic typing hints (issue [#203]) The following hints are currently supported: str, int, float, bool (goes to type); list (affects nargs), list[T] (first subtype goes into type); Literal[T1, T2, ...] (interpreted as choices); Optional[T] AKA T | None (currently interpreted as required=False for optional and nargs=\"?\" for positional arguments; likely to change in the future as use cases accumulate). The exact interpretation of the type hints is subject to change in the upcoming versions of Argh. * Added always_flush argument to dispatch() (issue #145) * High-level functions argh.dispatch_command() and argh.dispatch_commands() now accept a new parameter old_name_mapping_policy. The behaviour hasn\'t changed because the parameter is True by default. It will change to False in Argh v.0.33 or v.1.0. * Wed Dec 27 2023 Dirk Müller - update to 0.30.5: * A combination of `nargs` with a list as default value would lead to the values coming from CLI being wrapped in another list (issue #212). * Argspec guessing: if `nargs` is not specified but the default value is a list, `nargs=\" *\"` is assumed and passed to argparse. * Fri Nov 10 2023 Dirk Müller - update to 0.30.4: * Regression: a positional argument with an underscore used in `AATTarg` decorator would cause Argh fail on the assembling stage. * As reported in #204 and #206, the new default name mapping policy in fact silently changed the CLI API of some scripts: arguments which were previously translated as CLI options became optional positionals. Although the instructions were supplied in the release notes, the upgrade may not necessarily be intentional, so a waste of users\' time is quite likely. * To alleviate this, the default value for `name_mapping_policy` in standard functions has been changed to `None`; if it\'s not specified, Argh falls back to the new default policy, but raises `ArgumentNameMappingError` with detailed instructions if it sees a non-kwonly argument with a default value. * Please specify the policy explicitly in order to avoid this error if you need to infer optional positionals (``nargs=\"?\"``) from function signature. * Regression: certain special values in argument default value would cause an exception (#204) * Added a more informative error message when the reason is likely to be related to the migration from Argh v0.29 to a version with a new argument name mapping policy. * A new policy for mapping function arguments to CLI arguments is used by default * If you cannot modify the function signature to use kwonly args for options, please consider explicitly specifying the legacy name mapping * The name mapping policy `BY_NAME_IF_HAS_DEFAULT` slightly deviates from the old behaviour. Kwonly arguments without default values used to be marked as required options (``--foo FOO``), now they are treated as positionals (``foo``). Please consider the new default policy (`BY_NAME_IF_KWONLY`) for a better treatment of kwonly. * Removed previously deprecated features (#184 → #188): * Added support for Python 3.12. * Added type annotations to existing Argh code (#185 → #189). * The `dispatch()` function has been refactored, so in case you need finer control over the process, two new, more granular functions can be used. * Wed Oct 11 2023 Dirk Müller - update to 0.29.4: * Test coverage reported as <100% when argcomplete is installed * Technical releases for packaging purposes. No changes in functionality. * Backwards incompatible changes: * Wrapped exceptions now cause ``dispatching.dispatch()`` to raise ``SystemExit(1)`` instead of returning without error. For most users, this means failed commands will now exit with a failure status instead of a success. * Renamed arguments in `add_commands()` (#165): * `namespace` → `group_name` * `namespace_kwargs` → `group_kwargs` * The old names are deprecated and will be removed in v.0.30. * Can control exit status (see Backwards Incompatible Changes above) when raising ``CommandError`` using the ``code`` keyword arg. * Bugs fixed: * Positional arguments should not lead to removal of short form of keyword arguments. * Other changes: * Avoid depending on iocapture by using pytest\'s built-in feature * Fri Jun 02 2023 pgajdosAATTsuse.com- version update to 0.28.1 Version 0.28.1 - ------------- - Fixed bugs in tests (#171, #172) Version 0.28.0 - ------------- A major cleanup. Backward incompatible changes: - Dropped support for Python 2.7 and 3.7. Deprecated features, to be removed in v.0.30: - `argh.assembling.SUPPORTS_ALIASES`. - Always `True` for recent versions of Python. - `argh.io.safe_input()` AKA `argh.interaction.safe_input()`. - Not relevant anymore. Please use the built-in `input()` instead. - argument `pre_call` in `dispatch()`. - Argument help as annotations. - Annotations will only be used for types after v.0.30. - Added deprecation warnings for some arguments deprecated back in v.0.26. Version 0.27.2 - ------------- Minor packaging fix: * chore: include file required by tox.ini in the sdist (#155) Version 0.27.1 - ------------- Minor building and packaging fixes: * docs: add Read the Docs config (#160) * chore: include tox.ini in the sdist (#155) Version 0.27.0 - ------------- This is the last version to support Python 2.7. Backward incompatible changes: - Dropped support for Python 2.6. Enhancements: - Added support for Python 3.7 through 3.11. - Support introspection of function signature behind the `AATTwraps` decorator (issue #111). Fixed bugs: - When command function signature contained `` * *kwargs`` *and * positionals without defaults and with underscores in their names, a weird behaviour could be observed (issue #104). - Fixed introspection through decorators (issue #111). - Switched to Python\'s built-in `unittest.mock` (PR #154). - Fixed bug with `skip_unknown_args=True` (PR #134). - Fixed tests for Python 3.9.7+ (issue #148). Other changes: - Included the license files in manifest (PR #112). - Extended the list of similar projects (PR #87). - Fixed typos and links in documentation (PR #110, #116, #156). - Switched CI to Github Actions (PR #153).- deleted patches - python-argh-no_mock.patch (upstreamed) - support-py39.patch (upstreamed) * Thu Mar 10 2022 pgajdosAATTsuse.com- do not use python-mock for testing- added patches fix https://github.com/neithere/argh/issues/152 + python-argh-no_mock.patch * Wed Sep 22 2021 Steve Kowalik - Add patch support-py39.patch: * Deal with Python 3.9.x changes in argparse. * Mon May 17 2021 pgajdosAATTsuse.com- use %pytest macro
|
|
|