spectrum-cli 4.0.0 → 5.0.0
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/CHANGELOG.md +6 -0
- package/README.md +5 -4
- package/package.json +1 -1
- package/src/changelog/config.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -9,6 +9,12 @@ This is the changelog of the `spectrum-cli` npm package. Its version comes from
|
|
|
9
9
|
`package.json`; the release commands use Git tags and `CHANGELOG.md` in the
|
|
10
10
|
**target project** and do not update that project's `package.json`.
|
|
11
11
|
|
|
12
|
+
## 🚀 [5.0.0] - 2026-10-01
|
|
13
|
+
|
|
14
|
+
### 💥 Breaking change
|
|
15
|
+
|
|
16
|
+
- Fragment `.changelog/*.removed.md` теперь повышает версию приложения до следующего major-релиза вместо patch. Такой fragment нельзя включить в hotfix; для него нужен обычный релиз.
|
|
17
|
+
|
|
12
18
|
## 🚀 [4.0.0] - 2026-10-01
|
|
13
19
|
|
|
14
20
|
### 💥 Breaking change
|
package/README.md
CHANGED
|
@@ -185,7 +185,7 @@ spectrum-cli/
|
|
|
185
185
|
|
|
186
186
|
1. Проверяет чистую актуальную dev-ветку, включающую `origin/main` или `origin/master`, changelog и fragments.
|
|
187
187
|
2. После `git fetch origin --prune --tags` находит максимальный stable-тег среди `release/X.Y.Z`, `hotfix/X.Y.Z` и `vX.Y.Z`, достижимый из production-ветки.
|
|
188
|
-
3. Если открытого релиза нет, вычисляет версию по fragments: `breaking` → major, `added` → minor, остальные → patch. Если раздел уже открыт в main/master, сохраняет его версию и дату, объединяет прежние записи с новыми по разделам без дублей. Тип новых fragments не повышает уже выбранную версию.
|
|
188
|
+
3. Если открытого релиза нет, вычисляет версию по fragments: `breaking` и `removed` → major, `added` → minor, остальные → patch. Если раздел уже открыт в main/master, сохраняет его версию и дату, объединяет прежние записи с новыми по разделам без дублей. Тип новых fragments не повышает уже выбранную версию.
|
|
189
189
|
4. Форматирует и проверяет `CHANGELOG.md`, затем удаляет использованные fragments.
|
|
190
190
|
5. Коммитит изменения и атомарно пушит dev в `origin/dev` и `origin/main` или `origin/master`, без Merge Request. Если новых записей нет, пустой коммит не создаётся; можно повторить отправку после её сбоя.
|
|
191
191
|
|
|
@@ -229,14 +229,14 @@ spectrum-cli/
|
|
|
229
229
|
или `origin/master`, либо работайте прямо в актуальной production-ветке
|
|
230
230
|
`main/master`. Включайте только срочное исправление и его patch fragments
|
|
231
231
|
(`fixed`, `security`, `support` либо другой совместимый patch-тип).
|
|
232
|
-
`added` и `
|
|
232
|
+
`added`, `breaking` и `removed` требуют обычного релиза. Все команды запускаются из корня
|
|
233
233
|
репозитория; для `start` нужен Prettier, как для обычной сборки changelog.
|
|
234
234
|
|
|
235
235
|
1. **`spectrum hotfix start`** обновляет сведения об origin и выбирает опубликованный
|
|
236
236
|
stable-тег, достижимый из production. Цель — этот stable плюс один patch.
|
|
237
237
|
Как и `release start`, команда читает все файлы текущей `.changelog/` независимо
|
|
238
238
|
от того, когда они попали в Git. Проверяет их общими правилами changelog и
|
|
239
|
-
допускает только patch-типы; файлы `added` и `
|
|
239
|
+
допускает только patch-типы; файлы `added`, `breaking` и `removed` требуют обычного релиза.
|
|
240
240
|
Формат CHANGELOG.md проверяется только в текущей ветке. История может отличаться
|
|
241
241
|
от stable-тега: её исправления не блокируют хотфикс. Снимок production используется
|
|
242
242
|
для сохранения записей уже подготовленного хотфикса, без строгой проверки старых заголовков.
|
|
@@ -381,8 +381,9 @@ projects: []
|
|
|
381
381
|
| Суффикс | Раздел | Повышение версии |
|
|
382
382
|
| --- | --- | --- |
|
|
383
383
|
| `breaking` | Breaking change | major |
|
|
384
|
+
| `removed` | Removed | major |
|
|
384
385
|
| `added` | Added | minor |
|
|
385
|
-
| `changed`, `deprecated
|
|
386
|
+
| `changed`, `deprecated` | Соответствующий раздел | patch |
|
|
386
387
|
| `fixed`, `security`, `support` | Соответствующий раздел | patch |
|
|
387
388
|
|
|
388
389
|
**📌 Пример использования:**
|
package/package.json
CHANGED
package/src/changelog/config.js
CHANGED
|
@@ -8,7 +8,7 @@ const FRAGMENT_TYPES = Object.freeze({
|
|
|
8
8
|
added: Object.freeze({ section: '### 🆕 Added', bump: 'minor' }),
|
|
9
9
|
changed: Object.freeze({ section: '### 🛠 Changed', bump: 'patch' }),
|
|
10
10
|
deprecated: Object.freeze({ section: '### 📜 Deprecated', bump: 'patch' }),
|
|
11
|
-
removed: Object.freeze({ section: '### 🗑 Removed', bump: '
|
|
11
|
+
removed: Object.freeze({ section: '### 🗑 Removed', bump: 'major' }),
|
|
12
12
|
fixed: Object.freeze({ section: '### 🪲 Fixed', bump: 'patch' }),
|
|
13
13
|
security: Object.freeze({ section: '### 🔐 Security', bump: 'patch' }),
|
|
14
14
|
support: Object.freeze({ section: '### 📦 Support', bump: 'patch' })
|