Fork the repo and clone your fork:
git clone <YOUR_FORK>
cd carbon-pictograms-svelte
Set the original repo as the upstream:
git remote add upstream [email protected]:carbon-design-system/carbon-pictograms-svelte.git
# verify that the upstream is added
git remote -v
This repo uses bun
. See the docs for installation instructions.
Icons are generated using bun
as a test runner.
Run bun prepack
to build the library. Icons should be emitted to the lib
folder and tests should pass.
Before submitting a pull request, make sure your fork is up to date with the latest upstream changes.
git fetch upstream
git checkout master
git merge upstream/master
After you've pushed your changes to remote, submit your PR. Make sure you are comparing <YOUR_USER_ID>/feature
to origin/master
.
The following items only apply to project maintainers.
This library is published to NPM with provenance via a GitHub workflow.
The workflow is automatically triggered when pushing a tag that begins with v
(e.g., v12.3.0
).
However, maintainers must perform a few things in preparation for a release.
# 1. Install and re-build the library.
bun install; bun prepack;
# 2. Commit the changes using the new version as the commit message.
git commit -am "v12.3.0"
# 3. Create a tag.
git tag v12.3.0
# 4. Push the tag to the remote.
# This will trigger the `release.yml` workflow to publish a new package to NPM (with provenance).
git push origin v12.3.0
If all goes as expected, the release.yml
workflow should trigger a new run and publish the new version to NPM.
After confirming that the new release is published to NPM, perform the following:
-
Create a new release on GitHub. Click "Generate release notes" to automatically list changes by commit with the relevant Pull Request and author metadata. You may manually remove notes that are not relevant to the release (e.g., CI changes).
-
Publish the release as the latest release.