diff --git a/CHANGES/1748.misc.rst b/CHANGES/1748.misc.rst new file mode 100644 index 00000000..21cdce84 --- /dev/null +++ b/CHANGES/1748.misc.rst @@ -0,0 +1,21 @@ +Migrated from ``hatch`` to ``uv`` for dependency management and development workflows. + +This change improves developer experience with significantly faster dependency resolution (10-100x faster than pip), automatic virtual environment management, and reproducible builds through lockfile support. + +**What changed for contributors:** + +- Install dependencies with ``uv sync --all-extras --group dev --group test`` instead of ``pip install -e .[dev,test,docs]`` +- Run commands with ``uv run`` prefix (e.g., ``uv run pytest``, ``uv run black``) +- All Makefile commands now use ``uv`` internally (``make install``, ``make test``, ``make lint``, etc.) +- Version bumping now uses a custom ``scripts/bump_version.py`` script instead of ``hatch version`` + +**What stayed the same:** + +- Build backend remains ``hatchling`` (no changes to package building) +- Dynamic version reading from ``aiogram/__meta__.py`` still works +- All GitHub Actions CI/CD workflows updated to use ``uv`` +- ReadTheDocs builds continue to work without changes +- Development dependencies (``dev``, ``test``) moved to ``[dependency-groups]`` section +- Documentation dependencies (``docs``) remain in ``[project.optional-dependencies]`` for compatibility + +Contributors can use either the traditional ``pip``/``venv`` workflow or the new ``uv`` workflow - both are documented in the contributing guide.