greenwood

Greenwood is your workbench for the web, embracing web standards from the ground up to empower your stack from front to back.

MIT License

Downloads
4.6K
Stars
97
Committers
8

Bot releases are visible (Hide)

greenwood - v0.19.0-alpha.2

Published by thescientist13 almost 3 years ago

Overview

This minor pre-release introduces a brand new way to get started with Greenwood, through a new init package for scaffolding out a new Greenwood project! Try it out

mkdir my-app && cd my-app
npx @greenwood/init

Given that Node v12 is in maintenance (LTS) mode, we recommend users to start migrating to Node v14.

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.19.0+label%3Aalpha.2

  1. Init Command and Package

Breaking Changes

N / A

Known Issues

N / A

Diff

% git diff v0.18.0 v0.19.0-alpha.2 --stat | grep -v "www/"
 .ls-lint.yml                                       |   3 +-
 .mocharc.js                                        |   2 +-
 README.md                                          |  11 +-
 lerna.json                                         |   2 +-
 packages/cli/package.json                          |   2 +-
 packages/init/README.md                            |  43 ++++++
 packages/init/package.json                         |  28 ++++
 packages/init/src/copy-folder.js                   |  43 ++++++
 packages/init/src/index.js                         | 138 +++++++++++++++++++
 packages/init/src/template/greenwood.config.js     |   3 +
 packages/init/src/template/package.json            |  14 ++
 packages/init/src/template/src/pages/index.md      |   1 +
 .../test/cases/build.default/build.default.spec.js |  64 +++++++++
 .../cases/develop.default/develop.default.spec.js  | 146 +++++++++++++++++++++
 .../test/cases/init.default/init.default.spec.js   | 106 +++++++++++++++
 .../init/test/cases/init.yarn/init.yarn.spec.js    |  67 ++++++++++
 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 +-
 yarn.lock                                          |  13 ++
 31 files changed, 727 insertions(+), 37 deletions(-)
greenwood - v0.18.0

Published by thescientist13 almost 3 years ago

Overview

This minor release introduces a Not Found (404) page mechanism with defaults and the ability to override and a HUD (head-up display) for development debugging, adds fixes and enhancements for export map handling for 3rd party dependencies, and adds implicit support for CSS files loaded as JS files in plugin-import-css.

➡️ Read our release blog post for a deep dive into a couple of these features! 🗒️

Given that Node v12 is in maintenance (LTS) mode, we recommend users to start migrating to Node v14.

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.18.0+label%3Aalpha.0

  1. Not Found (404) Page
  2. Add support for extension less JavaScript / CSS files (JS files "in disguise")
  3. HUD for local development HTML error handling
  4. Duplicate scoped package names in import map causing 500 errors in development
  5. Exports of entry points with relative paths are not getting added to the import map

Breaking Changes

N / A

Known Issues

N / A

Diff

% git diff v0.17.0 v0.18.0 --stat | grep -v "www/"
 lerna.json                                         |   2 +-
 packages/cli/package.json                          |   3 +-
 packages/cli/src/config/rollup.config.js           |   4 +-
 packages/cli/src/lifecycles/config.js              |   9 +
 packages/cli/src/lifecycles/graph.js               |  40 +++-
 packages/cli/src/lifecycles/prerender.js           |  15 +-
 .../src/plugins/resource/plugin-node-modules.js    |  18 +-
 .../plugins/resource/plugin-optimization-mpa.js    |  30 +--
 .../src/plugins/resource/plugin-standard-html.js   | 237 ++++++++++++---------
 packages/cli/src/templates/404.html                |  18 ++
 .../build.config.error-dev-server-hud.spec.js      |  48 +++++
 .../greenwood.config.js                            |   5 +
 .../build.config-optimization-inline.spec.js       |   2 +-
 .../build.default.import-node-modules.spec.js      |   6 +-
 .../build.default.workspace-404-markdown.spec.js   | 148 +++++++++++++
 .../src/pages/404.md                               |   8 +
 .../src/scripts/404.js                             |   1 +
 .../src/scripts/header.js                          |  18 ++
 .../src/styles/404.css                             |   3 +
 .../src/styles/theme.css                           |   3 +
 .../src/templates/app.html                         |  14 ++
 .../build.default.workspace-404.spec.js            | 148 +++++++++++++
 .../build.default.workspace-404/src/pages/404.html |  16 ++
 .../build.default.workspace-404/src/scripts/404.js |   1 +
 .../src/scripts/header.js                          |  18 ++
 .../build.default.workspace-404/src/styles/404.css |   3 +
 .../src/styles/theme.css                           |   3 +
 .../src/templates/app.html                         |  14 ++
 .../build.default.workspace-nested.spec.js         |   3 +-
 .../test/cases/build.default/build.default.spec.js |  66 +++++-
 .../develop.default.hud-disabled.spec.js           | 114 ++++++++++
 .../greenwood.config.js                            |   5 +
 .../src/pages/index.html                           |   7 +
 .../develop.default.hud.spec.js                    | 114 ++++++++++
 .../cases/develop.default.hud/src/pages/index.html |   7 +
 .../cases/develop.default/develop.default.spec.js  | 191 ++++++++++++++++-
 .../cli/test/cases/develop.default/package.json    |   1 +
 packages/plugin-babel/package.json                 |   4 +-
 packages/plugin-google-analytics/package.json      |   4 +-
 packages/plugin-graphql/package.json               |   4 +-
 packages/plugin-graphql/src/queries/children.gql   |   1 +
 packages/plugin-graphql/src/queries/graph.gql      |   1 +
 packages/plugin-graphql/src/schema/graph.js        |   3 +-
 .../test/cases/query-graph/query-graph.spec.js     |   3 +-
 packages/plugin-import-commonjs/package.json       |   4 +-
 packages/plugin-import-css/README.md               |   2 +-
 packages/plugin-import-css/package.json            |   4 +-
 packages/plugin-import-css/src/index.js            |  12 ++
 .../test/cases/default/default.spec.js             |   2 +-
 .../cases/develop.default/develop.default.spec.js  |  39 ++++
 .../test/cases/develop.default/src/styles.css.js   |   1 +
 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 +-
 test/smoke-test.js                                 |   2 +-
 yarn.lock                                          | 108 ++++++++++
 70 files changed, 1620 insertions(+), 175 deletions(-)
greenwood - v0.18.0-alpha.0

Published by thescientist13 about 3 years ago

Overview

This pre-minor release introduces a Not Found (404) page mechanism with defaults and the ability to override, provides fixes and enhancements for export map handling for 3rd party dependencies, and implicit support for CSS files loaded as JS files in plugin-import-css.

