V5 WIP - do not merge#6657
Draft
johnjenkins wants to merge 205 commits intomainfrom
Draft
Conversation
* chore: swap out rollup with rolldown * chore: * chore: update all naming * chore: fixup tests * chore: optimizing * chore: * chore: * chore:
* chore: remove es5 / systemjs output. Make cjs opt-in * chore: * chore: * chore: * chore: * chore: fix tests * chore:
* chore: * chore: add swc wip * chore: revert swc back to terser
* chore: v5 swap out autoprefixer for lightningcss * chore:
* chore: remove all deprecated things * chore: update tests
* chore: migrate component decorator to new explicit API * chore:fix cli build (don't bundle ts) * chore: fix tsconfig discovery * chore: migrate runtime tests * chore: migrate ssr * chore: * chore: * chore: * chore: * chore: * chore: * chore: fixup unit tests * chore: tests for closed shadow dom and patch options * chore: * chore: * chore: * chore: * chore: * chore: * chore: * chore:
* chore: * chore: * chore:
* chore: v5 multi file `transpile()` and `transpileSync()` * chore:
* chore: v5 watch / build improvements * chore:
…ipInDev` (#6682) * chore: v5 remove buildDist and buildDocs. Replace with per output `skipInDev` * chore:
* chore: v5-add-other-dist-artifacts-to-skipInDev * chore: * chore: * chore:
* chore: v5 output target modernization - rename and refactor Major refactor to rename output targets for clarity and elevate sub-outputs to first-class citizens, creating parity between distribution strategies. **Naming changes:** - `dist` → `loader-bundle` (lazy-loaded bundles + loader infrastructure) - `dist-custom-elements` → `standalone` (individual ES modules) - `dist-hydrate-script` → `ssr` (server-side rendering) - `dist-collection` (sub) → `stencil-meta` (first-class, metadata output) - `dist-types` (sub) → `types` (first-class, shared type definitions) **Key changes:** - Updated all constants with v5 names + deprecated v4 aliases - Updated all type definitions (OutputTarget interfaces) - Renamed validator files and updated their logic - Renamed output target implementation directories - Updated type guards with backward-compatible deprecated aliases - Removed collectionDir/typesDir from loader-bundle config - Updated default directories to dist/loader-bundle/, dist/standalone/, etc. **Backward compatibility:** - All deprecated v4 aliases maintained for migration period - Will be removed in v6 **Documentation:** - Added comprehensive "Output Target Modernization" section to V5_PLANNING.md - Updated breaking changes documentation Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> * feat: add auto-generation logic for types and stencil-meta outputs Implement auto-generation of types and stencil-meta output targets in production builds, elevating them to first-class citizens. **Auto-generation behavior:** - In production builds (!config.devMode), automatically add types and stencil-meta outputs if not explicitly configured by user - User can override by explicitly adding these outputs to their config - Both default to skipInDev: true for optimal dev performance **Implementation:** - Added autoGenerateOutputs() function in validateOutputTargets - Created validate-types.ts for types output validation - Default directories: dist/types/ and dist/stencil-meta/ - Maintains backward compatibility with explicit configs This ensures parity between loader-bundle and standalone outputs, as both now automatically get type definitions in production. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> * chore: * chore: remove un-required config options * chore: tests pass * chore: fix knip * chore: new tests * chore: new migration tests * chore: removed --prod and devMode * chore: add transpileStyle inline * chore: * Revert "chore: add transpileStyle inline" This reverts commit 9cf68f4. * chore: change collection / stencil-meta to stencil-rebundle * chore: fixes for package.json checking / validations * chore: rename file extensions - .cjs.js > .cjs, .esm.js > .js * chore: update all 'collection' naming to 'rebundle' * chore: rename dist-custom-elements related files to standalone * chore: update testing * chore: remove 'loader' dir. fix build tests * chore: add esm.js to browser bundle for posterity * chore: main work * chore: tidy codebase * chore: update all tests * chore: fixup tests * chore: better explicit global-style output options * chore: * chore: change all server bundle 'hydrate' refs to 'ssr' * chore: * chore: update default skipInDev behaviour * chore: tidy up * chore: * chore: --------- Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What is the current behavior?
GitHub Issue Number: N/A
What is the new behavior?
Documentation
Does this introduce a breaking change?
Testing
Other information