Rasagar/Library/PackageCache/com.unity.package-validation-suite/Documentation~/changelog_validation_error.md
2024-08-26 23:07:20 +03:00

4.6 KiB

Changelog Validation error

Here you can read more information about the Changelog validation errors that the Validation Suite can produce, how to solve them and where to read more about how to solve it.

Cannot find changelog

The package you validated does not have a CHANGELOG.md file and CHANGELOG.md.meta file. Please add one and fill it out with the appropriate content. You can read about the specification we are using at https://keepachangelog.com. Here is a template to get you started.

# Changelog
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]
- Put your changes here

To generate a CHANGELOG.md.meta meta file just open the editor with a project that has this package embedded and it will generate one for you. Do not copy meta files from other existing meta files

Version format is not valid

The version in the changelog section point out by the error message did not contain a valid semver version. Some examples of valid semver versions are: 0.0.1-preview 0.0.5-preview.8 0.1.20 5.0.0-preview.1

In previous versions of the validation suite it would only validate this rule until it found the target version. Current versions validate the whole file so additional infractions are flagged as warnings. Please fix these warnings since they will turn into errors in future releases.

No valid changelog entries were found

The CHANGELOG.md does not have any valid changelog sections in it. Please visit https://keepachangelog.com and make sure you are following the conventions. What is especially important is that all the sections follow the format ## [version] - date and ## [Unreleased]

Date is not valid

The date specified is not valid. It needs to be of the ISO 8601 date standard and is in line with the keep a changelog specifications. An example of a valid date is 2020-01-28

We used to allow YYYY-M-D but this did not conform to keep a changelog and is for this reason now generating warnings. This specific scenario is currently a warning since previous iterations of the validation suite did not catch this. So make sure you fix this since it will be converted into an error in the future.

In previous versions of the validation suite it would only validate this rule until it found the target version. Current versions validate the whole file so additional infractions are flagged as warnings. Please fix these warnings since they will turn into errors in future releases.

No changelog entry for version was found

It looks like the current version in your package.json is not reflected in the CHANGELOG.md. Please add a section representing this version according to keep a changelog specifications. So it can either be having ## [Unreleased] at the top of the file or by either specifying the full version and date (for example ## [1.0.0-preview.1] - 2020-01-01) or the X.Y.Z version and date (for example ## [1.0.0] - 2020-01-01).

Found changelog correct entry but it was not the first entry

You have the correct section in the changelog, but it seems to be out of order. The current package.json version always need to be in the top. Please read up on this in the keep a changelog specifications.

Unreleased section has to be the first section in the Changelog

There can only be one... Unreleased section in the Changelog. And it has to be the first one. Remove any duplicates and make sure the section is at the top. This is so that we follow the keep a changelog specifications. This check is currently a warning since previous iterations of the validation suite did not catch this.

Unreleased section in the Changelog is not allowed while promoting

The package has an [unreleased] section in the changelog. This is accepted in CI, and internal publishing, but is not accepted when sharing externally with clients. On publishing a warning is displayed to remind you that on promotion the unreleased section in the changelog is not allowed and will have to be removed. On promotion to a public registry (extrenal clients) an error appears specifying that the promotion is not possible with an unreleased section in the changelog. To fix the error you have to publish a new version which replaces the unreleased tag by the new version being published.