Skip to content

Commit c100186

Browse files
authored
docs: add notes on publishing a new monorepo package (#3415)
1 parent c24cacb commit c100186

File tree

3 files changed

+28
-5
lines changed

3 files changed

+28
-5
lines changed

CONTRIBUTING.md

+17
Original file line numberDiff line numberDiff line change
@@ -167,3 +167,20 @@ The `lerna:publish` script will automatically increment the next package version
167167
- Target the `main` branch.
168168
- [Automatically generated release notes](https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes)
169169
against the previous Forge release.
170+
171+
### Adding a new `@electron-forge` package
172+
173+
Occasionally, we add new packages to the `@electron-forge` monorepo. Before publishing, ensure that all
174+
version numbers for both the package itself and its dependencies match the _current_ version of Electron
175+
Forge (e.g. if the current version is `v7.0.0` and you want to add the package in `v7.1.0`, please publish
176+
`v7.0.0` first).
177+
178+
Then, manually publish the package to the current Forge version using `npm publish --access public`.
179+
Once this version is published, you can continue with the normal release process as usual.
180+
181+
> [!NOTE]
182+
> To verify that the publish configuration is correct, first run `npm publish --dry-run`
183+
> before publishing.
184+
185+
We do this manual publish step first to avoid errors with attempting to publish a non existent package
186+
with Lerna.

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@
8686
},
8787
"devDependencies": {
8888
"@electron/fuses": ">=1.0.0",
89-
"@electron/lint-roller": "^1.6.0",
89+
"@electron/lint-roller": "1.10.1",
9090
"@knodes/typedoc-plugin-monorepo-readmes": "0.22.5",
9191
"@malept/eslint-config": "^2.0.0",
9292
"@types/chai": "^4.2.12",

yarn.lock

+10-4
Original file line numberDiff line numberDiff line change
@@ -1228,12 +1228,13 @@
12281228
optionalDependencies:
12291229
global-agent "^3.0.0"
12301230

1231-
"@electron/lint-roller@^1.6.0":
1232-
version "1.6.0"
1233-
resolved "https://registry.yarnpkg.com/@electron/lint-roller/-/lint-roller-1.6.0.tgz#ff92da35379b25bce5cf99310ac541ce6a1500d5"
1234-
integrity sha512-R3x25b6OK/PQTONfs24FZaYyArS53e/fFB8IDpHFObVMXjkwU+1ePRwysk2jF23ifiQ1bY27llxzLOD+3UugBQ==
1231+
"@electron/lint-roller@1.10.1":
1232+
version "1.10.1"
1233+
resolved "https://registry.yarnpkg.com/@electron/lint-roller/-/lint-roller-1.10.1.tgz#1d506f8e098d4753bec16298b2ec708f894719d5"
1234+
integrity sha512-Ifn3WgcU4uoZHkoiDRKkmNAdQwFnzXpWSQZy5IftDaTKKfSc/8IfAEM0jKPgjBbUpykoEYJhCKuualUu1MT1+w==
12351235
dependencies:
12361236
"@dsanders11/vscode-markdown-languageservice" "^0.3.0"
1237+
balanced-match "^2.0.0"
12371238
glob "^8.1.0"
12381239
markdown-it "^13.0.1"
12391240
markdownlint-cli "^0.33.0"
@@ -4102,6 +4103,11 @@ balanced-match@^1.0.0:
41024103
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
41034104
integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
41044105

4106+
balanced-match@^2.0.0:
4107+
version "2.0.0"
4108+
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-2.0.0.tgz#dc70f920d78db8b858535795867bf48f820633d9"
4109+
integrity sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==
4110+
41054111
"base32-encode@^0.1.0 || ^1.0.0":
41064112
version "1.2.0"
41074113
resolved "https://registry.yarnpkg.com/base32-encode/-/base32-encode-1.2.0.tgz#e150573a5e431af0a998e32bdfde7045725ca453"

0 commit comments

Comments
 (0)