Skip to content

feat: infrastructure & documentation overhaul#91

Merged
rjmalves merged 9 commits intomainfrom
feat/infra-docs-overhaul
Mar 10, 2026
Merged

feat: infrastructure & documentation overhaul#91
rjmalves merged 9 commits intomainfrom
feat/infra-docs-overhaul

Conversation

@rjmalves
Copy link
Owner

@rjmalves rjmalves commented Mar 9, 2026

Summary

  • Modernize pyproject.toml with dependency groups (test, lint, docs, dev) and strict mypy/ruff config
  • Restructure CI into 4 parallel jobs: lint, typecheck, test (matrix 3.10/3.11/3.12), docs
  • Migrate docs deployment to official GitHub Pages actions (upload-pages-artifact + deploy-pages)
  • Add tag-triggered release workflow with version validation and PyPI trusted publishing
  • Add pre-commit hooks (ruff auto-fix + manual mypy stage)
  • Migrate Sphinx theme from RTD to Furo with dark mode support
  • Add architecture, FAQ, and performance guide pages (pt_BR)
  • Improve API reference with autosummary blocks (41 decomp + 2 libs classes)
  • Expand README with badges, feature list, code example, and related projects
  • Add CONTRIBUTING.md with development workflow documentation
  • Reformat CHANGELOG to Keep a Changelog standard with compare links
  • Update installation documentation with uv alternative and verification section

Test plan

  • CI passes: lint, typecheck, test (3.10/3.11/3.12), docs build
  • Docs build succeeds with -W --keep-going (warnings-as-errors)
  • Pre-commit hooks work locally
  • Release workflow triggers correctly on tag push

🤖 Generated with Claude Code

rjmalves and others added 9 commits March 8, 2026 17:23
- Modernize pyproject.toml with split dep groups, mypy/ruff config
- Restructure CI into 4 parallel jobs (lint, typecheck, test, docs)
- Migrate docs deployment to official GitHub Pages actions
- Create tag-triggered release workflow with version validation
- Add pre-commit hooks (ruff + mypy manual stage)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Migrate Sphinx theme from sphinx-rtd-theme to Furo with dark mode
- Verify sphinx-gallery examples compatible with Furo (no changes needed)
- Simplify conf.py configuration

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Create architecture documentation page (guias/arquitetura.rst)
- Create FAQ documentation page with 16 Q&A entries (guias/faq.rst)
- Create performance guide page (guias/desempenho.rst)
- Add autosummary blocks to API reference pages (41 decomp + 2 libs classes)
- Update index.rst toctree with new Guias section

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Expand README with badges, code example, and project sections
- Create CONTRIBUTING.md with environment setup and workflow guide
- Update contribuicao.rst with modern tool references (ruff, uv run)
- Reformat CHANGELOG to Keep a Changelog standard with compare links
- Update installation documentation with Python 3.10+ and uv alternative

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Fix Python version in FAQ (3.8 → 3.10)
- Fix code-block language for shell commands in FAQ (python → bash)
- Add branch guard to docs.yml deploy job
- Add graceful fallback for pre-existing releases in release.yml
- Add -W --keep-going to Sphinx CI build in main.yml

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Upgrade cfinterface >= 1.9.0, pandas >= 3.0.0, numpy >= 2.2.1
- Drop Python 3.10, add 3.13 and 3.14 to CI matrix
- Add strict mypy type annotations to all 97 source files (0 errors)
- Fix ruff lint violations (import sorting, modern type syntax)
- Align ruff/mypy config with inewave sibling project
- Fix test_neq_restricoes for cfinterface 1.9.x identity-based remove
- Update docs/README for Python >= 3.11 and cfinterface >= 1.9.0
- Update pre-commit hooks to ruff v0.15.5, mypy as pre-commit stage

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add plans/ and .claude/ to .gitignore to keep implementation
artifacts out of the repository.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@rjmalves rjmalves merged commit 8f46464 into main Mar 10, 2026
1 check passed
@codecov
Copy link

codecov bot commented Mar 10, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 92.80%. Comparing base (2705c45) to head (e1c1f5e).
⚠️ Report is 10 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #91      +/-   ##
==========================================
- Coverage   93.08%   92.80%   -0.28%     
==========================================
  Files          93       93              
  Lines        8445     8396      -49     
==========================================
- Hits         7861     7792      -69     
- Misses        584      604      +20     
Flag Coverage Δ
unittests 92.80% <100.00%> (-0.28%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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.

1 participant