From 0a313dd585630b0c0ef73ed35638beb5c62bba56 Mon Sep 17 00:00:00 2001 From: Jeremy Tuloup Date: Sat, 19 Oct 2024 08:05:41 +0000 Subject: [PATCH 1/4] Add more content to the FAQ --- docs/source/faq/index.md | 47 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 46 insertions(+), 1 deletion(-) diff --git a/docs/source/faq/index.md b/docs/source/faq/index.md index d2cddb0f..3559cf09 100644 --- a/docs/source/faq/index.md +++ b/docs/source/faq/index.md @@ -1,5 +1,50 @@ # FAQ +## How to resume a failed Finalize Release? + +If the workflow failed to publish the release, for example because PyPI or npm was down during the release process, we can try to re-run the failed "Publish Release" workflow. + +If the draft GitHub release was correctly created, re-run the workflow this time specifying `populate-release` as a step to skip. That way the assets already attached to the draft GitHub Release and the associated release commit will not be recreated, and the workflow will skip to the "Finalize Release" step directly. + +## Failed to publish a package to `npm` + +The releaser may fail to publish a package to the `npm` in the following cases: + +- `npmjs.com` is down, or `npm` is encountering issues publishing new packages +- the package you are trying to publish does not contain the correct publish config. If the package is meant to be public, add the following to `package.json`: + +```json +"publishConfig": { + "access": "public" +}, +``` + +## `check-python` step fails with Python monorepos + +If you develop multiple Python packages within the same repository (as a monorepo), and the Python packages depend on each other, for example: + +``` +packages +├── bar +└── foo +``` + +And `bar` depends on `foo`, for example with `foo>=1.0.0`. You may see the following error during the `check-python` step: + +``` +ERROR: Could not find a version that satisfies the requirement foo>=1.0.0 (from bar) (from versions: 1.0.0b4, 1.0.0b5, 1.0.0b6, 1.0.0b8) +ERROR: No matching distribution found for foo>=1.0.0 +``` + +This issue is not fixed yet and is being tracked in https://github.com/jupyter-server/jupyter_releaser/issues/499. + +As a workaround, you can skip the `check-python` step with the following releaser config: + +```toml +[tool.jupyter-releaser] +skip = ["check-python"] +``` + ## My changelog is out of sync Create a new manual PR to fix the PR and re-orient the changelog entry markers. @@ -11,5 +56,5 @@ pick up the new PR. ## What happens if one of my steps is failing but I want to force a release? -This could happen for example if you need to override PRs to include in the changelog. In that case you would pass "check-changlog" to the +This could happen for example if you need to override PRs to include in the changelog. In that case you would pass "check-changelog" to the workflow's "steps_to_skip" input option. From d6a5ac6511b5a57132d4f4b1fe018ee6a0af522d Mon Sep 17 00:00:00 2001 From: Jeremy Tuloup Date: Sat, 19 Oct 2024 08:13:12 +0000 Subject: [PATCH 2/4] link to the issue --- docs/source/faq/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/faq/index.md b/docs/source/faq/index.md index 3559cf09..c0497117 100644 --- a/docs/source/faq/index.md +++ b/docs/source/faq/index.md @@ -36,7 +36,7 @@ ERROR: Could not find a version that satisfies the requirement foo>=1.0.0 (from ERROR: No matching distribution found for foo>=1.0.0 ``` -This issue is not fixed yet and is being tracked in https://github.com/jupyter-server/jupyter_releaser/issues/499. +This issue is not fixed yet and is being tracked in [this issue](https://github.com/jupyter-server/jupyter_releaser/issues/499). As a workaround, you can skip the `check-python` step with the following releaser config: From d34a438682d554b972ecd44e3a3f3f7272fe2407 Mon Sep 17 00:00:00 2001 From: Jeremy Tuloup Date: Sat, 19 Oct 2024 08:31:41 +0000 Subject: [PATCH 3/4] minor wording --- docs/source/faq/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/faq/index.md b/docs/source/faq/index.md index c0497117..48a24fa4 100644 --- a/docs/source/faq/index.md +++ b/docs/source/faq/index.md @@ -1,6 +1,6 @@ # FAQ -## How to resume a failed Finalize Release? +## How to resume a failed release? If the workflow failed to publish the release, for example because PyPI or npm was down during the release process, we can try to re-run the failed "Publish Release" workflow. From 8ddf2e8d92d41290a5764d094e9961140172ff49 Mon Sep 17 00:00:00 2001 From: Jeremy Tuloup Date: Mon, 21 Oct 2024 09:12:48 +0000 Subject: [PATCH 4/4] add note about collaborators --- docs/source/faq/index.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/source/faq/index.md b/docs/source/faq/index.md index 48a24fa4..5e16e64e 100644 --- a/docs/source/faq/index.md +++ b/docs/source/faq/index.md @@ -11,6 +11,7 @@ If the draft GitHub release was correctly created, re-run the workflow this time The releaser may fail to publish a package to the `npm` in the following cases: - `npmjs.com` is down, or `npm` is encountering issues publishing new packages +- the account publishing the package to npm is not part of the list of collaborators - the package you are trying to publish does not contain the correct publish config. If the package is meant to be public, add the following to `package.json`: ```json