Skip to content

v5.0.0

Compare
Choose a tag to compare
@epsy epsy released this 13 Oct 07:49
· 3 commits to master since this release

Breaking changes:

  • bytes annotation (converter) now re-encodes the corresponding parameter back to bytes

Deprecations:

  • The convert_default argument to value_converter is now deprecated. Parameter.cli_default is the recommended replacement. To help transition, a new convert_default_filter option has been added to value_converter, which allows converter authors to filter which values are selected for default conversion, thereby not incurring a deprecation warning for the user.

Updated compatibility:

  • Dropped support for Python 2.7, Python 3.5.
  • Verified support for Python 3.10+
  • Compatibility with Docutils 0.21+
  • Improved path support for Windows

Improvements:

  • Automatically group identical subcommands as aliases
  • Evaluate deferred annotations from PEP 563
  • Basic support for typing.Annotated
  • Parameter.cli_default allows script writers to specify a default value that will be converted like an argument passed in from the CLI, but not supplied when the function is called from Python.

Process updates:

  • Updated Continuous Integration and Delivery to speed up releases and move off of deprecated CI platform.

PR list

  • Pin coverage/coveralls version by @epsy in #67
  • Doc improvements, update sphinx to 4.2.0 by @epsy in #68
  • Automatically group identical subcommands as aliases by @epsy in #69
  • Fix readthedocs build by @epsy in #70
  • Add shared CI by @epsy in #75
  • drop Python 2 support, support Python 3.10 by @epsy in #76
  • Add continuous deployment and clean up a few files by @epsy in #78
  • Compatibility with Docutils 0.21+ by @epsy in #81
  • Use evaluated annotations from sigtools by @epsy in #83
  • Make more tests go through future.annotations path by @epsy in #84
  • Basic support for typing.Annotated by @epsy in #85
  • Add an example using typing.Annotated and test it by @epsy in #86
  • Fix typos by @kianmeng in #80
  • Update contributors by @epsy in #87
  • BREAKING: bytes annotation now re-encodes the corresponding parameter back to bytes by @epsy in #89
  • Remove Python 2 from docs by @epsy in #90
  • Add CI on Windows and fix tests, update path handling by @epsy in #92
  • Add Parameter.cli_default() to supply default values for CLI only, through converters by @epsy in #93
  • Add deprecation warnings for convert_default, handle edge case by @epsy in #94
  • update docs with cli_default by @epsy in #95
  • Keep compatibility in default value of value_converter by @epsy in #96
  • Prepare 5.0.0 release by @epsy in #97

New Contributors

Full Changelog: v4.2.1...v5.0.0