feat(docs): add developer guide

This commit is contained in:
Elian Doran
2025-04-12 01:36:03 +03:00
parent 21e84dd95e
commit d2a1655de5
105 changed files with 7098 additions and 11 deletions

View File

@@ -0,0 +1,16 @@
# Release management & continuous integration
To automate the release process, a GitHub workflow has been added which builds the package and releases it over to GitHub NPM registry.
The workflow publishes a release whenever a tag with the correct format is pushed.
The steps are as follows:
1. Ensure that the source code is clean and ready for a release.
2. Go to `package.json` and bump the `version` field.
3. Commit the changes.
4. Tag the commit with `v1.2.3`, with the correct version number.
5. Push the changes.
Then follow the CI and it should indicate success. Afterwards, check the [package](https://github.com/TriliumNext/ckeditor5-math/pkgs/npm/ckeditor5-math)section to ensure that the package is in the “Recent Versions” section.
If the changes could benefit upstream, consider opening a pull request with the changes there as well.

View File

@@ -0,0 +1,21 @@
# Updating with upstream
If there was a change in the upstream repository ([isaul32/ckeditor5-math](https://github.com/isaul32/ckeditor5-math)), it can be integrated as follows:
1. Add the upstream as remote (`git remote add upstream ssh://git@github.com/isaul32/ckeditor5-math.git`).
2. Fetch the changes: `git fetch upstream`
3. Merge with a tag: `git merge v43.1.2`
4. Solve the conflict in `package.json` by:
1. Taking the same version as the upcoming one and appending `-hotfix1`.
2. Keeping the `@triliumnext/ckeditor5-math` name.
5. Install dependencies: `yarn install`
6. Check that the build works via `yarn prepublishOnly`.
7. Commit the changes, push them.
8. Release a version with <a class="reference-link" href="Release%20management%20%26%20continuou.md">Release management &amp; continuous integration</a>.
## CI job not triggered after pushing all the upstream tags
If the CI job was not triggered, you might have accidentally pushed a lot of tags using `git push --tags`. Manually delete the tag and push it again:
```diff
git push -d origin v43.1.2-hotfix1 && git push --tags
```