:constructions: WIP: Started working on changelog generation
This commit is contained in:
parent
1dd12a788e
commit
e967776e1f
3 changed files with 345 additions and 2 deletions
288
config/changelog.yaml
Normal file
288
config/changelog.yaml
Normal file
|
@ -0,0 +1,288 @@
|
||||||
|
Unreleased:
|
||||||
|
date:
|
||||||
|
Added:
|
||||||
|
aaron:
|
||||||
|
benjamin:
|
||||||
|
bent:
|
||||||
|
brian:
|
||||||
|
bruce:
|
||||||
|
carlita:
|
||||||
|
carlton:
|
||||||
|
cathrin:
|
||||||
|
components:
|
||||||
|
core:
|
||||||
|
create-freesewing-pattern:
|
||||||
|
css-theme:
|
||||||
|
examples:
|
||||||
|
florent:
|
||||||
|
huey:
|
||||||
|
hugo:
|
||||||
|
i18n:
|
||||||
|
jaeger:
|
||||||
|
models:
|
||||||
|
mui-theme:
|
||||||
|
pattern-info:
|
||||||
|
patterns:
|
||||||
|
plugin-banner:
|
||||||
|
plugin-bundle:
|
||||||
|
plugin-bust:
|
||||||
|
plugin-buttons:
|
||||||
|
plugin-cutonfold:
|
||||||
|
plugin-debug:
|
||||||
|
plugin-designer:
|
||||||
|
plugin-dimension:
|
||||||
|
plugin-flip:
|
||||||
|
plugin-grainline:
|
||||||
|
plugin-i18n:
|
||||||
|
plugin-logo:
|
||||||
|
plugin-round:
|
||||||
|
plugin-scalebox:
|
||||||
|
plugin-sprinkle:
|
||||||
|
plugin-svgattr:
|
||||||
|
plugin-theme:
|
||||||
|
plugin-title:
|
||||||
|
plugin-validate:
|
||||||
|
prettier-config:
|
||||||
|
rendertest:
|
||||||
|
sandy:
|
||||||
|
shin:
|
||||||
|
simon:
|
||||||
|
sven:
|
||||||
|
tamiko:
|
||||||
|
theo:
|
||||||
|
trayvon:
|
||||||
|
tutorial:
|
||||||
|
utils:
|
||||||
|
wahid:
|
||||||
|
Changed:
|
||||||
|
aaron:
|
||||||
|
benjamin:
|
||||||
|
bent:
|
||||||
|
brian:
|
||||||
|
bruce:
|
||||||
|
carlita:
|
||||||
|
carlton:
|
||||||
|
cathrin:
|
||||||
|
components:
|
||||||
|
core:
|
||||||
|
create-freesewing-pattern:
|
||||||
|
css-theme:
|
||||||
|
examples:
|
||||||
|
florent:
|
||||||
|
huey:
|
||||||
|
hugo:
|
||||||
|
i18n:
|
||||||
|
jaeger:
|
||||||
|
models:
|
||||||
|
mui-theme:
|
||||||
|
pattern-info:
|
||||||
|
patterns:
|
||||||
|
plugin-banner:
|
||||||
|
plugin-bundle:
|
||||||
|
plugin-bust:
|
||||||
|
plugin-buttons:
|
||||||
|
plugin-cutonfold:
|
||||||
|
plugin-debug:
|
||||||
|
plugin-designer:
|
||||||
|
plugin-dimension:
|
||||||
|
plugin-flip:
|
||||||
|
plugin-grainline:
|
||||||
|
plugin-i18n:
|
||||||
|
plugin-logo:
|
||||||
|
plugin-round:
|
||||||
|
plugin-scalebox:
|
||||||
|
plugin-sprinkle:
|
||||||
|
plugin-svgattr:
|
||||||
|
plugin-theme:
|
||||||
|
plugin-title:
|
||||||
|
plugin-validate:
|
||||||
|
prettier-config:
|
||||||
|
rendertest:
|
||||||
|
sandy:
|
||||||
|
shin:
|
||||||
|
simon:
|
||||||
|
sven:
|
||||||
|
tamiko:
|
||||||
|
theo:
|
||||||
|
trayvon:
|
||||||
|
tutorial:
|
||||||
|
utils:
|
||||||
|
wahid:
|
||||||
|
Deprecated:
|
||||||
|
aaron:
|
||||||
|
benjamin:
|
||||||
|
bent:
|
||||||
|
brian:
|
||||||
|
bruce:
|
||||||
|
carlita:
|
||||||
|
carlton:
|
||||||
|
cathrin:
|
||||||
|
components:
|
||||||
|
core:
|
||||||
|
create-freesewing-pattern:
|
||||||
|
css-theme:
|
||||||
|
examples:
|
||||||
|
florent:
|
||||||
|
huey:
|
||||||
|
hugo:
|
||||||
|
i18n:
|
||||||
|
jaeger:
|
||||||
|
models:
|
||||||
|
mui-theme:
|
||||||
|
pattern-info:
|
||||||
|
patterns:
|
||||||
|
plugin-banner:
|
||||||
|
plugin-bundle:
|
||||||
|
plugin-bust:
|
||||||
|
plugin-buttons:
|
||||||
|
plugin-cutonfold:
|
||||||
|
plugin-debug:
|
||||||
|
plugin-designer:
|
||||||
|
plugin-dimension:
|
||||||
|
plugin-flip:
|
||||||
|
plugin-grainline:
|
||||||
|
plugin-i18n:
|
||||||
|
plugin-logo:
|
||||||
|
plugin-round:
|
||||||
|
plugin-scalebox:
|
||||||
|
plugin-sprinkle:
|
||||||
|
plugin-svgattr:
|
||||||
|
plugin-theme:
|
||||||
|
plugin-title:
|
||||||
|
plugin-validate:
|
||||||
|
prettier-config:
|
||||||
|
rendertest:
|
||||||
|
sandy:
|
||||||
|
shin:
|
||||||
|
simon:
|
||||||
|
sven:
|
||||||
|
tamiko:
|
||||||
|
theo:
|
||||||
|
trayvon:
|
||||||
|
tutorial:
|
||||||
|
utils:
|
||||||
|
wahid:
|
||||||
|
Removed:
|
||||||
|
aaron:
|
||||||
|
benjamin:
|
||||||
|
bent:
|
||||||
|
brian:
|
||||||
|
bruce:
|
||||||
|
carlita:
|
||||||
|
carlton:
|
||||||
|
cathrin:
|
||||||
|
components:
|
||||||
|
core:
|
||||||
|
create-freesewing-pattern:
|
||||||
|
css-theme:
|
||||||
|
examples:
|
||||||
|
florent:
|
||||||
|
huey:
|
||||||
|
hugo:
|
||||||
|
i18n:
|
||||||
|
jaeger:
|
||||||
|
models:
|
||||||
|
mui-theme:
|
||||||
|
pattern-info:
|
||||||
|
patterns:
|
||||||
|
plugin-banner:
|
||||||
|
plugin-bundle:
|
||||||
|
plugin-bust:
|
||||||
|
plugin-buttons:
|
||||||
|
plugin-cutonfold:
|
||||||
|
plugin-debug:
|
||||||
|
plugin-designer:
|
||||||
|
plugin-dimension:
|
||||||
|
plugin-flip:
|
||||||
|
plugin-grainline:
|
||||||
|
plugin-i18n:
|
||||||
|
plugin-logo:
|
||||||
|
plugin-round:
|
||||||
|
plugin-scalebox:
|
||||||
|
plugin-sprinkle:
|
||||||
|
plugin-svgattr:
|
||||||
|
plugin-theme:
|
||||||
|
plugin-title:
|
||||||
|
plugin-validate:
|
||||||
|
prettier-config:
|
||||||
|
rendertest:
|
||||||
|
sandy:
|
||||||
|
shin:
|
||||||
|
simon:
|
||||||
|
sven:
|
||||||
|
tamiko:
|
||||||
|
theo:
|
||||||
|
trayvon:
|
||||||
|
tutorial:
|
||||||
|
utils:
|
||||||
|
wahid:
|
||||||
|
Fixed:
|
||||||
|
aaron:
|
||||||
|
benjamin:
|
||||||
|
bent:
|
||||||
|
brian:
|
||||||
|
bruce:
|
||||||
|
carlita:
|
||||||
|
carlton:
|
||||||
|
cathrin:
|
||||||
|
components:
|
||||||
|
core:
|
||||||
|
create-freesewing-pattern:
|
||||||
|
css-theme:
|
||||||
|
examples:
|
||||||
|
florent:
|
||||||
|
huey:
|
||||||
|
hugo:
|
||||||
|
i18n:
|
||||||
|
jaeger:
|
||||||
|
models:
|
||||||
|
mui-theme:
|
||||||
|
pattern-info:
|
||||||
|
patterns:
|
||||||
|
plugin-banner:
|
||||||
|
plugin-bundle:
|
||||||
|
plugin-bust:
|
||||||
|
plugin-buttons:
|
||||||
|
plugin-cutonfold:
|
||||||
|
plugin-debug:
|
||||||
|
plugin-designer:
|
||||||
|
plugin-dimension:
|
||||||
|
plugin-flip:
|
||||||
|
plugin-grainline:
|
||||||
|
plugin-i18n:
|
||||||
|
plugin-logo:
|
||||||
|
plugin-round:
|
||||||
|
plugin-scalebox:
|
||||||
|
plugin-sprinkle:
|
||||||
|
plugin-svgattr:
|
||||||
|
plugin-theme:
|
||||||
|
plugin-title:
|
||||||
|
plugin-validate:
|
||||||
|
prettier-config:
|
||||||
|
rendertest:
|
||||||
|
sandy:
|
||||||
|
shin:
|
||||||
|
simon:
|
||||||
|
sven:
|
||||||
|
tamiko:
|
||||||
|
theo:
|
||||||
|
trayvon:
|
||||||
|
tutorial:
|
||||||
|
utils:
|
||||||
|
wahid:
|
||||||
|
Security:
|
||||||
|
|
||||||
|
2.0.1:
|
||||||
|
date: 2008-09-01
|
||||||
|
Added:
|
||||||
|
utils:
|
||||||
|
- The `measurementDiffers` method is new.
|
||||||
|
models:
|
||||||
|
- Expanded the size ranges available.
|
||||||
|
- Added the `withBreasts` models which were missing in earlier releases.
|
||||||
|
Changed:
|
||||||
|
models:
|
||||||
|
- The models data is now based on the data from the `neckstimate` method in the utils package.
|
||||||
|
Fixed:
|
||||||
|
theo:
|
||||||
|
- "[#78](https://github.com/freesewing/freesewing/issues/78): Removed inherited notches from fly shield and side piece."
|
20
config/templates/changelog.dflt.md
Normal file
20
config/templates/changelog.dflt.md
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
<p align="center">
|
||||||
|
<a title="Go to freesewing.org" href="https://freesewing.org/">
|
||||||
|
<img src="https://freesewing.org/share/en.wide.jpg" align="center" width="200px" alt="FreeSewing.org"/>
|
||||||
|
</a>
|
||||||
|
<br>
|
||||||
|
<b><a href="https://freesewing.org/">FreeSewing</a></b>
|
||||||
|
<br>
|
||||||
|
An open source platform for made-to-measure sewing patterns
|
||||||
|
</p>
|
||||||
|
|
||||||
|
# {{{fullname}}} Change log
|
||||||
|
|
||||||
|
{{changelog}}
|
||||||
|
|
||||||
|
## 2.0.0
|
||||||
|
|
||||||
|
This is the **initial release**, and the start of this change log.
|
||||||
|
|
||||||
|
Prior to version 2, FreeSewing was not a JavaScript project.
|
||||||
|
As such, that history is out of scope for this change log.
|
|
@ -17,14 +17,18 @@ const config = {
|
||||||
keywords: readConfigFile("keywords.yaml"),
|
keywords: readConfigFile("keywords.yaml"),
|
||||||
badges: readConfigFile("badges.yaml"),
|
badges: readConfigFile("badges.yaml"),
|
||||||
scripts: readConfigFile("scripts.yaml"),
|
scripts: readConfigFile("scripts.yaml"),
|
||||||
|
changelog: readConfigFile("changelog.yaml"),
|
||||||
|
changes: ["Added", "Changed", "Deprecated", "Removed", "Fixed", "Security"],
|
||||||
dependencies: readConfigFile("dependencies.yaml", { version }),
|
dependencies: readConfigFile("dependencies.yaml", { version }),
|
||||||
exceptions: readConfigFile("exceptions.yaml"),
|
exceptions: readConfigFile("exceptions.yaml"),
|
||||||
templates: {
|
templates: {
|
||||||
pkg: readTemplateFile("package.dflt.json"),
|
pkg: readTemplateFile("package.dflt.json"),
|
||||||
rollup: readTemplateFile("rollup.config.dflt.js"),
|
rollup: readTemplateFile("rollup.config.dflt.js"),
|
||||||
|
changelog: readTemplateFile("changelog.dflt.md"),
|
||||||
readme: readTemplateFile("readme.dflt.md")
|
readme: readTemplateFile("readme.dflt.md")
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const packages = glob.sync("*", {
|
const packages = glob.sync("*", {
|
||||||
cwd: path.join(config.repoPath, "packages")
|
cwd: path.join(config.repoPath, "packages")
|
||||||
});
|
});
|
||||||
|
@ -288,6 +292,32 @@ function readme(pkg, config) {
|
||||||
return markup;
|
return markup;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a CHANGELOG.md file for a package
|
||||||
|
*/
|
||||||
|
function changelog(pkg, config) {
|
||||||
|
let markup = Mustache.render(config.templates.changelog, {
|
||||||
|
fullname: fullName(pkg, config),
|
||||||
|
changelog: packageChangelog(pkg, config)
|
||||||
|
});
|
||||||
|
|
||||||
|
return markup;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generates the changelog data for a package
|
||||||
|
*/
|
||||||
|
function packageChangelog(pkg, config) {
|
||||||
|
let markup = "";
|
||||||
|
if (pkg === "theo") {
|
||||||
|
for (let v in config.changelog) {
|
||||||
|
markup += "## " + v + "\n\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return markup;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Make sure we have (at least) a description for each package
|
* Make sure we have (at least) a description for each package
|
||||||
*/
|
*/
|
||||||
|
@ -362,9 +392,10 @@ function configurePatternExample(pkg, config) {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Puts a package.json, rollup.config.js, and README.md
|
* Puts a package.json, rollup.config.js, README.md, and CHANGELOG.md
|
||||||
* into every subdirectory under the packages directory.
|
* into every subdirectory under the packages directory.
|
||||||
* Also creates an example dir for pattern packages.
|
* Also creates an example dir for pattern packages, and writes
|
||||||
|
* the global CHANGELOG.md.
|
||||||
*/
|
*/
|
||||||
function reconfigure(pkgs, config) {
|
function reconfigure(pkgs, config) {
|
||||||
for (let pkg of pkgs) {
|
for (let pkg of pkgs) {
|
||||||
|
@ -384,6 +415,10 @@ function reconfigure(pkgs, config) {
|
||||||
path.join(config.repoPath, "packages", pkg, "README.md"),
|
path.join(config.repoPath, "packages", pkg, "README.md"),
|
||||||
readme(pkg, config)
|
readme(pkg, config)
|
||||||
);
|
);
|
||||||
|
fs.writeFileSync(
|
||||||
|
path.join(config.repoPath, "packages", pkg, "CHANGELOG.md"),
|
||||||
|
changelog(pkg, config)
|
||||||
|
);
|
||||||
if (packageType(pkg, config) === "pattern")
|
if (packageType(pkg, config) === "pattern")
|
||||||
configurePatternExample(pkg, config);
|
configurePatternExample(pkg, config);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue