You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Breaking: Drop Python 3.9 support. Minimum Python version is now 3.10.
Feature: Modernize codebase to use Python 3.10+ features (PEP 604 union types, built-in generic types).
Critical fix: SOURCES_TARGET used mxdev wrongly with -o (offline) option.
The offline option had a bug and was fixed in mxdev #34 and released with mxdev>=5.
This fix switches from -o to the correct -f (no fetch from vcs).
To update your makefile use mxmake update in the folder with your Makefile.
Fix: theme for newer Sphinx 7.x.
Fix: interactive uv venv, use --allow-existing instead.
Fix: The project was using pytest as the test runner all along (as configured in the Makefile and generated test scripts), but zope.testrunner was incorrectly listed as the dependency.
Feature: Add support for Python 3.14.
Breaking: Removed MXENV_UV_GLOBAL setting in favor of automatic UV detection.
When PYTHON_PACKAGE_INSTALLER=uv, mxmake now automatically detects and uses
a globally installed uv if available. To force local installation of uv,
simply don't install it globally or remove it from PATH.
Feature: Add UV_PYTHON setting to specify Python version for UV-managed virtual
environments. Defaults to PRIMARY_PYTHON for backward compatibility. This
provides semantic clarity: PRIMARY_PYTHON is the system interpreter path
(e.g., python3.11), while UV_PYTHON is the version spec for UV
(e.g., 3.14, [email protected]).
Feature: Automatic detection of global UV installation using simple shell check.
No manual configuration required.
Feature: All UV commands now run with --quiet --no-progress flags for better
CI/CD compatibility and cleaner log output.
Feature: When using global UV, mxmake checks if updates are available using uv self update --dry-run and displays a helpful non-blocking warning if a
newer version is available.
Improvement: Simplified mxenv.mk logic from 3+ nesting levels to 1-2 levels
using computed intermediate variables (USE_GLOBAL_UV, USE_LOCAL_UV).
Code is now more maintainable and easier to extend.
Tests/CI: Increase coverage, test UV-only scenario.
Docs: Overhaul and improve. Focus on UV only.
Chore: Migrate to hatch-vcs for automated versioning from git tags.