Repository navigation
build: make the package publishable to PyPI (0.3.2) - #7
Merged
Merged
Conversation
Sort imports, drop unused ones, remove trailing whitespace, split semicolon-joined and colon-joined statements, and wrap the lines over 120 characters. No behaviour change.
Add the BSD-3-Clause LICENSE file the metadata already declared, a py.typed marker, and the PyPI metadata that was missing: SPDX licence expression, classifiers, keywords and project URLs. The dev extra now installs everything the test suite needs; matplotlib moves to an examples extra and requirements-dev.txt installs both. Add GitHub Actions: lint and tests on every push and pull request across Python 3.10 to 3.13, and a publish workflow that builds, checks and uploads to PyPI on a v* tag through trusted publishing after verifying the tag matches the package version. Put the changelog in order, add the missing 0.2.0 entry, and point the README at pip install dhis2-client.
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.
Packaging and hygiene only; no client behaviour changes. Needed so Open Climate Service can depend on
dhis2-clientas a normal extra instead of a git pin (CLIM-1142).What was missing
LICENSEfile, although the metadata declared BSD-3-Clause.py.typed.devextra lackedrespxandpython-dotenv, sopip install -e .[dev]followed bypytestfailed at the conftest import.Changes
LICENSE,py.typed, SPDX licence expression, classifiers, URLs, keywords; version 0.3.2.devextra completed;examplesextra for matplotlib;requirements-dev.txtinstalls both..github/workflows/test.yml: ruff and pytest on Python 3.10 to 3.13 for pushes and PRs..github/workflows/publish.yml: on av*tag, verify the tag matches the version, build,twine check, upload with PyPI trusted publishing (no stored token).Verified
ruff check .clean. 54 unit tests pass.uv buildandtwine checkpass; the wheel containslicenses/LICENSE,py.typed, 12 classifiers and the project URLs.Before tagging
dhis2/dhis2-python-client, workflowpublish.yml, environmentpypi.pypienvironment in this repository's settings.v0.3.2on the merge commit. The strayV0.3.0tag (capital V, on a different commit from the 0.3.0 release) should be deleted so it never matches thev*trigger by accident on a case-insensitive client.