Repository navigation
chore(release): prepare json-logging 1.6.0 - #132
Conversation
|
ⓘ Qodo reviews are paused because the subscription is no longer active. Ask your workspace admin to reactivate the subscription to resume reviews. Manage billing |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Walkthrough
Merge Risk: ⚪ Minimal · up to
|
Bump the version to 1.6.0 and collect the changelog into a 1.6.0 section covering every change merged since 1.5.1: - Added: json_logging.EXCLUDED_FIELDS (#129, fixes #98) - Fixed: FastAPI request-context propagation (#123, fixes #124); outside-request correlation IDs in Flask, Quart and Connexion (#127, fixes #125); non-web get_correlation_id() (#128, fixes #126); Sanic 24+ logging config (#133) - Documentation: FastAPI/Uvicorn startup (#130, fixes #106); Gunicorn and Flask example (#131, fixes #25) - Compatibility: default output unchanged unless EXCLUDED_FIELDS is set; the framework behaviour changes; Python 3.9+ FastAPI context path; CI coverage The previous 'other integrations unchanged' and 'no change to the JSON schema' statements are replaced, since they do not hold for the whole release. The date is added when the release is cut. No library code change.
1fafa26 to
ae3ca2b
Compare
json-logging 1.6.0: release preparation
Prepares 1.6.0 (from 1.5.1). The branch is one commit on master
ae87370and changes onlysetup.py(version1.5.1→1.6.0) andCHANGELOG.md.Nothing has been published. No tag, GitHub Release, TestPyPI or PyPI upload. The only workflow (
code_quality.yml) runs tests on pushes and pull requests to master; merging this PR does not publish anything.What 1.6.0 contains (all merged)
json_logging.EXCLUDED_FIELDS-outside requests instead of random IDs; Connexion 3 error handlers and middleware keep supplied headersget_correlation_id()returns-instead of raisingformatkeysChangelog
## Unreleased(empty), then## 1.6.0with Added / Fixed / Documentation / Compatibility. Each PR and issue appears once.The two old statements were replaced because they don't hold for the whole release: "other framework integrations and shared utilities are unchanged" and "no change to the JSON schema, field names or default output". Compatibility now says:
EXCLUDED_FIELDSis set;There's no date in the heading. Following the existing
## X.Y.Z - YYYY-MM-DDconvention, add it when the release is cut.Package validation
Built from a
git archiveofae3ca2bwithpython -m build(setuptools 84.2.1, isolated):json_logging-1.6.0-py2.py3-none-any.whlee3fe974079607dd819888556d2dc14ce782a3dc816f04de9d15ac93f635f1b5json_logging-1.6.0.tar.gz597d1acc0f9f1e4507c07db8b407cff2df943b03ef6889324cbc6f568008a309twine check: PASSED for both. One warning, which also affected 1.5.1:long_description_content_typeis missing.Name: json-logging,Version: 1.6.0.json_loggingpackage (13 modules) plusdist-info, withtop_level.txt=json_logging. Notestsorexamplepackages, and no runtime dependencies.universal=1) are not new in this release; follow-up.Clean installs. Fresh Python 3.13 virtual environments outside the repository, with nothing on
PYTHONPATH. One installed the wheel, the other the sdist. Both reportjson-logging1.6.0 loaded from site-packages, and each scenario ran in its ownpython -Iinterpreter:EXCLUDED_FIELDS == (),get_correlation_id() == "-", JSON with all standard fields["written_ts"]: field absent,written_at/msg/others keptEXCLUDED_FIELDS→TypeError, corrected retry works, duplicate init still rejectedwritten_tsabsent,-afterwards-outside requests; header and generated IDs shared by app and request logsGunicorn with the installed wheel (the example copied out of the repo, configured with 2 workers, sync worker class):
worker readyrecords, both-);Worker exitingis JSON with-.Tests and CI
bind()is refused with EPERM.ae3ca2b: 15/15. Unit tests on Python 3.9–3.14; Flask/Quart/FastAPI/Sanic smoke tests on 3.9 and 3.14; Flake8. Run: https://github.com/bobbui/json-logging-python/actions/runs/39531735116CI=true, which makes the Gunicorn module fail instead of skip if gunicorn is missing.Remaining before publication (maintainer)
## 1.6.0.1.6.0on the merged commit, and rebuild from the tag.twine check, then upload with the project's PyPI credentials.Summary by CodeRabbit
New Features
Bug Fixes
Documentation
Compatibility