Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

release/0.30.0 #1208

Draft
wants to merge 15 commits into
base: master
Choose a base branch
from
Draft

release/0.30.0 #1208

wants to merge 15 commits into from

Conversation

thescientist13
Copy link
Member

@thescientist13 thescientist13 commented Mar 9, 2024

Related Issues

Summary of Changes

  1. Rollup v3 Upgrade
  2. Isolation Mode (v1)
  3. Lit v3 + SSR enhancements and fixes
  4. Single File Bundles (SFBs) for SSR and API routes
  5. Import Attributes for CSS and JSON modules (breaking)
  6. Asset bundling in CSS files

Alpha Release Test Plan

I think to be safe given the level of refactoring, would like to at least make sure this get tested with a few key repos

The plan would be to test against the following projects / workflows as alpha releases are iterated upon:

  1. greenwood-demo-adapter-vercel - chore/upgrade greenwood v0.30.0 greenwood-demo-adapter-vercel#22
  2. greenwood-demo-adapter-netlify - chore/upgrade greenwood v0.30.0 greenwood-demo-adapter-netlify#20
  3. thegreenhouse.io - chore/upgrade greenwood v0.30.0 thegreenhouseio/www.thegreenhouse.io#296
  4. contributary.community - chore/upgrade greenwood v0.30.0 ContributaryCommunity/www.contributary.community#125
  5. 🚫 analogstudios.net - chore/upgrade greenwood v0.30.0 AnalogStudiosRI/www.analogstudios.net#98
  6. tuesdaystunes.tv
  7. greenwood-getting-started - chore/upgrade greenwood v0.30.0 greenwood-getting-started#83
  8. projectevergreen.github.io - chore/upgrade greenwood v0.30.0 projectevergreen.github.io#101
  9. greenwood-template-blog - chore/upgrade greenwood v0.30.0 greenwood-template-blog#12
  10. greenwood-starter-presentation - chore/upgrade greenwood v0.30.0 thescientist13/greenwood-starter-presentation#71
  11. greenwood-demo-github-pages - chore/upgrade greenwood v0.30.0 greenwood-demo-github-pages#5
  12. greenwood-lit-ssr
  13. greenwood-htmx - chore/upgrade greenwood v0.30.0 thescientist13/greenwood-htmx#16
  14. npx / init
  15. Stackblitz

This PR should NOT be squashed merged when merging into master.

TODOs

  1. Layouts (Templates) and Pages #955
  2. Align with bug/issue 1223 handle incorrect nested SSR page bundle output name mapping #1224
  3. import attributes for standard module formats; CSS and JSON  #923
  4. Content as Data (Content Graph) #1167
  5. Rendering Strategies (prerender vs SSR vs CSR) #951
  6. support bundling of url properties (like for @font-face + src) during CSS file optimization #1199
  7. HTML Modules plugin (experimental) #1221
  8. support all CSS function pseudo classes / elements for CSS optimizing #1178
  9. CSS Modules ™️ plugin #1233
  10. expand (no-op) support of DOM shim for DOM traversal methods wcc#37
  11. Upgrade to Node 20.x (latest LTS) #1202 (TBD)
  12. deprecate import maps shim for development #1114 (TBD)
  13. add support for (progressive) hydration for compatible renderers (globalThis for state?) #880 (nice to have)
  14. Server side routes should support dynamic route naming (with prerendering) #882 (nice to have)
  15. AWS Adapter plugin #1142 (nice to have)
  16. Rebases and backports
  17. Blog Post
  18. Deprecate CSS and JSON plugins in npm after GA release

Questions / New Issues

N / A

@thescientist13 thescientist13 added enhancement Improve something existing (e.g. no docs, new APIs, etc) Plugins Greenwood Plugins CLI labels Mar 9, 2024
@thescientist13 thescientist13 self-assigned this Mar 9, 2024
@thescientist13 thescientist13 linked an issue Mar 9, 2024 that may be closed by this pull request
@thescientist13 thescientist13 added breaking website Tasks related to the projects website / documentation documentation Greenwood specific docs SSR labels Mar 10, 2024
@thescientist13 thescientist13 added the bug Something isn't working label Mar 10, 2024
thescientist13 and others added 14 commits May 31, 2024 16:38
* Issue-1087: Initial upgrade of Rollup and @rollup plugins

