Skip to content

Conversation

@mmcky
Copy link
Member

@mmcky mmcky commented Oct 22, 2025

Summary

Restores Python 3.10 support (removed in v1.1.0) as it remains actively supported until October 2026.

Changes

  • ✅ Add Python 3.10 support to pyproject.toml and CI workflows
  • ✅ Update test matrix to 11 environments (exclude Python 3.13 + Sphinx 6 combination)
  • ✅ Implement version-specific Sphinx 8 constraints in tox.ini
  • ✅ Add version detection logic and .sphinx8.1 fixtures for Python 3.10/Sphinx 8.1.x compatibility
  • ✅ Update CHANGELOG.md with detailed version information

Technical Details

  • Python 3.10 is limited to Sphinx 8.1.x (max 8.1.3) because Sphinx 8.2.0+ requires Python >=3.11
  • Python 3.11+ continues to use Sphinx 8.2+ as normal
  • Excluded Python 3.13 + Sphinx 6 from test matrix (generates 1870+ deprecation warnings from Sphinx 6's use of deprecated datetime.utcfromtimestamp())

Testing

  • All individual environment tests pass (py310-sphinx6/7/8, py311-sphinx8, py313-sphinx7)
  • Test fixtures properly differentiate between Sphinx 8.1.x and 8.2+ XML output formats
  • Test matrix: 11 environments covering Python 3.10-3.13 × Sphinx 6-8

References

  • Python 3.10 EOL: October 2026
  • Commit: 9926a7c

mmcky added 2 commits October 22, 2025 22:21
- Add Python 3.10 support back (removed in v1.1.0, EOL October 2026)
- Update test matrix to 11 environments (exclude py313-sphinx6 due to deprecation warnings)
- Implement version-specific Sphinx 8 constraints in tox.ini:
  * Python 3.10 limited to Sphinx 8.1.x (max 8.1.3)
  * Python 3.11+ uses Sphinx 8.2+ (Sphinx 8.2.0+ requires Python >=3.11)
- Add version detection logic to test files for fixture selection
- Create .sphinx8.1 fixtures for Python 3.10/Sphinx 8.1.x compatibility
- Update CI workflow to include Python 3.10 in test matrix
- Document changes in CHANGELOG.md with version limitations
@mmcky
Copy link
Member Author

mmcky commented Oct 22, 2025

@moorepants once I get the green ticks of approval this is looking good to go. Just tagging you for visibility. Thanks for the comment and request.

mmcky added 2 commits October 23, 2025 08:38
- Remove token requirement (codecov-action@v4 supports tokenless uploads for public repos)
- Set fail_ci_if_error to false to prevent CI failures if codecov has issues
- Keep codecov running on all events including PRs
- Update version to 1.1.1 in __init__.py
- Finalize CHANGELOG with v1.1.1 entry
- Add comprehensive v1.1.1 release notes
- Update releases documentation index

This patch release restores Python 3.10 support with full test coverage
across Python 3.10-3.13 and Sphinx 6-8.
@mmcky mmcky merged commit 53c0a6b into main Oct 22, 2025
14 checks passed
@mmcky mmcky deleted the python-310 branch October 22, 2025 21:45
@moorepants
Copy link

Thank you!

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.

3 participants