redwoodjs / example-todo

Example Todo app written with Redwood
95 stars 28 forks source link

Update redwood monorepo to v8 (major) #69

Open renovate[bot] opened 2 years ago

renovate[bot] commented 2 years ago

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@redwoodjs/core (source) 0.47.1 -> 8.4.0 age adoption passing confidence
@redwoodjs/forms (source) 0.47.1 -> 8.4.0 age adoption passing confidence
@redwoodjs/graphql-server (source) 0.47.1 -> 8.4.0 age adoption passing confidence
@redwoodjs/router (source) 0.47.1 -> 8.4.0 age adoption passing confidence
@redwoodjs/web (source) 0.47.1 -> 8.4.0 age adoption passing confidence

Release Notes

redwoodjs/redwood (@​redwoodjs/core) ### [`v8.4.0`](https://redirect.github.com/redwoodjs/redwood/releases/tag/v8.4.0) [Compare Source](https://redirect.github.com/redwoodjs/redwood/compare/v8.3.0...v8.4.0) ##### Changelog ##### 🚧 🚨 Experimental Breaking
breaking(rsc): Removing live-reload RSC dev server approach (#​11648) by @​Tobbe Please see #​11648 for more details
##### πŸš€ Features
feat(baremetal): Check available disk space (#​11469) by @​Tobbe Adds an early step to the `yarn rw deploy baremetal` command that checks to make sure there is enough free disk space on the server before continuing. By default it will make sure there is at least 2048 MB (2 GB) of free disk space but this can be changed by setting the new `deploy.toml` option `freeSpaceRequired` to however many MB you want. You can skip this step by passing `--no-df` to the `deploy baremetal` command or setting `freeSpaceRequired` to `0`.
##### πŸ› οΈ Fixes
fix(jobs): merge job options to prevent 'undefined' values in place of defaults (#​11666) by @​Josh-Walker-GM Please see #​11666 for more details
fix(jobs): Fixes creating worker with deleteSuccessfulJobs config setting in JobManager (#​11653) by @​dthyresson According to the Job documentation, the JobManager's ` deleteSuccessfulJobs ` can be used to decide if one wants successfully completed jobs from being deleted from the `BackgroundJobs` table. Keeping job run history around is useful for reporting purposes, such s hoe many jobs run over time, how many fails, how many successes, etc. However, the `deleteSuccessfulJobs` was not being correctly passed to the worker in `createWorker` so the worker always used the default value -- true -- and always deleted the job run record regardless of configuration. This PR fixes this issue by setting the config value when creating the worker.
fix(crwa): Add missing quotes to seed example (#​11651) by @​Tobbe Just un-commenting the example seed code now gives you valid code to seed your database with
fix(web) type NonSuspenseCellQueryResult... (#​11639) by @​richard-stafflink The result you get back as `queryResult` is now properly typed. Typically the type will be something like `FindPostById`, i.e. the first type that is passed to `CellSuccessProps` (instead of just being `any`).
fix(crwa): Better handling of installing to . (#​11645) by @​Tobbe When installing to `cwd`: - Print "the current directory" instead of "." - Skip the output of `cd` (which would move you to your home directory, which most likely is not what you want)
##### πŸ“š Docs
docs(deploy): fix grove command (#​11689) by @​Josh-Walker-GM Please see #​11689 for more details
docs: fix versioned docs (#​11643) by @​Josh-Walker-GM Please see #​11643 for more details
Removed 'Azure' as deploy provider mention' (#​11116) by @​pantheredeye Please see #​11116 for more details
Fix email link in tutorial (#​11636) by @​cannikin Please see #​11636 for more details
Update the Deployment step of the tutorial for GROVE (#​10890) by @​cannikin Please see #​10890 for more details
##### πŸ“¦ Dependencies
Click to see all dependency updates
  • chore(deps): update babel monorepo to v7.25.7 (#​11682) by @​renovate
  • chore(deps): update dependency firebase to v10.14.0 (#​11680) by @​renovate
  • fix(deps): update dependency firebase-admin to v12.6.0 (#​11681) by @​renovate
  • fix(deps): update dependency @​types/node to v20.16.11 (#​11679) by @​renovate
  • fix(deps): update dependency @​joshwooding/vite-plugin-react-docgen-typescript to v0.4.1 (#​11675) by @​renovate
  • fix(deps): update dependency @​vitejs/plugin-react to v4.3.2 (#​11673) by @​renovate
  • chore(deps): update dependency node to v20.18.0 (#​11669) by @​renovate
  • fix(deps): update dependency @​faire/mjml-react to v3.4.0 (#​11672) by @​renovate
  • fix(deps): update dependency cookie to v0.7.2 (#​11670) by @​renovate
  • chore(deps): bump cookie from 0.7.0 to 0.7.1 (#​11665) by @​dependabot
  • fix(deps): update dependency cookie to v0.7.0 [security] (#​11661) by @​renovate
  • fix(deps): update dependency http-proxy-middleware to v3.0.3 (#​11657) by @​renovate
  • fix(deps): update dependency vite to v5.4.8 (#​11658) by @​renovate
##### 🧹 Chore
Click to see all chore contributions
  • chore(deps): update github/codeql-action digest to c36620d (#​11678) by @​renovate
  • chore(deps): update actions/checkout action to v4.2.1 (#​11676) by @​renovate
  • chore(deps): update dependency @​actions/core to v1.11.1 (#​11677) by @​renovate
  • chore(deps): update dependency eslint-plugin-perfectionist to v3.8.0 (#​11674) by @​renovate
  • chore(deps): update dependency @​types/jscodeshift to v0.12.0 (#​11671) by @​renovate
  • chore(deps): update dependency knip to v5.33.1 (#​11668) by @​renovate
  • chore(deps): update dependency @​types/lodash to v4.17.10 (#​11667) by @​renovate
  • chore(deps): update dependency rollup to v4.24.0 (#​11664) by @​renovate
  • chore(deps): update dependency memfs to v4.13.0 (#​11663) by @​renovate
  • chore(deps): update chore (#​11662) by @​renovate
  • chore(deps): update dependency @​types/vscode to v1.94.0 (#​11659) by @​renovate
  • chore(release): update docs (#​11637) by @​Josh-Walker-GM
##### 🚧 🧹 Experimental Chore
Click to see all chore contributions
  • chore(rsc): Extract importRsdwServer() and move type assertions to utils (#​11688) by @​Tobbe
  • chore(rsc): Fix console log and add todo (#​11685) by @​Tobbe
  • chore(rsc): Fix TODO and simplify SSR code (#​11650) by @​Tobbe
  • chore(rsc): Rename renderRoutesFromDist to renderRoutesSsr (#​11647) by @​Tobbe
  • chore(rsc): Make Router-related imports safer for RSC (#​11644) by @​Tobbe
  • chore(rsc): Remove unused node-loader (#​11642) by @​Tobbe
  • chore(rsc): Refactor: Extract rscFetch and rsaFetch (#​11582) by @​Tobbe
### [`v8.3.0`](https://redirect.github.com/redwoodjs/redwood/releases/tag/v8.3.0) [Compare Source](https://redirect.github.com/redwoodjs/redwood/compare/v8.2.0...v8.3.0) ##### Changelog ##### 🚧 🚨 Experimental Breaking
chore(deps): Upgrade to React 19 RC 20240916 (#​11575) by @​Tobbe Please see #​11575 for more details
##### πŸ› οΈ Fixes
fix `NODE_OPTIONS` env forwarding (#​11587) by @​cometkim This change updates how we pass through any `NODE_OPTIONS` when you run the API side development server with `yarn rw dev`. Previously there may have been issues like unescaped spaces in paths which would have produced errors like: api | node:events:497 api | throw er; // Unhandled 'error' event api | ^ api | api | Error: spawn space.js --enable-source-maps ENOENT api | at ChildProcess._handle.onexit (node:internal/child_process:286:19) api | at onErrorNT (node:internal/child_process:484:16) api | at process.processTicksAndRejections (node:internal/process/task_queues:82:21) api | Emitted 'error' event on ChildProcess instance at: api | at ChildProcess._handle.onexit (node:internal/child_process:292:12) api | at onErrorNT (node:internal/child_process:484:16) api | at process.processTicksAndRejections (node:internal/process/task_queues:82:21) { api | errno: -2, api | code: 'ENOENT', api | syscall: 'spawn space.js --enable-source-maps', api | path: 'space.js --enable-source-maps', api | spawnargs: [ api | 'yarn', api | 'nodemon', api | '--quiet', api | '--watch', api | '/Users/jgmw/Development/redwood/rw-test/node_options_fix/redwood.toml', api | '--exec', api | 'yarn rw-api-server-watch --port 8911 --debug-port 18911 | rw-log-formatter' api | ] api | } api | api | Node.js v20.17.0 Now these sort of error should no longer occur.
fix(dbAuth): Fix WebAuthn when authModelAccessor is set to a custom value (#​11605) by @​antonmoiseev Previously if you had setup dbAuth with WebAuthn support and had chosen to rename the `User` and `UserCredential` models to some other name, such as `Account` and `AccountCredential` then dbAuth would have failed with an error something like: { "error": "this.dbCredentialAccessor.findFirst(...).user is not a function" } This change fixes the database access so that it correctly takes into account the configured `authModelAccessor`. **Note**: You should ensure your WebAuthn table has a unique index applied on the configured `id` column. Something like what our setup command generates will work great: model UserCredential { id String @​id // <-- Note the index! ... }
Fix storybook-vite not starting when `auth.ts` contains named imports after `createAuth` (#​11593) by @​Philzen This change fixes an issue with our internal storybook mocks. Previous to this you might find that your storybook would fail with an error like: 3:49:51 PM [vite] Internal server error: Transform failed with 1 error: …/web/src/auth.ts:2:9: ERROR: Expected identifier but found "," Plugin: vite:esbuild File: …/web/src/auth.ts:3:6 Expected identifier but found "," 1 | import { createAuthentication as createAuth } from '@​redwoodjs/testing/dist/web/mockAuth.js' 2 | import { , createDbAuthClient } from '@​redwoodjs/auth-dbauth-web'; | ^ 3 | const dbAuthClient = createDbAuthClient(); 4 | export const { This was due to a bug in our handling of imports which this change fixes.
Fixes `yarn rw jobs clear` command (#​11578) by @​cannikin
fix(graphql): Allow including 'File' scalar by default to be disabled (#​11540) by @​Josh-Walker-GM As of v8.0.0 a `File` scalar was added to your graphql schema by default. This could be problematic if you wanted to define your own `File` scalar. With this change it is now possible to disable including this scalar by default. To see how to do so look at the `Default Scalar` section of the `Graphql` docs [here](https://docs.redwoodjs.com/docs/graphql#default-scalars)
Default NODE_ENV to "development" if it's `undefined` when starting jobs worker (#​11572) by @​cannikin This mimics the behavior of `yarn rw dev` where `NODE_ENV` will equal `development` if you don't set it explicitly.
##### 🚧 πŸ› οΈ Experimental Fixes
Revert "fix(rsc): Set a yarn resolution for rollup 4.21.3 (#​11592)" (#​11600) by @​Tobbe Please see #​11600 for more details
fix(rsc): Set a yarn resolution for rollup 4.21.3 (#​11592) by @​Tobbe Please see #​11592 for more details
##### πŸ“š Docs
fix(docs): warn that uploads/storage is experimental (#​11590) by @​Josh-Walker-GM Please see #​11590 for more details
##### πŸ“¦ Dependencies
Click to see all dependency updates
  • chore(deps): update babel monorepo (#​11633) by @​renovate
  • chore(deps): update eslint monorepo (#​11634) by @​renovate
  • chore(deps): update dependency firebase to v10.13.2 (#​11632) by @​renovate
  • chore(deps): update dependency @​supabase/supabase-js to v2.45.4 (#​11631) by @​renovate
  • chore(deps): update dependency nodemon to v3.1.7 (#​11627) by @​renovate
  • chore(deps): update dependency esbuild to v0.24.0 (#​11622) by @​renovate
  • fix(deps): update dependency @​swc/core to v1.7.28 (#​11617) by @​renovate
  • fix(deps): update dependency @​rollup/pluginutils to v5.1.2 (#​11616) by @​renovate
  • fix(deps): update dependency @​types/node to v20.16.6 (#​11618) by @​renovate
  • fix(deps): update dependency vite-plugin-cjs-interop to v2.1.4 (#​11613) by @​renovate
  • chore(deps): update prisma monorepo to v5.20.0 (#​11615) by @​renovate
  • fix(deps): update dependency vite to v5.4.7 (#​11612) by @​renovate
  • chore(deps): update dependency rollup to v4.22.4 [security] (#​11604) by @​renovate
  • fix(deps): update dependency find-my-way to v8.2.2 [security] (#​11585) by @​renovate
  • fix(deps): update dependency vite to v5.4.6 [security] (#​11580) by @​renovate
##### 🧹 Chore
Click to see all chore contributions
  • chore(deps): update dependency eslint-plugin-perfectionist to v3.7.0 (#​11630) by @​renovate
  • chore(deps): update dependency eslint-plugin-package-json to v0.15.3 (#​11629) by @​renovate
  • chore(deps): update dependency eslint-plugin-n to v17.10.3 (#​11628) by @​renovate
  • chore(deps): update github/codeql-action digest to 461ef6c (#​11625) by @​renovate
  • chore(deps): update actions/setup-node digest to 0a44ba7 (#​11624) by @​renovate
  • chore(deps): update chore (#​11626) by @​renovate
  • chore(deps): Bump rollup (#​11623) by @​Josh-Walker-GM
  • chore(deps): update dependency publint to v0.2.11 (#​11621) by @​renovate
  • chore(deps): update dependency knip to v5.30.5 (#​11619) by @​renovate
  • chore(deps): update dependency publint to v0.2.11 (#​11620) by @​renovate
  • chore(deps): update dependency memfs to v4.12.0 (#​11614) by @​renovate
  • chore(deps): update dependency @​types/qs to v6.9.16 (#​11611) by @​renovate
  • chore(deps): update dependency @​types/nodemailer to v6.4.16 (#​11610) by @​renovate
  • chore(deps): update dependency @​types/lodash to v4.17.9 (#​11609) by @​renovate
  • chore(deps): update dependency @​types/jsonwebtoken to v9.0.7 (#​11608) by @​renovate
  • chore(deps): update dependency @​types/estree to v1.0.6 (#​11607) by @​renovate
  • chore(deps): update dependency @​playwright/test to v1.47.2 (#​11606) by @​renovate
  • chore(deps): update dependency @​arethetypeswrong/cli to v0.16.4 (#​11586) by @​renovate
  • chore(test-project): Update TailwindCSS (#​11583) by @​Tobbe
##### 🚧 🧹 Experimental Chore
Click to see all chore contributions
  • chore(rsc): Simplify RscRoutes by removing external promise (#​11574) by @​Tobbe
### [`v8.2.0`](https://redirect.github.com/redwoodjs/redwood/releases/tag/v8.2.0) [Compare Source](https://redirect.github.com/redwoodjs/redwood/compare/v8.1.1...v8.2.0) ##### Changelog ##### πŸš€ Features
feat(cli): Make scaffolded layout routing type-safe (#​11542) by @​Tobbe With this feature we now make sure only valid route names are passed as `titleTo` and `buttonTo` props to the scaffolded layout. This also means you get helpful code completion when typing out the prop values
[gh11385] Updated the generated page template (#​11533) by @​ahaywood This change alters the default content produced when you generate page with `yarn rw g page`. Previously our generated content contained code that would error out if you had a route parameter in your page - because the link we automatically generated would not contain a value for that parameter.
##### πŸ› οΈ Fixes
fix(scaffold): Use plain strings in NamesCell template (#​11546) by @​Tobbe Please see #​11546 for more details
fix(crwrsca): Spawn in shell on Windows (#​11565) by @​Tobbe Please see #​11565 for more details
fix(crwa): silence telemetry errors (#​11557) by @​Josh-Walker-GM Please see #​11557 for more details
fix(crwrsca): Check for Node >= 20.10.0 (#​11544) by @​Tobbe Please see #​11544 for more details
##### πŸ“š Docs
docs(uploads): Tweaks from updating the Recipes example app (#​11571) by @​Tobbe Please see #​11571 for more details
docs(how-to): replace crypto-js with node's crypto module for random number generation in passwordless auth (#​11568) by @​antonmoiseev Please see #​11568 for more details
docs(how-to): Fix example in dbauth-passworless docs (#​11567) by @​Tobbe Please see #​11567 for more details
Docs: Use Redwood's hashPassword() for loginToken hashing in the password-less dbAuth flow (#​11566) by @​antonmoiseev Please see #​11566 for more details
Replace MetaTags with Metadata component (#​11564) by @​antonmoiseev Please see #​11564 for more details
docs(chore): Fix formatting (#​11524) by @​Tobbe Please see #​11524 for more details
##### πŸ“¦ Dependencies
Click to see all dependency updates
  • fix(deps): update dependency vite to v5.4.5 (#​11556) by @​renovate
  • fix(deps): update dependency @​types/jest to v29.5.13 (#​11554) by @​renovate
  • fix(deps): update dependency unplugin-auto-import to v0.18.3 (#​11555) by @​renovate
  • fix(deps): update dependency @​swc/core to v1.7.26 (#​11553) by @​renovate
  • fix(deps): update dependency eslint-plugin-react to v7.36.1 (#​11550) by @​renovate
  • fix(deps): update dependency firebase-admin to v12.5.0 (#​11551) by @​renovate
  • fix(deps): update dependency envinfo to v7.14.0 (#​11549) by @​renovate
  • fix(deps): update dependency express to v4.21.0 (#​11548) by @​renovate
  • fix(deps): update dependency express to v4.20.0 (#​11525) by @​renovate
##### 🧹 Chore
Click to see all chore contributions
  • Add note to error message about running `yarn rw dev` or `yarn rw build` before the workers can be started (#​11573) by @​cannikin
  • chore(kitchen-sink): Fix css for page width (#​11570) by @​Tobbe
  • chore(deps): update chore (#​11561) by @​renovate
  • chore(deps): update dependency tsx to v4.19.1 (#​11559) by @​renovate
  • chore(deps): update dependency eslint-plugin-perfectionist to v3.6.0 (#​11562) by @​renovate
  • chore(deps): update dependency tsx to v4.19.1 (#​11560) by @​renovate
  • chore(fixture): update deps (#​11552) by @​Josh-Walker-GM
  • chore(rsc): Don't pass any props to the user's Routes (#​11539) by @​Tobbe
  • chore(deps): bump dset from 3.1.2 to 3.1.4 (#​11535) by @​dependabot
  • chore(deps): bump express from 4.19.2 to 4.20.0 in /docs (#​11530) by @​dependabot
  • chore(rsc): Remove RSC-specific logic from our babel config (#​11528) by @​Tobbe
##### 🚧 🧹 Experimental Chore
Click to see all chore contributions
  • chore(rsc): Remove client.ts and clean-up outdated tests (#​11527) by @​Tobbe
  • chore(rsc): Unify RSC and RSA cache structure (#​11521) by @​Tobbe
  • chore(rsc/rsa): Use "model" naming (#​11522) by @​Tobbe
### [`v8.1.1`](https://redirect.github.com/redwoodjs/redwood/releases/tag/v8.1.1) [Compare Source](https://redirect.github.com/redwoodjs/redwood/compare/v8.1.0...v8.1.1) ##### Changelog ##### πŸ› οΈ Fixes
fix(cli): handle both single and double quotes during dbAuth setup (#​11534) by @​Josh-Walker-GM If you had changed your prettier config to use double quotes instead of the default single quotes then the `yarn rw setup auth dbAuth` would fail. This change fixes that command to work regardless of quote flavour.
fix(auth0): avoid use of undefined global in browser environment (#​11531) by @​Josh-Walker-GM The Auth0 auth provider was failing in the browser due to trying to access `global`. This change corrects this and fixes Auth0 usage in the browser.
##### 🧹 Chore
Click to see all chore contributions
  • chore(crwa): transform lint ignore line as part of ts-to-js (#​11538) by @​Josh-Walker-GM
### [`v8.1.0`](https://redirect.github.com/redwoodjs/redwood/releases/tag/v8.1.0) [Compare Source](https://redirect.github.com/redwoodjs/redwood/compare/v8.0.0...v8.1.0) ##### Changelog ##### 🚧 πŸš€ Experimental Features
feat(uploads): Add setup command (#​11423) by @​dac09 Please see #​11423 for more details
##### πŸ› οΈ Fixes
fix: update community discussion link in output from cli - yarn rw upgrade (#​11468) by @​jgal1 Please see #​11468 for more details
fix(cli): explicitly set the version so `--version` works (#​11461) by @​Josh-Walker-GM Please see #​11461 for more details
fix(jobs): Make deleteSuccessfulJobs configurable (#​11459) by @​Tobbe Make the jobs Executor respect the `deleteSuccessfulJobs` config option
fix(linting): Re-enable babel presets during linting of javascript projects (#​11458) by @​Josh-Walker-GM The `yarn rw lint` command was failing for JavaScript projects. This change re-enables certain babel plugins to correct this issue and allow this command to succeed again.
fix(resolutions): Remove rehackt resolution (#​11447) by @​Tobbe The rehackt resolution isn't needed anymore. Apollo Client has updated to rehackt 0.1.0. See https://github.com/apollographql/apollo-client/blob/HEAD/CHANGELOG.md#3101 Unfortunately this requires our users to manually go and update their resolutions
Updates SDL codegen to handle prettier 3 correctly (#​11446) by @​orta Please see #​11446 for more details
##### 🚧 πŸ› οΈ Experimental Fixes
fix(rsc): Don't run the Vite dev server in production (#​11425) by @​Tobbe Please see #​11425 for more details
fix(rsa): Use dist filenames when registering server references (#​11417) by @​Tobbe Please see #​11417 for more details
##### πŸ“š Docs
Correct Note Admonition (#​11455) by @​pantheredeye Please see #​11455 for more details
docs(uploads): Add upload docs (#​11398) by @​dac09 Please see #​11398 for more details
##### πŸ“¦ Dependencies
Click to see all dependency updates
  • chore(deps): update dependency typescript to v5.6.2 (#​11513) by @​renovate
  • fix(deps): update typescript-eslint monorepo to v8.5.0 (#​11517) by @​renovate
  • chore(deps): update babel monorepo (#​11499) by @​renovate
  • fix(deps): update dependency @​graphql-yoga/plugin-persisted-operations to v3.7.0 (#​11489) by @​renovate
  • fix(deps): update dependency core-js to v3.38.1 (#​11497) by @​renovate
  • fix(deps): update dependency @​graphql-yoga/plugin-defer-stream to v3.7.0 (#​11487) by @​renovate
  • chore(deps): update dependency @​supabase/ssr to v0.5.1 (#​11503) by @​renovate
  • fix(deps): update dependency graphql-yoga to v5.7.0 (#​11493) by @​renovate
  • chore(deps): update dependency @​testing-library/jest-dom to v6.5.0 (#​11504) by @​renovate
  • fix(deps): update dependency @​graphql-yoga/plugin-graphql-sse to v3.7.0 (#​11488) by @​renovate
  • fix(deps): update dependency eslint-plugin-import to v2.30.0 (#​11490) by @​renovate
  • fix(deps): update graphql-tools monorepo (#​11498) by @​renovate
  • chore(deps): update dependency node to v20.17.0 (#​11508) by @​renovate
  • fix(deps): update dependency firebase-admin to v12.4.0 (#​11492) by @​renovate
  • fix(deps): update dependency eslint-plugin-jsx-a11y to v6.10.0 (#​11491) by @​renovate
  • fix(deps): update dependency react-hook-form to v7.53.0 (#​11495) by @​renovate
  • fix(deps): update dependency type-fest to v4.26.1 (#​11496) by @​renovate
  • chore(deps): update prisma monorepo to v5.19.1 (#​11486) by @​renovate
  • fix(deps): update dependency @​whatwg-node/server to v0.9.49 (#​11484) by @​renovate
  • fix(deps): update dependency pino to v9.4.0 (#​11494) by @​renovate
  • fix(deps): update dependency vite to v5.4.3 (#​11477) by @​renovate
  • fix(deps): update dependency @​envelop/on-resolve to v4.1.1 (#​11480) by @​renovate
  • fix(deps): update dependency @​types/aws-lambda to v8.10.145 (#​11482) by @​renovate
  • fix(deps): update dependency @​swc/core to v1.7.24 (#​11481) by @​renovate
  • fix(deps): update dependency @​whatwg-node/fetch to v0.9.21 (#​11483) by @​renovate
  • fix(deps): update dependency msw to v1.3.4 (#​11474) by @​renovate
  • fix(deps): update dependency vite-plugin-cjs-interop to v2.1.3 (#​11478) by @​renovate
  • fix(deps): update dependency systeminformation to v5.23.5 (#​11476) by @​renovate
  • fix(deps): update dependency isbot to v5.1.17 (#​11472) by @​renovate
  • fix(deps): update dependency nodemailer to v6.9.15 (#​11475) by @​renovate
  • fix(deps): update dependency lru-cache to v11.0.1 (#​11473) by @​renovate
  • fix(deps): update dependency eslint-plugin-react to v7.35.2 (#​11470) by @​renovate
  • fix(deps): update dependency http-proxy-middleware to v3.0.2 (#​11471) by @​renovate
  • chore(deps): update dependency firebase to v10.13.1 (#​11437) by @​renovate
  • chore(deps): update dependency @​supabase/supabase-js to v2.45.3 (#​11434) by @​renovate
  • chore(deps): update dependency @​envelop/core to v5.0.2 (#​11432) by @​renovate
  • chore(deps): update dependency esbuild to v0.23.1 (#​11436) by @​renovate
##### 🧹 Chore
Click to see all chore contributions
  • chore(ci): Temporarily disable 'check:package' step (#​11520) by @​Josh-Walker-GM
  • chore(deps): update dependency @​arethetypeswrong/cli to v0.16.2 (#​11502) by @​renovate
  • chore(deps): update dependency @​actions/glob to v0.5.0 (#​11501) by @​renovate
  • chore(deps): update dependency tsx to v4.19.0 (#​11511) by @​renovate
  • chore(deps): update dependency @​types/vscode to v1.93.0 (#​11505) by @​renovate
  • chore(deps): update chore (#​11500) by @​renovate
  • chore(deps): update dependency eslint-plugin-perfectionist to v3.5.0 (#​11506) by @​renovate
  • chore(deps): update dependency ora to v8.1.0 (#​11509) by @​renovate
  • chore(deps): update dependency tsx to v4.19.0 (#​11512) by @​renovate
  • chore(deps): update dependency knip to v5.30.1 (#​11507) by @​renovate
  • chore(deps): update dependency rollup to v4.21.2 (#​11510) by @​renovate
  • chore(deps): update dependency typescript to v5.6.2 (#​11514) by @​renovate
  • chore(deps): update eslint monorepo to v9.10.0 (#​11515) by @​renovate
  • fix(deps): update dependency prism-react-renderer to v2.4.0 (#​11516) by @​renovate
  • chore(deps): update ossf/scorecard-action action to v2.4.0 (#​11485) by @​renovate
  • chore(auth-providers): switch firebase web to esbuild (#​11467) by @​Josh-Walker-GM
  • chore(auth-providers): switch firebase-web to vitest (#​11466) by @​Josh-Walker-GM
  • chore(ci): Fix snapshots after CLI update (#​11462) by @​Josh-Walker-GM
  • chore(ci): fix type tests running in ci (#​11460) by @​Josh-Walker-GM
  • chore(ci): Revert scorecard related action bump (#​11456) by @​Josh-Walker-GM
  • chore: fix ending newline in package.json (#​11454) by @​Josh-Walker-GM
  • chore(rsc): Refactor: Split rscWorker into worker and renderer (#​11452) by @​Tobbe
  • chore(rsc): Random changes, mostly to comments etc, in prep for removing the worker (#​11451) by @​Tobbe
  • chore(storage): Add type tests & extra tests for savers and result extension (#​11416) by @​dac09
  • chore(deps): update dependency jsdom to v24.1.3 (#​11438) by @​renovate
  • chore(deps): update dependency @​playwright/test to v1.47.0 (#​11433) by @​renovate
  • chore(deps): update dependency @​types/eslint to v8.56.12 (#​11435) by @​renovate
  • chore(deps): update eslint monorepo to v9.9.1 (#​11441) by @​renovate
  • chore(deps): update actions/upload-artifact digest (#​11442) by @​renovate
  • chore(deps): update dependency prettier-plugin-packagejson to v2.5.2 (#​11440) by @​renovate
  • chore(deps): update mheap/github-action-required-labels digest to d25134c (#​11443) by @​renovate
  • chore(deps): update dependency prettier-plugin-packagejson to v2.5.2 (#​11439) by @​renovate
  • chore(deps): update actions/checkout action to v4.1.7 (#​11444) by @​renovate
  • chore(rsc): Remove unused methods in the worker (#​11431) by @​Tobbe
  • chore(publishing): Fix canary publishing for next branch (#​11429) by @​Josh-Walker-GM
  • chore(changesets): Delete old ones post v8 release (#​11428) by @​Josh-Walker-GM
  • chore(test-project): Update to postcss 8.4.45 (#​11424) by @​Tobbe
  • chore(docs): Compress v7 versions into v7.x (#​11422) by @​Josh-Walker-GM
##### 🚧 🧹 Experimental Chore
Click to see all chore contributions
  • chore(rsc): Remove Node RSC worker (#​11449) by @​Tobbe
  • chore(rsc): Fix executeRsa comments (#​11453) by @​Tobbe
  • chore(rsc): Switch to web streams instead of using node streams (#​11445) by @​Tobbe
  • chore(rsc): Simplify worker by not using vite config (#​11430) by @​Tobbe
### [`v8.0.0`](https://redirect.github.com/redwoodjs/redwood/releases/tag/v8.0.0) [Compare Source](https://redirect.github.com/redwoodjs/redwood/compare/v7.7.4...v8.0.0) ##### Upgrade Guide https://redwoodjs.com/upgrade/v8 ##### Changelog ##### 🚨 Breaking
deps(react): 18.3.1 (#​10885) by @​Tobbe Please see #​10885 for more details
fix(template): Set scripts/ module resolution to match api/ (#​11366) by @​Tobbe Make the module resolution for `scripts/` be more predictable/stable, and match that of `api/` See also [https://github.com/redwoodjs/redwood/pull/11170](https://redirect.github.com/redwoodjs/redwood/pull/11170)
fix(tsconfig): set "module" to "ESNext" for web/tsconfig.json (#​11368) by @​Tobbe Please see #​11368 for more details
refactor(forms): Build with esbuild and add conditional exports (#​11338) by @​Josh-Walker-GM This change introduces restrictions on what can be imported from the `@redwoodjs/forms` package. You can no longer import from `@redwoodjs/forms/dist/...`. All imports should be available simply from `@redwoodjs/forms`.
refactor(prerender): build with esbuild and introduce conditional exports (#​11337) by @​Josh-Walker-GM This change restricts the available imports from the `@redwoodjs/prerender` package. You will also have to use modern `moduleResolution` settings in your tsconfig to resolve the imports correctly within TS.
refactor(api): Add conditional exports to package.json (#​11307) by @​Josh-Walker-GM This change restricts the available imports from this package. You can no longer freely import from within the dist like `@redwoodjs/api/dist/...`. If you were doing so please consult the `@redwoodjs/api` `package.json` file to see what exports are now available.
fix(internal): Move away from babel for building package (#​11304) by @​Josh-Walker-GM Please see #​11304 for more details
fix: Update default tsconfig options (target, module and moduleResolution) (#​11170) by @​Josh-Walker-GM This changes the default values of: - target - module - moduleResolution in the tsconfig files for both the API and web side. The benefit of this change is increased correctness for build time checking of the imports from packages which specify `exports` in their `package.json` files. This change will have a limited effect while Redwood apps are still built to CJS rather than ESM. After that switch to ESM there would be more breaking changes but they are not applied here and are a future concern.
chore: brought in typescript-eslint@v8 with stylistic preset (#​10911) by @​JoshuaKGoldberg This change updates Redwood linting config and introduces some changes to the linting rules that are applied to your project. Specifically: 1. `jsx-a11y/no-noninteractive-element-to-interactive-role` has it's default config updated. 2. `@typescript-eslint/explicit-function-return-type` used to be turned off, now it's no longer applied. 3. `@typescript-eslint/no-empty-interface` - used to be turned off, now it's no longer applied. 4. `@typescript-eslint/explicit-module-boundary-types` - used be turned off, now it's no longer applied. 5. `@typescript-eslint/ban-types` - used to be 'warn', now it's no longer applied. This has been replaces with a set of smaller more specific rules. 6. `no-empty-function` - used be turned off, now it's no longer applied. The ts-eslint flavour is still there and turned off still. 7. `camelcase` - used to be turned off, now it's 'warn'. 8. `@typescript-eslint/camelcase` - used to be turned off, now it's no longer applied. 9. `no-use-before-define` - used to be turned off, now it's no longer applied. 10. `@typescript-eslint/no-use-before-define` - used to be turned off, now it's no longer applied. 11. `@typescript-eslint/prefer-namespace-keyword` - used to be turned off, now it's 'error' 12. `unicode-bom` - used to be turned off, now it's no longer applied. 13. `@typescript-eslint/adjacent-overload-signatures` - used to be 'error', now it's no longer applied. 14. `@typescript-eslint/no-explicit-any` - used be 'warn', now 'error' 15. `@typescript-eslint/no-inferrable-types` - used to be 'error', now it's no longer applied. 16. `no-loss-of-precision` - used be 'off', now 'error' 17. `@typescript-eslint/no-loss-of-precision` - used be 'error', now it's no longer applied. 18. `@typescript-eslint/no-non-null-assertion` - used be 'warn', now it's no longer applied. 19. `valid-typeof` - used be either 'error' or 'off', now always 'error' 20. `no-unused-expressions` - used be always 'error', now either 'error' or 'off' 21. `@typescript-eslint/prefer-function-type` - newly added as 'off' 22. `@typescript-eslint/no-require-imports` - newly added as 'off' 23. `@typescript-eslint/no-empty-object-type` - newly added as 'off' 24. `unicorn/template-indent` - newly added as 'off' 25. `@typescript-eslint/no-duplicate-enum-values` - newly added as 'error' 26. `@typescript-eslint/no-unsafe-declaration-merging` - newly added as 'error' 27. `@typescript-eslint/no-unsafe-function-type` - newly added as 'error' 28. `@typescript-eslint/no-unused-expressions` - newly added as 'error' 29. `@typescript-eslint/no-wrapper-object-types` - newly added as 'error' 30. `no-new-native-nonconstructor` - newly added as 'off'
fix(deps): update typescript-eslint monorepo to v8 (major) (#​11235) by @​Josh-Walker-GM Please see #​11235 for more details
fix(api-server): Use createServer in all cases, to make fastify config consistent (#​11176) by @​dac09 \[BREAKING] Removes serverConfig support, in favour of server file to configure your Fastify instance. You can still customise your server settings by running `yarn rw setup server-file` first. See docs for [Server File](https://docs.redwoodjs.com/docs/docker/#using-the-server-file) This PR removes all the cases where we use `createFastifyInstance` for the api server, and replaces it with `createServer`. This makes sure that the API server config is always consistent - whether you use a server file or not.
fix(deps): update dependency resend to v3 (#​11040) by @​Josh-Walker-GM Please see #​11040 for more details
breaking: remove webpack (#​10867) by @​Josh-Walker-GM This PR removes support for webpack. There are a number of breaking changes associated with removing a core component of previous versions. A list of such changes is: 1. `prebuildWebFile` is function no longer exported from `@redwoodjs/babel-config` package 2. `@redwoodjs/cli-storybook` has been removed 3. `yarn rw build` no longer accepts the `--stats` flag 4. `yarn rw dev` no longer accepts the `--watchNodeModules` flag 5. `yarn rw setup custom-web-index` command has been removed 6. `yarn rw setup webpack` has been removed 7. `@redwoodjs/core` no longer provides `@redwoodjs/core/config/*` files 8. The `web.bundler` TOML config option has been removed 9. `@redwoodjs/testing` no longer provides storybook config files 10. `@redwoodjs/testing` no longer provides a `StorybookProvider` 11. The `webpack` bin has been removed from `@redwoodjs/web` You can also find more information on the upgrade guide.
feat(colors): Add more chalk colors. And prepare for chalk upgrade (#​10939) by @​Tobbe Add more colors to `@redwoodjs/cli-helpers`. Breaking: No longer exporting `green` as a color. Use `tip` or `success` instead depending on what you want to convey.
remove(cli): Remove deprecated deploy providers (#​10859) by @​Josh-Walker-GM This change removes the deprecated deploy providers edgio and ~~serverless~~. Serverless has been restored and is available in v8.
chore(codemods): Remove pre v1 related content (#​10831) by @​Josh-Walker-GM Please see #​10831 for more details
fix(deps): update dependency firebase-admin to v12 (#​10833) by @​renovate This change updates our firebase auth provider to use the v12 major version of the `firebase-admin` package. This will require you to update your own version of `firebase-admin` that is listed in your api side package json file. We have noticed no breaking api changes in our limited testing. Please consult the `firebase-admin` upgrade guide if you experience problems after upgrading - especially if you have more extensive or complex use of the firebase suite of products.
fix(functions-test): Fix mockHttpEvent for null bodies (#​10570) by @​Tobbe With an empty/null payload (which it is by default) the body should be empty, not the string `'null'` This is a breaking change for anyone who was depending on the current "null" behavior in their api function tests. More specifically, if you're **NOT** passing `body` or `payload` to `mockHttpEvent({ ... })` or if you're trying to explicitly set `payload` to `null` you might have to update your tests.
feat: Remove `--performance` option from `yarn rw build` (#​10453) by @​Josh-Walker-GM This change removes the `--performance` flag from the `yarn rw build` command. It will no longer be available to use and the CLI will no longer accept this flag being passed in. Additionally, the associated webpack config (`@redwoodjs/core/config/webpack.perf.js`) has been removed so it can no longer be imported if you were doing so.
fix(router): Remove barrel exports from router.tsx (#​10464) by @​Tobbe We were using both `index.ts` and `router.tsx` as barrel export files. We should move away from barrel exports at some point, and we definitely don't need two files doing it in the same package. Everything that was exported from `router.tsx` is already exported by other files (except `Router` itself). So I updated the code to import from there directly instead. This is a breaking change for anyone who does `import ... from '@​redwoodjs/router/dist/router'` in their project. Which hopefully isn't very many. - The quick fix is to find the original export and pull from there instead - The real fix is to talk to us on the core team and see if we can provide an official way of solving it instead of relying on internal implementation details πŸ™‚
chore(linting): Update versions and avoid `{}` (#​10266) by @​Josh-Walker-GM This PR updates the versions of the `eslint` and the `@typescript-eslint` packages from v5 to v7. This is a major upgrade of the `@typescript-eslint` package and although we think it is unlikely to introduce a breaking change for you we would recommend that you read the associated documentation. The v6 upgrade can be found [here](https://typescript-eslint.io/blog/announcing-typescript-eslint-v6/) and the v7 one [here](https://typescript-eslint.io/blog/announcing-typescript-eslint-v7/).
fix(navlink): Replace (don't merge) className of active link (#​10342) by @​Tobbe We should be replacing className with `activeClassName` for the active link. Currently we try to merge them, but that makes it very difficult for end users to have full control over exactly what classes are applied to active links Fixes [https://github.com/redwoodjs/redwood/issues/10296](https://redirect.github.com/redwoodjs/redwood/issues/10296) ##### Before ```tsx Air ``` The `` above would get the following classes if it was the active link `inline-block rounded-t-lg border-b-2 border-transparent p-4 hover:border-gray-300 hover:text-gray-600 dark:hover:text-gray-300 active inline-block rounded-t-lg border-b-2 border-blue-600 p-4 text-blue-600 dark:border-blue-500 dark:text-blue-500` ##### After That same `` now only gets the `activeClassName` classes `active inline-block rounded-t-lg border-b-2 border-blue-600 p-4 text-blue-600 dark:border-blue-500 dark:text-blue-500` ##### Breaking If you were relying on the merging behavior you will now have to copy all classes from `className` and also include them in `activeClassName`. So if you had this: ```tsx Air ``` you will now have to change it to: ```tsx Air ```
feat(vite): upgrade to v5 (#​10197) by @​jtoar Please see #​10197 for more details
feat(prettier) upgrade to prettier v3 (#​10179) by @​jtoar This PR upgrades Redwood internally to Prettier v3. We believe this won't have any downstream effect for users. If you have Tailwind CSS configured, can upgrade `prettier-plugin-tailwindcss` to a version later than `0.4.1` if you make a few changes: - Change `prettier.config.js` to `prettier.config.mjs` (js -> mjs) - `export default` instead of `module.exports` - `await import('...')` any plugins instead of `require('...')` Here's an example of an updated `prettier.config.mjs` to work with `prettier-plugin-tailwindcss@^0.5.12`: ```js // prettier.config.mjs export default { trailingComma: "es5", bracketSpacing: true, tabWidth: 2, semi: false, singleQuote: true, arrowParens: "always", overrides: [ { files: "Routes.*", options: { printWidth: 999, }, }, ], tailwindConfig: "./web/config/tailwind.config.js", plugins: [await import("prettier-plugin-tailwindcss")], }; ```
RSC: createServerCell (#​9987) by @​Tobbe Please see #​9987 for more details
##### πŸš€ Features
feat(uploads): Increase default fastify body limit to 100MB (#​11412) by @​dac09 Increases the default limit for receiving requests to 100MB (instead of 15MB). This number is arbitrary really, but it is the TOTAL size of the request, not of each file being uploaded. The user can override this in their server file. ```jsx // api/server.js const server = await createServer({ logger, fastifyServerOptions: { bodyLimit: 1048576 * 2, // 2 MiB }, }); ```
feat(rsc): Initial support for RSA rerender (#​11406) by @​Tobbe This PR makes it so that the entire page is re-rendered when a React Server Action returns. Previously when calling an RSA you'd only get the result of the action back. Now, when calling an RSA you'll still get the result back, and in addition to that the page will update. What this means is that if you for example update a counter on the server that a server component is displaying that counter will now immediately update. Also, if some data has been updated by something external to the app the new data will be displayed (like if someone used an external CMS to update some .md file you're rendering)
feat(storage): Add support for createMany, updateMany and upsert (#​11390) by @​dac09 Extends the uploads Prisma client extension with the following: 1. `createMany`: support for bulk creation with automatic cleanup of uploaded files if the operation fails. 2. `updateMany`: bulk update functionality that manages file uploads across multiple records, including removal of old files after successful updates. 3. `upsert`: determining whether it's an insert or update and managing file uploads accordingly - delete files on creation fail, and replace files on update
feat(uploads): Create uploads package with prisma extension and upload processors (#​11263) by @​dac09 Please see #​11263 for more details
template(db): Update `api/src/lib/db` template (#​11379) by @​dac09 Updates the template in `api/src/lib/db.{js,ts}` to export `db` differently. In your existing projects, you can make the following changes: ```diff import { PrismaClient } from '@​prisma/client' import { emitLogLevels, handlePrismaLogging } from '@​redwoodjs/api/logger' import { logger } from './logger' import { prismaExtension } from './uploads' - export const db = new PrismaClient({ + const prismaClient = new PrismaClient({ log: emitLogLevels(['info', 'warn', 'error']), }) handlePrismaLogging({ - db + db: prismaClient, logger, logLevels: ['info', 'warn', 'error'], }) + export const db = prismaClient ```
feat(uploads): Add File scalar to rootSchema (#​11378) by @​dac09 Adds `File` scalar to rootSchema, to enable parsing fields set to File as a https://developer.mozilla.org/en-US/docs/Web/API/File The parsing and scalar is actually built in to GraphQL Yoga, this change just enables it by default instead of having to add `scalar File` to one or more of your SDLs.
RCS: Basic support for 'use server' inside components (#​11376) by @​Tobbe Please see #​11376 for more details
feat(jobs): Expose types (#​11369) by @​Tobbe Please see #​11369 for more details
Adds a "highlight" color option (#​11345) by @​cannikin Please see #​11345 for more details
Adds background job scheduling and execution (#​11238) by @​cannikin This new package provides scheduling and processing of background jobs. We want everything needed to run a modern web application to be included in Redwood itselfβ€”you shouldn't need any third party integrations if you don't want. Background jobs have been sorely missed, but the time has come! (If you do want to use a third party service we have had an [integration with Inngest](https://community.redwoodjs.com/t/ship-background-jobs-crons-webhooks-and-reliable-workflows-in-record-time-with-inngest-and-redwoodjs/4866) since May of 2023!) ##### Features - Named queues: you can schedule jobs in separate named queues and have a different number of workers monitoring each oneβ€”makes it much easier to scale your background processing - Priority: give your jobs a priority from 1 (highest) to 100 (lowest). Workers will sort available jobs by priority, working the most important ones first. - Configurable delay: run your job as soon as possible (default), wait a number of seconds before running, or run at a specific time in the future - Auto-retries with backoff: if your job fails it will back off at the rate of attempts \*\* 4 for a default of 24 tries, the time between the last two attempts is a little over three days. - Run inline: instead of scheduling to run in the background, run immediately - Integrates with Redwood's [logger](https://docs.redwoodjs.com/docs/logger): use your existing one in api/src/lib/logger or create a new one just for job logging

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 these updates again.



This PR was generated by Mend Renovate. View the repository job log.