Given that Node v12 is in maintenance (LTS) mode, we recommend users to start migrating to Node v14.

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.18.0+label%3Aalpha.0

  1. Not Found (404) Page
  2. Add support for extension less JavaScript / CSS files (JS files "in disguise")
  3. Duplicate scoped package names in import map causing 500 errors in development
  4. Exports of entry points with relative paths are not getting added to the import map

Breaking Changes

N / A

Known Issues

N / A

Diff

% git diff v0.17.0 v0.18.0-alpha.0 --stat | grep -v "www/"
 lerna.json                                         |   2 +-
 packages/cli/package.json                          |   3 +-
 packages/cli/src/config/rollup.config.js           |   4 +-
 packages/cli/src/lifecycles/graph.js               |  40 ++++-
 packages/cli/src/lifecycles/prerender.js           |  15 +-
 .../src/plugins/resource/plugin-node-modules.js    |  18 +-
 .../plugins/resource/plugin-optimization-mpa.js    |  30 ++--
 .../src/plugins/resource/plugin-standard-html.js   |  22 ++-
 packages/cli/src/templates/404.html                |  18 ++
 .../build.default.workspace-404-markdown.spec.js   | 148 ++++++++++++++++
 .../src/pages/404.md                               |   8 +
 .../src/scripts/404.js                             |   1 +
 .../src/scripts/header.js                          |  18 ++
 .../src/styles/404.css                             |   3 +
 .../src/styles/theme.css                           |   3 +
 .../src/templates/app.html                         |  14 ++
 .../build.default.workspace-404.spec.js            | 148 ++++++++++++++++
 .../build.default.workspace-404/src/pages/404.html |  16 ++
 .../build.default.workspace-404/src/scripts/404.js |   1 +
 .../src/scripts/header.js                          |  18 ++
 .../build.default.workspace-404/src/styles/404.css |   3 +
 .../src/styles/theme.css                           |   3 +
 .../src/templates/app.html                         |  14 ++
 .../build.default.workspace-nested.spec.js         |   3 +-
 .../test/cases/build.default/build.default.spec.js |  66 ++++++-
 .../cases/develop.default/develop.default.spec.js  | 191 ++++++++++++++++++++-
 .../cli/test/cases/develop.default/package.json    |   1 +
 packages/plugin-babel/package.json                 |   4 +-
 packages/plugin-google-analytics/package.json      |   4 +-
 packages/plugin-graphql/package.json               |   4 +-
 packages/plugin-graphql/src/queries/children.gql   |   1 +
 packages/plugin-graphql/src/queries/graph.gql      |   1 +
 packages/plugin-graphql/src/schema/graph.js        |   3 +-
 .../test/cases/query-graph/query-graph.spec.js     |   3 +-
 packages/plugin-import-commonjs/package.json       |   4 +-
 packages/plugin-import-css/README.md               |   2 +-
 packages/plugin-import-css/package.json            |   4 +-
 packages/plugin-import-css/src/index.js            |  12 ++
 .../test/cases/default/default.spec.js             |   2 +-
 .../cases/develop.default/develop.default.spec.js  |  39 +++++
 .../test/cases/develop.default/src/styles.css.js   |   1 +
 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 +-
 test/smoke-test.js                                 |   2 +-
 yarn.lock                                          | 108 ++++++++++++
 52 files changed, 999 insertions(+), 73 deletions(-)
greenwood - v0.17.0

Published by thescientist13 about 3 years ago

Overview

This minor release includes (implicit) support for Lit@2 and compatibility with puppeteer pre-rendering as well as introduces a new Copy Plugin API. Rollup and some associated plugins also had their versions updated to support newer features in package.json like exports and sideEffects. For developing in the Greenwood monorepo itself, there is now full M1 support for macOS contributors. We were also able to resolve a number of bugs. (v0.1.7.0-alpha.0 release notes)

Also a big shout to @aholtzman for a number of enhancements and copy edits to the project website, including adding this sweet Edit on GitHub button to all our documentation pages for quick access if you spot any ways to help improve them! 👀 ✌️


Eventually any Lit specific code will be moved off into plugins before the 1.0 release as part of our upcoming SSR work.

Given that Node v12 is in maintenance (LTS) mode, we recommend users to start migrating to Node v14.

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.17.0

  1. Create a general purpose copy mechanism

  2. Upgrade latest Rollup Deps (CLI only)

  3. (Implicit) Lit@2 support

  4. plugin-postcss extendConfig option is broken with PostCSS error

  5. assets (fonts) with query strings not loading correctly with production build (greenwood serve)

  6. nested client side routing fallback index.html not working in SPA mode

  7. handle no body tag and add specs for different HTML page possibilities

Breaking Changes

If you are using the Polyfills plugin, you will now need to spread the plugin function call in your greenwood.config.js.

// before
plugins: [
  pluginPolyfills()
]
  
// after
plugins: [
  ...pluginPolyfills()
]

Known Issues

  1. Not with Greenwood per se, but just a recommendation for Lit users to be aware of limitations and best practices for using CSS with expressions.

Diff

