: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"),
|
||||
badges: readConfigFile("badges.yaml"),
|
||||
scripts: readConfigFile("scripts.yaml"),
|
||||
changelog: readConfigFile("changelog.yaml"),
|
||||
changes: ["Added", "Changed", "Deprecated", "Removed", "Fixed", "Security"],
|
||||
dependencies: readConfigFile("dependencies.yaml", { version }),
|
||||
exceptions: readConfigFile("exceptions.yaml"),
|
||||
templates: {
|
||||
pkg: readTemplateFile("package.dflt.json"),
|
||||
rollup: readTemplateFile("rollup.config.dflt.js"),
|
||||
changelog: readTemplateFile("changelog.dflt.md"),
|
||||
readme: readTemplateFile("readme.dflt.md")
|
||||
}
|
||||
};
|
||||
|
||||
const packages = glob.sync("*", {
|
||||
cwd: path.join(config.repoPath, "packages")
|
||||
});
|
||||
|
@ -288,6 +292,32 @@ function readme(pkg, config) {
|
|||
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
|
||||
*/
|
||||
|
@ -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.
|
||||
* 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) {
|
||||
for (let pkg of pkgs) {
|
||||
|
@ -384,6 +415,10 @@ function reconfigure(pkgs, config) {
|
|||
path.join(config.repoPath, "packages", pkg, "README.md"),
|
||||
readme(pkg, config)
|
||||
);
|
||||
fs.writeFileSync(
|
||||
path.join(config.repoPath, "packages", pkg, "CHANGELOG.md"),
|
||||
changelog(pkg, config)
|
||||
);
|
||||
if (packageType(pkg, config) === "pattern")
|
||||
configurePatternExample(pkg, config);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue