Skip to content

chore(release): add semantic-release#432

Draft
outslept wants to merge 1 commit intoeditorconfig:mainfrom
outslept:slpt/semantic-release
Draft

chore(release): add semantic-release#432
outslept wants to merge 1 commit intoeditorconfig:mainfrom
outslept:slpt/semantic-release

Conversation

@outslept
Copy link
Copy Markdown

@outslept outslept commented Mar 24, 2025

Please fill in this template.

  • Use a meaningful title for the pull request.
  • Use meaningful commit messages.
  • Run tsc w/o errors (same as npm run build).
  • Run npm run lint w/o errors.

Testing

I've tested the configuration with semantic-release --dry-run which completes successfully until the final push step (which is expected since pushing to main is restricted).

Also I've tested the GitHub action locally with act. Logs below:

~ act -j release
time="2025-03-24T18:09:59+03:00" level=info msg="Using docker host 'npipe:////./pipe/docker_engine', and daemon socket 'npipe:////./pipe/docker_engine'"
time="2025-03-24T18:09:59+03:00" level=info msg="deleted cache: &{ID:1 Key:node-cache-linux-x64-npm-ffd561a3fbdbcb78781b8ae861656ad3a4f68f0e9b05260ed92f6188b44ea680 Version:b3f0cb83629d634645a5146420c017462ebb5229bd60271a7a86e489a6066469 Size:34350071 Complete:true UsedAt:1742827956 CreatedAt:1742827767}" module=artifactcache
[Release/Release] ⭐️ Run Set up job
[Release/Release] 🚀  Start image=catthehacker/ubuntu:act-latest
[Release/Release]   🐳  docker pull image=catthehacker/ubuntu:act-latest platform= username= forcePull=true
[Release/Release]   🐳  docker create image=catthehacker/ubuntu:act-latest platform= entrypoint=["tail" "-f" "/dev/null"] cmd=[] network="host"
[Release/Release]   🐳  docker run image=catthehacker/ubuntu:act-latest platform= entrypoint=["tail" "-f" "/dev/null"] cmd=[] network="host"
[Release/Release]   🐳  docker exec cmd=[node --no-warnings -e console.log(process.execPath)] user= workdir=
[Release/Release]   ✅  Success - Set up job
[Release/Release]   ☁️  git clone 'https://github.com/actions/setup-node' # ref=v4
[Release/Release] ⭐️ Run Main Checkout
[Release/Release]   🐳  docker cp src=E:\Work\editorconfig\editorconfig-vscode\. dst=/mnt/e/Work/editorconfig/editorconfig-vscode
[Release/Release]   ✅  Success - Main Checkout
[Release/Release] ⭐️ Run Main Setup Node.js
[Release/Release]   🐳  docker cp src=C:\Users\Eugene\.cache\act/actions-setup-node@v4/ dst=/var/run/act/actions/actions-setup-node@v4/
[Release/Release]   🐳  docker exec cmd=[/opt/acttoolcache/node/18.20.7/x64/bin/node /var/run/act/actions/actions-setup-node@v4/dist/setup/index.js] user= workdir=
| Attempt to resolve LTS alias from manifest...
| Found in cache @ /opt/hostedtoolcache/node/22.14.0/x64
[Release/Release]   ❓  ::group::Environment details
| node: v22.14.0
| npm: 10.9.2
| yarn:
[Release/Release]   ❓  ::endgroup::
| [command]/opt/hostedtoolcache/node/22.14.0/x64/bin/npm config get cache
| /root/.npm
[Release/Release]   ⚙️  ***
| Cache Size: ~33 MB (34312380 B)
| [command]/usr/bin/tar -xf /tmp/0dc89b5c-dbef-4db2-bdcc-88c1d58cb445/cache.tzst -P -C /mnt/e/Work/editorconfig/editorconfig-vscode --use-compress-program unzstd
| Cache restored successfully
| Cache restored from key: node-cache-linux-x64-npm-ffd561a3fbdbcb78781b8ae861656ad3a4f68f0e9b05260ed92f6188b44ea680
[Release/Release]   ❓ add-matcher /run/act/actions/actions-setup-node@v4/.github/tsc.json
[Release/Release]   ❓ add-matcher /run/act/actions/actions-setup-node@v4/.github/eslint-stylish.json
[Release/Release]   ❓ add-matcher /run/act/actions/actions-setup-node@v4/.github/eslint-compact.json
[Release/Release]   ✅  Success - Main Setup Node.js
[Release/Release]   ⚙️  ::set-output:: node-version=v22.14.0
[Release/Release]   ⚙️  ::set-output:: cache-hit=true
[Release/Release]   ⚙️  ::add-path:: /opt/hostedtoolcache/node/22.14.0/x64/bin
[Release/Release] ⭐️ Run Main Install dependencies
[Release/Release]   🐳  docker exec cmd=[bash -e /var/run/act/workflow/2] user= workdir=
| npm warn deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you 
want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
| npm warn deprecated @humanwhocodes/config-array@0.13.0: Use @eslint/config-array instead
| npm warn deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
| npm warn deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
| npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
| npm warn deprecated eslint@8.57.1: This version is no longer supported. Please see https://eslint.org/version-support for other options.
| 
| added 627 packages, and audited 843 packages in 14s
|
| 193 packages are looking for funding
|   run `npm fund` for details
|
| found 0 vulnerabilities
[Release/Release]   ✅  Success - Main Install dependencies
[Release/Release] ⭐️ Run Main Build
[Release/Release]   🐳  docker exec cmd=[bash -e /var/run/act/workflow/3] user= workdir=
| 
| > EditorConfig@0.17.2 prebuild
| > npm run clean
|
| 
| > EditorConfig@0.17.2 clean
| > rimraf out
|
| 
| > EditorConfig@0.17.2 build
| > tsc
|
| 
| > EditorConfig@0.17.2 postbuild
| > cp -r src/test/suite/fixtures out/test/suite && cp -r src/test/untitled-suite/fixtures out/test/untitled-suite && cp src/DefaultTemplate.editorconfig out
|
[Release/Release]   ✅  Success - Main Build
[Release/Release] ⭐️ Run Main Package Extension
[Release/Release]   🐳  docker exec cmd=[bash -e /var/run/act/workflow/4] user= workdir=
| Executing prepublish script 'npm run vscode:prepublish'...
| 
| > EditorConfig@0.17.2 vscode:prepublish
| > npm run build
|
| 
| > EditorConfig@0.17.2 prebuild
| > npm run clean
|
| 
| > EditorConfig@0.17.2 clean
| > rimraf out
|
| 
| > EditorConfig@0.17.2 build
| > tsc
|
| 
| > EditorConfig@0.17.2 postbuild
| > cp -r src/test/suite/fixtures out/test/suite && cp -r src/test/untitled-suite/fixtures out/test/untitled-suite && cp src/DefaultTemplate.editorconfig out
|
| Files included in the VSIX:
| EditorConfig-0.17.2.vsix
| ├─ [Content_Types].xml
| ├─ extension.vsixmanifest
| └─ extension/
|    ├─ DEVELOPER.md [0.72 KB]
|    ├─ EditorConfig_icon.png [7.72 KB]
|    ├─ LICENSE.md [1.09 KB]
|    ├─ ThirdPartyNotices.txt [1.88 KB]
|    ├─ changelog.md
|    ├─ editorconfig.language-configuration.json [0.46 KB]
|    ├─ package.json [4.74 KB]
|    ├─ readme.md
|    ├─ release.config.js [1.45 KB]
|    ├─ node_modules/
|    │  ├─ @one-ini/ (5 files) [107.9 KB]
|    │  ├─ balanced-match/ (5 files) [6.78 KB]
|    │  ├─ commander/ (13 files) [163.83 KB]
|    │  ├─ editorconfig/ (29 files) [199.71 KB]
|    │  └─ semver/ (52 files) [94.41 KB]
|    ├─ out/
|    │  ├─ DefaultTemplate.editorconfig [0.69 KB]
|    │  ├─ DocumentWatcher.js [4.25 KB]
|    │  ├─ EditorConfigCompletionProvider.js [7 KB]
|    │  ├─ api.js [4.84 KB]
|    │  ├─ editorConfigMain.js [1.64 KB]
|    │  ├─ commands/ (1 file) [5.04 KB]
|    │  └─ transformations/ (5 files) [6.96 KB]
|    └─ syntaxes/
|       └─ editorconfig.tmLanguage.json [9.97 KB]
|
| => Run vsce ls --tree to see all included files.
|
| Packaged: /mnt/e/Work/editorconfig/editorconfig-vscode/EditorConfig-0.17.2.vsix (127 files, 231.95 KB)
[Release/Release]   🚧  ::warning::The latest version of @vscode/vsce is 3.3.0 and you have 3.2.2.%0AUpdate it now: npm install 
-g @vscode/vsce
[Release/Release]   ✅  Success - Main Package Extension
[Release/Release] ⭐️ Run Main Semantic Release
[Release/Release]   🐳  docker exec cmd=[bash -e /var/run/act/workflow/5] user= workdir=
| [3:10:37 PM] [semantic-release] › ℹ️  Running semantic-release version 24.2.3
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "verifyConditions" from "@semantic-release/changelog"
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "verifyConditions" from "@semantic-release/npm"
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "verifyConditions" from "@semantic-release/git"
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "verifyConditions" from "@semantic-release/github"
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "analyzeCommits" from "@semantic-release/commit-analyzer"
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "generateNotes" from "@semantic-release/release-notes-generator"
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "prepare" from "@semantic-release/changelog"
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "prepare" from "@semantic-release/npm"
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "prepare" from "@semantic-release/git"
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "publish" from "@semantic-release/npm"
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "publish" from "@semantic-release/github"
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "addChannel" from "@semantic-release/npm"
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "addChannel" from "@semantic-release/github"
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "success" from "@semantic-release/github"
| [3:10:38 PM] [semantic-release] › ✔️  Loaded plugin "fail" from "@semantic-release/github"
| [3:10:41 PM] [semantic-release] › ℹ️  This test run was triggered on the branch refs/tags/v0.17.2, while semantic-release is configured to only publish from main, therefore a new version won’t be published.
[Release/Release]   ✅  Success - Main Semantic Release
[Release/Release] ⭐️ Run Post Setup Node.js
[Release/Release]   🐳  docker exec cmd=[/opt/acttoolcache/node/18.20.7/x64/bin/node /var/run/act/actions/actions-setup-node@v4/dist/cache-save/index.js] user= workdir=
| [command]/usr/bin/tar --posix -cf cache.tzst --exclude cache.tzst -P -C /mnt/e/Work/editorconfig/editorconfig-vscode --files-from manifest.txt --use-compress-program zstdmt
| Cache Size: ~33 MB (34321006 B)
| Cache saved successfully
| Cache saved with the key: node-cache-Linux-x64-npm-ffd561a3fbdbcb78781b8ae861656ad3a4f68f0e9b05260ed92f6188b44ea680
[Release/Release]   ✅  Success - Post Setup Node.js
[Release/Release] ⭐️ Run Complete job
[Release/Release] Cleaning up container for job Release
[Release/Release]   ✅  Success - Complete job
[Release/Release] 🏁  Job succeeded

Note

I'll keep this PR in draft status (although it's ready for merge) to avoid potentially disrupting changelogs while we can discuss if there's a more reliable way to test the semantic-release configuration.

Part of #406

- Added semantic-release workflow in GitHub Actions
- Configured release.config.js with appropriate plugins
- Added required dependencies for semantic-release
- Updated .vscodeignore to exclude release.config.js
@outslept outslept force-pushed the slpt/semantic-release branch from 2561796 to 8205e04 Compare March 24, 2025 15:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

1 participant