chore(release): fix 0.1.0 infrastructure, tooling, and documentation updates#13
Merged
Conversation
Contributor
CI Development Pipeline Status✅ Pipeline: Completed successfully. View Run Details |
There was a problem hiding this comment.
Pull request overview
This PR finalizes infrastructure, tooling, and documentation in preparation for the 0.1.0 release. It modernizes the MkDocs site, fixes CI/CD workflow issues (lychee link checker, pre-commit), bumps and reorganizes dev/docs dependencies (including an opentelemetry optional-deps group), and refactors src/gitversioned/logging.py (OTel formatter and filter handling) with accompanying unit tests.
Changes:
- Documentation modernization: README absolute links, restructured
docs/(guides/, GitHub workflows guide), and grid card layout rework acrossdocs/*/index.md. - CI/tooling fixes: pre-commit added to dev group, lychee args simplified, MkDocs theme/plugin updates,
DISABLE_MKDOCS_2_WARNINGenv var. - Core code:
_otel_formatternow exposestrace_flags/process.id, andconfigure_loggerhandles list/tuple/string/callable filters; tests extended withtrace_flagsandMockProcess.
Reviewed changes
Copilot reviewed 21 out of 22 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
uv.lock |
Auto-regenerated lockfile reflecting dep changes (adds ast-serialize, cfgv, etc., drops cairocffi/cairosvg/cffi). |
pyproject.toml |
Adds opentelemetry extra, pre-commit, bumps mypy to ~=2.1, removes mkdocs-material[imaging], adds DISABLE_MKDOCS_2_WARNING. |
mkdocs.yml |
Expanded theme features, new pymdownx extensions, removed social plugin, added validation block. |
.github/workflows/_link-check.yml |
Consolidated lychee args; dropped --exclude-mail (behavior change). |
.github/workflows/*.yml |
Header comment cleanups (cosmetic). |
README.md |
Converted relative doc links to absolute URLs for PyPI rendering. |
docs/index.md, docs/*/index.md |
Replaced grid cards blocks with manual <div class="grid"><div class="card"> HTML. |
docs/guides/github-workflows.md |
New guide for CI/CD workflows. |
src/gitversioned/__init__.py |
Re-exports logger, LoggingSettings, configure_logger; calls configure_logger() on import. |
src/gitversioned/logging.py |
Adds trace_flags/process_id to OTel record, escapes braces in formatter, expands filter handling. |
tests/unit/test_logging.py |
Adds trace_flags and MockProcess to OTel formatter test fixture. |
Comments suppressed due to low confidence (1)
tests/unit/test_logging.py:184
- The OTel formatter test only asserts that the substring
"trace_id"appears informatted_log. Because the formatter now double-escapes every brace before returning, this assertion would pass even when the output is not valid JSON. Add a test thatjson.loads(formatted_log.strip())round-trips successfully (or that the line emitted through loguru's pipeline parses as JSON), so the brace-escaping regression discussed elsewhere is caught.
if mock_opentelemetry:
with patch(
"gitversioned.logging.opentelemetry_trace", mock_trace
):
formatted_log = add_kwargs["format"](record)
assert "trace_id" in formatted_log
else:
assert add_kwargs["format"] == settings.format
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR finalizes the repository infrastructure and documentation in preparation for the
0.1.0release. Key changes include:divwrappers with native MkDocs Material Attribute Lists ({ .grid .cards }) for cleaner grid layouts. Converted relative links inREADME.mdto absolute URLs to ensure correct rendering on external platforms like PyPI. Restructured thedocs/hierarchy, moving configuration content toguides/, and introduced a new GitHub CI/CD workflows guide.pre-commit: not foundCI error, fixed invalid arguments in thelycheelink checker workflow, and updated core dependencies inpyproject.toml(including the addition of an OpenTelemetry dependency group).src/gitversioned/logging.pyto correctly format__main__entry points without requiring custom logger patches, and added supporting unit tests.Type of Change
README.md,SUPPORT.md, docstrings, etc.)Test Plan
hatch run docs:serve) to confirm grid card layouts and new guide pages render correctly.__main__logging output via the updated unit tests (test_logging.py).Related Issues
Screenshots / Visuals (if applicable)
(No visual changes applicable for the core logic, though MkDocs layout adjustments can be observed in the generated site)
Use of AI
## WRITTEN BY AI ##)Checklist
Important
Please review and complete this checklist before submitting your PR. This helps our maintainers process your contribution faster and ensures it meets the quality standards of
gitversioned.gitversioned.