Skip to content

npm: Simplify release pipeline.#172

Open
laurensvalk wants to merge 5 commits into
masterfrom
work
Open

npm: Simplify release pipeline.#172
laurensvalk wants to merge 5 commits into
masterfrom
work

Conversation

@laurensvalk
Copy link
Copy Markdown
Member

Releasing API updates is quite a long and error prone process, to the point that it was limiting our ability to push frequent updates in practice. There were 5 tag, commit, wait, and proceed steps and you'd have to start over or force push if a mistake was made.

This keeps all the npm packages as they were, but versions everything from a single source of truth, which is this project's main version. Everything builds on a tag on the main repo, much like we did for a regular IDE docs RTD release.

It also skips the PyPI for jedi as an intermediate step, which required us to have this strict order of publication steps. Since local editors can just use the stubs directly, I don't think there is any case for keeping it on PyPI.

The npm/images is kept as-is for now. I think these can be included with Pybricks-Code in the future.

Comment thread .github/workflows/publish-ide-docs.yml Outdated
Comment thread jedi/pyproject.toml
Comment thread build-all.sh Outdated
Releasing API updates is quite a long and error prone process, so the point
that it was limiting our ability to push frequent updates in practice. There
were 5 tag, commit, wait, and proceed steps and you'd have to start over or
force push if a mistake was made.

This keeps all the npm packages as they were, but versions everything from a
single source of truth, which is this project's main version. Everything
builds on a tag on the main repo, much like we did for a regular IDE docs RTD
release.

It also skips the PyPI for jedi as an intermediate step, which isn't really
needed and required us to have this strict order of publication steps.
@laurensvalk laurensvalk force-pushed the work branch 2 times, most recently from da31e4b to 31d1ff7 Compare May 30, 2026 09:37
Now that we use a single release pipeline, the API itself might not yet be on
PyPI by the time we build jedi, so we build it locally.

We'll still keep the API docs on PyPI so users can have local autocomplete,
but that path is no longer a dependency for building jedi.

Also explain CHANGELOG synchronization with firmware repo.
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.

2 participants