intermediate
Семантическое версионирование
Сообщайте о совместимости через major, minor и patch, привязанные к изменениям API и поведения.
Semantic Versioning (SemVer) сообщает о совместимости через `MAJOR.MINOR.PATCH`:
| Bump | Смысл | |------|-------| | MAJOR | Breaking change public API или поведения, на которое опираются потребители | | MINOR | Обратно совместимая новая возможность | | PATCH | Обратно совместимое исправление |
Релизы `0.y.z` по конвенции нестабильны — breaking возможен в minor. Диапазоны peer dependencies в библиотеках должны соответствовать обещанию semver.
На интервью: public API, классификация изменений поведения при компилирующихся типах, политика deprecation и semver internal packages для других команд.
Типовые ошибки: breaking в patch; semver без объявленной public surface; ломаем API без major «ради фикса».
Компромисс — ясные ожидания потребителей против трения breaking-миграций.
Чеклист:
- Граница public API в документации.
- Поведение vs только типы.
- Миграции в changelog.
- Peer ranges согласованы с историей совместимости.