% git diff v0.16.1 v0.17.0 --stat | grep -v "www/"
 greenwood.config.js                                |   2 +-
 lerna.json                                         |   2 +-
 nyc.config.js                                      |   4 +-
 package.json                                       |   5 +-
 packages/cli/package.json                          |  16 +-
 packages/cli/src/lifecycles/config.js              |   8 +-
 packages/cli/src/lifecycles/copy.js                |  81 +++---
 packages/cli/src/lifecycles/serve.js               |   2 +-
 .../cli/src/plugins/copy/plugin-copy-assets.js     |  21 ++
 .../cli/src/plugins/copy/plugin-copy-graph-json.js |  14 +
 .../plugins/resource/plugin-optimization-mpa.js    |   2 +-
 .../src/plugins/resource/plugin-standard-html.js   |  33 ++-
 .../build.config.mode-mpa.spec.js                  |  31 ++-
 .../src/pages/regex-test.html                      | 305 +++++++++++++++++++++
 .../build.config.mode-spa.spec.js                  |  63 ++++-
 .../test/cases/build.config.mode-spa/package.json  |   4 +-
 .../build.config.mode-spa/src/components/footer.js |   2 +-
 .../test/cases/build.config.mode-spa/src/index.js  |   6 +-
 .../build.config.mode-spa/src/routes/about.js      |   4 +-
 .../cases/build.config.mode-spa/src/routes/home.js |   4 +-
 .../build.default.import-node-modules.spec.js      |  89 ++++--
 .../build.default.import-node-modules/package.json |   2 +-
 .../src/pages/index.html                           |   5 +-
 .../src/scripts/main.js                            |  14 +-
 ...build.default.workspace-templates-empty.spec.js | 183 +++++++++++++
 .../src/pages/index.html                           |  17 ++
 .../src/pages/no-body.html                         |  11 +
 .../src/pages/no-head.html                         |  10 +
 .../src/pages/shell.html                           |   3 +
 .../src/scripts/main.js                            |   1 +
 .../src/styles/main.css                            |   3 +
 .../build.plugins.error-type.spec.js               |   2 +-
 .../cases/develop.default/develop.default.spec.js  |  81 ++++--
 .../cases/develop.default/import-map.snapshot.json | 274 ++++++++++++++++++
 .../cli/test/cases/develop.default/package.json    |   6 +-
 .../cli/test/cases/develop.spa/develop.spa.spec.js | 196 +++++++++++++
 .../cli/test/cases/develop.spa/greenwood.config.js |   3 +
 packages/cli/test/cases/develop.spa/src/index.html |  12 +
 .../test/cases/serve.default/serve.default.spec.js | 174 ++++++++++++
 .../test/cases/serve.default/src/assets/data.json  |   4 +
 .../cases/serve.default/src/assets/favicon.ico     | Bin 0 -> 1150 bytes
 .../test/cases/serve.default/src/assets/logo.png   | Bin 0 -> 2171 bytes
 .../serve.default/src/assets/source-sans-pro.woff  | Bin 0 -> 20179 bytes
 .../serve.default/src/assets/webcomponents.svg     |   1 +
 packages/plugin-babel/package.json                 |   4 +-
 packages/plugin-google-analytics/package.json      |   4 +-
 packages/plugin-graphql/package.json               |   4 +-
 .../test/cases/query-children/package.json         |   2 +-
 .../cases/query-children/query-children.spec.js    |  66 ++++-
 .../query-children/src/components/posts-list.js    |   2 +-
 .../cases/query-custom-frontmatter/package.json    |   2 +-
 .../query-custom-frontmatter.spec.js               |  75 +++--
 .../src/components/posts-list.js                   |   2 +-
 .../test/cases/query-graph/package.json            |   2 +-
 .../test/cases/query-graph/query-graph.spec.js     |  66 ++++-
 .../query-graph/src/components/debug-output.js     |   2 +-
 .../test/cases/query-menu/package.json             |   2 +-
 .../test/cases/query-menu/query-menu.spec.js       |  66 ++++-
 .../test/cases/query-menu/src/components/header.js |   2 +-
 packages/plugin-import-commonjs/package.json       |   6 +-
 packages/plugin-import-css/README.md               |  17 +-
 packages/plugin-import-css/package.json            |   4 +-
 packages/plugin-import-json/package.json           |   4 +-
 packages/plugin-polyfills/README.md                |   4 +-
 packages/plugin-polyfills/package.json             |   6 +-
 packages/plugin-polyfills/src/index.js             |  65 +++--
 .../test/cases/default/greenwood.config.js         |   2 +-
 .../test/cases/lit/greenwood.config.js             |   7 +
 .../plugin-polyfills/test/cases/lit/lit.spec.js    | 182 ++++++++++++
 .../plugin-polyfills/test/cases/lit/package.json   |   6 +
 packages/plugin-postcss/package.json               |   4 +-
 packages/plugin-postcss/src/index.js               |   2 +-
 packages/plugin-postcss/src/postcss.config.js      |   2 +-
 .../options.extend-config/greenwood.config.js      |   4 +-
 packages/plugin-typescript/package.json            |   4 +-
 .../getting-started-repo-unstyled-partial.png      | Bin 0 -> 14983 bytes
 yarn.lock                                          | 185 +++++++------
 115 files changed, 2466 insertions(+), 437 deletions(-)
greenwood - v0.17.0-alpha.0

Published by thescientist13 about 3 years ago

Overview

This is a pre minor release that includes (implicit) support for Lit@2 and compatibility with puppeteer pre-rendering as well as introduces a new Copy Plugin API. Rollup and some associated plugins also had their versions updated to support newer features in package.json like exports and sideEffects. For developing in the Greenwood monorepo itself, there is now full M1 support for macOS contributors.

Eventually any Lit specific code will be moved off into plugins before the 1.0 release as part of our upcoming SSR work.

Given that Node v12 is in maintenance (LTS) mode, we recommend users to start migrating to Node v14.

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%3Aalpha.0+label%3Av0.17.0

  1. Create a general purpose copy mechanism
  2. Upgrade latest Rollup Deps (CLI only)
  3. (Implicit) Lit@2 support

Breaking Changes

If you are using the Polyfills plugin, you will now need to spread the plugin function call in your greenwood.config.js.

// before
plugins: [
  pluginPolyfills(),
]
  
// after
plugins: [
  ...pluginPolyfills(),
]

Known Issues

  1. Not with Greenwood per se, but just a recommendation for Lit users to be aware of limitations and best practices for using CSS with expressions.

Diff

% git diff v0.16.1 v0.17.0-alpha.0 --stat | grep -v "www/"
 greenwood.config.js                                |   2 +-
 lerna.json                                         |   2 +-
 package.json                                       |   5 +-
 packages/cli/package.json                          |  16 +-
 packages/cli/src/lifecycles/config.js              |   8 +-
 packages/cli/src/lifecycles/copy.js                |  81 +++---
 .../cli/src/plugins/copy/plugin-copy-assets.js     |  21 ++
 .../cli/src/plugins/copy/plugin-copy-graph-json.js |  14 +
 .../plugins/resource/plugin-optimization-mpa.js    |   2 +-
 .../src/plugins/resource/plugin-standard-html.js   |  20 +-
 .../build.config.mode-mpa.spec.js                  |  31 ++-
 .../src/pages/regex-test.html                      | 305 +++++++++++++++++++++
 .../build.config.mode-spa.spec.js                  |  63 ++++-
 .../test/cases/build.config.mode-spa/package.json  |   4 +-
 .../build.config.mode-spa/src/components/footer.js |   2 +-
 .../test/cases/build.config.mode-spa/src/index.js  |   6 +-
 .../build.config.mode-spa/src/routes/about.js      |   4 +-
 .../cases/build.config.mode-spa/src/routes/home.js |   4 +-
 .../build.default.import-node-modules.spec.js      |  89 ++++--
 .../build.default.import-node-modules/package.json |   2 +-
 .../src/pages/index.html                           |   5 +-
 .../src/scripts/main.js                            |  14 +-
 .../build.plugins.error-type.spec.js               |   2 +-
 .../cases/develop.default/develop.default.spec.js  |  79 ++++--
 .../cases/develop.default/import-map.snapshot.json | 274 ++++++++++++++++++
 .../cli/test/cases/develop.default/package.json    |   6 +-
 packages/plugin-babel/package.json                 |   4 +-
 packages/plugin-google-analytics/package.json      |   4 +-
 packages/plugin-graphql/package.json               |   4 +-
 .../test/cases/query-children/package.json         |   2 +-
 .../cases/query-children/query-children.spec.js    |  66 ++++-
 .../query-children/src/components/posts-list.js    |   2 +-
 .../cases/query-custom-frontmatter/package.json    |   2 +-
 .../query-custom-frontmatter.spec.js               |  75 +++--
 .../src/components/posts-list.js                   |   2 +-
 .../test/cases/query-graph/package.json            |   2 +-
 .../test/cases/query-graph/query-graph.spec.js     |  66 ++++-
 .../query-graph/src/components/debug-output.js     |   2 +-
 .../test/cases/query-menu/package.json             |   2 +-
 .../test/cases/query-menu/query-menu.spec.js       |  66 ++++-
 .../test/cases/query-menu/src/components/header.js |   2 +-
 packages/plugin-import-commonjs/package.json       |   6 +-
 packages/plugin-import-css/package.json            |   4 +-
 packages/plugin-import-json/package.json           |   4 +-
 packages/plugin-polyfills/README.md                |   4 +-
 packages/plugin-polyfills/package.json             |   6 +-
 packages/plugin-polyfills/src/index.js             |  65 +++--
 .../test/cases/default/greenwood.config.js         |   2 +-
 .../test/cases/lit/greenwood.config.js             |   7 +
 .../plugin-polyfills/test/cases/lit/lit.spec.js    | 182 ++++++++++++
 .../plugin-polyfills/test/cases/lit/package.json   |   6 +
 packages/plugin-postcss/package.json               |   4 +-
 packages/plugin-typescript/package.json            |   4 +-
 .../getting-started-repo-unstyled-partial.png      | Bin 0 -> 14983 bytes
 yarn.lock                                          | 185 +++++++------
 79 files changed, 1596 insertions(+), 341 deletions(-)
