2.4 KiB
2.4 KiB
Creating a new svg-edit release
Prepare
npm run browser-test
- Ensure build steps occur and tests are passingnpm start
and in another console window,npm test
- This should also be run, though currently accessibility tests are failing.npm run build-docs
- Ensure JSDoc can build and is available for site build (though not added tomaster
, will be copied over in theSVG-Edit.github.io
steps and used innpm publish
step).npm pack --dry-run
to preview which files will be included once published and taking into account.npmignore
.
Update the main project
- Update
version
inpackage.json
(andpackage-lock.json
(vianpm i
)). - Update the CHANGES file with a summary of all changes.
- Add new release info to
Recent news
section in README - Commit these changes
git commit -m "Updating CHANGES for release X.Y.Z"
-->. - Tag the version, prefixed by "v", e.g.,
v6.0.0
.
The above steps can be done on a fork and committed via a pull request.
Create the release as a submodule
- Create a branch for the release, e.g.,
git branch release-v6.0.0
- While still on
master
, add the branch to.gitsubmodules
:VERSION=6.0.0 npm run add-release
- Run
git submodule update --init --recursive
- Commit these changes
git commit -m "Updating for release X.Y.Z"
-->. - Push to
master
. - Ensure the new release is available by visiting https://svg-edit.github.io/svgedit/releases/svg-edit-X.Y.Z/editor/svg-editor.html (and in an ES6-Module-compliant browser, https://svg-edit.github.io/svgedit/releases/svg-edit-X.Y.Z/editor/svg-editor-es.html).
Create the release on GitHub
- Go to https://github.com/SVG-Edit/svgedit/releases and select
Draft a new release
. - Make the release target point at the tag where the changes were updated.
- Write a short description of the release and include a link to the live version (in another tab, you may wish to see the source for a previous release): https://svg-edit.github.io/svgedit/releases/svg-edit-X.Y.Z/editor/svg-editor.html.
- Create the release!
You will need to be a member of the SVG-Edit GitHub group to do this step.
Publish to npm
npm publish
You will need to be a member of the npm group to do this step. You can run
npm publish --dry-run
to confirm that the files being included are all desired,
and add to .npmignore
if not.