Merged
Conversation
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.2.6 to 6.3.4. - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v6.3.4/packages/vite) --- updated-dependencies: - dependency-name: vite dependency-version: 6.3.4 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
Bump vite from 6.2.6 to 6.3.4
This section is about sharing the app shell so the `shared` key must be set in the `piral.json` and not `pilet.json`. Also the key `shared` does not exist in `pilet.json`.
docs: fixed typo
Bumps [undici](https://github.com/nodejs/undici) from 6.21.1 to 6.21.3. - [Release notes](https://github.com/nodejs/undici/releases) - [Commits](nodejs/undici@v6.21.1...v6.21.3) --- updated-dependencies: - dependency-name: undici dependency-version: 6.21.3 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
….21.3 Bump undici from 6.21.1 to 6.21.3
Bumps [form-data](https://github.com/form-data/form-data) from 4.0.1 to 4.0.4. - [Release notes](https://github.com/form-data/form-data/releases) - [Changelog](https://github.com/form-data/form-data/blob/master/CHANGELOG.md) - [Commits](form-data/form-data@v4.0.1...v4.0.4) --- updated-dependencies: - dependency-name: form-data dependency-version: 4.0.4 dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com>
…a-4.0.4 Bump form-data from 4.0.1 to 4.0.4
--- updated-dependencies: - dependency-name: axios dependency-version: 1.11.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
…11.0 Bump axios from 1.10.0 to 1.11.0
Support webpack promise config and esm config files
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.3.4 to 6.3.6. - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v6.3.6/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v6.3.6/packages/vite) --- updated-dependencies: - dependency-name: vite dependency-version: 6.3.6 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
Bump vite from 6.3.4 to 6.3.6
Contributor
There was a problem hiding this comment.
Pull Request Overview
This PR introduces release 1.9.0 of Piral with several enhancements and bug fixes. The centerpiece is a new remote types feature that enables automatic distribution of TypeScript declarations from pilets to other micro frontends, along with various improvements to error handling, debugging output, and dependency management.
- Remote types functionality allowing pilets to share TypeScript declarations via
remoteTypesSourceandremoteTypesTargetconfiguration - Enhanced error handling and debugging output across npm client wrappers and template resolution
- Updates to various dependencies including migration from
oidc-clienttooidc-client-ts
Reviewed Changes
Copilot reviewed 72 out of 73 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| src/utilities/piral-debug-utils/src/overlay.ts | Removes unused container property from ErrorOverlayProps interface |
| src/utilities/piral-debug-utils/src/decycle.ts | Adds protected value handling for cross-context security errors |
| src/tooling/piral-cli/src/types/internal.ts | Adds remoteTypesTarget property to PiletDefinition interface |
| src/tooling/piral-cli/src/types/common.ts | Extends interfaces with remote types and shared dependencies support |
| src/tooling/piral-cli/src/common/package.ts | Implements core remote types functionality with retrieval and processing logic |
| src/tooling/piral-cli/src/common/website.ts | Adds retrieveExtraTypings function for downloading remote type definitions |
| src/tooling/piral-cli/src/common/emulator.ts | Integrates remote types source into emulator manifests |
| src/tooling/piral-cli/src/npm-clients/*.ts | Improves error output by logging command output when npm operations fail |
| src/tooling/piral-cli-webpack5/src/helpers.ts | Adds support for async webpack configurations and ESM module handling |
| src/plugins/piral-oidc/src/*.ts | Updates to use modern oidc-client-ts library with API changes |
| Various package.json files | Updates dependency versions with more flexible version ranges |
| Documentation files | Updates README files for converter packages with modern usage patterns |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.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.
New Pull Request
For more information, see the
CONTRIBUTINGguide.Prerequisites
Please make sure you can check the following boxes:
Type(s) of Changes
Contribution Type
What types of changes does your code introduce? Put an
xin all the boxes that apply:Description
This is the next iteration of Piral, which brings some smaller enhancements as well as a quite cool convenience feature (remote types). Using remote types you can easily (i.e., without requiring effort within the pilets) get remote type definitions for all your micro frontends into a pilet - such that you can, e.g., see all defined extension slots and never miss using the right type.
The feature works by declaring a remote type source via the
remoteTypesSourceproperty in the piral.json. This is then picked up by the Piral CLI and integrated into the emulator (website or package). When the Piral CLI used in a pilet sees that the used app shell has remote types defined, it will create a new file (and keep that updated) in the pilet's source code. The location of the file can be determined usingremoteTypesTarget.Right now we make this opt-in, i.e., just because your Piral instance sets the
remoteTypesSourcedoes not mean that the file is written. Instead, if theremoteTypesTargetvalue is missing (default) then nothing is generated. You can either set it to a path of your desire (e.g., "./src/remote.d.ts") or just totrue. In the latter case a default path (/src/remote.d.ts) is used. Make sure to exclude it from source control for maximum efficiency.Remarks
The boundaries for the pilets are not explained in the feed service spec. The main reason for this is that the types / declaration feature is something optional, which is not part of the feed service core responsibility. The whole feature is rather meant as a convenience than a requirement. Potentially, we'll spec that out in the future.