Skip to content

Releases: mxstack/mxmake

2.1.0 Monorepo Support

03 Nov 14:29
8242e3b

Choose a tag to compare

  • Feature: Add monorepo support with PROJECT_PATH_PYTHON setting.
    Python projects can now be located in subdirectories while keeping the Makefile at the repository root. Includes auto-detection of pyproject.toml in subdirectories on init, --project-path-python CLI flag and preseed file support.
    Useful for monorepos with multiple applications (e.g., frontend + backend).
    See the "Monorepo Support" section in getting-started.md for details.
  • Feature: Add --version (-v) command line flag to display mxmake version.
    [jensens, 02-11-2025]
  • Enhancement: Use tables in the generated sphinx code for topic/domains.
    [jensens, 02-11-2025]

Large Overhaul

24 Oct 00:07

Choose a tag to compare

  • 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, cpython@3.14).
  • 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.

testargs added

03 Sep 13:36

Choose a tag to compare

What's Changed

Full Changelog: v1.2.2...v1.3.0

Bug Fixes

30 Jun 08:02

Choose a tag to compare

  • Fix pyrefly domain.

  • Fix pytest related test and coverage script generation bugs introduced in 1.2.1.

v1.2.1

23 Jun 22:47

Choose a tag to compare

  • Fix test-script to not end with backslash if there is no testpaths (which is valid). Improve tests to cover more edge cases, i.e. above and multi-line.
  • Fix Python check for global UV and use PRIMARY_PYTHON for UV as version definition.
  • Improve test to read large amount of output from file (Makefile template check).
  • Full Changelog: v1.2.0...v1.2.1

v1.2.0

04 Jun 15:50

Choose a tag to compare

What's Changed

Full Changelog: v1.0.0...v1.2.0

Zope, Help and chores

20 Mar 20:15

Choose a tag to compare

What's Changed

  • feat: add zope-adduser target by @jensens in #42
  • feat: first basic impl of a help system by @jensens in #44
  • chore: Bump peaceiris/actions-gh-pages from 3 to 4 by @dependabot in #45
  • chore update build system

New Contributors

Full Changelog: v1.0...v1.0.0

First final release

11 Feb 09:58

Choose a tag to compare

see CHANGES.md