[pull] master from yewstack:master#5
Open
pull[bot] wants to merge 1010 commits into
Open
Conversation
* update gloo-net version update the gloo-net version on the Cargo.toml example to the latest one. * Update website/docs/tutorial/index.mdx --------- Co-authored-by: Elina <imelina@elina.website>
* Expose layout tests Currently I can't import tests because `cfg(test)` isn't sent to sub-dependencies. This allows you to set a `yew/test` and import into your own tests. * Update Cargo.toml * Update lib.rs * Update lib.rs * Update lib.rs * AnyScope::test needs feature = test cfg + fmt --------- Co-authored-by: Elina <imelina@elina.website>
* Try to add wasi feature to avoid browser's ABI. * Add async render for single-threaded env. * Temporarily enable my own patch branch. It would be modified later after the corresponding library branches are merged. * add example for WASI SSR. * Ready to run WASI on wasmtime. * complete the example * fix fmt * fix fmt * I made a mistake..sry * add yew-router suites for demo * fix typo * Make the async render stream function public * Use target_os instead of feature. * Renew gloo-history's patch. * Exclude WASI example to avoid web-sys. * Try to add CI for WASI example. * Fix CI. * Fix CI that requires compiler 1.67 or newer. * Use CLI's flag instead of exclude example. bytecodealliance/wasmtime#4312 * Remove patchs. * Use LocalServerRenderer instead of ServerRenderer. yewstack/tokise#11 (comment) * Remove unused exports. * Add description about `LocalServerRenderer`. * fix fmt * fix fmt * Update Cargo.lock * Bump rust compiler's version to 1.67... * Exclude WASI on yew-router browser interfaces. * fix fmt * Wait for gloo's PR dealed. * Rollback to rust compiler 1.64. cc ranile/gloo#423 (comment) * Fix lock file. * Downgrade `toml_datetime` version. * Fix enum for `gloo-history`. * Well, it seems there is no way to avoid the MSRV upgrade.... * fix: Replace feature = "wasi" to target_os = "wasi". * Remove tips for rust version. * Bump `gloo` to 0.11. * Try to test yew-macro on compiler 1.67. * Try to use compiler 1.68 instead. * Try to use compiler 1.69 instead...... * Revert MSRV back * Pin the oldest Cargo.lock. * Downgrade deps for MSRV. * Bump benchmark tool's tokio to 1.35 * Try to write WASI CI. * Rollback the quotes * Combine CI files... * Rollback the use that gloo-history has fixed it. * fix * Bump gloo-history version. * Block raw html update tests on WASI. * Rollback indexmap's version. * fix CI * fix CI * Update some SSR test suites that replace ServerRender instead of LocalServerRender. * Remove yew-router's cfg macro * Fix fmt * Try to fix CI * Update examples/wasi_ssr_module/README.md Co-authored-by: Elina <imelina@elina.website> * Revert back some unnecessary changes. * Clippy * fmt * Fix CI. * Fix CI. * Try to fix clippy. * Fix `ToString` trait. * Remove pin version of WASI CI test. * Pin the newer version. * Fix typo. * Bump `wasm-bindgen`. * Fix SSR example. * Fix typo. * Try to support non-browser environments. * Update wasm-bindgen-test to 0.3.43 refer to wasm-bindgen/wasm-bindgen#4083 * fix doc test running on nightly * Update website/docs/advanced-topics/server-side-rendering.md Co-authored-by: WorldSEnder <WorldSEnder@users.noreply.github.com> * Update WASI CI. * Remove WASI test for rustc 1.76. * Try to let `wasmtime` CLI can be executed. * Limit the function `decode_base64` that it shouldn't runnable in non-browser environment. * Remove WASI example test for rustc 1.76. * Revert changes. * Fix CI * Fix Cargo.lock * Remove unused deps * Undo the formatting changes. * Undo the formatting changes. --------- Co-authored-by: Elina <imelina@elina.website> Co-authored-by: Martin Molzer <WorldSEnder@users.noreply.github.com>
Bumps [hashbrown](https://github.com/rust-lang/hashbrown) from 0.15.0 to 0.15.2. - [Changelog](https://github.com/rust-lang/hashbrown/blob/master/CHANGELOG.md) - [Commits](https://github.com/rust-lang/hashbrown/commits) --- updated-dependencies: - dependency-name: hashbrown dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Update CHANGELOG https://github.com/yewstack/yew/actions/runs/11314974928/job/31465588862 * Add items. * Write blog. * Archive the documents. * Add author. * Update SSR document. * Fix typo. * Add simplified Chinese translation. * Update package.json * Sync documents * Add traditional Chinese translation. * Sync documents * Add Japanese translation. * Sync documents * Fix typo by `fmt:write`. * Fix typo by `write-translations`. * Apply suggestions from code review * Fix typo. * #3769 in changelog --------- Co-authored-by: Elina <imelina@elina.website>
* explicit duplicate key check in debug_assertions also a bit more defensive in production code, this should not lead to any slowdown or changes in code with proper keys CI changes: * force install cli tools over cached versions on version mismatch * Upload PR information for CI see also: actions/upload-artifact#618 misc: * fix panic in panic don't set the panic hook if we are already panicking
* chore: linguist-detect false to ignore .mdx doc files * chore: use proper file formatting
* made <textarea> a void element * added defaultvalue special attr to <textarea> * updated error message when trying to pass children to textarea * updated docs, fixed formatting * fixed hydration test * fixed suspense test * fixed heading in docs * fixed clippy warnings * fixed SSR, added SSR test for precedence of value over defaultvalue * fixing wasm-bindgen-test screwups & replacing deprecated function use
Bumps [serialize-javascript](https://github.com/yahoo/serialize-javascript) from 6.0.1 to 6.0.2. - [Release notes](https://github.com/yahoo/serialize-javascript/releases) - [Commits](yahoo/serialize-javascript@v6.0.1...v6.0.2) --- updated-dependencies: - dependency-name: serialize-javascript dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Bump the website-deps group across 1 directory with 15 updates Bumps the website-deps group with 14 updates in the /website directory: | Package | From | To | | --- | --- | --- | | [@docusaurus/core](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus) | `3.5.2` | `3.7.0` | | [@docusaurus/plugin-client-redirects](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus-plugin-client-redirects) | `3.5.2` | `3.7.0` | | [@docusaurus/preset-classic](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus-preset-classic) | `3.5.2` | `3.7.0` | | [@mdx-js/react](https://github.com/mdx-js/mdx/tree/HEAD/packages/react) | `3.0.1` | `3.1.0` | | [docusaurus-plugin-sass](https://github.com/rlamana/docusaurus-plugin-sass) | `0.2.5` | `0.2.6` | | [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `18.3.1` | `19.0.0` | | [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `18.3.10` | `19.0.8` | | [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `18.3.1` | `19.0.0` | | [sass](https://github.com/sass/dart-sass) | `1.79.4` | `1.83.4` | | [@docusaurus/tsconfig](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus-tsconfig) | `3.5.2` | `3.7.0` | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.8.0` | `8.22.0` | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.8.0` | `8.22.0` | | [prettier](https://github.com/prettier/prettier) | `3.3.3` | `3.4.2` | | [typescript](https://github.com/microsoft/TypeScript) | `5.6.2` | `5.7.3` | Updates `@docusaurus/core` from 3.5.2 to 3.7.0 - [Release notes](https://github.com/facebook/docusaurus/releases) - [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/docusaurus/commits/v3.7.0/packages/docusaurus) Updates `@docusaurus/plugin-client-redirects` from 3.5.2 to 3.7.0 - [Release notes](https://github.com/facebook/docusaurus/releases) - [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/docusaurus/commits/v3.7.0/packages/docusaurus-plugin-client-redirects) Updates `@docusaurus/preset-classic` from 3.5.2 to 3.7.0 - [Release notes](https://github.com/facebook/docusaurus/releases) - [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/docusaurus/commits/v3.7.0/packages/docusaurus-preset-classic) Updates `@mdx-js/react` from 3.0.1 to 3.1.0 - [Release notes](https://github.com/mdx-js/mdx/releases) - [Changelog](https://github.com/mdx-js/mdx/blob/main/changelog.md) - [Commits](https://github.com/mdx-js/mdx/commits/3.1.0/packages/react) Updates `docusaurus-plugin-sass` from 0.2.5 to 0.2.6 - [Release notes](https://github.com/rlamana/docusaurus-plugin-sass/releases) - [Commits](rlamana/docusaurus-plugin-sass@v0.2.5...v0.2.6) Updates `react` from 18.3.1 to 19.0.0 - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v19.0.0/packages/react) Updates `@types/react` from 18.3.10 to 19.0.8 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) Updates `react-dom` from 18.3.1 to 19.0.0 - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v19.0.0/packages/react-dom) Updates `sass` from 1.79.4 to 1.83.4 - [Release notes](https://github.com/sass/dart-sass/releases) - [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md) - [Commits](sass/dart-sass@1.79.4...1.83.4) Updates `@docusaurus/module-type-aliases` from 3.5.2 to 3.7.0 - [Release notes](https://github.com/facebook/docusaurus/releases) - [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/docusaurus/commits/v3.7.0/packages/docusaurus-module-type-aliases) Updates `@docusaurus/tsconfig` from 3.5.2 to 3.7.0 - [Release notes](https://github.com/facebook/docusaurus/releases) - [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/docusaurus/commits/v3.7.0/packages/docusaurus-tsconfig) Updates `@types/react` from 18.3.10 to 19.0.8 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) Updates `@typescript-eslint/eslint-plugin` from 8.8.0 to 8.22.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.22.0/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 8.8.0 to 8.22.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.22.0/packages/parser) Updates `prettier` from 3.3.3 to 3.4.2 - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](prettier/prettier@3.3.3...3.4.2) Updates `typescript` from 5.6.2 to 5.7.3 - [Release notes](https://github.com/microsoft/TypeScript/releases) - [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml) - [Commits](microsoft/TypeScript@v5.6.2...v5.7.3) --- updated-dependencies: - dependency-name: "@docusaurus/core" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: website-deps - dependency-name: "@docusaurus/plugin-client-redirects" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: website-deps - dependency-name: "@docusaurus/preset-classic" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: website-deps - dependency-name: "@mdx-js/react" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: website-deps - dependency-name: docusaurus-plugin-sass dependency-type: direct:production update-type: version-update:semver-patch dependency-group: website-deps - dependency-name: react dependency-type: direct:production update-type: version-update:semver-major dependency-group: website-deps - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-major dependency-group: website-deps - dependency-name: react-dom dependency-type: direct:production update-type: version-update:semver-major dependency-group: website-deps - dependency-name: sass dependency-type: direct:production update-type: version-update:semver-minor dependency-group: website-deps - dependency-name: "@docusaurus/module-type-aliases" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: website-deps - dependency-name: "@docusaurus/tsconfig" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: website-deps - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-major dependency-group: website-deps - dependency-name: "@typescript-eslint/eslint-plugin" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: website-deps - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: website-deps - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-minor dependency-group: website-deps - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-minor dependency-group: website-deps ... Signed-off-by: dependabot[bot] <support@github.com> * chore: fix formatting * chore: bump prettier (can't reproduce element.mdx warning locally?) * workflow: show formatting diff for locally unproduceable errors * chore: format elements.mdx --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matt Yan <syan4@ualberta.ca> Co-authored-by: Siyuan Yan <44753941+Madoshakalaka@users.noreply.github.com>
* Bump the cargo-deps group across 1 directory with 17 updates Bumps the cargo-deps group with 16 updates in the / directory: | Package | From | To | | --- | --- | --- | | [thiserror](https://github.com/dtolnay/thiserror) | `1.0.69` | `2.0.11` | | [serde](https://github.com/serde-rs/serde) | `1.0.217` | `1.0.218` | | [tokise](https://github.com/yewstack/tokise) | `0.1.0` | `0.2.0` | | [rand](https://github.com/rust-random/rand) | `0.8.5` | `0.9.0` | | [tabled](https://github.com/zhiburt/tabled) | `0.16.0` | `0.18.0` | | [serde_json](https://github.com/serde-rs/json) | `1.0.138` | `1.0.139` | | [clap](https://github.com/clap-rs/clap) | `4.5.29` | `4.5.30` | | [anyhow](https://github.com/dtolnay/anyhow) | `1.0.95` | `1.0.96` | | [git2](https://github.com/rust-lang/git2-rs) | `0.19.0` | `0.20.0` | | [strum](https://github.com/Peternator7/strum) | `0.26.3` | `0.27.1` | | [derive_more](https://github.com/JelteF/derive_more) | `1.0.0` | `2.0.1` | | [strum_macros](https://github.com/Peternator7/strum) | `0.26.4` | `0.27.1` | | [pulldown-cmark](https://github.com/raphlinus/pulldown-cmark) | `0.12.2` | `0.13.0` | | [fake](https://github.com/cksac/fake-rs) | `2.10.0` | `4.0.0` | | [uuid](https://github.com/uuid-rs/uuid) | `1.13.1` | `1.14.0` | | [axum](https://github.com/tokio-rs/axum) | `0.7.9` | `0.8.1` | Updates `thiserror` from 1.0.69 to 2.0.11 - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](dtolnay/thiserror@1.0.69...2.0.11) Updates `serde` from 1.0.217 to 1.0.218 - [Release notes](https://github.com/serde-rs/serde/releases) - [Commits](serde-rs/serde@v1.0.217...v1.0.218) Updates `tokise` from 0.1.0 to 0.2.0 - [Release notes](https://github.com/yewstack/tokise/releases) - [Commits](yewstack/tokise@v0.1.0...v0.2.0) Updates `rand` from 0.8.5 to 0.9.0 - [Release notes](https://github.com/rust-random/rand/releases) - [Changelog](https://github.com/rust-random/rand/blob/master/CHANGELOG.md) - [Commits](rust-random/rand@0.8.5...0.9.0) Updates `tabled` from 0.16.0 to 0.18.0 - [Changelog](https://github.com/zhiburt/tabled/blob/master/CHANGELOG.md) - [Commits](https://github.com/zhiburt/tabled/commits) Updates `serde_json` from 1.0.138 to 1.0.139 - [Release notes](https://github.com/serde-rs/json/releases) - [Commits](serde-rs/json@v1.0.138...v1.0.139) Updates `clap` from 4.5.29 to 4.5.30 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](clap-rs/clap@clap_complete-v4.5.29...clap_complete-v4.5.30) Updates `anyhow` from 1.0.95 to 1.0.96 - [Release notes](https://github.com/dtolnay/anyhow/releases) - [Commits](dtolnay/anyhow@1.0.95...1.0.96) Updates `git2` from 0.19.0 to 0.20.0 - [Changelog](https://github.com/rust-lang/git2-rs/blob/master/CHANGELOG.md) - [Commits](rust-lang/git2-rs@git2-0.19.0...git2-0.20.0) Updates `strum` from 0.26.3 to 0.27.1 - [Release notes](https://github.com/Peternator7/strum/releases) - [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md) - [Commits](Peternator7/strum@v0.26.3...v0.27.1) Updates `derive_more` from 1.0.0 to 2.0.1 - [Release notes](https://github.com/JelteF/derive_more/releases) - [Changelog](https://github.com/JelteF/derive_more/blob/master/CHANGELOG.md) - [Commits](JelteF/derive_more@v1.0.0...v2.0.1) Updates `strum_macros` from 0.26.4 to 0.27.1 - [Release notes](https://github.com/Peternator7/strum/releases) - [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md) - [Commits](https://github.com/Peternator7/strum/commits/v0.27.1) Updates `pulldown-cmark` from 0.12.2 to 0.13.0 - [Release notes](https://github.com/raphlinus/pulldown-cmark/releases) - [Commits](pulldown-cmark/pulldown-cmark@v0.12.2...v0.13.0) Updates `fake` from 2.10.0 to 4.0.0 - [Release notes](https://github.com/cksac/fake-rs/releases) - [Changelog](https://github.com/cksac/fake-rs/blob/master/CHANGELOG.md) - [Commits](https://github.com/cksac/fake-rs/commits) Updates `uuid` from 1.13.1 to 1.14.0 - [Release notes](https://github.com/uuid-rs/uuid/releases) - [Commits](uuid-rs/uuid@1.13.1...v1.14.0) Updates `axum` from 0.7.9 to 0.8.1 - [Release notes](https://github.com/tokio-rs/axum/releases) - [Changelog](https://github.com/tokio-rs/axum/blob/main/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/axum/commits) Updates `serde_derive` from 1.0.217 to 1.0.218 - [Release notes](https://github.com/serde-rs/serde/releases) - [Commits](serde-rs/serde@v1.0.217...v1.0.218) --- updated-dependencies: - dependency-name: thiserror dependency-type: direct:production update-type: version-update:semver-major dependency-group: cargo-deps - dependency-name: serde dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps - dependency-name: tokise dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: rand dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: tabled dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: serde_json dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps - dependency-name: clap dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps - dependency-name: anyhow dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps - dependency-name: git2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: strum dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: derive_more dependency-type: direct:production update-type: version-update:semver-major dependency-group: cargo-deps - dependency-name: strum_macros dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: pulldown-cmark dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: fake dependency-type: direct:production update-type: version-update:semver-major dependency-group: cargo-deps - dependency-name: uuid dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: axum dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: serde_derive dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps ... Signed-off-by: dependabot[bot] <support@github.com> * chore: revert rand0.9 upgrade for now --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matt Yan <syan4@ualberta.ca>
* synced 0.18 i18n docs
Bumps [path-to-regexp](https://github.com/pillarjs/path-to-regexp) from 1.8.0 to 1.9.0. - [Release notes](https://github.com/pillarjs/path-to-regexp/releases) - [Changelog](https://github.com/pillarjs/path-to-regexp/blob/master/History.md) - [Commits](pillarjs/path-to-regexp@v1.8.0...v1.9.0) --- updated-dependencies: - dependency-name: path-to-regexp dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matt Yan <syan4@ualberta.ca>
* Change note to tip in examples.mdx --------- Co-authored-by: Matt Yan <syan4@ualberta.ca>
#3803) This is achieved by reworking the logic for rewriting the function signature of the hook.
Bumps [nanoid](https://github.com/ai/nanoid) from 3.3.7 to 3.3.8. - [Release notes](https://github.com/ai/nanoid/releases) - [Changelog](https://github.com/ai/nanoid/blob/main/CHANGELOG.md) - [Commits](ai/nanoid@3.3.7...3.3.8) --- updated-dependencies: - dependency-name: nanoid dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [peterjgrainger/action-create-branch](https://github.com/peterjgrainger/action-create-branch) from 2.4.0 to 3.0.0. - [Release notes](https://github.com/peterjgrainger/action-create-branch/releases) - [Commits](peterjgrainger/action-create-branch@v2.4.0...v3.0.0) --- updated-dependencies: - dependency-name: peterjgrainger/action-create-branch dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…able length lists (#4099) * fix: pair unkeyed children front-to-front during reconciliation `apply_unkeyed` paired nodes from the back of render order, so growing or shrinking a list destroyed and recreated leading siblings instead of reusing them. Flip `rev_children` to render order before diffing, drain/add excess from the tail, and flip back. This makes positional reconciliation match the intuitive front-to-front expectation and fixes stateful elements (`<video>`, `<input>`) being reset when a sibling list changes length. * fix: store BList children in render order Replace rev_children (reverse render order) with children (render order). --------- Co-authored-by: Martin Molzer <WorldSEnder@users.noreply.github.com>
- Support unbraced match arms and let bindings in match arm bodies - Support bare literals and expressions in unbraced match arms and for-loops - Support bare nodes and let bindings in if/else bodies - Support `let` bindings in `for` bodies - Automatic root fragment wrapping - Protest against patterns containing unnecessarily nested `html!` macros and unnecessary fragments - Update examples to use the new syntax - Document match expressions, let bindings, and bare nodes in html!
* fix(branding): do not scare away new adopters In fact Yew has the reputation of being the most «mature» Rust frontend framework. * fix(docs): correct outdated website docs: camelCase svg elements just work now. * docs: mention nested router RFC * docs: update SSR situation * docs: remove experimental warning and glaze yew-autoprops * docs: promote tracing-web as recommended logging crate * fix: make the svg icon a real square * fix(website): icon not showing * branding: tagline
* fix: disable streaming output in wasm-bindgen-test-runner for E2E tests wasm-bindgen 0.2.115+ introduced incremental DOM scraping that assumes #output content is append-only. The SSR E2E tests replace #output via set_inner_html, breaking the offset tracker and causing the runner to miss test results. WASM_BINDGEN_TEST_NO_STREAM falls back to reading full text each poll. --------- Co-authored-by: Esteve Autet Alexe <esteve@memw.es>
now #![allow(deprecated)] can be used to disable these lints also catch unnecessary html! in if-else
The matching `.rs` file was deleted in #1738, but the `.stderr` was left behind. The trybuild glob in html_macro_test.rs only picks up `*-pass.rs`/`*-fail.rs`, so this file was never consumed.
The previous approach routed a resuming child's rendered through the scheduler's `rendered` queue, which drains only after the update+render queues. That worked for a single suspender but not for siblings: if A resumed while B was still pending, A's rendered still fired before the boundary un-suspended, because Suspense's render with suspended=true still doesn't shift children into the live tree. Hand the pending rendered directly to the ancestor BaseSuspense as a PendingRendered, keyed by comp_id in a Vec. BaseSuspense drains this list in its own rendered lifecycle, gated on self.suspensions.is_empty() - i.e. the commit on which reconcile has already shifted children from the detached parent into the live tree. Re-committed children absorb into the existing entry so first_render=true survives a suspend/resume/suspend/resume cycle.
Bumps [rustls-webpki](https://github.com/rustls/webpki) from 0.103.10 to 0.103.13. - [Release notes](https://github.com/rustls/webpki/releases) - [Commits](rustls/webpki@v/0.103.10...v/0.103.13) --- updated-dependencies: - dependency-name: rustls-webpki dependency-version: 0.103.13 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…4124) also note: Our MSRV is 1.85+ but users might stay on edition 2021 for various reasons This change wraps break/continue in Into::into(...) triggered the never-type fallback in editions before 2024, where unconstrained ! falls back to (), producing "(): Into<VNode> is not satisfied" on edition 2021 users. Emit the keyword directly as a statement instead so the generated code is edition-agnostic.
…4146) When a fork-parsed `Stmt::Expr(For/While/Loop, None)` succeeds, the entire expression is Rust-parseable and contains no html elements, so it cannot be a misread of html-control-flow. Accept it as a preamble statement instead of erroring with the `let _ = ...;` hint. Users no longer need a trailing `;` or a `let _ =` binding to use imperative side-effect loops inside an html! body. Also added `if { for {x} }` workarounds on the website
* fix: validate attribute names attribute names are written to the HTML in SSR without escaping (no such escaping is part of the HTML spec). This means they need to be validated to avoid injection. Note that in normal usage, Rust identifiers always form valid attribute names. To catch browser incompat, high unicode chars are failed `_unchecked` methods are available. The previous enum constructors are now doc(hidden) - no private visibility is possible - and deprecated for a good migration path.
Renaming was not thoroughly enough and it caused spurious CI failures.
…4155) nanoid 0.5 swaps its rand 0.8 dep for rand 0.9, which transitively pulls in getrandom 0.3 in place of getrandom 0.2. On wasm32-unknown-unknown, getrandom 0.3 fails to compile unless its wasm_js Cargo feature is activated in the dependency graph. Mirror the workaround already used in examples/function_router and examples/router (493fe1c): add getrandom_03 = { workspace = true } so the workspace dep with wasm_js feature unifies into the build graph for trunk's per-manifest builds. Our usage of nanoid requires no source changes for the 0.5 bump.
enabled by newer html! macro syntax
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.44.0 to 1.47.0. - [Release notes](https://github.com/crate-ci/typos/releases) - [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md) - [Commits](crate-ci/typos@v1.44.0...v1.47.0) --- updated-dependencies: - dependency-name: crate-ci/typos dependency-version: 1.47.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [postcss](https://github.com/postcss/postcss) from 8.5.6 to 8.5.13. - [Release notes](https://github.com/postcss/postcss/releases) - [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md) - [Commits](postcss/postcss@8.5.6...8.5.13) --- updated-dependencies: - dependency-name: postcss dependency-version: 8.5.13 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
git2 0.21 changed `StringArray::iter()` to yield `Result<Option<&str>, Error>` instead of `Option<&str>`, which broke `get_latest_version` (the `.map`/`.replace` chain resolved to `Result::map` + `Option::replace`). Handle the new item type with `ok().flatten()`, skipping tags that error or are non-UTF-8. git2 0.21 also drops ssh/https from its default features, removing the libssh2-sys/openssl-sys build deps because the changelog tool only performs local git operations, so no feature flags are needed.
The simple_ssr example fetched a UUID from httpbin.org during SSR, which is chronically unreliable (intermittent 503s) and periodically breaks the SSR-E2E CI job with a misleading reqwest decode panic on the error-page body.
Switch to httpbingo.org (the maintained go-httpbin instance), which returns the identical {"uuid": ...} shape. It requires a User-Agent (answers 402 without one) and reqwest sends none by default, so build a client with an explicit User-Agent. Add error_for_status() so any future non-2xx surfaces as a clear HTTP error instead of a JSON-decode failure.
…ates (#4163) Bumps the cargo-deps group with 18 updates in the / directory: | Package | From | To | | --- | --- | --- | | [tokio](https://github.com/tokio-rs/tokio) | `1.51.0` | `1.52.3` | | [clap](https://github.com/clap-rs/clap) | `4.6.0` | `4.6.1` | | [serde_json](https://github.com/serde-rs/json) | `1.0.149` | `1.0.150` | | [log](https://github.com/rust-lang/log) | `0.4.29` | `0.4.31` | | [reqwest](https://github.com/seanmonstar/reqwest) | `0.13.2` | `0.13.4` | | [axum](https://github.com/tokio-rs/axum) | `0.8.8` | `0.8.9` | | [indexmap](https://github.com/indexmap-rs/indexmap) | `2.13.1` | `2.14.0` | | [gloo-net](https://github.com/rustwasm/gloo) | `0.6.0` | `0.7.0` | | [lru](https://github.com/jeromefroe/lru-rs) | `0.16.3` | `0.18.0` | | [matchit](https://github.com/ibraheemdev/matchit) | `0.9.1` | `0.9.2` | | [average](https://github.com/vks/average) | `0.16.0` | `0.17.0` | | [tabled](https://github.com/zhiburt/tabled) | `0.20.0` | `0.21.0` | | [libc](https://github.com/rust-lang/libc) | `0.2.184` | `0.2.186` | | [tower-http](https://github.com/tower-rs/tower-http) | `0.6.8` | `0.6.11` | | [hyper](https://github.com/hyperium/hyper) | `1.9.0` | `1.10.1` | | [pulldown-cmark](https://github.com/raphlinus/pulldown-cmark) | `0.13.3` | `0.13.4` | | [zxcvbn](https://github.com/shssoichiro/zxcvbn-rs) | `3.1.0` | `3.1.1` | | [uuid](https://github.com/uuid-rs/uuid) | `1.23.0` | `1.23.2` | Updates `tokio` from 1.51.0 to 1.52.3 - [Release notes](https://github.com/tokio-rs/tokio/releases) - [Commits](tokio-rs/tokio@tokio-1.51.0...tokio-1.52.3) Updates `clap` from 4.6.0 to 4.6.1 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](clap-rs/clap@clap_complete-v4.6.0...clap_complete-v4.6.1) Updates `serde_json` from 1.0.149 to 1.0.150 - [Release notes](https://github.com/serde-rs/json/releases) - [Commits](serde-rs/json@v1.0.149...v1.0.150) Updates `log` from 0.4.29 to 0.4.31 - [Release notes](https://github.com/rust-lang/log/releases) - [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md) - [Commits](rust-lang/log@0.4.29...0.4.31) Updates `reqwest` from 0.13.2 to 0.13.4 - [Release notes](https://github.com/seanmonstar/reqwest/releases) - [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md) - [Commits](seanmonstar/reqwest@v0.13.2...v0.13.4) Updates `axum` from 0.8.8 to 0.8.9 - [Release notes](https://github.com/tokio-rs/axum/releases) - [Changelog](https://github.com/tokio-rs/axum/blob/main/CHANGELOG.md) - [Commits](tokio-rs/axum@axum-v0.8.8...axum-v0.8.9) Updates `indexmap` from 2.13.1 to 2.14.0 - [Changelog](https://github.com/indexmap-rs/indexmap/blob/main/RELEASES.md) - [Commits](indexmap-rs/indexmap@2.13.1...2.14.0) Updates `gloo-net` from 0.6.0 to 0.7.0 - [Release notes](https://github.com/rustwasm/gloo/releases) - [Changelog](https://github.com/ranile/gloo/blob/master/CHANGELOG.md) - [Commits](ranile/gloo@0.6.0...gloo-net-v0.7.0) Updates `lru` from 0.16.3 to 0.18.0 - [Changelog](https://github.com/jeromefroe/lru-rs/blob/master/CHANGELOG.md) - [Commits](jeromefroe/lru-rs@0.16.3...0.18.0) Updates `matchit` from 0.9.1 to 0.9.2 - [Release notes](https://github.com/ibraheemdev/matchit/releases) - [Commits](ibraheemdev/matchit@v0.9.1...v0.9.2) Updates `average` from 0.16.0 to 0.17.0 - [Commits](https://github.com/vks/average/commits) Updates `tabled` from 0.20.0 to 0.21.0 - [Changelog](https://github.com/zhiburt/tabled/blob/master/CHANGELOG.md) - [Commits](https://github.com/zhiburt/tabled/commits) Updates `libc` from 0.2.184 to 0.2.186 - [Release notes](https://github.com/rust-lang/libc/releases) - [Changelog](https://github.com/rust-lang/libc/blob/0.2.186/CHANGELOG.md) - [Commits](rust-lang/libc@0.2.184...0.2.186) Updates `tower-http` from 0.6.8 to 0.6.11 - [Release notes](https://github.com/tower-rs/tower-http/releases) - [Commits](tower-rs/tower-http@tower-http-0.6.8...tower-http-0.6.11) Updates `hyper` from 1.9.0 to 1.10.1 - [Release notes](https://github.com/hyperium/hyper/releases) - [Changelog](https://github.com/hyperium/hyper/blob/master/CHANGELOG.md) - [Commits](hyperium/hyper@v1.9.0...v1.10.1) Updates `pulldown-cmark` from 0.13.3 to 0.13.4 - [Release notes](https://github.com/raphlinus/pulldown-cmark/releases) - [Commits](pulldown-cmark/pulldown-cmark@v0.13.3...v0.13.4) Updates `zxcvbn` from 3.1.0 to 3.1.1 - [Changelog](https://github.com/shssoichiro/zxcvbn-rs/blob/master/CHANGELOG.md) - [Commits](shssoichiro/zxcvbn-rs@v3.1.0...v3.1.1) Updates `uuid` from 1.23.0 to 1.23.2 - [Release notes](https://github.com/uuid-rs/uuid/releases) - [Commits](uuid-rs/uuid@v1.23.0...v1.23.2) --- updated-dependencies: - dependency-name: average dependency-version: 0.17.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: axum dependency-version: 0.8.9 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps - dependency-name: clap dependency-version: 4.6.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps - dependency-name: gloo-net dependency-version: 0.7.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: hyper dependency-version: 1.10.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: indexmap dependency-version: 2.14.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: libc dependency-version: 0.2.186 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps - dependency-name: log dependency-version: 0.4.31 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps - dependency-name: lru dependency-version: 0.18.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: matchit dependency-version: 0.9.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps - dependency-name: pulldown-cmark dependency-version: 0.13.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps - dependency-name: reqwest dependency-version: 0.13.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps - dependency-name: serde_json dependency-version: 1.0.150 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps - dependency-name: tabled dependency-version: 0.21.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: tokio dependency-version: 1.52.3 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: cargo-deps - dependency-name: tower-http dependency-version: 0.6.11 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps - dependency-name: uuid dependency-version: 1.23.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps - dependency-name: zxcvbn dependency-version: 3.1.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: cargo-deps ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…4158) During SSR hydration, Yew unconditionally called `set_attribute` for every attribute on each element, even when the server-rendered DOM already held the correct value. Re-setting an attribute to its existing value can still trigger browser side effects. Most visibly, re-assigning `<img src>` restarts the resource fetch, causing a duplicate (and sometimes aborted) network request. Hydration already assumes the DOM matches the server-rendered HTML, so there's no reason to write attributes back. This adds a dedicated hydration path for `Attributes`: - Attributes are left untouched. In debug builds a `debug_assert!` verifies the existing value matches the expected one, surfacing SSR/client mismatches loudly while compiling to a no-op in release. - Properties are still applied unconditionally, since they are not serialized into the HTML and so aren't present on the hydrated DOM. This is wired in via a new `Apply::hydrate` trait method (defaulting to `apply`); only `Attributes` overrides it, and VTag hydration now calls `attributes.hydrate(...)` instead of `attributes.apply(...)`. Adds a hydration test using a `MutationObserver` to assert no attribute mutations occur when the rendered values already match the DOM.
Resolve version-sensitive docs URLs/versions at build time from each page's own path.
Tokens:
- {{yew_dependency}} -> `git = "..."` on next, `version = "X"` on snapshots
- {{yew_api}} -> preview rustdoc host on next, docs.rs/yew/X on snapshots
- {{yew_version}} -> latest release on next, X on snapshots (prose/display)
Also fixes the 0.21-0.23 hooks links that wrongly pointed at the next preview host.
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.
See Commits and Changes for more details.
Created by
pull[bot]
Can you help keep this open source service alive? 💖 Please sponsor : )