[pull] main from lynx-family:main#580
Merged
pull[bot] merged 5 commits intocolinaaa:mainfrom Apr 13, 2026
Merged
Conversation
<!-- Thank you for submitting a pull request! We appreciate the time and effort you have invested in making these changes. Please ensure that you provide enough information to allow others to review your pull request. Upon submission, your pull request will be automatically assigned with reviewers. If you want to learn more about contributing to this project, please visit: https://github.com/lynx-family/lynx-stack/blob/main/CONTRIBUTING.md. --> <!-- The AI summary below will be auto-generated - feel free to replace it with your own. --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Optimized internal state handling for suspended components to ensure consistent fallback rendering during server-side render paths. * **Chores** * Added a patch release entry documenting the suspense state update for the React runtime. <!-- end of auto-generated comment: release notes by coderabbit.ai --> ## Checklist <!--- Check and mark with an "x" --> - [ ] Tests updated (or not required). - [ ] Documentation updated (or not required). - [ ] Changeset added, and when a BREAKING CHANGE occurs, it needs to be clearly marked (or not required).
## Summary - replace `rspack.dev`, `rsbuild.dev`, and `rslib.dev` external references with their `.rs` domains - update website external-link selectors to match the new `rspack.rs` and `rsbuild.rs` domains - preserve non-domain identifiers such as `tools.rspack.devtool` ## Verification - searched the repository for `rspack.dev|rsbuild.dev|rslib.dev` after the replacement - reviewed the diff against `main` to confirm only domain references were changed - requested an independent code review of the branch diff <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Updated numerous documentation links and in-code documentation references to the new Rspack/Rsbuild domains across guides, changelogs, and JSDoc; README credit link updated. * **Style** * Adjusted external-link matching rules to target the updated domains. * **Chores** * Added an empty changeset metadata file. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Qingyu Wang <40660121+colinaaa@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
#2439) …emory management. <!-- Thank you for submitting a pull request! We appreciate the time and effort you have invested in making these changes. Please ensure that you provide enough information to allow others to review your pull request. Upon submission, your pull request will be automatically assigned with reviewers. If you want to learn more about contributing to this project, please visit: https://github.com/lynx-family/lynx-stack/blob/main/CONTRIBUTING.md. --> <!-- The AI summary below will be auto-generated - feel free to replace it with your own. --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Switched to weak references for DOM elements and added periodic GC during idle time to remove stale references. * Event and style flows now handle collected elements and surface runtime errors instead of throwing, improving stability. * **New Features** * Runtime binding now supports safe set/remove attribute operations that noop if the element was collected. * **Tests** * Tests updated to expect weak-reference-based element handling. <!-- end of auto-generated comment: release notes by coderabbit.ai --> ## Checklist <!--- Check and mark with an "x" --> - [ ] Tests updated (or not required). - [ ] Documentation updated (or not required). - [ ] Changeset added, and when a BREAKING CHANGE occurs, it needs to be clearly marked (or not required).
<!-- Thank you for submitting a pull request! We appreciate the time and effort you have invested in making these changes. Please ensure that you provide enough information to allow others to review your pull request. Upon submission, your pull request will be automatically assigned with reviewers. If you want to learn more about contributing to this project, please visit: https://github.com/lynx-family/lynx-stack/blob/main/CONTRIBUTING.md. --> <!-- The AI summary below will be auto-generated - feel free to replace it with your own. --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Exposed a gesture-detector removal API and added an interactive Gesture Lifecycle example app with config and build scripts. * **Bug Fixes** * Remove stale gesture detectors when gestures are removed, replaced, or reordered to prevent lingering state and incorrect handlers. * **Tests** * Expanded unit and integration tests covering gesture lifecycle, deduplication, diffs, and detector wiring. * **Style** * Added themed stylesheet for the gesture example UI. <!-- end of auto-generated comment: release notes by coderabbit.ai --> ## Checklist <!--- Check and mark with an "x" --> - [x] Tests updated (or not required). - [x] Documentation updated (or not required). - [x] Changeset added, and when a BREAKING CHANGE occurs, it needs to be clearly marked (or not required).
## Summary close #1300 This PR introduces rstest support for ReactLynx Testing Library and aligns the public testing APIs around plugin/config composition. ### What changed - Added a new rstest config entrypoint: - `@lynx-js/react/testing-library/rstest-config` - `withLynxConfig(...)` for app scenarios (reuse `lynx.config.ts`) - `withDefaultConfig(...)` for library scenarios (runner defaults only) - Replaced `rstest-adapter` naming with `rstest-config` naming for public exports. - The old adapter path is removed in this PR. - Promoted plugin-based Vitest integration: - `vitestTestingLibraryPlugin()` is now the recommended API. - `createVitestConfig` is **deprecated** but still supported for backward compatibility. - Updated examples so users can validate both runners: - `packages/testing-library/examples/basic` - `packages/testing-library/examples/library` - `packages/testing-library/examples/react-compiler` - Updated package exports/docs to reflect the new API surface. ## Recommended usage ### Vitest ```ts import { defineConfig } from 'vitest/config'; import { vitestTestingLibraryPlugin } from '@lynx-js/react/testing-library/plugins'; export default defineConfig({ plugins: [vitestTestingLibraryPlugin()], }); ``` ### Rstest (app) ```ts import { defineConfig } from '@rstest/core'; import { withLynxConfig } from '@lynx-js/react/testing-library/rstest-config'; export default defineConfig({ extends: withLynxConfig(), }); ``` ### Rstest (library) ```ts import { defineConfig } from '@rstest/core'; import { withDefaultConfig } from '@lynx-js/react/testing-library/rstest-config'; export default defineConfig({ extends: withDefaultConfig(), }); ``` ## Notes - Main CI jobs for this change set are green after reruns for flaky jobs. - Codecov patch threshold checks are currently not treated as blocking for this PR. ## Checklist - [x] Tests updated (or not required). - [x] Documentation updated (or not required). --------- Signed-off-by: Yiming Li <yimingli.cs@gmail.com> Co-authored-by: 9aoy <9aoyuao@gmail.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Qingyu Wang <40660121+colinaaa@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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )