Skip to content

Publish the Python and JavaScript packages from GitHub releases - #9

Merged
john-aigora merged 2 commits into
mainfrom
chore/publishing
Sep 27, 2026
Merged

john-aigora merged 2 commits into
mainfrom
chore/publishing

Conversation

@john-aigora

Copy link
Copy Markdown
Contributor

The Python project becomes turfLP on PyPI (pip install turfLP, import turflp). The npm package stays turflp, because npm names must be lower case.

publish-python.yaml and publish-npm.yaml run when a GitHub release is published, or by hand. They use trusted publishing (OIDC), so no token is stored in the repository, and they fail if the release tag does not match the package version.

Setup outside the repository:

  • PyPI: a pending publisher for project turfLP, owner aigorahub, repository turfLP, workflow publish-python.yaml, environment pypi.
  • npm: the first version must be published by hand from an npm account (npm allows trusted publishing only for a package that exists). Then add a trusted publisher on npmjs.com: repository aigorahub/turfLP, workflow publish-npm.yaml, environment npm.

Local checks: uv build makes turflp-0.2.0 with metadata name turfLP, and twine check passes; npm pack --dry-run makes turflp-0.2.0.tgz (16 files, 45 kB).

The Python project is turfLP on PyPI (the module stays turflp), and the
npm package is turflp, since npm names are lower case. Two workflows
publish when a GitHub release is published, with trusted publishing, so
no token is stored in the repository. Each checks that the release tag
matches the package version. The READMEs give the registry install
commands.
A new job runs R CMD check --as-cran with TinyTeX, so the PDF manual is
built and checked, and fails on warnings. .Rbuildignore leaves out the
local .claude folder, which R CMD build had put in the tarball.
@john-aigora
john-aigora merged commit c939512 into main Sep 27, 2026
42 checks passed
@john-aigora
john-aigora deleted the chore/publishing branch September 27, 2026 14:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant