diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..434532f --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,45 @@ +name: CI + +on: + pull_request: + push: + branches: + - main + - "dev/v*" + +env: + FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true + +jobs: + test: + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v5 + + - name: Set up Python + uses: actions/setup-python@v6 + with: + python-version: "3.11" + cache: pip + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + python -m pip install -e ".[dev]" build + + - name: Run tests + run: python -m pytest tests -q + + - name: Import smoke + run: python -c "import hddflyzer; print(hddflyzer.__version__)" + + - name: CLI smoke + run: | + hddflyzer --version + hddflyzer + hddflyzer pipeline + + - name: Build package + run: python -m build diff --git a/CHANGELOG.md b/CHANGELOG.md index 3ce2547..7fa96f8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 --- +## [0.1.3] - 2026-06-11 + +### Added + +- Added minimal GitHub Actions CI for HDDFlyzer with local validation steps for + tests, import smoke, CLI smoke, and package build. + +### Changed + +- Updated the internal HDDFlyzer version to `0.1.3`. + +--- + ## [0.1.2] - 2026-06-10 ### Added @@ -186,6 +199,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 --- +[0.1.3]: https://github.com/NanoBiostructuresRG/hddflyzer/compare/v0.1.2...v0.1.3 [0.1.2]: https://github.com/NanoBiostructuresRG/hddflyzer/compare/v0.1.1...v0.1.2 [0.1.1]: https://github.com/NanoBiostructuresRG/hddflyzer/compare/v0.1.0...v0.1.1 [0.1.0]: https://github.com/NanoBiostructuresRG/hddflyzer/releases/tag/v0.1.0 diff --git a/CITATION.cff b/CITATION.cff index db49759..26aaa04 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -2,8 +2,8 @@ cff-version: 1.2.0 message: "If you use this software, please cite it as below." type: software title: "HDDFlyzer: High-Dimensional Descriptor-based Feature Space Analyzer" -version: "0.1.2" -date-released: "2026-06-10" +version: "0.1.3" +date-released: "2026-06-11" authors: - family-names: "Contreras-Torres" given-names: "Flavio F." diff --git a/ROADMAP.md b/ROADMAP.md index 6595e37..099cda5 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -441,19 +441,22 @@ python -m build releases. - Example data and generated-result policies are clear before public exposure. -### P24 — Minimal CI ⬜ +### P24 — Minimal CI ✅ **Goal:** Add basic continuous integration after the repository is public. **Expected outcome:** -- Install dependencies. +- `v0.1.3` adds minimal GitHub Actions CI for HDDFlyzer. +- Install dependencies on `ubuntu-latest` with Python 3.11. - Run the test suite. - Smoke-test package import. - Smoke-test CLI availability. +- Build wheel and sdist artifacts locally. Python-version matrices, docs deployment, package publishing, and more complex -CI jobs should be added only after the basic workflow is stable. +CI jobs should be added only after the basic workflow is stable. PyPI remains +deferred. ### P25 — Pre-release and Release Readiness ⬜ @@ -466,6 +469,7 @@ broader release readiness. - `v0.1.1` is scoped as a documentation-focused GitHub pre-release. - `v0.1.2` is scoped as a packaging/installability-focused GitHub pre-release. +- `v0.1.3` is scoped as a minimal-CI GitHub pre-release. - Future releases summarize real current capabilities. - Tags and GitHub Releases are created only after branch validation and review. - PyPI remains deferred until after installability and minimal CI are reliable. @@ -488,10 +492,9 @@ packaging, documentation, and validation are stronger: ## Current Recommended Order -1. Close `dev/v0.1.2` after packaging/installability validation is reviewed. -2. Push `dev/v0.1.2` and open PR to `main`. +1. Close `dev/v0.1.3` after minimal CI metadata and documentation are reviewed. +2. Push `dev/v0.1.3` and open PR to `main`. 3. Merge to `main` if review passes. -4. Tag and publish `v0.1.2` as a GitHub pre-release. -5. Continue with `v0.1.3` for minimal CI/docs validation. -6. Defer PyPI readiness/publication to `v0.1.4` or later, after +4. Tag and publish `v0.1.3` as a GitHub pre-release. +5. Defer PyPI readiness/publication to `v0.1.4` or later, after installability and minimal CI are validated. diff --git a/hddflyzer/version.py b/hddflyzer/version.py index e839486..1b7f5ae 100644 --- a/hddflyzer/version.py +++ b/hddflyzer/version.py @@ -1,3 +1,3 @@ # SPDX-License-Identifier: LGPL-3.0-or-later -__version__ = "0.1.2" +__version__ = "0.1.3"