chore: update v3 release with main #7475
Closed
janechu wants to merge 11 commits into
Closed
Conversation
# Pull Request ## 📖 Description This change updates the `webui` dependency to 0.0.10. ## 📑 Test Plan This will allow for us to update our integration tests. ## ✅ Checklist ### General - [x] I have included a change request file using `$ npm run change` - [ ] I have added tests for my changes. - [x] I have tested my changes. - [ ] I have updated the project documentation to reflect my changes. - [x] I have read the [CONTRIBUTING](https://github.com/microsoft/fast/blob/main/CONTRIBUTING.md) documentation and followed the [standards](https://github.com/microsoft/fast/blob/main/CODE_OF_CONDUCT.md#our-standards) for this project.
# Pull Request ## 📖 Description This change adds an "all" benchmark that includes all other benchmark components to allow for better performance benchmarking against multiple components. ### 🎫 Issues Further work on #7248 ## 👩💻 Reviewer Notes This fills a gap where instead of multiple of the same component being iterated on this is all of the components. This should show more meaningful results for performance checking against things like many different components on a page. ## ✅ Checklist ### General - [ ] I have included a change request file using `$ npm run change` - [ ] I have added tests for my changes. - [x] I have tested my changes. - [ ] I have updated the project documentation to reflect my changes. - [x] I have read the [CONTRIBUTING](https://github.com/microsoft/fast/blob/main/CONTRIBUTING.md) documentation and followed the [standards](https://github.com/microsoft/fast/blob/main/CODE_OF_CONDUCT.md#our-standards) for this project.
…7459) # Pull Request ## 📖 Description Moves the private `@microsoft/fast-bench` package from `packages/bench/` to `sites/benchmarks/` to better reflect its role as an internal site/tool rather than a publishable package. Also simplifies the root `package.json` workspaces by using glob patterns (`sites/*`, `examples/*`) instead of listing each workspace explicitly. **Changes:** - Move `packages/bench/` → `sites/benchmarks/` via `git mv` - Update root `package.json` workspaces to use `sites/*` and `examples/*` globs - Update `copilot-instructions.md` to reflect new location - Update `README.md` folder path reference - Regenerate `package-lock.json` ## 📑 Test Plan - All existing tests pass — the bench package is private with no dependents - `npm run checkchange` confirms no change files are needed (private package excluded from beachball scope) - Workspace resolution verified via `npm ls` ## ✅ Checklist ### General - [x] I have included a change request file using `$ npm run change` - [ ] I have added tests for my changes. - [x] I have tested my changes. - [x] I have updated the project documentation to reflect my changes. - [x] I have read the [CONTRIBUTING](https://github.com/microsoft/fast/blob/main/CONTRIBUTING.md) documentation and followed the [standards](https://github.com/microsoft/fast/blob/main/CODE_OF_CONDUCT.md#our-standards) for this project.
# Pull Request ## 📖 Description As the `@microsoft/fast-element` package moves towards a declarative templating solution, the `@microsoft/fast-ssr` is being removed. We have posted and published a deprecation notice with a project that will fill this gap. ## 👩💻 Reviewer Notes This is a simple removal. ## ✅ Checklist ### General - [x] I have included a change request file using `$ npm run change` - [ ] I have added tests for my changes. - [x] I have tested my changes. - [x] I have updated the project documentation to reflect my changes. - [x] I have read the [CONTRIBUTING](https://github.com/microsoft/fast/blob/main/CONTRIBUTING.md) documentation and followed the [standards](https://github.com/microsoft/fast/blob/main/CODE_OF_CONDUCT.md#our-standards) for this project.
# Pull Request
## 📖 Description
Adds a `properties` key to the `ObserverMapConfig` interface in `@microsoft/fast-html` so that developers can opt specific root properties and nested sub-paths in or out of automatic observer-map observation, rather than the current all-or-nothing approach.
Each path entry can be:
- **`true`** — observe this path and all descendants
- **`false`** — skip this path and all descendants
- **`ObserverMapPathNode`** — an object with optional `$observe` boolean and child overrides, enabling alternating opt-in/opt-out to arbitrary depth
When `properties` is omitted (`observerMap: {}` or `observerMap: "all"`), current behavior is preserved. When `properties` is present but empty (`{ properties: {} }`), no root properties are observed.
### 🎫 Issues
- Resolves #7445
## 👩💻 Reviewer Notes
Key areas to review:
- **`observer-map.ts`**: New `hasObservedPath` helper and config filtering logic in `defineProperties()`
- **`utilities.ts`**: Config threading through the proxy system (`assignObservables`, `assignProxyToItemsInObject`, `assignProxy`), particularly the `set` trap changes that skip notification for excluded properties
- **`template.ts`**: New types (`ObserverMapPathEntry`, `ObserverMapPathNode`) and config extraction for `ObserverMap` constructor
## 📑 Test Plan
- All 289 existing + new Chromium tests pass
- New unit tests in `observer-map.spec.ts` covering:
- Skipping unlisted root properties
- Skipping `false` root properties
- Observe-all with empty config (`{}`)
- Observe-nothing with empty properties (`{ properties: {} }`)
- New fixture tests in `observer-map-properties/` covering:
- Selective root property observation
- Excluded subtrees (`false`)
- Re-included leaf within `$observe: false` branch
- Unlisted root properties remaining unobserved
- Array observation with selective config
- Empty config object backward compatibility
## ✅ Checklist
### General
- [x] I have included a change request file using `$ npm run change`
- [x] I have added tests for my changes.
- [x] I have tested my changes.
- [x] I have updated the project documentation to reflect my changes.
- [x] I have read the [CONTRIBUTING](https://github.com/microsoft/fast/blob/main/CONTRIBUTING.md) documentation and followed the [standards](https://github.com/microsoft/fast/blob/main/CODE_OF_CONDUCT.md#our-standards) for this project.
# Pull Request ## 📖 Description Adds a contributor-oriented `DESIGN.md` architecture document for the `@microsoft/fast-test-harness` package. This document describes the internal architecture of the test harness, covering: - High-level overview of CSR and SSR rendering modes - Module map and package structure - Fixture system (`CSRFixture`, `SSRFixture`, fixture options) - Custom Playwright assertions (`toHaveCustomState`) - Express + Vite server architecture and request flows - Consumer-owned SSR contract (required test directory files) - SSR rendering utilities and DSD template processing - Asset resolution helpers - Shared Playwright and Vite configuration ## 👩💻 Reviewer Notes This is a documentation-only change. The `DESIGN.md` follows the same structure and conventions as the existing `DESIGN.md` files in `packages/fast-build`, `packages/fast-element`, `packages/fast-html`, and `crates/microsoft-fast-build`. ## 📑 Test Plan Documentation-only change — no code changes. All existing tests continue to pass. ## ✅ Checklist ### General - [ ] I have included a change request file using `$ npm run change` - [ ] I have added tests for my changes. - [ ] I have tested my changes. - [x] I have updated the project documentation to reflect my changes. - [x] I have read the [CONTRIBUTING](https://github.com/microsoft/fast/blob/main/CONTRIBUTING.md) documentation and followed the [standards](https://github.com/microsoft/fast/blob/main/CODE_OF_CONDUCT.md#our-standards) for this project.
…derstanding of the project (#7468) # Pull Request ## 📖 Description This change updates skills and instructions for AI to better understand the project and update it when making changes. ## ✅ Checklist ### General - [ ] I have included a change request file using `$ npm run change` - [ ] I have added tests for my changes. - [x] I have tested my changes. - [x] I have updated the project documentation to reflect my changes. - [x] I have read the [CONTRIBUTING](https://github.com/microsoft/fast/blob/main/CONTRIBUTING.md) documentation and followed the [standards](https://github.com/microsoft/fast/blob/main/CODE_OF_CONDUCT.md#our-standards) for this project.
…ng (#7473) # Pull Request ## 📖 Description Replace `rollup-plugin-filesize` with an esbuild-based bundle size measurement script. The new script (`packages/fast-element/scripts/measure-sizes.js`) measures minified, gzip, and brotli sizes for the core bundle and 13 individually tree-shaken exports (FASTElement, Updates, Observable, observable, attr, children, css, ref, slotted, volatile, when, html, repeat). Results are saved to `SIZES.md` and surfaced on the documentation site as a new Package Sizes page under Resources. ### 🎫 Issues * Resolves #7249 ## 👩💻 Reviewer Notes The `generate-docs.cjs` prebuild script copies `SIZES.md` from the fast-element package and wraps it with 11ty frontmatter to create the docs page. The introduction page now links to the Package Sizes page instead of hardcoding size numbers. ## 📑 Test Plan All existing tests pass. Build produces `SIZES.md` with correct size data and the website builds the new package-sizes page successfully. ## ✅ Checklist ### General - [x] I have included a change request file using `$ npm run change` - [ ] I have added tests for my changes. - [x] I have tested my changes. - [x] I have updated the project documentation to reflect my changes. - [x] I have read the [CONTRIBUTING](https://github.com/microsoft/fast/blob/main/CONTRIBUTING.md) documentation and followed the [standards](https://github.com/microsoft/fast/blob/main/CODE_OF_CONDUCT.md#our-standards) for this project. ## ⏭ Next Steps * Investigate reducing size due to the use of `requestIdleCallback` (per issue #7249) * Consider adding type exports to the size tracking (per issue #7249, under consideration)
# Pull Request ## 📖 Description The GitHub pages deploy pipeline uses NodeJS version 20 which fails on scripts that use globSync, this change updates to version 22 with separate actions to pin the version. ## ✅ Checklist ### General - [ ] I have included a change request file using `$ npm run change` - [ ] I have added tests for my changes. - [x] I have tested my changes. - [ ] I have updated the project documentation to reflect my changes. - [x] I have read the [CONTRIBUTING](https://github.com/microsoft/fast/blob/main/CONTRIBUTING.md) documentation and followed the [standards](https://github.com/microsoft/fast/blob/main/CODE_OF_CONDUCT.md#our-standards) for this project. ## ⏭ Next Steps - Deploy GitHub pages
Collaborator
Author
|
Closing in favor of a new PR from |
5 tasks
janechu
added a commit
that referenced
this pull request
Apr 22, 2026
# Pull Request ## 📖 Description Pull the latest updates from `main` into the release branch. Replaces #7475 with merge conflicts resolved. ## ✅ Checklist ### General - [ ] I have included a change request file using `$ npm run change` - [ ] I have added tests for my changes. - [ ] I have tested my changes. - [ ] I have updated the project documentation to reflect my changes. - [x] I have read the [CONTRIBUTING](https://github.com/microsoft/fast/blob/main/CONTRIBUTING.md) documentation and followed the [standards](https://github.com/microsoft/fast/blob/main/CODE_OF_CONDUCT.md#our-standards) for this project.
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.
Pull Request
📖 Description
Pull the latest updates from
maininto the release branch.✅ Checklist
General
$ npm run change