Skip to content

Conversation

@skoudoro
Copy link
Collaborator

@skoudoro skoudoro commented Jan 15, 2026

fixes #73
fixes #26
fixes #19

This pull request introduces a major overhaul of the packaging, development workflow, and CI/CD pipeline for trx-python. The project is migrated from legacy setup.cfg/setup.py to a modern, declarative pyproject.toml configuration, with improved dependency management and optional extras. The CI workflows are updated to use the latest GitHub Actions versions and now support multi-stage builds, documentation deployment, and automated releases. Development is streamlined with the addition of custom spin commands and improved documentation for contributors. The documentation system now supports version switching via a switcher.json file and dynamic version detection.

  • Migrated packaging configuration from setup.cfg and setup.py to a modern pyproject.toml, with explicit dependencies, optional extras, project metadata, and spin command integration. Legacy files are removed. [1] [2] [3] [4]
  • Added custom development commands via spin in .spin/cmds.py, including setup, test, lint, and docs build. Contributor workflow is documented in README.md. [1] [2]
  • Updated CI workflows to use latest GitHub Actions (v4/v5) and Python versions, restructured jobs for build, test, publish to TestPyPI/PyPI, and automated GitHub Releases. Documentation build and deployment are split into dev/release flows. [1] [2] [3] [4]
  • Added version switcher support to Sphinx docs via docs/_static/switcher.json and dynamic version detection/configuration in docs/source/conf.py. Documentation deployment now includes dev, stable, and release versions. [1] [2] [3] [4]
  • Updated minimum required Python version to 3.9 and added support for Python 3.13/3.14 in CI and packaging metadata. [1] [2] [3]
  • Project metadata (name, description, authors, URLs) and optional dependencies for development, docs, and tests are now defined in pyproject.toml, improving clarity and maintainability.

References:
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14]

@skoudoro skoudoro requested a review from arokem January 15, 2026 16:48
@skoudoro skoudoro force-pushed the project-update branch 2 times, most recently from a0485a5 to 5fe42c9 Compare January 15, 2026 17:38
@skoudoro
Copy link
Collaborator Author

figshare bring me some trouble. it seems they limit download by bot.

is it possible to add me to trx organization @arokem @frheault @neurolabusc ?

I need to create a repo to handle that. Thanks in advance for the feedback

@arokem
Copy link
Collaborator

arokem commented Jan 15, 2026

Just added you as a member. Let me know if you need additional permissions.

Thanks for working on this - this will be a great upgrade!

@skoudoro
Copy link
Collaborator Author

Thank you @arokem,

Test data are now hosted in https://github.com/tee-ar-ex/trx-test-data. it should be more reliable

@skoudoro skoudoro force-pushed the project-update branch 2 times, most recently from 216b080 to 869b31b Compare January 15, 2026 20:55
@codecov-commenter
Copy link

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

Thanks for integrating Codecov - We've got you covered ☂️

@skoudoro
Copy link
Collaborator Author

ok, done, I am going ahead and merge this.

I will follow up with smaller PR.

master needed a big clean up

@skoudoro skoudoro merged commit 43edfbb into tee-ar-ex:master Jan 15, 2026
14 checks passed
@skoudoro skoudoro deleted the project-update branch January 15, 2026 21:44
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.

setuptools_scm shouldn't be in the runtime dependency list Use click for CLIs? Test coverage

3 participants