greenwood - v0.16.1

Published by thescientist13 about 3 years ago

Overview

This release fixes a bug with plugin-google-analytics to address an issue with duplicate calls on page load.

Given that Node v12 is in maintenance (LTS) mode, we recommend users to start migrating to Node v14.

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.16.1

  1. Google Analytics plugin is making multiple init tracking requests

Breaking Changes

None

Known Issues

N / A

Diff

% git diff v0.16.0 v0.16.1 --stat | grep -v "www/"
 .github/workflows/ci-win.yml                                 |  6 ++----
 .github/workflows/ci.yml                                     |  2 +-
 .github/workflows/master.yml                                 | 12 +++---------
 README.md                                                    |  2 +-
 lerna.json                                                   |  2 +-
 packages/cli/package.json                                    |  2 +-
 .../cli/test/cases/develop.default/develop.default.spec.js   |  2 +-
 .../develop.plugins.context/develop.plugins.context.spec.js  |  2 +-
 packages/cli/test/cases/serve.default/serve.default.spec.js  |  2 +-
 .../cli/test/cases/theme-pack/theme-pack.develop.spec.js     |  2 +-
 packages/plugin-babel/package.json                           |  4 ++--
 packages/plugin-google-analytics/README.md                   |  5 ++++-
 packages/plugin-google-analytics/package.json                |  4 ++--
 packages/plugin-google-analytics/src/index.js                |  1 -
 .../test/cases/default/default.spec.js                       |  1 -
 .../test/cases/option-anonymous/option-anonymous.spec.js     |  1 -
 packages/plugin-graphql/package.json                         |  4 ++--
 .../test/cases/develop.default/develop.default.spec.js       |  2 +-
 .../test/cases/qraphql-server/graphql-server.spec.js         |  2 +-
 packages/plugin-import-commonjs/package.json                 |  4 ++--
 packages/plugin-import-css/package.json                      |  4 ++--
 .../test/cases/develop.default/develop.default.spec.js       |  2 +-
 packages/plugin-import-json/package.json                     |  4 ++--
 .../test/cases/develop.default/develop.default.spec.js       |  2 +-
 packages/plugin-polyfills/package.json                       |  4 ++--
 packages/plugin-postcss/package.json                         |  4 ++--
 packages/plugin-typescript/package.json                      |  4 ++--
 .../test/cases/develop.default/develop.default.spec.js       |  2 +-
 29 files changed, 41 insertions(+), 49 deletions(-)
greenwood - v0.16.0

Published by thescientist13 about 3 years ago

Overview

This new minor releases improves the resolution of node_modules during development to be done entirely by NodeJS and upgrades puppeteer to version 10.x which will support arm64 M1 Macs. Please see the previous notes for the previous changes. Special thanks to @aholtzman for some website fixes and cleanup. 🙏

Given that Node v12 is in maintenance (LTS) mode, we recommend users to start migrating to Node v14.

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.16.0

  1. leverage NodeJS resolve logic for looking up location of paths for node modules
  2. upgrade to latest puppeteer (includes M1 Mac support)
  3. Fixed an an observed issue in a project with the GraphQL plugin not working correctly
  4. node resolution not handling flat export maps for files and transient dependency imports

Breaking Changes

None

Known Issues

N / A

Diff

