Skip to content

Conversation

@CasperWA
Copy link
Owner

@CasperWA CasperWA commented Dec 1, 2025

Closes #290
Closes #289
Closes #288

Temp.: Still updating CI/CD

AI Summary

This pull request modernizes and streamlines the repository's Python packaging, CI/CD workflows, and dependency management. The main changes include upgrading to Python 3.12, switching to PEP 621/Flit-based packaging, simplifying dependency files, and updating CI/CD steps for improved maintainability and reliability.

Python version and tooling upgrades:

  • Migrated the entire codebase and CI/CD workflows from Python 3.11 to Python 3.12, including updating Dockerfile, .pre-commit-config.yaml, and all workflow files to use Python 3.12 and relevant pre-commit hook arguments. [1] [2] [3] [4] [5] [6]

Packaging and dependency management:

  • Replaced legacy setup.py and requirements files with a modern pyproject.toml using Flit for packaging and dependency management, including moving development dependencies to [project.optional-dependencies] and removing requirements_dev.txt. [1] [2] [3]
  • Added a minimal requirements file for CI (.github/utils/requirements_ci.txt) to centralize CI dependencies.

CI/CD workflow improvements:

  • Updated GitHub Actions to use the latest versions of actions/checkout and actions/setup-python, and switched changelog generation to github-changelog-generator Docker image for more robust release notes. [1] [2]
  • Refactored install steps in CI workflows to use the new requirements file and removed redundant code for installing pre-commit. [1] [2]
  • Improved release tagging and version update logic in .github/utils/update_version.sh for clarity and maintainability.

Pre-commit and linting changes:

  • Updated .pre-commit-config.yaml to match new Python version, removed the local pylint hook, and adjusted hook arguments for compatibility.
  • Removed the pylint-safety job from CI, simplifying linting and safety checks.

Other updates:

  • Updated copyright year in LICENSE.

These changes collectively modernize the repository, reduce maintenance overhead, and improve CI/CD robustness.

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.

Use Python 3.12 Update CI/CD workflows Update pyproject setup

2 participants