CARVIEW |
Select Language
HTTP/2 200
date: Sat, 19 Jul 2025 14:35:51 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
x-robots-tag: none
etag: W/"4482bb62305a28f02988b34bf59fd880"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=woT%2BLZosHuV1dWEm4msJH2PNziMT8APShdTATzxFwl7905rDub8Vyl1SbEjpmJwH06ECdhJJOmtZHqesPlbYqvbUu63lKOj%2Fhg74cUllBHz38iMU%2Fco4AbORzDIzVAb48f5ubz4PanKAyAjmDIchVzfU8SamBnciXAIVJnTA2WLgHdZV2NYFdytHU5ePPZFjVlxMxoC3ArdTJ9SpP4UwgW67kK39OSJCCtV5iubE2z4naKAO7wg1BY14XynMkVxxLL8cAmit7ZM2BTPPYxsKOQ%3D%3D--GdmJKaLFxW5kFU9o--0w%2FvAnrEWBhOwW28yf9qSg%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.1243253714.1752935751; Path=/; Domain=github.com; Expires=Sun, 19 Jul 2026 14:35:51 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Sun, 19 Jul 2026 14:35:51 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: 94AE:3DC509:5A6C21:714C7C:687BAD47
Release strategy, conventions, preparation and execution · devicons/devicon Wiki · GitHub
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Release strategy, conventions, preparation and execution
Jørgen Kalsnes Hagen edited this page Feb 5, 2024
·
10 revisions
Devicon does not follow a strict release plan. A new release is depended on current amount of contributions, required bugfixes/patches and will be discussed by the team of maintainers.
Generally speaking: A new release will be published when new icons are added or a bug was fixed. When it's predictable that multiple icons are added in a foreseeable amount of time they are usually wrapped together.
The version naming follows the rules of Semantic Versioning. Given a version number MAJOR.MINOR.PATCH, increment the:
- MAJOR version when you make incompatible API changes,
- MINOR version when you add functionality (like a new icon) in a backwards compatible manner, and
- PATCH version when you make backwards compatible bug fixes.
- Define the next release version number based on the conventions
- Checkout
develop
asdraft-release
branch.git checkout develop git checkout -b draft-release
- Bump the package version using
npm version vMAJOR.MINOR.PATCH -m "bump npm version to vMAJOR.MINOR.PATCH"
(see #487) - Push the branch
draft-release
- Manually trigger the workflow
build_icons.yml
(which has aworkflow_dispatch
event trigger) and select the branchdraft-release
as target branch. This will build a font version of all icons using icomoon and automatically creates a pull request to merge the build result back intodraft-release
- Review, approve and merge the auto-created pull request created by the action of the step above
- Create a pull request from
draft-release
towardsdevelop
. Mention the release number in the pull request title (like "Build preparation for release vMAJOR.MINOR.PATCH").- Check the
build-bot
's PR message in the last step. There should be a section where it displays the features that have been added to the release. You can copy the markdown there and put it in the description as a CODE BLOCK. This will prevent GitHub from tagging everyone involved for now.
- Check the
- Wait for review and approval of the pull request (you can perform a squash-merge)
- Once merged into
develop
create a pull request with BASEmaster
and HEADdevelop
.- Copy the
build-bot
's PR message in the last step to the description as MARKDOWN text. This will tag all contributors and thanks them for their help.
- Copy the
- Since it was already approved in the 'develop' stage a maintainer is allowed to merge it (DON'T perform a squash-merge).
- Create a new release using the format "Release vMAJOR.MINOR.PATCH" as tag and release title. Use the earlier created description as description of the release.
- Publishing the release will trigger the npm_publish.yml workflow which will execute a
npm publish
leading to a updated npm package (vMAJOR.MINOR.PATCH).
- What Icons Do We Accept?
- Requesting an Icon
- Overview on Submitting Icons
- Full Example of Submitting Icons
- Recommended Resources and Tools
- About the Maintainers, Supporters, and Contributors
- Code of Conduct
- Naming Conventions
- Organizing SVGs
- SVG Standards
- SVG Versions
- Updating
devicon.json
- Common Bugs and Solutions
Clone this wiki locally
You can’t perform that action at this time.