% git diff v0.15.0 v0.16.0 --stat | grep -v "www/"
 .github/CONTRIBUTING.md                            |  31 ++
 .github/workflows/ci.yml                           |   2 +-
 .github/workflows/master.yml                       |   2 +-
 .github/workflows/release.yml                      |   2 +-
 README.md                                          |   2 +-
 greenwood.config.js                                |   2 +-
 lerna.json                                         |   2 +-
 netlify.toml                                       |   2 +-
 packages/cli/README.md                             |   2 +-
 packages/cli/package.json                          |   8 +-
 packages/cli/src/config/rollup.config.js           |   9 +-
 packages/cli/src/lib/browser.js                    |   5 +-
 packages/cli/src/lib/node-modules-utils.js         |  64 ++++
 packages/cli/src/lifecycles/serve.js               |   5 +-
 .../src/plugins/resource/plugin-node-modules.js    |  57 ++--
 .../src/plugins/resource/plugin-standard-css.js    |   6 -
 .../src/plugins/resource/plugin-standard-html.js   |  16 +-
 .../src/plugins/resource/plugin-user-workspace.js  |   2 +-
 .../build.default.workspace-javascript-css.spec.js |  32 +-
 .../src/pages/index.html                           |   3 +
 .../src/scripts/non-module.js                      |   3 +
 .../build.plugins.context.spec.js                  |   2 +-
 .../cases/develop.default/develop.default.spec.js  | 338 ++++++++++++++++++++-
 .../cli/test/cases/develop.default/package.json    |   4 +
 .../cli/test/cases/develop.default/src/lit-html.js |   1 +
 .../develop.plugins.context.spec.js                |   4 +-
 .../cli/test/cases/theme-pack/greenwood.config.js  |  33 ++
 .../cli/test/cases/theme-pack/my-theme-pack.js     |  18 ++
 packages/cli/test/cases/theme-pack/package.json    |   4 +
 .../test/cases/theme-pack/src/components/header.js |  18 ++
 .../cases/theme-pack/src/layouts/blog-post.html    |  16 +
 .../cli/test/cases/theme-pack/src/pages/index.md   |   7 +
 .../cli/test/cases/theme-pack/src/styles/main.css  |   7 +
 .../cli/test/cases/theme-pack/src/styles/theme.css |   5 +
 .../test/cases/theme-pack/theme-pack.build.spec.js | 153 ++++++++++
 .../cases/theme-pack/theme-pack.develop.spec.js    | 198 ++++++++++++
 packages/plugin-babel/README.md                    |   4 +-
 packages/plugin-babel/package.json                 |   4 +-
 packages/plugin-google-analytics/README.md         |   2 +-
 packages/plugin-google-analytics/package.json      |   4 +-
 packages/plugin-graphql/README.md                  |   2 +-
 packages/plugin-graphql/package.json               |   4 +-
 .../cases/develop.default/develop.default.spec.js  |  91 +++++-
 packages/plugin-import-commonjs/README.md          |   2 +-
 packages/plugin-import-commonjs/package.json       |   4 +-
 packages/plugin-import-css/README.md               |   2 +-
 packages/plugin-import-css/package.json            |   4 +-
 packages/plugin-import-css/src/index.js            |   2 +-
 .../cases/develop.default/develop.default.spec.js  |   8 +-
 .../test/cases/develop.default/src/main.css        |   4 +-
 packages/plugin-import-json/README.md              |   2 +-
 packages/plugin-import-json/package.json           |   4 +-
 packages/plugin-polyfills/README.md                |   2 +-
 packages/plugin-polyfills/package.json             |   4 +-
 packages/plugin-polyfills/src/index.js             |  11 +-
 packages/plugin-postcss/README.md                  |   2 +-
 packages/plugin-postcss/package.json               |   4 +-
 packages/plugin-typescript/README.md               |   2 +-
 packages/plugin-typescript/package.json            |   4 +-
 yarn.lock                                          | 215 ++++++++-----
 82 files changed, 1516 insertions(+), 286 deletions(-)
greenwood - v0.16.0-alpha.3

Published by thescientist13 about 3 years ago

Overview

This fixes a final bug with our auto resolve lookup for node_modules needed to support this release and should enable us to release a final v0.16.0 version in the next couple of days. Please see the previous notes for the previous changes.

Note: We've seen some instability in our Node v12 tests in our GitHub Actions and given that Node v12 is in maintenance mode, we recommend users to start migrating to Node v14.

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.16.0+label%3Aalpha.3

  1. handle NodeJS require.resolve fallback when walking node_modules when no main field in package.json

Breaking Changes

None

Known Issues

N / A

Diff

% git diff v0.16.0-alpha.2 v0.16.0-alpha.3 --stat | grep -v "www/"
 lerna.json                                         |  2 +-
 packages/cli/package.json                          |  4 +-
 packages/cli/src/lib/node-modules-utils.js         | 25 ++++++--
 .../src/plugins/resource/plugin-node-modules.js    | 10 ++--
 .../cases/develop.default/develop.default.spec.js  | 70 +++++++++++++++++++++-
 .../cli/test/cases/develop.default/package.json    |  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-import-json/package.json           |  4 +-
 packages/plugin-polyfills/package.json             |  4 +-
 packages/plugin-polyfills/src/index.js             |  4 +-
 packages/plugin-postcss/package.json               |  4 +-
 packages/plugin-typescript/package.json            |  4 +-
 yarn.lock                                          |  5 ++
 17 files changed, 126 insertions(+), 32 deletions(-)
greenwood - v0.16.0-alpha.2

Published by thescientist13 about 3 years ago

Overview

This fixes a bug with flat export map handling in node_modules and address a follow up enhancement to a prior change in this release line. Please see the previous notes for the previous changes.

Note: We've seen some instability in our Node v12 tests in our GitHub Actions and given that Node v12 is in maintenance mode, we recommend users to start migrating to Node v14.

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.16.0+label%3Aalpha.2+

  1. node resolution not handling flat export maps for files and transient dependency imports
  2. leverage NodeJS resolve logic for looking up location of paths for node modules

Breaking Changes

None

Known Issues

  1. Regressions introduced in this release around with node_modules resolution - https://github.com/ProjectEvergreen/greenwood/issues/557#issuecomment-923332104

Diff

% git diff v0.16.0-alpha.1 v0.16.0-alpha.2 --stat | grep -v "www/"
 lerna.json                                         |   2 +-
 packages/cli/package.json                          |   4 +-
 packages/cli/src/lib/node-modules-utils.js         |  47 ++++++
 .../src/plugins/resource/plugin-node-modules.js    |  73 ++++-----
 .../cases/develop.default/develop.default.spec.js  | 179 ++++++++++++++++++++-
 .../cli/test/cases/develop.default/package.json    |   2 +
 .../test/cases/theme-pack/theme-pack.build.spec.js |   4 +-
 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-polyfills/src/index.js             |  11 +-
 packages/plugin-postcss/package.json               |   4 +-
 packages/plugin-typescript/package.json            |   4 +-
 yarn.lock                                          |  61 ++++++-
 20 files changed, 348 insertions(+), 80 deletions(-)
greenwood - v0.16.0-alpha.1

Published by thescientist13 about 3 years ago

Overview

This fixes a bug in the prior pre-release. Please see the previous notes for the previous changes.

Note: We've seen some instability in our Node v12 tests in our GitHub Actions and given that Node v12 is in maintenance mode, we recommend users to start migrating to Node v14.

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.16.0+label%3Aalpha.1+

  1. Fixed an an observed issue in a project with the GraphQL plugin not working correctly

Breaking Changes

None

Known Issues

  1. N / A

Diff

% git diff v0.16.0-alpha.0 v0.16.0-alpha.1 --stat | grep -v "www/"
 .github/workflows/ci.yml                           |  2 +-
 .github/workflows/master.yml                       |  2 +-
 .github/workflows/release.yml                      |  2 +-
 lerna.json                                         |  2 +-
 netlify.toml                                       |  2 +-
 packages/cli/package.json                          |  2 +-
 .../src/plugins/resource/plugin-node-modules.js    |  4 +-
 .../cases/develop.default/develop.default.spec.js  |  5 ++
 packages/plugin-babel/package.json                 |  4 +-
 packages/plugin-google-analytics/package.json      |  4 +-
 packages/plugin-graphql/package.json               |  4 +-
 .../cases/develop.default/develop.default.spec.js  | 91 +++++++++++++++++++++-
 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 +-
 18 files changed, 121 insertions(+), 27 deletions(-)
