Releases: ProjectEvergreen/greenwood
v0.14.1
Overview
This release of Greenwood aims to fix a couple of bugs and improve error handling for puppeteer in cloud IDE environments.
If using Yarn, you can can upgrade all your @greenwood packages at once
$ yarn upgrade --scope @greenwood --latest
Changelog
https://github.com/ProjectEvergreen/greenwood/issues?q=label%3Av0.14.1
- handle user JavaScript files that include lookahead patterns
- gracefully handle TypeScript 404 sourcemaps
- plugin-node-modeules not return a string from
serve
lifecycle
Breaking Changes
None
Known Issues
- N / A
Diff
% git diff v0.14.0 v0.14.1 --stat
greenwood.config.js | 5 ++-
lerna.json | 2 +-
packages/cli/package.json | 2 +-
packages/cli/src/commands/build.js | 58 +++++++++++++++++---------------
packages/cli/src/config/rollup.config.js | 6 +++-
packages/cli/src/lifecycles/prerender.js | 10 ++++--
packages/cli/src/plugins/resource/plugin-node-modules.js | 4 +--
packages/cli/src/plugins/resource/plugin-source-maps.js | 2 +-
packages/cli/src/plugins/resource/plugin-standard-html.js | 9 +++--
.../build.config-optimization-inline.spec.js | 39 +++++++++++++++++----
.../cases/build.config.optimization-inline/src/components/foobar.js | 15 +++++++++
.../test/cases/build.config.optimization-inline/src/pages/index.html | 19 +++++++++++
packages/plugin-babel/package.json | 4 +--
packages/plugin-google-analytics/package.json | 4 +--
packages/plugin-graphql/package.json | 4 +--
packages/plugin-import-commonjs/package.json | 4 +--
packages/plugin-import-css/package.json | 4 +--
packages/plugin-import-json/package.json | 4 +--
packages/plugin-polyfills/package.json | 4 +--
packages/plugin-postcss/package.json | 4 +--
packages/plugin-typescript/package.json | 4 +--
www/package.json | 2 +-
22 files changed, 142 insertions(+), 67 deletions(-)
v0.14.0
Overview
This is a new release of Greenwood which among other things, introduces a new plugin for being able to use TypeScript, improves and allows customizations for file watching and live reloading during local development, ands adds more options for optimization overrides as well as fixes a couple bugs.
If using Yarn, you can can upgrade all your @greenwood packages at once
$ yarn upgrade --scope @greenwood --latest
Changelog
https://github.com/ProjectEvergreen/greenwood/issues?q=label%3Av0.14.0
- TypeScript Plugin
- output sourcemaps for production builds
- set
<title>
correctly for top level pages - favor
exports
map in package.json - extend dev server file watching and live reloading
Breaking Changes
None
Known Issues
Diff
% git diff v0.13.0 v0.14.0 --stat
.eslintrc.js | 5 +-
.gitignore | 1 +
README.md | 13 ++-
greenwood.config.js | 8 +-
lerna.json | 2 +-
package.json | 5 +-
packages/cli/package.json | 2 +-
packages/cli/src/config/rollup.config.js | 65 ++++++-----
packages/cli/src/index.js | 2 +-
packages/cli/src/lifecycles/config.js | 11 +-
packages/cli/src/lifecycles/prerender.js | 18 +++-
packages/cli/src/plugins/resource/plugin-node-modules.js | 39 +++++--
packages/cli/src/plugins/resource/plugin-standard-html.js | 20 +++-
packages/cli/src/plugins/server/plugin-livereload.js | 43 ++++++--
.../build.config.error-dev-server-extensions.spec.js | 48 +++++++++
.../build.config.error-dev-server-extensions/greenwood.config.js | 5 +
.../test/cases/build.config.mode-mpa/build.config.mode-mpa.spec.js | 6 +-
.../test/cases/build.config.mode-spa/build.config.mode-spa.spec.js | 7 ++
packages/cli/test/cases/build.config.mode-spa/greenwood.config.js | 1 +
packages/cli/test/cases/build.config.mode-spa/src/index.html | 1 +
.../build.config-optimization-none.spec.js | 2 +-
.../build.config-optimization-overrides.spec.js | 178 +++++++++++++++++++++++++++++++
.../build.config.optimization-overrides/src/components/footer.js | 16 +++
.../build.config.optimization-overrides/src/components/header.js | 18 ++++
.../cases/build.config.optimization-overrides/src/pages/index.html | 15 +++
.../cases/build.config.optimization-overrides/src/styles/theme.css | 3 +
.../build.default.import-node-modules.spec.js | 5 +-
.../test/cases/build.default.markdown/build.default.markdown.spec.js | 11 +-
packages/cli/test/cases/build.default.markdown/greenwood.config.js | 3 +
packages/cli/test/cases/build.default.markdown/src/pages/index.md | 4 +
.../src/pages/index.html | 2 +-
.../build.default.workspace-top-level-pages.spec.js | 2 +-
.../build.default.workspace-user-directory-mapping.spec.js | 2 +-
packages/plugin-babel/package.json | 4 +-
packages/plugin-babel/test/cases/default/default.spec.js | 12 +--
packages/plugin-google-analytics/package.json | 4 +-
packages/plugin-graphql/package.json | 4 +-
packages/plugin-import-commonjs/package.json | 4 +-
packages/plugin-import-css/package.json | 4 +-
packages/plugin-import-json/package.json | 4 +-
packages/plugin-polyfills/package.json | 4 +-
packages/plugin-postcss/package.json | 4 +-
packages/plugin-typescript/README.md | 97 +++++++++++++++++
packages/plugin-typescript/package.json | 32 ++++++
packages/plugin-typescript/src/index.js | 74 +++++++++++++
packages/plugin-typescript/test/cases/default/default.spec.js | 86 +++++++++++++++
packages/plugin-typescript/test/cases/default/greenwood.config.js | 7 ++
packages/plugin-typescript/test/cases/default/src/pages/index.html | 12 +++
packages/plugin-typescript/test/cases/default/src/scripts/main.ts | 15 +++
.../test/cases/options.extend-config/greenwood.config.js | 9 ++
.../test/cases/options.extend-config/options.extend-config.spec.js | 89 ++++++++++++++++
.../test/cases/options.extend-config/src/pages/index.html | 12 +++
.../test/cases/options.extend-config/src/scripts/main.ts | 17 +++
.../test/cases/options.extend-config/src/util/greeting.d.ts | 6 ++
.../plugin-typescript/test/cases/options.extend-config/tsconfig.json | 7 ++
test/smoke-test.js | 9 ++
tsconfig.json | 5 +
www/components/card/card.js | 2 +-
www/components/footer/footer.css | 2 +-
www/package.json | 2 +-
www/pages/docs/configuration.md | 19 +++-
www/pages/docs/css-and-images.md | 2 +-
www/pages/getting-started/quick-start.md | 25 ++++-
www/pages/index.html | 2 +-
www/pages/plugins/custom-plugins.md | 1 +
www/styles/page.css | 10 ++
www/templates/app.html | 4 +-
yarn.lock | 166 ++++++++++++++++++++++++----
68 files changed, 1188 insertions(+), 131 deletions(-)
Performance
After taking advantage of some of Greenwood's optimization settings as part of this release, we are seeing really great results on our home page!
v0.13.0
Overview
This is new feature release of Greenwood which introduces a new plugin for being able to use ESM (import
) for JSON and improves resolving of relative paths in deeply nested pages / templates. In addition this release sets an (initial) precedent for usage of ESM for non JavaScript assets. (See Breaking Changes section below 👇 )
Changelog
https://github.com/ProjectEvergreen/greenwood/issues?q=label%3Av0.13.0
- have a plugin for being able to
import
JSON using ESM - resolve (deeply) nested relative template paths to expected workspace path
Breaking Changes
Not breaking per se, but just want to highlight / clarify some expectations around using ESM for non-JavaScript assets, like JSON or CSS. A couple things to keep in mind
- Use relative paths (this is per ESM spec)
- Be explicit and add
?type=xxx
Examples
// CSS
import css from './styles.css?type=css';
console.log(css); // .my-css { ... }
// JSON
import json from '../path/to/data.json?type=json';
console.log(json); // { ... }
We will try and adhere to the spec as close as possible, but as the above is not spec compliant, we want it to be familiar to prior art where / if possible. In this case, inspiration was found in the import assertions spec proposal.
Known Issues
None
Diff
$ git diff v0.12.4 v0.13.0 --stat
README.md | 2 +-
greenwood.config.js | 2 +
lerna.json | 2 +-
packages/cli/package.json | 4 +-
packages/cli/src/config/rollup.config.js | 77 +++++-----
packages/cli/src/lib/resource-interface.js | 26 ++++
packages/cli/src/plugins/resource/plugin-node-modules.js | 16 +-
packages/cli/src/plugins/resource/plugin-standard-json.js | 31 +---
packages/cli/src/plugins/resource/plugin-user-workspace.js | 20 ++-
.../build.default.workspace-javascript-css.spec.js | 17 ---
.../cases/build.default.workspace-javascript-css/src/pages/index.html | 1 -
.../cases/build.default.workspace-javascript-css/src/scripts/main.js | 5 -
.../build.default.workspace-templates-relative-paths.spec.js | 257 +++++++++++++++++++++++++++++++++
.../src/assets/fonts/source-sans-pro-v13-latin-regular.ttf | Bin 0 -> 40408 bytes
.../src/assets/fonts/source-sans-pro-v13-latin-regular.woff | Bin 0 -> 20179 bytes
.../src/assets/fonts/source-sans-pro-v13-latin-regular.woff2 | Bin 0 -> 16112 bytes
.../src/assets/fonts/source-sans-pro.css | 11 ++
.../src/components/footer.js | 18 +++
.../src/components/greeting.js | 18 +++
.../src/components/header.js | 18 +++
.../src/pages/index.html | 12 ++
.../src/pages/one/two/three/index.md | 10 ++
.../src/styles/home.css | 3 +
.../src/styles/page.css | 5 +
.../src/styles/theme.css | 9 ++
.../src/templates/app.html | 19 +++
.../src/templates/page.html | 12 ++
packages/plugin-babel/package.json | 4 +-
packages/plugin-google-analytics/package.json | 4 +-
packages/plugin-graphql/package.json | 4 +-
packages/plugin-import-commonjs/package.json | 4 +-
packages/plugin-import-css/README.md | 8 +-
packages/plugin-import-css/package.json | 4 +-
packages/plugin-import-css/src/index.js | 9 +-
packages/plugin-import-css/test/cases/default/src/main.js | 2 +-
packages/plugin-import-json/README.md | 42 ++++++
packages/plugin-import-json/package.json | 31 ++++
packages/plugin-import-json/src/index.js | 53 +++++++
packages/plugin-import-json/test/cases/default/default.spec.js | 76 ++++++++++
packages/plugin-import-json/test/cases/default/greenwood.config.js | 7 +
packages/plugin-import-json/test/cases/default/src/assets/data.json | 4 +
packages/plugin-import-json/test/cases/default/src/pages/index.html | 12 ++
packages/plugin-import-json/test/cases/default/src/scripts/main.js | 4 +
packages/plugin-polyfills/package.json | 4 +-
packages/plugin-postcss/package.json | 4 +-
www/components/banner/banner.js | 4 +-
www/components/card/card.js | 2 +-
www/components/footer/footer.js | 2 +-
www/components/header/header.js | 2 +-
www/components/shelf/shelf.js | 2 +-
www/components/social-icons/social-icons.js | 2 +-
www/package.json | 2 +-
www/pages/docs/layouts.md | 2 +-
www/pages/index.html | 2 +-
www/pages/plugins/custom-plugins.md | 1 +
www/templates/app.html | 8 +-
www/templates/page.html | 8 +-
yarn.lock | 18 +--
58 files changed, 765 insertions(+), 161 deletions(-)
Noteworthy
In creating a plugin for import
with JSON and by rolling our own solution for getting our HTML entry points when bundling, we are able to drop two dependencies from the CLI package this release! 🎉
Compared to our v0.10.0
release, which had 26 dependencies.
v0.12.4
Overview
This release aims to fix an issue with using ESM for JSON on Windows, and add handles support for default entries in exportMap
s for dependencies in node_modules.
Changelog
https://github.com/ProjectEvergreen/greenwood/issues?q=label%3Av0.12.4
- add exportMap
default
entry support in plugin-node-modules import
JSON via ESM for the website is not bundling correctly on Windows
Breaking Changes
None
Known Issues
None
Diff
$ git diff v0.12.3 v0.12.4 --stat
lerna.json | 2 +-
package.json | 4 ++--
packages/cli/package.json | 2 +-
packages/cli/src/config/rollup.config.js | 35 ++++++++++++++++++++++++++++------
packages/cli/src/plugins/resource/plugin-node-modules.js | 6 ++++--
.../cases/build.default.workspace-javascript-css/src/scripts/main.js | 2 +-
packages/plugin-babel/package.json | 4 ++--
packages/plugin-google-analytics/package.json | 4 ++--
packages/plugin-graphql/package.json | 4 ++--
packages/plugin-import-commonjs/package.json | 4 ++--
packages/plugin-import-css/package.json | 4 ++--
packages/plugin-polyfills/package.json | 4 ++--
packages/plugin-postcss/package.json | 4 ++--
www/package.json | 2 +-
14 files changed, 53 insertions(+), 28 deletions(-)
v0.12.3
Overview
This release aims to fix a few newly reported / discovered bugs including ensuring cross platform support for Windows.
Changelog
https://github.com/ProjectEvergreen/greenwood/issues?q=label%3Av0.12.3
- CLI is not handling
export * ...
(wildcard) export formats - fetching any JSON file that is not
graph.json
always returns an ES module - TypeError: Cannot read property 'replace' of undefined (path separator checks breaking on Windows) - thanks for reporting @anlexN !
Breaking Changes
Not a breaking change, but going forward, using import
syntax for anything but ESM (e.g. CSS, JSON) will require an explicit opt-in by users, as is being discussed in #606
Known Issues
None
Diff
$ git diff v0.12.2 v0.12.3 --stat
.github/workflows/ci-win.yml | 33 ++++++++++++
.github/workflows/ci.yml | 8 ++-
.github/workflows/master.yml | 8 ++-
.github/workflows/release.yml | 6 +--
greenwood.config.js | 10 ++--
lerna.json | 2 +-
package.json | 3 +-
packages/cli/package.json | 4 +-
packages/cli/src/config/rollup.config.js | 19 ++++++-
packages/cli/src/lifecycles/graph.js | 22 ++++----
packages/cli/src/lifecycles/serve.js | 5 ++
packages/cli/src/plugins/resource/plugin-node-modules.js | 27 +++++++---
packages/cli/src/plugins/resource/plugin-optimization-mpa.js | 5 +-
packages/cli/src/plugins/resource/plugin-standard-html.js | 36 ++++++-------
packages/cli/src/plugins/resource/plugin-standard-json.js | 31 +++++------
.../build.default.workspace-getting-started.spec.js | 4 +-
.../build.default.workspace-javascript-css.spec.js | 18 ++++++-
.../src/assets/data.json | 4 ++
.../src/pages/index.html | 11 ++++
.../src/scripts/main.js | 5 ++
.../build.default.workspace-nested.spec.js | 8 ++-
packages/plugin-babel/package.json | 4 +-
packages/plugin-google-analytics/package.json | 4 +-
packages/plugin-graphql/package.json | 4 +-
.../query-custom-frontmatter.spec.js | 4 +-
.../plugin-graphql/test/cases/query-menu/query-menu.spec.js | 4 +-
packages/plugin-import-commonjs/package.json | 4 +-
packages/plugin-import-css/package.json | 4 +-
packages/plugin-polyfills/package.json | 4 +-
packages/plugin-postcss/package.json | 4 +-
www/components/footer/footer.js | 2 +-
www/package.json | 2 +-
yarn.lock | 80 +++++++++++++++++++---------
33 files changed, 265 insertions(+), 124 deletions(-)
v0.12.2
Overview
This release aims to fix a bug that wasn't quite fixed as it was supposed to in the previous release.
Changelog
https://github.com/ProjectEvergreen/greenwood/issues?q=label%3Av0.12.2
Breaking Changes
None
Known Issues
- Greenwood not working on Windows
- fetching any JSON file that is not graph.json always returns as an ES module
Diff
$ git diff v0.12.1 v0.12.2 --stat
lerna.json | 2 +-
packages/cli/package.json | 2 +-
packages/cli/src/plugins/resource/plugin-user-workspace.js | 3 ++-
packages/plugin-babel/package.json | 4 ++--
packages/plugin-google-analytics/package.json | 4 ++--
packages/plugin-graphql/package.json | 4 ++--
packages/plugin-import-commonjs/package.json | 4 ++--
packages/plugin-import-css/package.json | 4 ++--
packages/plugin-polyfills/package.json | 4 ++--
packages/plugin-postcss/package.json | 4 ++--
www/package.json | 2 +-
11 files changed, 19 insertions(+), 18 deletions(-)
v0.12.1
Overview
This release aims to fix some bugs observed during the last release.
Changelog
https://github.com/ProjectEvergreen/greenwood/issues?q=label%3Av0.12.1
- dev server proxy is not forwarding query params
- top level page or page template
<meta>
tags not showing up in output HTML
Breaking Changes
None
Known Issues
- Greenwood not working on Windows
- dev server proxy is not forwarding query params
- fetching any JSON file that is not graph.json always returns asan ES module
Diff
$ git diff v0.12.0 v0.12.1 --stat
README.md | 3 ++-
lerna.json | 2 +-
packages/cli/package.json | 2 +-
packages/cli/src/lifecycles/serve.js | 2 +-
packages/cli/src/plugins/resource/plugin-standard-html.js | 15 ++++++++++-----
packages/cli/src/plugins/resource/plugin-user-workspace.js | 4 +++-
packages/cli/test/cases/build.config.mode-spa/build.config.mode-spa.spec.js | 8 ++++++++
packages/cli/test/cases/build.config.mode-spa/src/index.html | 1 +
.../build.default.workspace-template-page.spec.js | 8 ++++++++
.../test/cases/build.default.workspace-template-page/src/templates/page.html | 7 +++----
.../build.default.workspace-top-level-pages.spec.js | 8 ++++++++
.../test/cases/build.default.workspace-top-level-pages/src/pages/index.html | 1 +
.../build.default.workspace-user-directory-mapping/src/templates/page.html | 2 --
packages/plugin-babel/package.json | 4 ++--
packages/plugin-google-analytics/package.json | 4 ++--
packages/plugin-graphql/package.json | 4 ++--
packages/plugin-import-commonjs/package.json | 4 ++--
packages/plugin-import-css/package.json | 4 ++--
packages/plugin-polyfills/package.json | 4 ++--
packages/plugin-postcss/package.json | 4 ++--
test/smoke-test.js | 12 ++++++++----
www/package.json | 2 +-
22 files changed, 70 insertions(+), 35 deletions(-)
v0.12.0
Overview
This release aimed primarily to extend Greenwood's capabilities to handle Single Page Application (SPA) project types by adding it as a new mode
configuration option, added support for being able to reverse proxy requests (like for API calls), and also made prerendering optional as a new (opt-out) configuration option. Additionally, if using plugin-graphql, you can now provide your own custom schema and resolvers.
Changelog
https://github.com/ProjectEvergreen/greenwood/issues?q=label%3Av0.12.0
- Fix inline
<script>
marker detection not correctly matching when Rollup bundles the inline source and changes its contents - Added support for reverse proxy configuration for
devServer
- Added configuration to allow pre-rendering to be optional
- Introduced a Single Page Application (SPA) configuration mode
- Support ad-hoc / custom GraphQL resolvers and definitions (schemas)
- add support for resolving sourcemaps (in development)
Breaking Changes
None
Known Issues
- Greenwood not working on Windows
- dev server proxy is not forwarding query params
- top level page or page template
<meta>
tags not showing up in output HTML
Diff
% git diff v0.11.1 v0.12.0 --stat
.eslintrc.js | 1 +
lerna.json | 2 +-
nyc.config.js | 2 +-
package.json | 1 +
packages/cli/package.json | 4 +-
packages/cli/src/commands/build.js | 68 ++++----
packages/cli/src/config/rollup.config.js | 23 +--
packages/cli/src/lifecycles/config.js | 25 ++-
packages/cli/src/lifecycles/graph.js | 23 ++-
packages/cli/src/lifecycles/prerender.js | 111 +++++++++++++
packages/cli/src/lifecycles/serialize.js | 83 ----------
packages/cli/src/lifecycles/serve.js | 16 +-
packages/cli/src/plugins/resource/plugin-dev-proxy.js | 45 +++++
packages/cli/src/plugins/resource/plugin-node-modules.js | 6 +-
packages/cli/src/plugins/resource/plugin-source-maps.js | 40 +++++
packages/cli/src/plugins/resource/plugin-standard-html.js | 14 +-
.../build.config.error-mode/build.config.error-mode.spec.js | 2 +-
.../build.config.error-prerender.spec.js | 46 ++++++
.../test/cases/build.config.error-prerender/greenwood.config.js | 3 +
.../cases/build.config.mode-mpa/build.config.mode-mpa.spec.js | 2 +
.../cases/build.config.mode-spa/build.config.mode-spa.spec.js | 244 ++++++++++++++++++++++++++++
.../cli/test/cases/build.config.mode-spa/greenwood.config.js | 3 +
packages/cli/test/cases/build.config.mode-spa/package.json | 9 +
.../test/cases/build.config.mode-spa/src/components/footer.js | 49 ++++++
packages/cli/test/cases/build.config.mode-spa/src/index.html | 29 ++++
packages/cli/test/cases/build.config.mode-spa/src/index.js | 32 ++++
.../cli/test/cases/build.config.mode-spa/src/routes/about.js | 9 +
.../cli/test/cases/build.config.mode-spa/src/routes/home.js | 9 +
.../cases/build.config.prerender/build.config.prerender.spec.js | 117 +++++++++++++
.../cli/test/cases/build.config.prerender/greenwood.config.js | 3 +
.../test/cases/build.config.prerender/src/components/header.js | 22 +++
.../cli/test/cases/build.config.prerender/src/pages/index.html | 13 ++
.../build.default.import-node-modules.spec.js | 16 +-
.../build.default.import-node-modules/src/pages/index.html | 4 +-
packages/plugin-babel/package.json | 4 +-
packages/plugin-google-analytics/package.json | 4 +-
packages/plugin-graphql/README.md | 91 ++++++++++-
packages/plugin-graphql/package.json | 4 +-
packages/plugin-graphql/src/core/server.js | 2 +-
packages/plugin-graphql/src/queries/config.gql | 1 +
packages/plugin-graphql/src/schema/config.js | 1 +
packages/plugin-graphql/src/schema/schema.js | 104 +++++++-----
.../test/cases/query-custom-schema/greenwood.config.js | 9 +
.../test/cases/query-custom-schema/query-custom-schema.spec.js | 133 +++++++++++++++
.../test/cases/query-custom-schema/src/assets/logo1.png | Bin 0 -> 1150 bytes
.../test/cases/query-custom-schema/src/assets/logo2.png | Bin 0 -> 1150 bytes
.../test/cases/query-custom-schema/src/assets/logo3.png | Bin 0 -> 1150 bytes
.../test/cases/query-custom-schema/src/data/queries/gallery.gql | 9 +
.../test/cases/query-custom-schema/src/data/schema/gallery.js | 44 +++++
.../test/cases/query-custom-schema/src/pages/index.html | 35 ++++
packages/plugin-graphql/test/unit/schema/config.spec.js | 8 +
packages/plugin-import-commonjs/package.json | 4 +-
packages/plugin-import-css/package.json | 8 +-
packages/plugin-polyfills/package.json | 4 +-
packages/plugin-postcss/package.json | 4 +-
www/package.json | 2 +-
www/pages/docs/configuration.md | 25 ++-
www/pages/docs/data.md | 2 +
www/pages/docs/layouts.md | 21 ++-
www/pages/index.html | 2 +-
yarn.lock | 80 ++++++++-
61 files changed, 1458 insertions(+), 219 deletions(-)
v0.11.1
Overview
This release aims to fix a couple recently identified important issues around multiple inline <script>
tag optimizations during build time, and errors when using query strings in URLs with the server used for develop
and serve
commands.
Changelog
hhttps://github.com/ProjectEvergreen/greenwood/issues?q=label%3Av0.11.1
- query string parameters in browser URLs breaks develop / prod servers
- multiple inline
<script>
tags not getting correctly optimized - all tag tags show the same contents
Breaking Changes
None
Known Issues
N / A
Diff
% git diff v0.11.0 v0.11.1 --stat
greenwood.config.js | 17 +++++++++++-
lerna.json | 2 +-
packages/cli/package.json | 2 +-
packages/cli/src/config/rollup.config.js | 43 +++++++++++++++++++++++--------
packages/cli/src/lifecycles/serve.js | 2 +-
packages/cli/src/plugins/resource/plugin-user-workspace.js | 9 +++++--
.../build.default.import-node-modules.spec.js | 2 +-
.../build.default.workspace-javascript-css.spec.js | 44 +++++++++++++++++++++++++++-----
.../cases/build.default.workspace-javascript-css/src/pages/index.html | 27 ++++++++++++++++++--
packages/plugin-babel/package.json | 4 +--
packages/plugin-google-analytics/package.json | 4 +--
packages/plugin-graphql/package.json | 4 +--
packages/plugin-import-commonjs/package.json | 4 +--
packages/plugin-import-css/package.json | 4 +--
packages/plugin-polyfills/package.json | 4 +--
packages/plugin-postcss/package.json | 4 +--
www/package.json | 5 ++--
www/pages/docs/component-model.md | 2 +-
yarn.lock | 5 ++++
19 files changed, 146 insertions(+), 42 deletions(-)
v0.11.0
Overview
This release aims to close out our milestone towards achieving feature parity with our new "no bundle" philosophy introduced in v0.10.0. It also fixes a bug with duplicate <head>
tag output when merging templates.
We also added a Code of Conduct (CoC) to the project.
Changelog
hhttps://github.com/ProjectEvergreen/greenwood/issues?q=label%3Av0.11.0
- restore ability to import
<script>
and<link>
tags from frontmatter, including support for custom elements in markdown - duplicate
<head>
tag output when merging templates
Breaking Changes
None
Known Issues
- multiple inline <script> tags not getting correctly optimized - all tag tags show the same contents
- query strings in URLs break servers
Diff
% git diff v0.10.1 v0.11.0 --stat
.github/CONTRIBUTING.md | 4 +-
CODE_OF_CONDUCT.md | 133 +++++++++++++++++
lerna.json | 2 +-
package.json | 1 +
packages/cli/package.json | 2 +-
packages/cli/src/lifecycles/graph.js | 3 +
packages/cli/src/plugins/resource/plugin-node-modules.js | 6 +-
packages/cli/src/plugins/resource/plugin-standard-html.js | 55 ++++++-
.../cli/test/cases/build.config.default/build.config.default.spec.js | 23 +--
packages/cli/test/cases/build.config.default/greenwood.config.js | 1 -
.../cases/build.config.error-mode/build.config.error-mode.spec.js | 22 +--
.../build.config.error-optimization.spec.js | 20 +--
.../cases/build.config.error-title/build.config.error-title.spec.js | 20 +--
.../build.config.error-workspace-absolute.spec.js | 20 +--
.../build.config.error-workspace/build.config.error-workspace.spec.js | 20 +--
.../build.config.markdown-custom.spec.js | 21 +--
.../build.config.markdown-custom.settings.spec.js | 21 +--
packages/cli/test/cases/build.config.meta/build.config.meta.spec.js | 20 ++-
.../test/cases/build.config.mode-mpa/build.config.mode-mpa.spec.js | 36 ++---
.../build.config-optimization-default.spec.js | 22 +--
.../build.config-optimization-inline.spec.js | 18 ++-
.../build.config-optimization-none.spec.js | 22 +--
.../build.config-optimization-static.spec.js | 18 ++-
packages/cli/test/cases/build.config.title/build.config.title.spec.js | 20 ++-
.../build.config.workspace-custom.spec.js | 20 ++-
.../build.default.import-node-modules.spec.js | 237 ++++++++++++++++---------------
.../test/cases/build.default.markdown/build.default.markdown.spec.js | 19 ++-
.../build.default.quick-start-npx.spec.js | 22 +--
.../build.default.workspace-assets.spec.js | 22 +--
.../build.default.workspace-frontmatter-imports.spec.js | 143 +++++++++++++++++++
.../src/components/counter/counter.css | 3 +
.../src/components/counter/counter.js | 42 ++++++
.../src/pages/examples/counter.md | 14 ++
.../build.default.workspace-frontmatter-imports/src/pages/index.md | 3 +
.../build.default.workspace-getting-started.spec.js | 22 +--
.../build.default.workspace-javascript-css-remote.spec.js | 24 ++--
.../build.default.workspace-javascript-css.spec.js | 24 ++--
.../build.default.workspace-nested.spec.js | 20 ++-
.../build.default.workspace-template-app.spec.js | 20 ++-
.../build.default.workspace-template-page-and-app.spec.js | 24 ++--
.../build.default.workspace-template-page-bare-merging.spec.js | 22 +--
.../build.default.workspace-template-page.spec.js | 19 ++-
.../build.default.workspace-top-level-pages.spec.js | 22 +--
.../build.default.workspace-user-directory-mapping.spec.js | 22 +--
packages/cli/test/cases/build.default/build.default.spec.js | 22 +--
.../cases/build.plugins.error-name/build.plugins.error-name.spec.js | 20 +--
.../build.plugins.error-provider/build.plugins.error-provider.spec.js | 20 +--
.../cases/build.plugins.error-type/build.plugins.error-type.spec.js | 20 +--
.../build.plugins.resource/build.config.plugins-resource.spec.js | 20 ++-
packages/cli/test/cases/eject.default/eject.default.spec.js | 22 +--
packages/plugin-babel/package.json | 4 +-
packages/plugin-babel/test/cases/default/default.spec.js | 18 ++-
.../test/cases/options.extend-config/options.extend-config.spec.js | 20 ++-
packages/plugin-google-analytics/package.json | 4 +-
packages/plugin-google-analytics/test/cases/default/default.spec.js | 19 ++-
.../test/cases/error-analytics-id/error-analytics-id.spec.js | 20 ++-
.../test/cases/option-anonymous/option-anonymous.spec.js | 23 +--
packages/plugin-graphql/package.json | 4 +-
.../plugin-graphql/test/cases/query-children/query-children.spec.js | 114 +++++++--------
packages/plugin-graphql/test/cases/query-config/query-config.spec.js | 53 +++----
.../cases/query-custom-frontmatter/query-custom-frontmatter.spec.js | 114 +++++++--------
packages/plugin-graphql/test/cases/query-graph/query-graph.spec.js | 114 +++++++--------
packages/plugin-graphql/test/cases/query-menu/query-menu.spec.js | 116 +++++++--------
packages/plugin-import-commonjs/package.json | 4 +-
packages/plugin-import-commonjs/test/cases/default/default.spec.js | 39 +++--
packages/plugin-import-css/package.json | 4 +-
packages/plugin-import-css/test/cases/default/default.spec.js | 19 ++-
packages/plugin-polyfills/package.json | 4 +-
packages/plugin-polyfills/test/cases/default/default.spec.js | 38 ++---
packages/plugin-postcss/package.json | 4 +-
packages/plugin-postcss/test/cases/default/default.spec.js | 18 ++-
.../test/cases/options.extend-config/options.extend-config.spec.js | 20 ++-
test/smoke-test.js | 10 +-
test/test-bed.js | 138 ------------------
test/utils.js | 40 +++++-
www/components/footer/footer.css | 4 +
www/components/footer/footer.js | 2 +-
www/package.json | 2 +-
www/pages/docs/front-matter.md | 14 +-
www/pages/docs/markdown.md | 13 +-
yarn.lock | 11 +-
81 files changed, 1465 insertions(+), 940 deletions(-)