@narmi/design_system 6.16.8 → 6.16.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -117,6 +117,48 @@ For example, if NDS is on major version `1`, breaking changes should target the
117
117
 
118
118
  Branches containing breaking change commits should follow the naming convention `breaking/<branch name>`.
119
119
 
120
+ #### Version support policy
121
+
122
+ - The latest minor release (`@latest`) is the actively developed version and
123
+ always contains every fix.
124
+ - Older minor versions receive patches **only on demand** — not every published
125
+ version is maintained.
126
+ - Backports target a single Major.Minor (e.g. `6.12`). They are **not**
127
+ forwarded to other minor versions. If `6.13` and `6.14` also need the fix,
128
+ each must be backported separately.
129
+ - Fixes always land on `main` first and are selectively applied to older
130
+ versions — never the reverse.
131
+ - If you are on an intermediate minor that does not have the fix,
132
+ [request a backport](../../issues/new?template=backport-request.md) or
133
+ upgrade to `@latest`.
134
+
135
+ **For consumers:**
136
+
137
+ | Goal | Version specifier | Example |
138
+ | ------------------------------- | ----------------------------- | ------------------------------------------- |
139
+ | Track latest within your major | `^6` | Always resolves to the newest `6.x` |
140
+ | Stay pinned to a specific minor | `~6.12` or `6.12.x` dist-tag | Only receive patch-level updates for `6.12` |
141
+
142
+ #### Releasing backports (maintainers)
143
+
144
+ When a fix merged to `main` needs to be applied to an older Major.Minor version
145
+ still in production:
146
+
147
+ 1. Merge the fix PR to `main` as usual (this releases the fix on the `@latest` release channel)
148
+ 2. Go to **Actions → Release Backport → Run workflow**
149
+ 3. Enter the **PR number** of the fix you'd like to backport. Enter the **target major.minor** (e.g. `6.12`).
150
+ 4. The workflow will:
151
+ - Create `maintenance/6.12.x` from the latest `v6.12.*` tag (if it doesn't exist yet)
152
+ - Cherry-pick the fix onto that branch
153
+ - Trigger an automated release to the `6.12.x` npm dist-tag
154
+ 5. If the cherry-pick has conflicts, a draft PR is opened for manual resolution
155
+
156
+ Consumers on the older version install the patch via:
157
+
158
+ ```
159
+ npm install @narmi/design_system@6.12.x
160
+ ```
161
+
120
162
  ### Commit Guidelines
121
163
 
122
164
  This project requires structured commit messages in the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) format:
@@ -190,16 +232,6 @@ If you need to make additional changes after the beta is published...
190
232
  2. Bump the beta version number in package.json (`2.36.0-beta.0` -> `2.36.0-beta.1`)
191
233
  3. Install the new beta version in your consuming application.
192
234
 
193
- #### Publishing a patch over a previous version
194
-
195
- In rare cases, you may need to publish a patch over a previous version (e.g., patching `2.35.2` when the current version is `2.36.0`).
196
-
197
- Follow the same steps as [publishing a beta version](#publishing-a-beta-version), but without the `--tag beta` flag:
198
-
199
- 1. Rebuild NDS (`npm run build`)
200
- 2. Update the `version` field of package.json to the desired patch version (e.g., `2.35.3`). DO NOT COMMIT THIS CHANGE.
201
- 3. Publish the package (`npm publish`)
202
-
203
235
  ### Testing unpublished changes in a consumer
204
236
 
205
237
  **Development of Narmi Design System should be done in isolation within this repo.**