greenwood - v0.16.0-alpha.0

Published by thescientist13 about 3 years ago

Overview

This is a pre-release to introduce some technical refactoring and enhancements around node modules resolution, and to seed some of this changes early. This release line will also introduce Mac M1 support.

Note: We've seen some instability in our Node v12 tests in our GitHub Actions and given that Node v12 is in maintenance mode, we recommend users to start migrating to Node v14.

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.16.0+label%3Aalpha.0+

  1. upgrade latest puppeteer (includes M1 Mac support)
  2. leverage NodeJS resolve logic for looking up location of paths for node modules

Breaking Changes

None

Known Issues

  1. There is an observed issue in a project with the GraphQL plugin not working correctly - https://github.com/ProjectEvergreen/greenwood/pull/722

Diff

% git diff v0.15.3 v0.16.0-alpha.0 --stat | grep -v "www/"
 .github/CONTRIBUTING.md                            |  31 +++++
 lerna.json                                         |   2 +-
 packages/cli/package.json                          |   4 +-
 packages/cli/src/lib/browser.js                    |   5 +-
 .../src/plugins/resource/plugin-node-modules.js    |  61 ++++++---
 .../src/plugins/resource/plugin-standard-html.js   |  16 +--
 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 +-
 yarn.lock                                          | 149 ++++++++++-----------
 18 files changed, 180 insertions(+), 128 deletions(-)
greenwood - v0.15.3

Published by thescientist13 about 3 years ago

Overview

This release address a bug fix with bundling non ESM <script> tags and fixes npm based installation instructions used in our docs / READMEs.

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.15.3

  1. greenwood not bundling non module script tags (e.g. <script type="module" ...>)
  2. Wrongly documented installation instructions

Breaking Changes

None

Known Issues

N / A

Diff

% git diff v0.15.2 v0.15.3 --stat
 README.md                                                             |   2 +-
 greenwood.config.js                                                   |   2 +-
 lerna.json                                                            |   2 +-
 packages/cli/README.md                                                |   2 +-
 packages/cli/package.json                                             |   2 +-
 packages/cli/src/config/rollup.config.js                              |   9 +-
 .../build.default.workspace-javascript-css.spec.js                    |  32 +++++-
 .../cases/build.default.workspace-javascript-css/src/pages/index.html |   3 +
 .../build.default.workspace-javascript-css/src/scripts/non-module.js  |   3 +
 .../test/cases/build.plugins.context/build.plugins.context.spec.js    |   2 +-
 .../cases/develop.plugins.context/develop.plugins.context.spec.js     |   4 +-
 packages/cli/test/cases/theme-pack/greenwood.config.js                |  33 ++++++
 packages/cli/test/cases/theme-pack/my-theme-pack.js                   |  18 +++
 packages/cli/test/cases/theme-pack/package.json                       |   4 +
 packages/cli/test/cases/theme-pack/src/components/header.js           |  18 +++
 packages/cli/test/cases/theme-pack/src/layouts/blog-post.html         |  16 +++
 packages/cli/test/cases/theme-pack/src/pages/index.md                 |   7 ++
 packages/cli/test/cases/theme-pack/src/styles/main.css                |   7 ++
 packages/cli/test/cases/theme-pack/src/styles/theme.css               |   5 +
 packages/cli/test/cases/theme-pack/theme-pack.build.spec.js           | 153 ++++++++++++++++++++++++
 packages/cli/test/cases/theme-pack/theme-pack.develop.spec.js         | 198 ++++++++++++++++++++++++++++++++
 packages/plugin-babel/README.md                                       |   4 +-
 packages/plugin-babel/package.json                                    |   4 +-
 packages/plugin-google-analytics/README.md                            |   2 +-
 packages/plugin-google-analytics/package.json                         |   4 +-
 packages/plugin-graphql/README.md                                     |   2 +-
 packages/plugin-graphql/package.json                                  |   4 +-
 packages/plugin-import-commonjs/README.md                             |   2 +-
 packages/plugin-import-commonjs/package.json                          |   4 +-
 packages/plugin-import-css/README.md                                  |   2 +-
 packages/plugin-import-css/package.json                               |   4 +-
 packages/plugin-import-json/README.md                                 |   2 +-
 packages/plugin-import-json/package.json                              |   4 +-
 packages/plugin-polyfills/README.md                                   |   2 +-
 packages/plugin-polyfills/package.json                                |   4 +-
 packages/plugin-polyfills/src/index.js                                |   2 +-
 packages/plugin-postcss/README.md                                     |   2 +-
 packages/plugin-postcss/package.json                                  |   4 +-
 packages/plugin-typescript/README.md                                  |   2 +-
 packages/plugin-typescript/package.json                               |   4 +-
 www/assets/gh-pages-branch-commits.png                                | Bin 0 -> 31622 bytes
 www/assets/gh-pages-branch.png                                        | Bin 0 -> 35701 bytes
 www/assets/greenwood-starter-presentation.png                         | Bin 70474 -> 27279 bytes
 www/assets/repo-github-pages-config.png                               | Bin 0 -> 37993 bytes
 www/package.json                                                      |   2 +-
 www/pages/docs/component-model.md                                     |   6 +-
 www/pages/guides/cloudflare-workers-deployment.md                     |   2 +-
 www/pages/guides/firebase.md                                          |   2 +-
 www/pages/guides/github-pages.md                                      |  96 ++++++++++++++++
 www/pages/guides/netlify-cms.md                                       |   2 +-
 www/pages/guides/now.md                                               |   2 +-
 www/pages/guides/s3-cloudfront.md                                     |   2 +-
 www/pages/guides/theme-packs.md                                       |  60 ++++------
 www/templates/page.html                                               |   2 +-
 54 files changed, 664 insertions(+), 92 deletions(-)
greenwood - v0.15.2

Published by thescientist13 about 3 years ago

Overview

This release address all the known issues coming out of the v0.15.0 release line. Additionally, updates were made to the Theme pack guide to help improve clarity and more details around the workflow, including a FAQ section to help answer questions and track known issues.

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.15.2

  1. double quotes inside imported CSS breaks (fix when escaped quotes are inside the CSS)
  2. query string parameters in node_modules (CSS) paths returns no content and 204 response
  3. Updated Theme Packs guide and added an FAQ to better clarify usage known issues

Breaking Changes

None

Known Issues

N / A

Diff

