Hatch

Latest version: v1.14.0

Safety actively analyzes 714668 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 8

1.14.0

***Added:***

- Upgrade default CPython distributions to 20241206
- Bump the minimum supported version of Hatchling to 1.26.3
- Update `virtualenv` dependency

hatchling-v1.27.0
***Added:***

- Update the default version of core metadata to 2.4

hatchling-v1.26.3
***Fixed:***

- Support an old import path that is still used by some consumers like Hatch

hatchling-v1.26.2
***Fixed:***

- Back-populate string `license` fields (`License-Expression`) for core metadata versions prior to 2.4
- Remove the `License-Expression` and `License-Files` core metadata from version 2.2 that was missed in the previous minor release

hatchling-v1.26.1
***Fixed:***

- Add backward compatibility for the old `license-files` metadata field
- Support an old import path that is still used by some consumers like Hatch

hatchling-v1.26.0
***Changed:***

- The `license-files` metadata field has been updated to the latest spec and is now just an array of glob patterns

***Added:***

- Support version 2.4 of core metadata for the `wheel` and `sdist` targets
- Add `HATCH_METADATA_CLASSIFIERS_NO_VERIFY` environment variable to disable trove classifier verification
- Add `.pixi` to the list of directories that cannot be traversed
- Bump the minimum supported version of `packaging` to 24.2

***Fixed:***

- No longer write package metadata for license expressions and files for versions of core metadata prior to 2.4
- Properly enable Zip64 support for the `wheel` target
- Properly ignore parent `.gitingore` files when the project root matches one of the patterns

1.13.0

***Added:***

- Support managing Python 3.13 distributions

hatchling-v1.25.0
***Changed:***

- The `macos-max-compat` option for the `wheel` target is now disabled by default and will be removed in a future release

***Added:***

- Artifacts for the `wheel` and `sdist` targets now have their permission bits normalized

***Fixed:***

- Ignore `manylinux`/`musllinux` tags for the `wheel` target artifact name when enabling the `infer_tag` build data
- The `wheel` target build data `infer_tag` when enabled now respects the `MACOSX_DEPLOYMENT_TARGET` environment variable

1.12.0

***Changed:***

- The `run`/`env run` and `test` commands now treat inclusion variable options as an intersection rather than a union to allow for specific targeting of environments

***Added:***

- Add ability to control the source of Python distributions
- Upgrade Ruff to 0.4.5
- Upgrade PyApp to 0.22.0 for binary builds

***Fixed:***

- The `fmt` command no longer hides the commands that are being executed
- Add default timeout for network requests, useful when installing Python distributions
- Fix syntax highlighting contrast for the `config show` command

1.11.1

***Added:***

- Add official GitHub Action for installing Hatch

***Fixed:***

- Fix `terminal.styles.spinner` configuration
- Fix entry points in the pre-built distributions that binaries use

1.11.0

***Added:***

- Upgrade PyApp to 0.21.1 for binary builds

***Fixed:***

- On Linux, install the highest compatible Python distribution variant based on CPU architecture rather than assuming recent hardware

1.10.0

***Changed:***

- The `run`/`env run`, `fmt` and `shell` commands now only change the current working directory to the project root if not already inside the project
- The `shell` command now accepts a single argument to specify the environment to enter which overrides the standard choice mechanisms. The arguments determining shell options have been converted to flags.

***Added:***

- Add `test` command
- The `run` command can now execute scripts that define inline metadata for dependencies and Python version constraints
- The `virtual` environment type now supports the ability to use UV in place of pip & virtualenv
- Add `self report` command for submitting pre-populated bug reports to GitHub
- The reserved environment used for static analysis is now completely configurable
- Add the following methods to the `environment` interface for complete control over output during life cycle management: `app_status_creation`, `app_status_pre_installation`, `app_status_post_installation`, `app_status_project_installation`, `app_status_dependency_state_check`, `app_status_dependency_installation_check`, `app_status_dependency_synchronization`
- Add binaries for 32-bit versions of Windows
- Read configuration from any `~/.pypirc` file for the `index` publisher
- Use the Git user as the default username for new project URL metadata
- Add `HATCH_DEBUG` environment variable that when enabled will show local variables in the case of unhandled tracebacks
- The `env show` command now outputs data about all internal environments when using the `--json` flag
- Upgrade default CPython distributions to 20240415
- Upgrade default PyPy distributions to 7.3.15
- Upgrade Ruff to 0.4.2
- Upgrade PyApp to 0.19.0 for binary builds
- Bump the minimum supported version of Hatchling to 1.24.2
- Bump the minimum supported version of virtualenv to 20.26.1

***Fixed:***

- Maintain consistent data paths for case insensitive file systems
- When projects derive dependencies from metadata hooks, there is now by default a status indicator for when the hooks are executed for better responsiveness
- Properly support projects with a `pyproject.toml` file but no `project` table e.g. applications
- Fix the `fmt` command when automatically installing plugin dependencies
- Fix dependency inheritance for the template of the `types` environment for new projects
- Fix warnings related to tar file extraction on Python 3.12+ when unpacking Python distributions for installation
- De-select Ruff rule `E501` for the `fmt` command by default since it conflicts with the formatter
- Fix colored output from build targets on the first run (build environment creation status indicator issue)
- Set the `packaging` dependency version as `>=23.2` to avoid its URL validation which can conflict with context formatting
- Fix the exit code when there happens to be an unhandled exception
- No longer capture both stdout and stderr streams when parsing metadata payloads from build environments
- Fix the `README.md` file template for new projects to avoid Markdown linting issues

Page 1 of 8

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.