Skip to content

Migrate build system from setuptools to hatchling#136

Merged
ad-m merged 1 commit intomasterfrom
claude/migrate-to-hatchling-jI8LK
Mar 13, 2026
Merged

Migrate build system from setuptools to hatchling#136
ad-m merged 1 commit intomasterfrom
claude/migrate-to-hatchling-jI8LK

Conversation

@ad-m
Copy link
Owner

@ad-m ad-m commented Mar 13, 2026

Summary

This PR migrates the project's build system from setuptools to hatchling, modernizing the build configuration and dependency management.

Key Changes

  • Build backend: Switched from setuptools.build_meta to hatchling.build
  • Build dependencies: Replaced setuptools>=64 and setuptools-scm>=8 with hatchling and hatch-vcs
  • Version management: Migrated from [tool.setuptools-scm] to [tool.hatch.version] configuration with VCS-based versioning
  • Package configuration: Moved package data configuration from [tool.setuptools.package-data] to [tool.hatch.build.targets.wheel]
  • Fallback version: Maintained fallback version 0.0.0 for builds without VCS metadata

Implementation Details

The migration preserves all existing functionality while adopting hatchling's configuration format. The py.typed marker file is now included through hatchling's wheel target configuration, and version management continues to use VCS information with the same fallback behavior.

https://claude.ai/code/session_01Wwr1CDbtn58p2EAohRFB5z

Replace setuptools + setuptools-scm with hatchling + hatch-vcs for a
lighter, more modern build backend. All metadata, versioning, and
package data (py.typed) are preserved.

https://claude.ai/code/session_01Wwr1CDbtn58p2EAohRFB5z
@ad-m ad-m merged commit 0b8f1be into master Mar 13, 2026
7 of 8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants