Changelog
Here are listed all the meaningfull changes done on nmk-python since version 1.0
Note
Only interface and important behavior changes are listed here.
The fully detailed changelog is also available on Github
Release 1.8.0
added ${pythonLocalDepsPatterns} config item to identify local dependencies that are in the same development workspace than the current project
added ${pythonDepsMetadata} config item pointing to generated dependencies metadata file
updated py.uninstall task to additionally uninstall local dependencies
added py.deps task to generated dependencies metadata
Release 1.7.0
removed py.version and py.project trigger condition (tasks are always executed, even if no python files were found in project)
added ${pythonDevRequirements} and ${pythonArchiveRequirements} config items to ease dev dependency group generation
renamed
${pythonEditableInstallArgs}config item to ${pythonEditablePipInstallArgs} onerenamed
${pythonWheelInstallArgs}config item to ${pythonWheelPipInstallArgs} oneadded ${pythonEditableUvInstallArgs} and ${pythonWheelUvInstallArgs} config items to provide extra args for build with uv tool
in generated pyproject.toml, add a dependency-groups section with a dev group holding all tools dependencies (as required by uv tool)
add override of ${venvUpdateInput} to condition venv refresh on pyproject.toml file
refactored builders to introduce “build backend” logic and separate implementations:
the legacy one based on pip and python build module
a new one based on uv tool, ready for buildenv 2 compatibility
Release 1.6.0
added
--show-capture=nopytest default option to ${pytestExtraArgs} config itemupdated supported versions range to 3.10-3.14 (see ${pythonMinVersion} and ${pythonMaxVersion} config items)
Release 1.5.0
new ${pythonBuildExcludedModules} config item to list modules to be excluded from the python wheel build
Release 1.4.0
generate pyright type checking tool configuration in pyproject.toml. The ${pythonTypeCheckingMode} config item can be used to set the rule set to be used.
Release 1.3.0
handle python package optional dependencies through ${pythonPackageOptionalRequirements} new config item
Release 1.2.0
new config items to specify extra args for ruff command lines:
new ${pythonRuffFixStamp} config item (used for py.fix) incremental build
new config items fto list rules to be auto-fixed:
${pythonAutoFixRules} (list version)
${pythonAutoFixJoinedRules} (string version)
Release 1.1.0
new
${pythonEditableInstallArgs}config itemnew
${pythonWheelInstallArgs}config itemchanged py.install and py.editable tasks pip install args to point to these new items