% git diff v0.15.1 v0.15.2 --stat
 lerna.json                                                           |   2 +-
 packages/cli/package.json                                            |   2 +-
 packages/cli/src/lifecycles/serve.js                                 |   5 +-
 packages/cli/src/plugins/resource/plugin-node-modules.js             |  11 ++-
 packages/cli/src/plugins/resource/plugin-standard-css.js             |   6 --
 packages/cli/test/cases/develop.default/develop.default.spec.js      |  54 +++++++++-
 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-css/src/index.js                              |   2 +-
 .../test/cases/develop.default/develop.default.spec.js               |   8 +-
 packages/plugin-import-css/test/cases/develop.default/src/main.css   |   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/assets/greenwood-starter-presentation.png                        | Bin 0 -> 70474 bytes
 www/package.json                                                     |   2 +-
 www/pages/guides/theme-packs.md                                      | 164 ++++++++++++++++++++++---------
 www/pages/plugins/context.md                                         |   7 +-
 22 files changed, 211 insertions(+), 92 deletions(-)
greenwood - v0.15.1

Published by thescientist13 about 3 years ago

Overview

This fixes one of the issues with the v0.15.0 release where certain projects would load an unexpected response from node_modules

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.15.1

  1. Lit@2 and SPA mode is unable to to resolve LitElement import in development (regression)

Breaking Changes

None

Known Issues

  1. double quotes inside imported CSS breaks (when escaped quotes are inside the CSS)
  2. Theme Packs still need a little more work to get the recommendations "just" right

Diff

$ git diff v0.15.0 v0.15.1 --stat
 lerna.json                                                      |  2 +-
 packages/cli/package.json                                       |  2 +-
 packages/cli/src/plugins/resource/plugin-user-workspace.js      |  2 +-
 packages/cli/test/cases/develop.default/develop.default.spec.js | 36 ++++++++++++++++++++++++++++++++++++
 packages/cli/test/cases/develop.default/src/lit-html.js         |  1 +
 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 +-
 15 files changed, 59 insertions(+), 22 deletions(-)
greenwood - v0.15.0

Published by thescientist13 about 3 years ago

Overview

We are super excited for this release, in particular with the introduction of "Theme Packs", courtesy of the new Context Plugin type that was made available. This release also addresses some bug fixes and some refactoring.

If using Yarn, you can can upgrade all your @greenwood packages at once

$ yarn upgrade --scope @greenwood --latest

Note: Theme Packs still need a little more work to document, so marking this is a pre-release for now.

Changelog

https://github.com/ProjectEvergreen/greenwood/issues?q=label%3Av0.15.0

  1. Shared Workspaces and Contexts (Theme Packs)
  2. devServer proxy query parameters are not respected when running serve command
  3. double quotes inside imported CSS breaks

Breaking Changes

None

Known Issues

  1. Lit@2 and SPA mode is unable to to resolve LitElement import in development (regression)
  2. Theme Packs still need a little more work to get the recommendations "just" right

Diff

