fix(actions): support for nested objects in form#15978
fix(actions): support for nested objects in form#15978ematipico merged 2 commits intowithastro:mainfrom
Conversation
🦋 Changeset detectedLatest commit: 9ed560e The changes in this PR will be included in the next version bump. Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
a467555 to
6ee1bd5
Compare
6219101 to
e87cd57
Compare
matthewp
left a comment
There was a problem hiding this comment.
I don't love all of the Zod internals stuff happening here, but we were already doing the same thing as before, so no worse.
|
@seroperson can you resolve the conflicts please? then can get this merged. |
e87cd57 to
b71bf56
Compare
|
@matthewp done 🤝 |
ematipico
left a comment
There was a problem hiding this comment.
This PR is marked as minor, so:
- I block it until we're ready to ship it
- I would love if the changeset would be more user focused.
Is this supposed be a minor or should it be a patch? Nevertheless the changeset should be more descriptive
b71bf56 to
a0acdb2
Compare
|
@ematipico I've re-marked it as |
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [astro](https://astro.build) ([source](https://github.com/withastro/astro/tree/HEAD/packages/astro)) | [`6.0.6` → `6.0.8`](https://renovatebot.com/diffs/npm/astro/6.0.6/6.0.8) |  |  | --- ### Release Notes <details> <summary>withastro/astro (astro)</summary> ### [`v6.0.8`](https://github.com/withastro/astro/blob/HEAD/packages/astro/CHANGELOG.md#608) [Compare Source](https://github.com/withastro/astro/compare/astro@6.0.7...astro@6.0.8) ##### Patch Changes - [#​15978](withastro/astro#15978) [`6d182fe`](withastro/astro@6d182fe) Thanks [@​seroperson](https://github.com/seroperson)! - Fixes a bug where Astro Actions didn't properly support nested object properties, causing problems when users used zod functions such as `superRefine` or `discriminatedUnion`. - [#​16011](withastro/astro#16011) [`e752170`](withastro/astro@e752170) Thanks [@​matthewp](https://github.com/matthewp)! - Fixes a dev server hang on the first request when using the Cloudflare adapter - [#​15997](withastro/astro#15997) [`1fddff7`](withastro/astro@1fddff7) Thanks [@​ematipico](https://github.com/ematipico)! - Fixes `Astro.rewrite()` failing when the target path contains duplicate slashes (e.g. `//about`). The duplicate slashes are now collapsed before URL parsing, preventing them from being interpreted as a protocol-relative URL. ### [`v6.0.7`](https://github.com/withastro/astro/blob/HEAD/packages/astro/CHANGELOG.md#607) [Compare Source](https://github.com/withastro/astro/compare/astro@6.0.6...astro@6.0.7) ##### Patch Changes - [#​15950](withastro/astro#15950) [`acce5e8`](withastro/astro@acce5e8) Thanks [@​matthewp](https://github.com/matthewp)! - Fixes a build regression in projects with multiple frontend integrations where `server:defer` server islands could fail at runtime when all pages are prerendered. - [#​15988](withastro/astro#15988) [`c93b4a0`](withastro/astro@c93b4a0) Thanks [@​ossaidqadri](https://github.com/ossaidqadri)! - Fix styles from dynamically imported components not being injected on first dev server load. - [#​15968](withastro/astro#15968) [`3e7a9d5`](withastro/astro@3e7a9d5) Thanks [@​chasemccoy](https://github.com/chasemccoy)! - Fixes `renderMarkdown` in custom content loaders not resolving images in markdown content. Images referenced in markdown processed by `renderMarkdown` are now correctly optimized, matching the behavior of the built-in `glob()` loader. - [#​15990](withastro/astro#15990) [`1e6017f`](withastro/astro@1e6017f) Thanks [@​ematipico](https://github.com/ematipico)! - Fixes an issue where `Astro.currentLocale` would always be the default locale instead of the actual one when using a dynamic route like `[locale].astro` or `[locale]/index.astro`. It now resolves to the correct locale from the URL. - [#​15990](withastro/astro#15990) [`1e6017f`](withastro/astro@1e6017f) Thanks [@​ematipico](https://github.com/ematipico)! - Fixes an issue where visiting an invalid locale URL (e.g. `/asdf/`) would show the content of a dynamic `[locale]` page with a 404 status code, instead of showing your custom 404 page. Now, the correct 404 page is rendered when the locale in the URL doesn't match any configured locale. - [#​15960](withastro/astro#15960) [`1d84020`](withastro/astro@1d84020) Thanks [@​matthewp](https://github.com/matthewp)! - Fixes Cloudflare dev server islands with `prerenderEnvironment: 'node'` by sharing the serialized manifest encryption key across dev environments and routing server island requests through the SSR runtime. - [#​15735](withastro/astro#15735) [`9685e2d`](withastro/astro@9685e2d) Thanks [@​fa-sharp](https://github.com/fa-sharp)! - Fixes an EventEmitter memory leak when serving static pages from Node.js middleware. When using the middleware handler, requests that were being passed on to Express / Fastify (e.g. static files / pre-rendered pages / etc.) weren't cleaning up socket listeners before calling `next()`, causing a memory leak warning. This fix makes sure to run the cleanup before calling `next()`. </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My43Ni4yIiwidXBkYXRlZEluVmVyIjoiNDMuODYuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: Renovate Bot <renovate@zarantonello.dev> Co-committed-by: Renovate Bot <renovate@zarantonello.dev>
Closes #14387
Changes
formDataToObjectnow recursively processes nestedZodObjectschemas, converting dot-notation form keys (likebc.b) into nested object structures ({ bc: { b: ... } })Testing
form-data-to-object.test.js: nested objects,superRefinewrapping, deeper 3-level nesting,optional/nullable/defaultnested objects, nesteddiscriminatedUnionactions.test.js: nested form objects,superRefinevalidation, nesteddiscriminatedUnionDocs
No new API was introduced, so likely no docs changes are required
/cc @withastro/maintainers-docs