documenteer 2.1.1__tar.gz → 2.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- documenteer-2.3.0/.claude/.gitignore +2 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/CHANGELOG.md +38 -0
- documenteer-2.3.0/CLAUDE.md +98 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/PKG-INFO +1 -1
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/rst-technote/index.rst +1 -1
- documenteer-2.3.0/demo/rst-technote/local.bib +10 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/Makefile +1 -1
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/_rst_epilog.rst +1 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/changelog.md +38 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/dev/api/documenteer.ext.rst +8 -2
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/documenteer.toml +2 -1
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/configuration.rst +5 -2
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/index.rst +5 -5
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/technotes/_templates/README.md +1 -1
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/technotes/_templates/README.rst +1 -1
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/technotes/edit-locally.rst +1 -1
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/technotes/index.rst +1 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/technotes/migrate.rst +55 -66
- documenteer-2.3.0/docs/technotes/references.rst +135 -0
- documenteer-2.3.0/docs/technotes/start-a-technote.rst +45 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/conf/_utils.py +9 -5
- documenteer-2.3.0/src/documenteer/ext/bibtex.py +170 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/ext/jira.py +3 -1
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/ext/lsstdocushare.py +2 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/ext/mockcoderefs.py +3 -1
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/ext/openapi.py +1 -1
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/ext/remotecodeblock.py +39 -2
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/ext/robots.py +1 -1
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/storage/localtemplates/technote/README.rst +1 -1
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/storage/localtemplates/technote/pre-commit-config.yaml +1 -1
- documenteer-2.3.0/src/documenteer/storage/localtemplates/technote/requirements.txt +1 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer.egg-info/PKG-INFO +1 -1
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer.egg-info/SOURCES.txt +5 -0
- documenteer-2.3.0/tests/storage/__init__.py +0 -0
- documenteer-2.1.1/docs/technotes/start-a-technote.rst +0 -35
- documenteer-2.1.1/src/documenteer/ext/bibtex.py +0 -57
- documenteer-2.1.1/src/documenteer/storage/localtemplates/technote/requirements.txt +0 -1
- {documenteer-2.1.1/src/documenteer/templates/technote → documenteer-2.3.0/.claude/tasks}/.gitkeep +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.flake8 +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.github/CODE_OF_CONDUCT.md +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.github/CONTRIBUTING.md +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.github/SUPPORT.md +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.github/dependabot.yml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.github/workflows/ci-cron.yaml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.github/workflows/ci.yaml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.gitignore +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.npmrc +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.nvmrc +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.pre-commit-config.yaml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.prettierignore +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.prettierrc.yaml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.vscode/settings.json +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/.vscode/tasks.json +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/LICENSE +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/MANIFEST.in +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/Makefile +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/README.md +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/changelog.d/_template.md.jinja +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/ipynb-technote/.gitignore +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/ipynb-technote/Makefile +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/ipynb-technote/conf.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/ipynb-technote/diagram.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/ipynb-technote/extra-notebook.ipynb +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/ipynb-technote/index.ipynb +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/ipynb-technote/subdir/subdir-notebook.ipynb +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/ipynb-technote/technote.toml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/md-technote/.gitignore +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/md-technote/Makefile +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/md-technote/conf.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/md-technote/diagram.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/md-technote/index.md +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/md-technote/technote.toml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/rst-technote/.gitignore +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/rst-technote/Makefile +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/rst-technote/conf.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/rst-technote/diagram.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/demo/rst-technote/technote.toml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/.gitignore +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/conf.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/dev/api/documenteer.conf.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/dev/api/index.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/dev/development.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/dev/html-templates.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/dev/index.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/dev/release.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/dev/theme-assets.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/dev/theme.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/badges.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/configuration-preset.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/diagrams.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/extend-conf-py.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/including-notebooks.ipynb +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/index.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/markdown-primer.md +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/openapi.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/organization.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/overview.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/page-redirects.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/pyproject-configuration.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/rst-epilog.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/tabsets.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/toml-reference.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/guides/video-embeds.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/sphinx-extensions/docushare-reference.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/sphinx-extensions/githubbibcache.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/sphinx-extensions/index.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/sphinx-extensions/jira-reference.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/sphinx-extensions/lsst-pybtex-style.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/sphinx-extensions/openapi.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/sphinx-extensions/remote-code-block.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/technotes/author-metadata.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/technotes/configuration.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/technotes/document-status.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/technotes/edit-on-github.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/technotes/extensions.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/technotes/how-your-technote-gets-published.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/docs/technotes/wide-content.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/licenses/README.md +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/licenses/astropy-helpers.txt +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/licenses/sphinx-issue.txt +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/licenses/sphinx.txt +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/licenses/sphinxcontrib-redoc.txt +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/package-lock.json +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/package.json +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/postcss.config.js +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/pyproject.toml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/ruff-shared.toml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/setup.cfg +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/assets/rubin-technote/styles/SourceSans3VF-Italic.ttf.woff2 +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/assets/rubin-technote/styles/SourceSans3VF-Upright.ttf.woff2 +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/assets/rubin-technote/styles/_hacks.scss +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/assets/rubin-technote/styles/_properties.scss +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/assets/rubin-technote/styles/components/_article-header.scss +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/assets/rubin-technote/styles/components/_authors.scss +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/assets/rubin-technote/styles/components/_global-breadcrumbs.scss +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/assets/rubin-technote/styles/components/_index.scss +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/assets/rubin-technote/styles/components/_sidebar-section.scss +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/assets/rubin-technote/styles/components/_version-info.scss +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/assets/rubin-technote/styles/rubin-technote.scss +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/__init__.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/_packagemetadata.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/_requestsutils.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/_utils.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/.gitignore +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/731c8feefe13e72a8691.woff2 +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/b8bc3440ba2145e132f5.woff2 +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/favicon.ico +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/rsd-assets/rubin-imagotype-color-on-black-crop.svg +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/rsd-assets/rubin-imagotype-color-on-white-crop.svg +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/rubin-favicon-transparent-32px.png +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/rubin-favicon.svg +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/rubin-pydata-theme.css +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/rubin-technote.css +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/rubin-technote.css.map +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/rubin-titlebar-imagotype-dark.svg +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/rubin-titlebar-imagotype-light.svg +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/scripts/rubin-technote.js +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/assets/scripts/rubin-technote.js.map +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/cli.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/conf/__init__.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/conf/_toml.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/conf/guide.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/conf/technote.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/ext/__init__.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/ext/githubbibcache.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/ext/redoc/__init__.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/ext/redoc/_redoc.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/ext/redoc/assets/redoc.html.jinja2 +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/py.typed +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/services/__init__.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/services/technoteauthor.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/services/technotemigration.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/storage/__init__.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/storage/authordb.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/storage/latex.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/storage/localtemplates/technote/Makefile +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/storage/localtemplates/technote/ci.yaml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/storage/localtemplates/technote/conf.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/storage/localtemplates/technote/dependabot.yml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/storage/localtemplates/technote/gitignore +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/storage/localtemplates/technote/tox.ini +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/storage/localtemplates.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/storage/technotetoml.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/templates/pydata/autosummary_core/exception.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/templates/pydata/autosummary_core/pydantic_model.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/templates/pydata/layout.html +0 -0
- {documenteer-2.1.1/src/documenteer/templates/technote/components → documenteer-2.3.0/src/documenteer/templates/technote}/.gitkeep +0 -0
- {documenteer-2.1.1/src/documenteer/templates/technote/sections → documenteer-2.3.0/src/documenteer/templates/technote/components}/.gitkeep +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/templates/technote/components/sidebar-source.html +0 -0
- /documenteer-2.1.1/tests/__init__.py → /documenteer-2.3.0/src/documenteer/templates/technote/sections/.gitkeep +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/templates/technote/sections/header-article.html +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/templates/technote/sections/sidebar-primary.html +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer/version.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer.egg-info/dependency_links.txt +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer.egg-info/entry_points.txt +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer.egg-info/requires.txt +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/src/documenteer.egg-info/top_level.txt +0 -0
- {documenteer-2.1.1/tests/ext → documenteer-2.3.0/tests}/__init__.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/conftest.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/data/afw.doxygen.conf +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/data/authordb.yaml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/data/doxygen.tag.zip +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/data/package_alpha/doc/_static/package_alpha/README.md +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/data/package_alpha/doc/doxygen.conf.in +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/data/package_alpha/doc/manifest.yaml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/data/package_alpha/doc/package.alpha/index.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/data/package_alpha/doc/package_alpha/index.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/data/package_alpha/include/README.md +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/data/package_alpha/src/README.md +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/data/package_beta/doc/README.md +0 -0
- {documenteer-2.1.1/tests/services → documenteer-2.3.0/tests/ext}/__init__.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/ext/jira_test.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/ext/lsstdocushare_test.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/ext/mockcoderefs_test.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/ext/redoc_test.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/ext/robots_test.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/packagemetadata_test.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-autocppapi/conf.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-autocppapi/doxygen.tag.zip +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-autocppapi/index.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-redoc/_static/openapi.json +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-redoc/api.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-redoc/conf.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-redoc/documenteer.toml +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-redoc/index.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-robots-nositemap/conf.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-robots-nositemap/index.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-robots-nositemap/page1.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-robots-sitemap/conf.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-robots-sitemap/index.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-robots-sitemap/page1.rst +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/roots/test-robots-sitemap/page2.rst +0 -0
- {documenteer-2.1.1/tests/storage → documenteer-2.3.0/tests/services}/__init__.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/services/technotemigration_test.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/storage/authordb_test.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/storage/technotetoml_test.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/test_conf_toml.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tests/test_conf_utils.py +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/tox.ini +0 -0
- {documenteer-2.1.1 → documenteer-2.3.0}/webpack.config.js +0 -0
|
@@ -2,6 +2,44 @@
|
|
|
2
2
|
|
|
3
3
|
<!-- scriv-insert-here -->
|
|
4
4
|
|
|
5
|
+
<a id='changelog-2.3.0'></a>
|
|
6
|
+
## 2.3.0 (2025-09-03)
|
|
7
|
+
|
|
8
|
+
### New features
|
|
9
|
+
|
|
10
|
+
- Improved configuration defaults for `documenteer.conf.guide` and `documenteer.conf.technote`:
|
|
11
|
+
|
|
12
|
+
- Add `sentry_sdk` to default non-intersphinx packages
|
|
13
|
+
- Ignore `TypeAliasType` due to sphinx bug
|
|
14
|
+
- Ignore `asyncio.Event`, it has the same problem as `asyncio.Lock`
|
|
15
|
+
|
|
16
|
+
- [ASCL](https://ascl.net) identifiers in bibliography entries are now hyperlinked.
|
|
17
|
+
|
|
18
|
+
### Bug fixes
|
|
19
|
+
|
|
20
|
+
- Vendored `parse_line_num_spec` from Sphinx to accommodate differences between Sphinx 7 and 8.
|
|
21
|
+
- Fix `nitpick_ignore_regex` regexes, they weren't being applied due to a missing `.`
|
|
22
|
+
|
|
23
|
+
### Other changes
|
|
24
|
+
|
|
25
|
+
- Added documentation on creating bibliographies in technotes.
|
|
26
|
+
|
|
27
|
+
<a id='changelog-2.2.0'></a>
|
|
28
|
+
## 2.2.0 (2025-08-06)
|
|
29
|
+
|
|
30
|
+
### New features
|
|
31
|
+
|
|
32
|
+
- Updated the `documenteer technote migrate` command to use Documenteer 2.0 for new technotes.
|
|
33
|
+
- Technote migration documentation now uses uv/uvx for running migration tools.
|
|
34
|
+
- Improved the formatting for reference section in technotes with the Rubin BibTeX style:
|
|
35
|
+
|
|
36
|
+
- If an entry has more than 7 authors, the first three authors are listed, followed by "and others."
|
|
37
|
+
- LaTeX macros for journals are now converted to their expected names in the bibliography.
|
|
38
|
+
|
|
39
|
+
### Other changes
|
|
40
|
+
|
|
41
|
+
- Cleanup the API documentation for cleaner documentation builds.
|
|
42
|
+
|
|
5
43
|
<a id='changelog-2.1.1'></a>
|
|
6
44
|
## 2.1.1 (2025-07-17)
|
|
7
45
|
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# CLAUDE.md
|
|
2
|
+
|
|
3
|
+
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
4
|
+
|
|
5
|
+
## Project Overview
|
|
6
|
+
|
|
7
|
+
Documenteer is a Python package that provides Sphinx documentation tools, extensions, and configurations for Rubin Observatory/LSST projects. It supports two main documentation types:
|
|
8
|
+
- **User guides**: Complete documentation sites using pydata-sphinx-theme
|
|
9
|
+
- **Technotes**: Single-document technical notes using the technote theme
|
|
10
|
+
|
|
11
|
+
## Development Commands
|
|
12
|
+
|
|
13
|
+
### Setup and Installation
|
|
14
|
+
```bash
|
|
15
|
+
make init # Initialize development environment
|
|
16
|
+
pip install -e ".[technote,guide]" --group dev # Install with all extras
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
### Testing and Quality Assurance
|
|
20
|
+
```bash
|
|
21
|
+
tox -e py-test-sphinx8 # Run tests with Sphinx 8.x
|
|
22
|
+
tox -e coverage-report # Generate coverage report
|
|
23
|
+
tox -e typing-sphinx8 # Run mypy type checking
|
|
24
|
+
tox -e lint # Run linting (pre-commit hooks + prettier)
|
|
25
|
+
tox -e demo # Build demo technote projects (end-to-end test)
|
|
26
|
+
tox -e packaging # Check PyPI packaging
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
### Documentation
|
|
30
|
+
```bash
|
|
31
|
+
tox -e docs # Build documentation
|
|
32
|
+
tox -e docs-lint # Check documentation links
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### Cleanup
|
|
36
|
+
```bash
|
|
37
|
+
make clean # Remove build artifacts
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Architecture
|
|
41
|
+
|
|
42
|
+
### Core Components
|
|
43
|
+
|
|
44
|
+
**Configuration System** (`src/documenteer/conf/`):
|
|
45
|
+
- `guide.py`: Sphinx configuration preset for user guides
|
|
46
|
+
- `technote.py`: Sphinx configuration preset for technotes
|
|
47
|
+
- `_toml.py`: TOML-based configuration models using Pydantic
|
|
48
|
+
- Uses pydata-sphinx-theme for guides, [technote](https://github.com/lsst-sqre/technote) package for technotes
|
|
49
|
+
|
|
50
|
+
**Sphinx Extensions** (`src/documenteer/ext/`):
|
|
51
|
+
- `jira.py`: JIRA ticket references
|
|
52
|
+
- `lsstdocushare.py`: LSST DocuShare document links
|
|
53
|
+
- `openapi.py`: OpenAPI documentation integration
|
|
54
|
+
- `githubbibcache.py`: GitHub-based bibliography caching
|
|
55
|
+
- `bibtex.py`: Enhanced BibTeX support
|
|
56
|
+
- `remotecodeblock.py`: Remote code inclusion
|
|
57
|
+
- `mockcoderefs.py`: Mock code references for testing
|
|
58
|
+
- `redoc.py`: Redoc integration for HTTP API documentation
|
|
59
|
+
- `robots.py`: robots.txt generation
|
|
60
|
+
|
|
61
|
+
**CLI Tools** (`src/documenteer/cli.py`):
|
|
62
|
+
- `technote add-author`: Add authors to technote.toml from authordb
|
|
63
|
+
- `technote sync-authors`: Sync author info from central database
|
|
64
|
+
- `technote migrate`: Migrate legacy technotes to modern format
|
|
65
|
+
|
|
66
|
+
**Services** (`src/documenteer/services/`):
|
|
67
|
+
- `technoteauthor.py`: Author management for technotes
|
|
68
|
+
- `technotemigration.py`: Legacy technote migration logic
|
|
69
|
+
|
|
70
|
+
### Key Design Patterns
|
|
71
|
+
|
|
72
|
+
- **Configuration as Code**: Sphinx configurations are Python modules that can be imported
|
|
73
|
+
- **Pydantic Models**: TOML configuration validation using type-safe models
|
|
74
|
+
- **Extension Architecture**: Modular Sphinx extensions for specific Rubin/LSST needs
|
|
75
|
+
- **Theme Integration**: Tight integration with pydata-sphinx-theme and technote themes
|
|
76
|
+
|
|
77
|
+
### Testing Strategy
|
|
78
|
+
|
|
79
|
+
- Uses tox for multi-environment testing across Sphinx versions
|
|
80
|
+
- Sphinx test roots in `tests/roots/` for extension testing
|
|
81
|
+
- Coverage reporting with branch coverage
|
|
82
|
+
- Type checking with mypy
|
|
83
|
+
- Pre-commit hooks for code quality
|
|
84
|
+
|
|
85
|
+
### Code Style
|
|
86
|
+
|
|
87
|
+
- Follows ruff formatting (run lint command to automatically format)
|
|
88
|
+
- Numpydoc docstrings with types omitted (Sphinx documentation uses type annotations)
|
|
89
|
+
|
|
90
|
+
### Asset Management
|
|
91
|
+
|
|
92
|
+
Static assets are managed in `src/documenteer/assets/` including:
|
|
93
|
+
- Custom CSS and SCSS for Rubin branding
|
|
94
|
+
- JavaScript enhancements
|
|
95
|
+
- Favicon and logo assets
|
|
96
|
+
- Font files (Source Sans Pro)
|
|
97
|
+
|
|
98
|
+
Built assets are compiled using webpack with PostCSS processing.
|
|
@@ -29,7 +29,7 @@ A list:
|
|
|
29
29
|
- Second item
|
|
30
30
|
- Third item
|
|
31
31
|
|
|
32
|
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin facilisis pharetra neque, at semper nulla mattis auctor. Proin semper mollis enim eget interdum. Mauris eleifend eget diam vitae bibendum. Praesent ut aliquet odio, sodales imperdiet nisi. Nam interdum imperdiet tortor sed fringilla. Maecenas efficitur mi sodales nulla commodo rutrum. Ut ornare diam quam, sed commodo turpis aliquam et. In nec enim consequat, suscipit tortor sit amet, luctus ante. Integer dictum augue diam, non pulvinar massa euismod in. Morbi viverra condimentum auctor. Nullam et metus mauris. Cras risus ex, porta sit amet nibh et, dapibus auctor leo.
|
|
32
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin facilisis pharetra neque, at semper nulla mattis auctor. Proin semper mollis enim eget interdum. Mauris eleifend eget diam vitae bibendum. Praesent ut aliquet odio, sodales imperdiet nisi. Nam interdum imperdiet tortor sed fringilla. Maecenas efficitur mi sodales nulla commodo rutrum. Ut ornare diam quam, sed commodo turpis aliquam et. In nec enim consequat, suscipit tortor sit amet, luctus ante. Integer dictum augue diam, non pulvinar massa euismod in. Morbi viverra condimentum auctor. Nullam et metus mauris. Cras risus ex, porta sit amet nibh et, dapibus auctor leo. :cite:`2010ascl.soft10043C`
|
|
33
33
|
|
|
34
34
|
.. code-block:: python
|
|
35
35
|
:caption: hello.py
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
@software{2010ascl.soft10043C,
|
|
2
|
+
author = {{Conroy}, Charlie and {Gunn}, James E.},
|
|
3
|
+
title = "{FSPS: Flexible Stellar Population Synthesis}",
|
|
4
|
+
howpublished = {Astrophysics Source Code Library, record ascl:1010.043},
|
|
5
|
+
year = 2010,
|
|
6
|
+
month = oct,
|
|
7
|
+
eid = {ascl:1010.043},
|
|
8
|
+
adsurl = {https://ui.adsabs.harvard.edu/abs/2010ascl.soft10043C},
|
|
9
|
+
adsnote = {Provided by the SAO/NASA Astrophysics Data System}
|
|
10
|
+
}
|
|
@@ -62,6 +62,7 @@
|
|
|
62
62
|
.. _`authordb.yaml`: https://github.com/lsst/lsst-texmf/blob/main/etc/authordb.yaml
|
|
63
63
|
.. _pipx: https://pipx.pypa.io
|
|
64
64
|
.. _`LSSTC Slack Workspace`: https://lsstc.slack.com
|
|
65
|
+
.. _`uv`: https://docs.astral.sh/uv/
|
|
65
66
|
|
|
66
67
|
.. |dmw-squarebot| replace:: `direct message with @squarebot <https://slack.com/app_redirect?app=A07PWG9UG9M&team=T02SVMGU4>`__
|
|
67
68
|
|
|
@@ -2,6 +2,44 @@
|
|
|
2
2
|
|
|
3
3
|
<!-- scriv-insert-here -->
|
|
4
4
|
|
|
5
|
+
<a id='changelog-2.3.0'></a>
|
|
6
|
+
## 2.3.0 (2025-09-03)
|
|
7
|
+
|
|
8
|
+
### New features
|
|
9
|
+
|
|
10
|
+
- Improved configuration defaults for `documenteer.conf.guide` and `documenteer.conf.technote`:
|
|
11
|
+
|
|
12
|
+
- Add `sentry_sdk` to default non-intersphinx packages
|
|
13
|
+
- Ignore `TypeAliasType` due to sphinx bug
|
|
14
|
+
- Ignore `asyncio.Event`, it has the same problem as `asyncio.Lock`
|
|
15
|
+
|
|
16
|
+
- [ASCL](https://ascl.net) identifiers in bibliography entries are now hyperlinked.
|
|
17
|
+
|
|
18
|
+
### Bug fixes
|
|
19
|
+
|
|
20
|
+
- Vendored `parse_line_num_spec` from Sphinx to accommodate differences between Sphinx 7 and 8.
|
|
21
|
+
- Fix `nitpick_ignore_regex` regexes, they weren't being applied due to a missing `.`
|
|
22
|
+
|
|
23
|
+
### Other changes
|
|
24
|
+
|
|
25
|
+
- Added documentation on creating bibliographies in technotes.
|
|
26
|
+
|
|
27
|
+
<a id='changelog-2.2.0'></a>
|
|
28
|
+
## 2.2.0 (2025-08-06)
|
|
29
|
+
|
|
30
|
+
### New features
|
|
31
|
+
|
|
32
|
+
- Updated the `documenteer technote migrate` command to use Documenteer 2.0 for new technotes.
|
|
33
|
+
- Technote migration documentation now uses uv/uvx for running migration tools.
|
|
34
|
+
- Improved the formatting for reference section in technotes with the Rubin BibTeX style:
|
|
35
|
+
|
|
36
|
+
- If an entry has more than 7 authors, the first three authors are listed, followed by "and others."
|
|
37
|
+
- LaTeX macros for journals are now converted to their expected names in the bibliography.
|
|
38
|
+
|
|
39
|
+
### Other changes
|
|
40
|
+
|
|
41
|
+
- Cleanup the API documentation for cleaner documentation builds.
|
|
42
|
+
|
|
5
43
|
<a id='changelog-2.1.1'></a>
|
|
6
44
|
## 2.1.1 (2025-07-17)
|
|
7
45
|
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
documenteer.ext
|
|
3
3
|
###############
|
|
4
4
|
|
|
5
|
-
.. automodapi:: documenteer.ext.openapi
|
|
6
|
-
|
|
7
5
|
.. automodapi:: documenteer.ext.bibtex
|
|
8
6
|
:no-inherited-members:
|
|
9
7
|
:no-inheritance-diagram:
|
|
10
8
|
|
|
9
|
+
.. automodapi:: documenteer.ext.githubbibcache
|
|
10
|
+
|
|
11
11
|
.. automodapi:: documenteer.ext.jira
|
|
12
12
|
:no-inheritance-diagram:
|
|
13
13
|
|
|
@@ -16,3 +16,9 @@ documenteer.ext
|
|
|
16
16
|
|
|
17
17
|
.. automodapi:: documenteer.ext.mockcoderefs
|
|
18
18
|
:no-inheritance-diagram:
|
|
19
|
+
|
|
20
|
+
.. automodapi:: documenteer.ext.openapi
|
|
21
|
+
|
|
22
|
+
.. automodapi:: documenteer.ext.remotecodeblock
|
|
23
|
+
|
|
24
|
+
.. automodapi:: documenteer.ext.robots
|
|
@@ -18,11 +18,14 @@ How you do this depends on your project's packaging structure:
|
|
|
18
18
|
.. code-block:: toml
|
|
19
19
|
:caption: pyproject.toml
|
|
20
20
|
|
|
21
|
-
[
|
|
22
|
-
|
|
21
|
+
[dependency-groups]
|
|
22
|
+
docs = [
|
|
23
23
|
"documenteer[guide]"
|
|
24
24
|
]
|
|
25
25
|
|
|
26
|
+
Dependency groups are a way organize development dependencies and are supported by `uv <https://docs.astral.sh/uv/concepts/projects/dependencies/#development-dependencies>`__.
|
|
27
|
+
Dependency groups are preferred over earlier methods of specifying optional dependencies because they are not published as installable dependencies from PyPI.
|
|
28
|
+
|
|
26
29
|
.. tab-item:: requirements.txt
|
|
27
30
|
|
|
28
31
|
.. code-block:: text
|
|
@@ -56,15 +56,15 @@ Installation
|
|
|
56
56
|
|
|
57
57
|
.. code-block:: sh
|
|
58
58
|
|
|
59
|
-
conda install documenteer
|
|
59
|
+
conda install lsst-documenteer
|
|
60
60
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
To install Documenteer for technote projects:
|
|
61
|
+
For user guide projects:
|
|
64
62
|
|
|
65
63
|
.. code-block:: sh
|
|
66
64
|
|
|
67
|
-
conda-install lsst-documenteer-
|
|
65
|
+
conda-install lsst-documenteer-guide
|
|
66
|
+
|
|
67
|
+
*Conda distributions aren't available for technote projects at this time.*
|
|
68
68
|
|
|
69
69
|
Project guides
|
|
70
70
|
==============
|
|
@@ -16,7 +16,7 @@ A short description of this document.
|
|
|
16
16
|
|
|
17
17
|
## Build this technical note
|
|
18
18
|
|
|
19
|
-
You can clone this repository and build the technote locally if your system has Python 3.
|
|
19
|
+
You can clone this repository and build the technote locally if your system has Python 3.12 or later:
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
22
|
git clone https://github.com/lsst/example-000
|
|
@@ -22,7 +22,7 @@ A short description of this document.
|
|
|
22
22
|
Build this technical note
|
|
23
23
|
=========================
|
|
24
24
|
|
|
25
|
-
You can clone this repository and build the technote locally if your system has Python 3.
|
|
25
|
+
You can clone this repository and build the technote locally if your system has Python 3.12 or later:
|
|
26
26
|
|
|
27
27
|
.. code-block:: bash
|
|
28
28
|
|
|
@@ -34,7 +34,7 @@ Because of that, you don't need to rely on a specific Rubin Conda environment to
|
|
|
34
34
|
.. important::
|
|
35
35
|
|
|
36
36
|
Tox and pre-commit generally use the Python that they were installed with.
|
|
37
|
-
Documenteer requires Python 3.
|
|
37
|
+
Documenteer requires Python 3.12 or later.
|
|
38
38
|
To check what version of Python you have, run:
|
|
39
39
|
|
|
40
40
|
.. prompt:: bash
|
|
@@ -5,7 +5,7 @@ Migrate legacy reStructuredText/Sphinx technical notes
|
|
|
5
5
|
######################################################
|
|
6
6
|
|
|
7
7
|
Introduced in December 2023, Rubin Observatory has a new technical note format for Markdown and reStructuredText documents.
|
|
8
|
-
This update provides many `new features <https://community.lsst.org/t/the-next-generation-of-rubin-observatory-technotes-with-documenteer-1-0/8166>`__
|
|
8
|
+
This update provides many `new features <https://community.lsst.org/t/the-next-generation-of-rubin-observatory-technotes-with-documenteer-1-0/8166>`__ including a responsive and branded page design, Markdown support, improved build configuration, automated bibliography management, and citation-ready metadata.
|
|
9
9
|
|
|
10
10
|
This page shows how to migrate your existing technotes with a command-line tool that largely automates the process.
|
|
11
11
|
This page also provides file-by-file notes in case you need to revise the migration.
|
|
@@ -16,39 +16,17 @@ This page also provides file-by-file notes in case you need to revise the migrat
|
|
|
16
16
|
|
|
17
17
|
LaTeX-format technotes are unaffected by this migration.
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
Use the migration tool
|
|
20
|
+
======================
|
|
21
21
|
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
Documenteer provides a command-line tool, :command:`documenteer technote migrate`, to migrate legacy technotes to the new format.
|
|
23
|
+
The migration tool requires:
|
|
24
24
|
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
- Python 3.12 or later
|
|
26
|
+
- The :command:`uvx` command from the `uv`_ package
|
|
27
27
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
.. tab-set::
|
|
31
|
-
|
|
32
|
-
.. tab-item:: pip
|
|
33
|
-
|
|
34
|
-
.. prompt:: bash
|
|
35
|
-
|
|
36
|
-
python -m pip install pipx
|
|
37
|
-
|
|
38
|
-
.. tab-item:: conda-forge
|
|
39
|
-
|
|
40
|
-
.. prompt:: bash
|
|
41
|
-
|
|
42
|
-
conda install -c conda-forge pipx
|
|
43
|
-
|
|
44
|
-
.. tab-item:: homebrew
|
|
45
|
-
|
|
46
|
-
.. prompt:: bash
|
|
47
|
-
|
|
48
|
-
brew install pipx
|
|
49
|
-
|
|
50
|
-
Step 2. Clone your technote and create a branch
|
|
51
|
-
===============================================
|
|
28
|
+
Step 1. Clone your technote and create a branch
|
|
29
|
+
-----------------------------------------------
|
|
52
30
|
|
|
53
31
|
Since the migration is performed locally, you need to clone the repository:
|
|
54
32
|
|
|
@@ -60,12 +38,12 @@ Then create a branch for the migration (see the `Developer Guide <https://develo
|
|
|
60
38
|
|
|
61
39
|
.. code-block:: bash
|
|
62
40
|
|
|
63
|
-
git switch -c
|
|
41
|
+
git switch -c technote-migration
|
|
64
42
|
|
|
65
43
|
Working from a branch allows you to create a pull request to verify the migration before merging it into the main branch.
|
|
66
44
|
|
|
67
|
-
Step
|
|
68
|
-
|
|
45
|
+
Step 2. Look up author IDs
|
|
46
|
+
--------------------------
|
|
69
47
|
|
|
70
48
|
The migration tool needs the IDs of the technote's authors to fully configure the technote's metadata.
|
|
71
49
|
|
|
@@ -74,15 +52,39 @@ For example, ``sickj`` is the ID for Jonathan Sick.
|
|
|
74
52
|
|
|
75
53
|
.. _technote-migration-tool:
|
|
76
54
|
|
|
77
|
-
Step
|
|
78
|
-
|
|
55
|
+
Step 3. Run the migration tool
|
|
56
|
+
------------------------------
|
|
79
57
|
|
|
80
58
|
From the root of the cloned technote repository, run the migration tool, listing any identified authors that are relevant to your technote:
|
|
81
59
|
|
|
82
60
|
.. code-block:: bash
|
|
83
61
|
:caption: Set author IDs with the -a option
|
|
84
62
|
|
|
85
|
-
|
|
63
|
+
uvx documenteer technote migrate -a sickj -a economouf
|
|
64
|
+
|
|
65
|
+
.. dropdown:: Details for installing uv/uvx...
|
|
66
|
+
|
|
67
|
+
The migration tool needs **Python 3.12 or later**.
|
|
68
|
+
You can verify this by running ``python --version`` from your shell.
|
|
69
|
+
|
|
70
|
+
This official migration procedure uses the :command:`uvx` command from uv_ to install and run the migration tool in an isolated Python environment.
|
|
71
|
+
|
|
72
|
+
If you don't have the :command:`uvx` command-line tool already, you can install ``uv`` several ways:
|
|
73
|
+
|
|
74
|
+
.. tab-set::
|
|
75
|
+
|
|
76
|
+
.. tab-item:: pip
|
|
77
|
+
|
|
78
|
+
.. prompt:: bash
|
|
79
|
+
|
|
80
|
+
python -m pip install uv
|
|
81
|
+
|
|
82
|
+
.. tab-item:: homebrew
|
|
83
|
+
|
|
84
|
+
.. prompt:: bash
|
|
85
|
+
|
|
86
|
+
brew install uv
|
|
87
|
+
|
|
86
88
|
|
|
87
89
|
When the migration runs, it shows a summary of the files changed and deleted.
|
|
88
90
|
Use ``git diff`` to review the changes in case you need to make tweaks before committing.
|
|
@@ -91,22 +93,21 @@ If you want to learn more about the changes made by the migration tool, you can
|
|
|
91
93
|
|
|
92
94
|
.. _technote-migration-markdown:
|
|
93
95
|
|
|
94
|
-
Step
|
|
95
|
-
|
|
96
|
+
Step 4 (optional). Migrate to Markdown
|
|
97
|
+
--------------------------------------
|
|
96
98
|
|
|
97
99
|
The new technote format supports Markdown as well as reStructuredText.
|
|
98
100
|
If you wish to use Markdown, you can use MyST Parser's migration tool:
|
|
99
101
|
|
|
100
102
|
.. prompt:: bash
|
|
101
103
|
|
|
102
|
-
|
|
103
|
-
rst2myst convert index.rst
|
|
104
|
+
uvx --from "rst-to-myst[sphinx]" rst2myst convert index.rst
|
|
104
105
|
|
|
105
106
|
The Markdown flavor used by the new technote format is MyST Markdown, which is a superset of CommonMark Markdown with support for Sphinx roles and directives.
|
|
106
107
|
See the `MyST Parser documentation <https://myst-parser.readthedocs.io/en/latest/syntax/roles-and-directives.html#roles-directives>`__ for more information.
|
|
107
108
|
|
|
108
|
-
Step
|
|
109
|
-
|
|
109
|
+
Step 5 (optional). Build the technote locally
|
|
110
|
+
---------------------------------------------
|
|
110
111
|
|
|
111
112
|
You can build the technote locally to verify that the migrated technote compiles successfully.
|
|
112
113
|
|
|
@@ -136,8 +137,8 @@ You might also want to run the linter to check links and find common issues:
|
|
|
136
137
|
If you have any questions or issues about the build, you should still proceed with committing and creating a pull request (see next step).
|
|
137
138
|
This way you can link to the repository when you reach out for help in `#square-docs-support`_ on Slack.
|
|
138
139
|
|
|
139
|
-
Step
|
|
140
|
-
|
|
140
|
+
Step 6. Commit the migration, pull request, and merge
|
|
141
|
+
-----------------------------------------------------
|
|
141
142
|
|
|
142
143
|
At this point, you should have a working technote in the new format.
|
|
143
144
|
If you haven't already, commit your work, push your branch to the GitHub repository, and open a pull request.
|
|
@@ -225,26 +226,6 @@ The new technote format requires some changes to this file: the title is now par
|
|
|
225
226
|
Additionally, the new technote format supports Markdown as well as reStructuredText.
|
|
226
227
|
See :ref:`migrate to Markdown <technote-migration-markdown>` to learn how to switch to Markdown.
|
|
227
228
|
|
|
228
|
-
.. tip::
|
|
229
|
-
|
|
230
|
-
Besides these changes, your technote can also be written in Markdown (:file:`index.md`).
|
|
231
|
-
If you wish to switch from ReStructuredText to Markdown, you can use MyST Parser's migration tool:
|
|
232
|
-
|
|
233
|
-
.. prompt:: bash
|
|
234
|
-
|
|
235
|
-
pipx install "rst-to-myst[sphinx]"
|
|
236
|
-
rst2myst convert index.rst
|
|
237
|
-
|
|
238
|
-
This procedure uses pipx_ to install the ``rst-to-myst`` tool in an isolated Python environment (you might have already installed pipx_ to run the :ref:`main migration tool <technote-migration-tool>`).
|
|
239
|
-
|
|
240
|
-
Finally, delete the original :file:`index.rst` file and edit :file:`index.md` to fix any formatting issues.
|
|
241
|
-
|
|
242
|
-
.. prompt:: bash
|
|
243
|
-
|
|
244
|
-
git rm index.rst
|
|
245
|
-
git add index.md
|
|
246
|
-
git commit -m "Switch to Markdown format"
|
|
247
|
-
|
|
248
229
|
Title
|
|
249
230
|
~~~~~
|
|
250
231
|
|
|
@@ -254,6 +235,7 @@ Add the title to the top of the content:
|
|
|
254
235
|
.. tab-set::
|
|
255
236
|
|
|
256
237
|
.. tab-item:: rst
|
|
238
|
+
:sync: rst
|
|
257
239
|
|
|
258
240
|
.. code-block:: rst
|
|
259
241
|
:caption: index.rst
|
|
@@ -265,6 +247,7 @@ Add the title to the top of the content:
|
|
|
265
247
|
[... content below ...]
|
|
266
248
|
|
|
267
249
|
.. tab-item:: md
|
|
250
|
+
:sync: md
|
|
268
251
|
|
|
269
252
|
.. code-block:: md
|
|
270
253
|
:caption: index.md
|
|
@@ -287,6 +270,7 @@ The new technote format uses an ``abstract`` directive to mark up the abstract/s
|
|
|
287
270
|
.. tab-set::
|
|
288
271
|
|
|
289
272
|
.. tab-item:: rst
|
|
273
|
+
:sync: rst
|
|
290
274
|
|
|
291
275
|
.. code-block:: rst
|
|
292
276
|
:caption: index.rst
|
|
@@ -306,6 +290,7 @@ The new technote format uses an ``abstract`` directive to mark up the abstract/s
|
|
|
306
290
|
[... content below ...]
|
|
307
291
|
|
|
308
292
|
.. tab-item:: md
|
|
293
|
+
:sync: md
|
|
309
294
|
|
|
310
295
|
.. code-block:: md
|
|
311
296
|
:caption: index.md
|
|
@@ -330,6 +315,7 @@ In the new technote format, this section is simplified:
|
|
|
330
315
|
.. tab-set::
|
|
331
316
|
|
|
332
317
|
.. tab-item:: rst
|
|
318
|
+
:sync: rst
|
|
333
319
|
|
|
334
320
|
.. code-block:: rst
|
|
335
321
|
:caption: index.rst
|
|
@@ -342,6 +328,7 @@ In the new technote format, this section is simplified:
|
|
|
342
328
|
.. bibliography::
|
|
343
329
|
|
|
344
330
|
.. tab-item:: md
|
|
331
|
+
:sync: md
|
|
345
332
|
|
|
346
333
|
.. code-block:: md
|
|
347
334
|
:caption: index.md
|
|
@@ -402,7 +389,7 @@ To start, add a :file:`.pre-commit-config.yaml` file:
|
|
|
402
389
|
|
|
403
390
|
.. tip::
|
|
404
391
|
|
|
405
|
-
You can add additional pre-commit hooks to this file to
|
|
392
|
+
You can add additional pre-commit hooks to this file to suit your needs.
|
|
406
393
|
See Pre-commit's `directory of available hooks <https://pre-commit.com/hooks.html>`__ for ideas.
|
|
407
394
|
|
|
408
395
|
requirements.txt file (updated)
|
|
@@ -495,12 +482,14 @@ Here is a suggested README template for technotes in the new format:
|
|
|
495
482
|
.. tab-set::
|
|
496
483
|
|
|
497
484
|
.. tab-item:: rst
|
|
485
|
+
:sync: rst
|
|
498
486
|
|
|
499
487
|
.. literalinclude:: _templates/README.rst
|
|
500
488
|
:language: rst
|
|
501
489
|
:caption: README.rst
|
|
502
490
|
|
|
503
491
|
.. tab-item:: md
|
|
492
|
+
:sync: md
|
|
504
493
|
|
|
505
494
|
.. literalinclude:: _templates/README.md
|
|
506
495
|
:language: md
|