-
Notifications
You must be signed in to change notification settings - Fork 45
Adding Mkdocs and Simplifying Github Actions #318
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR modernizes the cdflib project by migrating from Sphinx to MkDocs for documentation and simplifying the CI/CD infrastructure. The changes consolidate project configuration into pyproject.toml following modern Python packaging standards.
Key changes:
- Migration from Sphinx (RST) to MkDocs (Markdown) for documentation
- Consolidation of package metadata from setup.cfg to pyproject.toml
- Simplified tox configuration and GitHub Actions workflows
- Updated PyPI publishing to use OIDC instead of API tokens
Reviewed changes
Copilot reviewed 40 out of 41 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
| tox.ini | Simplified tox environments, removed complex factor-based configuration |
| pyproject.toml | Added complete project metadata migrated from setup.cfg, including all dependencies and tool configurations |
| mkdocs.yml | New MkDocs configuration with Material theme and mkdocstrings for API documentation |
| setup.cfg | Removed - all configuration migrated to pyproject.toml |
| meta.yaml | Removed conda build configuration file |
| docs/*.md | New Markdown documentation files converted from RST format |
| doc/* | Removed all Sphinx-related files (conf.py, Makefile, make.bat, RST files) |
| cdflib/xarray/*.py | Updated docstrings to NumPy format compatible with mkdocstrings |
| cdflib/epochs*.py | Updated docstrings with code fence blocks for examples |
| cdflib/cdfread.py | Updated docstrings with code fence blocks for examples |
| cdflib/cdfwrite.py | Improved type hints by replacing io.BufferedWriter with BinaryIO |
| .github/workflows/ci.yml | Simplified CI workflow with direct tox execution instead of using OpenAstronomy workflows |
| .github/workflows/docs.yml | New workflow for building and deploying MkDocs documentation |
| .github/workflows/pypi-build.yaml | Updated to use trusted publisher (OIDC) for PyPI releases |
| .github/workflows/remote-tests.yaml | New scheduled workflow for remote data tests |
| .pre-commit-config.yaml | Updated isort config path and hook versions |
| README.md | Updated badge URL to reflect repository migration |
| LICENSE | Updated copyright year to 2025 |
| .readthedocs.yml | Removed - documentation now built via GitHub Actions |
| .circleci/config.yml | Removed CircleCI configuration |
| asv.conf.json | Removed ASV benchmark configuration |
| benchmarks/* | Removed benchmark files |
| archive/.appveyor.yml | Removed Appveyor configuration |
| codecov.yml | Removed codecov configuration file |
| .devcontainer/devcontainer.json | Added docs extra to installation requirements |
Comments suppressed due to low confidence (4)
docs/changelog.md:2
- The heading underlines in the changelog are inconsistent with Markdown syntax. In Markdown, the equals signs on line 2 create a level 1 heading for "Changelog", but this conflicts with the "Changelog" text on line 1. The proper Markdown format would be to use a single
#prefix:
# Changelog
## 1.3.6
### cdf_to_xarrayThe current mixed RST/Markdown syntax may not render correctly.
docs/cdfwrite.md:10
- The example code attempts to import
cdfwriteandcdfreadas standalone modules (lines 9-10), but these are actually classes within thecdflibpackage. The correct imports should be:
import cdflib
# Or use:
from cdflib import CDF
from cdflib.cdfwrite import CDF as CDFWriteThe current example will fail with an ImportError.
docs/cdfread.md:18
- Missing punctuation. The sentence on line 18 should end with a colon or period. Since it's followed by a code example, it should end with a colon:
For example:docs/changelog.md:5
- Similarly, the heading format for version "1.3.6" uses RST-style underlines with equals signs (line 5), which is inconsistent with Markdown. This should be changed to use
##for consistency:
## 1.3.6
### cdf_to_xarray💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Copilot reviewed 40 out of 41 changed files in this pull request and generated 11 comments.
Comments suppressed due to low confidence (3)
docs/cdfwrite.md:10
- The import statements reference
cdfwriteandcdfreadmodules directly, but the correct import should befrom cdflib import cdfreadandfrom cdflib import cdfwrite(orimport cdfliband then usecdflib.CDF). The current imports will fail.
docs/changelog.md:2 - The heading underline uses "=" characters (9 total), but the heading "Changelog" has 9 characters. In Markdown, this RST-style syntax is non-standard. For MkDocs, this should use
#for consistent Markdown heading syntax:# Changelog.
docs/changelog.md:5 - The heading underline uses "=" characters (5 total) for "1.3.6" (also 5 characters). In Markdown, this RST-style syntax is non-standard. For MkDocs, this should use
##for consistent Markdown heading syntax:## 1.3.6.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
docs/development.md
Outdated
| pip install .[docs] | ||
| ``` | ||
|
|
||
| This will install cdflib and all the packages need to make the documenation. |
Copilot
AI
Nov 21, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Spelling error: "documenation" should be "documentation".
.devcontainer/devcontainer.json
Outdated
| } | ||
| }, | ||
| "forwardPorts": [6080], | ||
| //Pip install the requriements, and then install the pre-commit hooks |
Copilot
AI
Nov 21, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Spelling error in comment: "requriements" should be "requirements".
| //Pip install the requriements, and then install the pre-commit hooks | |
| //Pip install the requirements, and then install the pre-commit hooks |
No description provided.