$ git diff v0.14.2 v0.15.0 --stat
 .eslintrc.js                                                         |   4 +-
 lerna.json                                                           |   2 +-
 nyc.config.js                                                        |  14 +-
 package.json                                                         |   3 +-
 packages/cli/package.json                                            |   2 +-
 packages/cli/src/commands/build.js                                   |   3 +-
 packages/cli/src/commands/develop.js                                 |   5 +-
 packages/cli/src/config/rollup.config.js                             |  41 ++-
 packages/cli/src/lifecycles/config.js                                |  46 ++-
 packages/cli/src/lifecycles/context.js                               |   5 +-
 packages/cli/src/lifecycles/prerender.js                             |  28 +-
 packages/cli/src/lifecycles/serve.js                                 | 135 ++++----
 packages/cli/src/plugins/resource/plugin-dev-proxy.js                |   2 +-
 packages/cli/src/plugins/resource/plugin-node-modules.js             |   4 +-
 packages/cli/src/plugins/resource/plugin-optimization-mpa.js         |  10 +-
 packages/cli/src/plugins/resource/plugin-standard-html.js            |  74 ++--
 packages/cli/src/plugins/server/plugin-livereload.js                 |  20 +-
 .../build.config.error-pages-directory.spec.js                       |  46 +++
 .../cases/build.config.error-pages-directory/greenwood.config.js     |   3 +
 .../build.config.error-templates-directory.spec.js                   |  46 +++
 .../cases/build.config.error-templates-directory/greenwood.config.js |   3 +
 .../build.config.pages-directory.spec.js                             |  80 +++++
 .../cli/test/cases/build.config.pages-directory/greenwood.config.js  |   3 +
 .../cli/test/cases/build.config.pages-directory/src/docs/index.md    |   3 +
 .../build.config.templates-directory.spec.js                         |  88 +++++
 .../test/cases/build.config.templates-directory/greenwood.config.js  |   3 +
 .../cases/build.config.templates-directory/src/layouts/page.html     |  10 +
 .../test/cases/build.config.templates-directory/src/pages/index.md   |   3 +
 .../test/cases/build.plugins.context/build.plugins.context.spec.js   | 180 ++++++++++
 .../test/cases/build.plugins.context/fixtures/components/greeting.js |  18 +
 .../cli/test/cases/build.plugins.context/fixtures/layouts/app.html   |  15 +
 .../cli/test/cases/build.plugins.context/fixtures/layouts/page.html  |  13 +
 .../cli/test/cases/build.plugins.context/fixtures/layouts/title.html |  15 +
 .../cli/test/cases/build.plugins.context/fixtures/styles/theme.css   |   8 +
 packages/cli/test/cases/build.plugins.context/greenwood.config.js    |   8 +
 packages/cli/test/cases/build.plugins.context/package.json           |   3 +
 packages/cli/test/cases/build.plugins.context/src/pages/index.md     |   3 +
 .../cli/test/cases/build.plugins.context/src/pages/slides/index.md   |   7 +
 .../test/cases/build.plugins.context/theme-pack-context-plugin.js    |  26 ++
 .../cases/build.plugins.error-type/build.plugins.error-type.spec.js  |   2 +-
 packages/cli/test/cases/develop.default/develop.default.spec.js      | 560 +++++++++++++++++++++++++++++++
 packages/cli/test/cases/develop.default/greenwood.config.js          |   7 +
 packages/cli/test/cases/develop.default/package.json                 |   6 +
 packages/cli/test/cases/develop.default/src/assets/data.json         |   4 +
 packages/cli/test/cases/develop.default/src/assets/favicon.ico       | Bin 0 -> 1150 bytes
 packages/cli/test/cases/develop.default/src/assets/logo.png          | Bin 0 -> 2171 bytes
 .../cli/test/cases/develop.default/src/assets/source-sans-pro.woff   | Bin 0 -> 20179 bytes
 packages/cli/test/cases/develop.default/src/assets/webcomponents.svg |   1 +
 packages/cli/test/cases/develop.default/src/components/header.js     |  24 ++
 packages/cli/test/cases/develop.default/src/pages/index.html         |  12 +
 packages/cli/test/cases/develop.default/src/styles/main.css          |   3 +
 .../cases/develop.plugins.context/develop.plugins.context.spec.js    | 197 +++++++++++
 .../cases/develop.plugins.context/fixtures/components/greeting.js    |  18 +
 .../cli/test/cases/develop.plugins.context/fixtures/layouts/app.html |  15 +
 .../test/cases/develop.plugins.context/fixtures/layouts/page.html    |  13 +
 .../test/cases/develop.plugins.context/fixtures/layouts/title.html   |  15 +
 .../cli/test/cases/develop.plugins.context/fixtures/styles/theme.css |   3 +
 packages/cli/test/cases/develop.plugins.context/greenwood.config.js  |  31 ++
 packages/cli/test/cases/develop.plugins.context/package.json         |   3 +
 packages/cli/test/cases/develop.plugins.context/src/pages/index.md   |   3 +
 .../cli/test/cases/develop.plugins.context/src/pages/slides/index.md |   7 +
 packages/cli/test/cases/serve.default/greenwood.config.js            |   7 +
 packages/cli/test/cases/serve.default/serve.default.spec.js          |  95 ++++++
 packages/plugin-babel/package.json                                   |   4 +-
 packages/plugin-google-analytics/package.json                        |   4 +-
 packages/plugin-graphql/package.json                                 |   4 +-
 .../test/cases/develop.default/develop.default.spec.js               | 102 ++++++
 .../plugin-graphql/test/cases/develop.default/greenwood.config.js    |   9 +
 packages/plugin-graphql/test/cases/develop.default/package.json      |   3 +
 .../test/cases/develop.default/src/data/queries/gallery.gql          |   9 +
 .../plugin-graphql/test/cases/qraphql-server/graphql-server.spec.js  | 144 ++++++++
 .../plugin-graphql/test/cases/qraphql-server/greenwood.config.js     |   9 +
 packages/plugin-import-commonjs/package.json                         |   4 +-
 packages/plugin-import-css/package.json                              |   4 +-
 packages/plugin-import-css/src/index.js                              |   2 +-
 .../test/cases/develop.default/develop.default.spec.js               | 101 ++++++
 .../plugin-import-css/test/cases/develop.default/greenwood.config.js |   9 +
 packages/plugin-import-css/test/cases/develop.default/package.json   |   3 +
 packages/plugin-import-css/test/cases/develop.default/src/main.css   |   4 +
 packages/plugin-import-json/package.json                             |   4 +-
 .../test/cases/develop.default/develop.default.spec.js               | 101 ++++++
 .../test/cases/develop.default/greenwood.config.js                   |   9 +
 packages/plugin-import-json/test/cases/develop.default/package.json  |   3 +
 packages/plugin-import-json/test/cases/develop.default/src/main.json |   4 +
 packages/plugin-polyfills/package.json                               |   4 +-
 packages/plugin-postcss/package.json                                 |   4 +-
 packages/plugin-typescript/package.json                              |   4 +-
 .../test/cases/develop.default/develop.default.spec.js               | 101 ++++++
 .../plugin-typescript/test/cases/develop.default/greenwood.config.js |   9 +
 packages/plugin-typescript/test/cases/develop.default/package.json   |   3 +
 packages/plugin-typescript/test/cases/develop.default/src/main.ts    |  15 +
 test/smoke-test.js                                                   | 263 +++++++++------
 www/package.json                                                     |   2 +-
 www/pages/docs/configuration.md                                      |  26 +-
 www/pages/guides/cloudflare-workers-deployment.md                    |   2 +-
 www/pages/guides/firebase.md                                         |   2 +-
 www/pages/guides/netlify-cms.md                                      |   2 +-
 www/pages/guides/now.md                                              |   2 +-
 www/pages/guides/s3-cloudfront.md                                    |   2 +-
 www/pages/guides/theme-packs.md                                      | 233 +++++++++++++
 www/pages/plugins/context.md                                         |  61 ++++
 www/pages/plugins/custom-plugins.md                                  |   2 +-
 www/pages/plugins/resource.md                                        |   2 +-
 www/pages/plugins/rollup.md                                          |   4 +-
 www/pages/plugins/server.md                                          |   2 +-
 yarn.lock                                                            |  13 +-
 106 files changed, 2986 insertions(+), 316 deletions(-)
greenwood - v0.14.2

Published by thescientist13 about 3 years ago

Overview

This release fixes and improves support for directories of subpaths in an exports map, as well as specifically handling the import subpath as well.

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.2

  1. import map not correctly handling export maps that have subpath exports that are directories or are import

Breaking Changes

None

Known Issues

  1. N / A

Diff

% git diff v0.14.1 v0.14.2 --stat
 lerna.json                                               |  2 +-
 packages/cli/package.json                                |  2 +-
 packages/cli/src/plugins/resource/plugin-node-modules.js | 23 +++++++++++++++++------
 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 +-
 13 files changed, 38 insertions(+), 27 deletions(-)
greenwood - v0.14.1

Published by thescientist13 over 3 years ago

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

  1. handle user JavaScript files that include lookahead patterns
  2. gracefully handle TypeScript 404 sourcemaps
  3. plugin-node-modeules not return a string from serve lifecycle

Breaking Changes

None

Known Issues

  1. 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(-)
greenwood - v0.14.0

Published by thescientist13 over 3 years ago

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

  1. TypeScript Plugin
  2. output sourcemaps for production builds
  3. set <title> correctly for top level pages
  4. favor exports map in package.json
  5. extend dev server file watching and live reloading

Breaking Changes

None

Known Issues

  1. TypeScript sourcemaps not found / emitting

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!
website-inline-optimization-lighthouse-score-v0 14 0
website-inline-optimization-network-score-v0 14 0

greenwood - v0.13.0

Published by thescientist13 over 3 years ago

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

  1. have a plugin for being able to import JSON using ESM
  2. 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

  1. Use relative paths (this is per ESM spec)
  2. 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! 🎉
greenwood-cli-dependency-count-24

Compared to our v0.10.0 release, which had 26 dependencies.

greenwood - v0.12.4

Published by thescientist13 over 3 years ago

Overview

This release aims to fix an issue with using ESM for JSON on Windows, and add handles support for default entries in exportMaps for dependencies in node_modules.

Changelog

https://github.com/ProjectEvergreen/greenwood/issues?q=label%3Av0.12.4

  1. add exportMap default entry support in plugin-node-modules
  2. 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(-)
Package Rankings
Top 4.55% on Npmjs.org
Top 8.17% on Proxy.golang.org
Badges
Extracted from project README
Netlify Status GitHub release GitHub issues GitHub license lerna