* Issue-1087: Upgrade plugin dependencies

* upgrade all test cases with new hash matchers

* update all plugin rollup deps and breaking change updates

* fix duplicate imports of eve-container custom element definition

---------

Co-authored-by: Owen Buckley <owenbuckley13@gmail.com>
* isolation mode for SSR pages and API routes for greenwood serve

* documentation for isolation mode option and global config test case

* misc refactoring

* set isolation mode to true for Lit renderer plugin

* set isolation mode to true for Lit renderer plugin
* initial upgrade for test cases

* upgrade CLI and www to Lit v3

* revert static router test case change

* all tests passing

* patch escodegen for better ESM support

* test for lit element hydration script

* refactor rollup config

* update Lit renderer README and apply conditional Lit script hydration

* comments and TODOs cleanup

* minor rebase patches

* WCC v0.12.0 upgrade and removing patches directory

* hydration default documentation and testing for Lit renderer plugin
…1186)

* Issue-1118: Refactor rollup config generation for APIs

* Issue-1118: Refactor rollup config generation for SSR

* Issue-1118: Refactor forEach to use for-in for the ssr config generation

* Issue-1118: Convert forEach to for..in

* Issue-1118: Remove unused code

* refactor away bundling work arounds and add comments

* refactor SSR page bundling to avoid hacky entry point placeholder hack

* patch custom element registry check from wcc

* refactor SSR page output name from .entry to .route

* document breaking changes for adapter plugins

* refactor import meta relative asset path escaping

* refactor API routes and adapters for mapped API bundles

* misc refactoring and docs update

* latest WCC patches

* windows compatibility

* update adapter docs example

* remove patches

---------

Co-authored-by: Owen Buckley <owenbuckley13@gmail.com>
* naive work around for missing chunks of route chunk

* fix linting

* namespace SSR page route entry points and route chunks
* intial draft of import attributes support for CSS and JSON

* all test cases passing

* need patch package

* wcc patches for import attributes and CSSStylesheet shim

* bump min NodeJS version for exp specs

* temp disable ESLint

* develop based import assertion specs

* serve based import attributes specs

* add preIntercept resource plugin lifecycle and refactor PostCSS to use it

* all test cases passing for import attributes support

* refactor built in CSS and JSON intercepting

* demo code

* raw plugin docs and package.json updates

* update latest documentation for custom loaders support in NodeJS

* update custom import docs

* upgrade wcc v0.13.0

* only need Node 18 for github actions

* css imports and raw plugin interop with test cases

* lit renderer import attribute test cases and documentation

* refactor matchers support for raw plugin instead of patching and add test cases

* disable describe.only

* update usage for custom resource plugins to showcase usage of import attributes

* document preIntercept lifecycle and convert Babel to use it

* restore ESLint

* enable debug logging for failing specs

* refactor theme pack specs

* fix linting

* remove CSS and JSON packages from being publishable

* clean up console logs and comments

* rename exp test cases to loadersnaming prefix

* fix command in github actions

* remove plugin-import-css callout from plugin-postcss README

* remove demo code from website

* refine PostCSS plugin intercepting
* bundling of URL referenced assets in CSS files

* add test cases for CSS url reference bundling

* normalize file paths for windows

* base path support

* hashing of bundled CSS filenames

* document CSS bundling behaviors

* filename hashing

* refactoring and console log cleanup
…1236)

* rebase and refactor nested SSR pages work

* clean up console logs

* windows path handling

* better windows pathname support when syncing SSR pages
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking bug Something isn't working CLI documentation Greenwood specific docs enhancement Improve something existing (e.g. no docs, new APIs, etc) Plugins Greenwood Plugins SSR v0.30.0 website Tasks related to the projects website / documentation
Projects
Status: 🏗 In progress
2 participants