0.2.1

This version prepares mvx-common for public package distribution and improves the project infrastructure around packaging, typing, CI, supported Python versions, and release quality.

The release does not introduce a new logger feature layer. It focuses on making the existing 0.2.0 functionality easier to validate, package, publish, and consume.

Added

Apache 2.0 licensing

Added Apache License 2.0 licensing for the repository and for the mvx-common package distribution.

The package metadata now declares:

Apache-2.0

License and notice files are included in both source and wheel distributions.

Typed package marker

Added the py.typed marker to the package.

This allows type checkers to treat mvx-common as a typed package when it is installed as a dependency.

GitHub Actions CI

Added GitHub Actions CI for mvx-common.

The CI workflow runs:

black
ruff
mypy
pytest with branch coverage

The workflow runs on supported Python versions.

Python 3.11 and 3.12 support

Expanded the supported Python range from Python 3.13-only to Python 3.11 and newer.

The package metadata now declares:

Python >= 3.11

CI checks run on:

Python 3.11
Python 3.12
Python 3.13

Coverage checks

Added pytest-cov and branch coverage reporting.

The package now requires at least 90% branch coverage in local checks and CI.

Publishing workflows

Added GitHub Actions workflows for publishing mvx-common distributions through trusted publishing.

Separate workflows are used for:

TestPyPI release candidates
PyPI releases

Repository contribution guide

Added repository-level contribution rules for the monorepo.

Package-specific instructions remain in package README files.

Changed

README structure

Updated the repository README to describe mvx-lib as a monorepo rather than as a package-level README.

Updated the package README to focus on mvx-common, MVX Logger, package requirements, checks, documentation, and package-specific status.

Development checks

Updated the package check script to run tests with coverage reporting.

Fixed

Removed accidental runtime dependency on enum-tools

enum-tools is used for documentation support, but it should not be required at runtime.

The logger enum documentation integration now goes through an internal compatibility helper. When enum-tools is installed, the documentation helper is used. When it is not installed, runtime imports still work without adding a runtime dependency.

This keeps mvx-common free of runtime dependencies.