Generating a changelog for a monorepository
Suggested merge commit message (convention)
Feature: Generating a changelog for a monorepository. Closes ckeditor/ckeditor5#18063.
Additional information
For example – encountered issues, assumptions you had to make, other affected tickets, etc.
coverage: 88.041% (-0.004%) from 88.045% when pulling 2ee009909319788a0650429a7964bbf61fcd2d4b on ck/18063-changelog-for-monorepository into 8ed77cea06905c7e571a46f5412931e8b82bcf11 on epic/ck/18051-changeset.
Please merge master branch to epic branch and ck/18063-changelog-for-monorepository.
Is the lack of bin intentional?
~When there is no .changelog directory, the following code:~
It seems that current implementation expects that at least one major and at least one minor breaking change is found. When there is no items without major and minor breaking changes, the following code:
import { generateChangelog } from '@ckeditor/ckeditor5-dev-changelog';
generateChangelog( {
cwd: process.cwd()
} );
throws an error:
� Listing the changes...
� Determining the new version...
file:///D:/Projects/ckeditor/ckeditor5/external/ckeditor5-dev/packages/ckeditor5-dev-changelog/dist/index.js:427
if (sectionsWithEntries.minor.entries.length || sectionsWithEntries.Feature.entries.length) {
^
TypeError: Cannot read properties of undefined (reading 'length')
at getNewVersion (file:///D:/Projects/ckeditor/ckeditor5/external/ckeditor5-dev/packages/ckeditor5-dev-changelog/dist/index.js:427:43)
at generateChangelog (file:///D:/Projects/ckeditor/ckeditor5/external/ckeditor5-dev/packages/ckeditor5-dev-changelog/dist/index.js:633:45)
Example changesets for testing. Place it in the root of ckeditro5 or other external project roots.