Skip to content

Conversation

@SvenKlaassen
Copy link
Member

Changes:

  • introduces dynamic versioning to the DoubleML package
  • improves the deployment workflow for PyPI/TestPyPI releases

The main changes include switching to setuptools-scm for automatic version management, updating the deployment and verification steps in GitHub Actions, and ensuring documentation and package metadata reflect the new versioning approach.

@SvenKlaassen SvenKlaassen linked an issue Dec 5, 2025 that may be closed by this pull request
@SvenKlaassen SvenKlaassen marked this pull request as ready for review December 5, 2025 11:46
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces dynamic versioning to the DoubleML package using setuptools-scm, which automatically determines version numbers from Git tags instead of requiring manual version updates in the codebase. The changes improve the deployment workflow by adding verification steps for both TestPyPI and PyPI releases.

Key changes:

  • Migrates from hardcoded version strings to setuptools-scm for automatic version management from Git tags
  • Adds comprehensive version fallback logic with test coverage
  • Enhances CI/CD with verification steps after publishing to TestPyPI and PyPI

Reviewed changes

Copilot reviewed 6 out of 7 changed files in this pull request and generated no comments.

Show a summary per file
File Description
pyproject.toml Configures setuptools-scm for dynamic versioning and updates build dependencies
doubleml/init.py Implements version import logic with fallback chain (_version.py → importlib.metadata → "0.0.0+unknown")
doubleml/tests/test_init.py Adds comprehensive tests for version retrieval and fallback scenarios
doc/conf.py Updates documentation to use dynamic version from doubleml.version
.gitignore Excludes auto-generated _version.py file
.github/workflows/pytest.yml Sets fetch-depth: 0 to enable setuptools-scm version detection
.github/workflows/deploy_pkg.yml Adds workflow_dispatch trigger, verification jobs for TestPyPI/PyPI, and proper fetch-depth configuration

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@SvenKlaassen SvenKlaassen merged commit dcb31b8 into main Dec 8, 2025
17 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.

Add dynamic versioning

2 participants