Conversation
Reviewer's GuideAligns the project and CI workflows to Node.js 20, introduces tag-driven dynamic versioning for releases, and documents the release process. Sequence diagram for tag-driven publish workflowsequenceDiagram
actor "Maintainer" as Maintainer
participant "Git" as Git
participant "GitHub" as GitHub
participant "GitHub Actions - publish.yml" as PublishWorkflow
participant "Node.js Environment" as NodeEnv
participant "NPM Registry" as NpmRegistry
Maintainer->>Git: Create version tag (e.g., v0.0.2)
Maintainer->>GitHub: Push tag to remote
GitHub->>GitHub: Create GitHub release for tag
GitHub-->>PublishWorkflow: Trigger publish.yml on release
activate PublishWorkflow
PublishWorkflow->>NodeEnv: Setup Node.js with version 20
PublishWorkflow->>NodeEnv: Install dependencies with yarn install --frozen-lockfile
PublishWorkflow->>PublishWorkflow: Extract version from GITHUB_REF (remove optional v prefix)
PublishWorkflow->>NodeEnv: Run npm version <extracted version> --no-git-tag-version --allow-same-version
PublishWorkflow->>NodeEnv: Run yarn test
PublishWorkflow->>NodeEnv: Build package (using existing build step)
PublishWorkflow->>NpmRegistry: Publish package with extracted version
deactivate PublishWorkflow
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Hey there - I've reviewed your changes - here's some feedback:
- Consider keeping a
.nvmrcfile (or updating the existing one instead of removing it) in sync with theengines.nodeand workflow Node versions so local development uses the same Node.js version as CI and publish. - In the
publish.ymlworkflow, you might want to guard the tag-based version extraction with a condition (e.g., only run onrefs/tags/*) to avoid failures if the workflow is ever triggered from non-tag refs.
Prompt for AI Agents
Please address the comments from this code review:
## Overall Comments
- Consider keeping a `.nvmrc` file (or updating the existing one instead of removing it) in sync with the `engines.node` and workflow Node versions so local development uses the same Node.js version as CI and publish.
- In the `publish.yml` workflow, you might want to guard the tag-based version extraction with a condition (e.g., only run on `refs/tags/*`) to avoid failures if the workflow is ever triggered from non-tag refs.Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
There was a problem hiding this comment.
Pull request overview
This PR lowers the Node.js version requirement from 22 to 20 and introduces dynamic versioning for the package release process.
- Reduced Node.js version requirement from >=22.0.0 to >=20.0.0 across all configuration files
- Implemented dynamic versioning using Git tags (package.json version set to
0.0.0-development) - Added comprehensive release process documentation and automated version extraction in the publish workflow
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| package.json | Updated engines.node to >=20.0.0 and changed version to 0.0.0-development for dynamic versioning |
| .nvmrc | Changed Node.js version from 22 to 20 |
| .github/workflows/tests.yaml | Updated all Node.js version references to 20 for CI test jobs |
| .github/workflows/publish.yml | Updated Node.js version to 20 and added steps to extract version from Git tags and update package.json dynamically |
| .github/workflows/build.yml | Updated Node.js version to 20 for build jobs |
| RELEASE.md | Added comprehensive documentation for the release process including Git tagging, versioning, and troubleshooting |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3 +/- ##
==========================================
+ Coverage 92.21% 92.43% +0.21%
==========================================
Files 4 4
Lines 244 251 +7
Branches 69 61 -8
==========================================
+ Hits 225 232 +7
Misses 19 19
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report in Codecov by Sentry.
🚀 New features to boost your workflow:
|
Summary by Sourcery
Standardize the project on Node.js 20 and introduce a tag-driven release and publishing flow.
New Features:
Enhancements:
Build:
Documentation: