-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update redwood monorepo to v8 (major) #20
Open
renovate
wants to merge
1
commit into
main
Choose a base branch
from
renovate/major-redwood-monorepo
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains 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
❌ Deploy Preview for redwood-planetscale-example failed. Why did it fail? →
|
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
September 25, 2022 16:21
2d8bc0a
to
19f8084
Compare
renovate
bot
changed the title
Update redwood monorepo to v2 (major)
Update redwood monorepo to v3 (major)
Sep 25, 2022
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
November 20, 2022 10:10
19f8084
to
d3d731e
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
March 16, 2023 19:50
d3d731e
to
7473f53
Compare
renovate
bot
changed the title
Update redwood monorepo to v3 (major)
Update redwood monorepo to v4 (major)
Mar 16, 2023
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
3 times, most recently
from
March 25, 2023 02:15
ba0b060
to
f058938
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
April 3, 2023 08:48
f058938
to
de09557
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
April 17, 2023 12:28
de09557
to
4787667
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
May 28, 2023 10:22
4787667
to
5527387
Compare
renovate
bot
changed the title
Update redwood monorepo to v4 (major)
Update redwood monorepo to v5 (major)
May 28, 2023
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
2 times, most recently
from
June 6, 2023 22:12
e952fdf
to
633fa76
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
June 16, 2023 01:23
633fa76
to
9811e59
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
June 23, 2023 03:35
9811e59
to
286a9f3
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
3 times, most recently
from
July 1, 2023 05:42
a8bbb58
to
df7869f
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
July 9, 2023 09:56
df7869f
to
f7b9c55
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
July 28, 2023 03:13
f7b9c55
to
9fda75d
Compare
renovate
bot
changed the title
Update redwood monorepo to v5 (major)
Update redwood monorepo to v6 (major)
Jul 28, 2023
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
2 times, most recently
from
July 31, 2023 23:02
912760d
to
1a31b85
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
4 times, most recently
from
August 11, 2023 22:26
397923c
to
022f91d
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
August 15, 2023 09:12
022f91d
to
5503913
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
4 times, most recently
from
March 12, 2024 20:06
53e9d7a
to
8670e20
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
3 times, most recently
from
March 29, 2024 09:50
3381823
to
0793d96
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
4 times, most recently
from
April 13, 2024 18:35
cfe2e51
to
16be9e4
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
2 times, most recently
from
April 23, 2024 13:45
153d45c
to
a1d85a7
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
May 8, 2024 17:15
a1d85a7
to
721242b
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
May 15, 2024 20:39
721242b
to
cd3264a
Compare
|
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
3 times, most recently
from
May 22, 2024 21:18
9265f0e
to
125a45c
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
June 3, 2024 23:02
125a45c
to
5d09dc3
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
June 17, 2024 15:24
5d09dc3
to
f819b1f
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
June 28, 2024 14:29
f819b1f
to
b576179
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
July 11, 2024 00:28
b576179
to
f6b4598
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
August 9, 2024 22:59
f6b4598
to
b12fdab
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
September 4, 2024 03:33
b12fdab
to
592347d
Compare
renovate
bot
changed the title
Update redwood monorepo to v7 (major)
Update redwood monorepo to v8 (major)
Sep 4, 2024
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
2 times, most recently
from
September 12, 2024 03:46
ea2aede
to
79a12b1
Compare
renovate
bot
force-pushed
the
renovate/major-redwood-monorepo
branch
from
September 17, 2024 02:06
79a12b1
to
d4dabf0
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
None yet
0 participants
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.
This PR contains the following updates:
1.2.0
->8.2.0
1.2.0
->8.2.0
1.2.0
->8.2.0
1.2.0
->8.2.0
1.2.0
->8.2.0
1.2.0
->8.2.0
1.2.0
->8.2.0
Release Notes
redwoodjs/redwood (@redwoodjs/api)
v8.2.0
Compare Source
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
andbuttonTo
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 detailsfix(crwrsca): Spawn in shell on Windows (#11565) by @Tobbe
Please see #11565 for more detailsfix(crwa): silence telemetry errors (#11557) by @Josh-Walker-GM
Please see #11557 for more detailsfix(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 detailsdocs(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 detailsdocs(how-to): Fix example in dbauth-passworless docs (#11567) by @Tobbe
Please see #11567 for more detailsDocs: Use Redwood's hashPassword() for loginToken hashing in the password-less dbAuth flow (#11566) by @antonmoiseev
Please see #11566 for more detailsReplace MetaTags with Metadata component (#11564) by @antonmoiseev
Please see #11564 for more detailsdocs(chore): Fix formatting (#11524) by @Tobbe
Please see #11524 for more details📦 Dependencies
Click to see all dependency updates
🧹 Chore
Click to see all chore contributions
🚧 🧹 Experimental Chore
Click to see all chore contributions
v8.1.1
Compare Source
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
v8.1.0
Compare Source
Changelog
🚀 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 detailsfix(cli): explicitly set the version so `--version` works (#11461) by @Josh-Walker-GM
Please see #11461 for more detailsfix(jobs): Make deleteSuccessfulJobs configurable (#11459) by @Tobbe
Make the jobs Executor respect the
deleteSuccessfulJobs
config optionfix(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 detailsfix(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 detailsdocs(uploads): Add upload docs (#11398) by @dac09
Please see #11398 for more details📦 Dependencies
Click to see all dependency updates
🧹 Chore
Click to see all chore contributions
🚧 🧹 Experimental Chore
Click to see all chore contributions
v8.0.0
Compare Source
Upgrade Guide
https://redwoodjs.com/upgrade/v8
Changelog
🚨 Breaking
deps(react): 18.3.1 (#10885) by @Tobbe
Please see #10885 for more detailsfix(template): Set scripts/ module resolution to match api/ (#11366) by @Tobbe
Make the module resolution for
scripts/
be more predictable/stable, and match that ofapi/
See also https://github.com/redwoodjs/redwood/pull/11170
fix(tsconfig): set "module" to "ESNext" for web/tsconfig.json (#11368) by @Tobbe
Please see #11368 for more detailsrefactor(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 modernmoduleResolution
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 detailsfix: Update default tsconfig options (target, module and moduleResolution) (#11170) by @Josh-Walker-GM
This changes the default values of:
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 theirpackage.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:
jsx-a11y/no-noninteractive-element-to-interactive-role
has it's default config updated.@typescript-eslint/explicit-function-return-type
used to be turned off, now it's no longer applied.@typescript-eslint/no-empty-interface
- used to be turned off, now it's no longer applied.@typescript-eslint/explicit-module-boundary-types
- used be turned off, now it's no longer applied.@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.no-empty-function
- used be turned off, now it's no longer applied. The ts-eslint flavour is still there and turned off still.camelcase
- used to be turned off, now it's 'warn'.@typescript-eslint/camelcase
- used to be turned off, now it's no longer applied.no-use-before-define
- used to be turned off, now it's no longer applied.@typescript-eslint/no-use-before-define
- used to be turned off, now it's no longer applied.@typescript-eslint/prefer-namespace-keyword
- used to be turned off, now it's 'error'unicode-bom
- used to be turned off, now it's no longer applied.@typescript-eslint/adjacent-overload-signatures
- used to be 'error', now it's no longer applied.@typescript-eslint/no-explicit-any
- used be 'warn', now 'error'@typescript-eslint/no-inferrable-types
- used to be 'error', now it's no longer applied.no-loss-of-precision
- used be 'off', now 'error'@typescript-eslint/no-loss-of-precision
- used be 'error', now it's no longer applied.@typescript-eslint/no-non-null-assertion
- used be 'warn', now it's no longer applied.valid-typeof
- used be either 'error' or 'off', now always 'error'no-unused-expressions
- used be always 'error', now either 'error' or 'off'@typescript-eslint/prefer-function-type
- newly added as 'off'@typescript-eslint/no-require-imports
- newly added as 'off'@typescript-eslint/no-empty-object-type
- newly added as 'off'unicorn/template-indent
- newly added as 'off'@typescript-eslint/no-duplicate-enum-values
- newly added as 'error'@typescript-eslint/no-unsafe-declaration-merging
- newly added as 'error'@typescript-eslint/no-unsafe-function-type
- newly added as 'error'@typescript-eslint/no-unused-expressions
- newly added as 'error'@typescript-eslint/no-wrapper-object-types
- newly added as 'error'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 detailsfix(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 FileThis PR removes all the cases where we use
createFastifyInstance
for the api server, and replaces it withcreateServer
. 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 detailsbreaking: 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:
prebuildWebFile
is function no longer exported from@redwoodjs/babel-config
package@redwoodjs/cli-storybook
has been removedyarn rw build
no longer accepts the--stats
flagyarn rw dev
no longer accepts the--watchNodeModules
flagyarn rw setup custom-web-index
command has been removedyarn rw setup webpack
has been removed@redwoodjs/core
no longer provides@redwoodjs/core/config/*
filesweb.bundler
TOML config option has been removed@redwoodjs/testing
no longer provides storybook config files@redwoodjs/testing
no longer provides aStorybookProvider
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. Usetip
orsuccess
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 detailsfix(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 offirebase-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
orpayload
tomockHttpEvent({ ... })
or if you're trying to explicitly setpayload
tonull
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 theyarn 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
androuter.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 fromrouter.tsx
is already exported by other files (exceptRouter
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.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 and the v7 one here.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 linksFixes https://github.com/redwoodjs/redwood/issues/10296
Before
The
<NavLink>
above would get the following classes if it was the active linkinline-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
<NavLink>
now only gets theactiveClassName
classesactive 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 inactiveClassName
.So if you had this:
you will now have to change it to:
feat(vite): upgrade to v5 (#10197) by @jtoar
Please see #10197 for more detailsfeat(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 than0.4.1
if you make a few changes:prettier.config.js
toprettier.config.mjs
(js -> mjs)export default
instead ofmodule.exports
await import('...')
any plugins instead ofrequire('...')
Here's an example of an updated
prettier.config.mjs
to work withprettier-plugin-tailwindcss@^0.5.12
: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.
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:
createMany
: support for bulk creation with automatic cleanup of uploaded files if the operation fails.updateMany
: bulk update functionality that manages file uploads across multiple records, including removal of old files after successful updates.upsert
: determining whether it's an insert or update and managing file uploads accordingly - delete files on creation fail, and replace files on updatefeat(uploads): Create uploads package with prisma extension and upload processors (#11263) by @dac09
Please see #11263 for more detailstemplate(db): Update `api/src/lib/db` template (#11379) by @dac09
Updates the template in
api/src/lib/db.{js,ts}
to exportdb
differently.In your existing projects, you can make the following changes:
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/FileThe 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 detailsfeat(jobs): Expose types (#11369) by @Tobbe
Please see #11369 for more detailsAdds a "highlight" color option (#11345) by @cannikin
Please see #11345 for more detailsAdds 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 since May of 2023!)
Features
feat(uploads): Configure apollo client to do multi-part form uploads (#11175) by @dac09
a) Configures the Apollo client we export to use upload link - https://github.com/jaydenseric/apollo-upload-client
b) Configures our API side fastify server to accept multipart form data
Notes:
Without this change you get errors during prerender like this:
Currently the multi-part config only applies when you have a server file (see separate PR with fix: https://github.com/redwoodjs/redwood/pull/11176)
The upload link internally will handle whether to do a regular POST or multipart POST. In order to make use of this on the backend you need to set your graphql schema field to a scalar of
File
feat(context): Build and publish package as dual esm/cjs (#11294) by @Josh-Walker-GM
Please see #11294 for more detailsfeat(exec): Add --silent to silence all RW output (#11278) by @Tobbe
Run with
--silent
(or-s
) to not have the framework itself print anything toyour console. Only console logs you have yourself in the script, or any files
the script includes, will come through.
If you're using Prisma you might want to tweak Prisma's logging (in
api/lib/db.ts
) and turn off "info" logging, depending on your goals.feat(rsc): Register top-level function-scoped RSAs (#11255) by @Tobbe
Please see #11255 for more detailsfeat(rsc): Detect single RSA functions (not just entire files) (#11168) by @Tobbe
Please see #11168 for more detailsfeature(studio): Make studioHandler install Studio v12 (#11131) by @Tobbe
Makes sure you get the latest version of Redwood Studio the first time you run
yarn rw studio
feat(rsc): rsc-cache-read (#11127) by @Tobbe
Please see #11127 for more detailsRSC cache control (#11126) by @Tobbe
Please see #11126 for more detailsfeat(crwrsca): Add support for --template (#11123) by @Tobbe
Please see #11123 for more detailsfeat(storybook): switch command for storybook vite (#11069) by @Josh-Walker-GM
This change moves the vite based storybook to the standard storybook command. Essentially making it the default storybook command.
Introduce RSC "live reload." (#10932) by @peterp
Please see #10932 for more detailsfeat(cli): Move docker setup out of experimental (#11072) by @Josh-Walker-GM
This change introduces
yarn rw setup docker
. This is a result of moving our docker setup command out of it's experimental phase.feat(link): Pass options to navigate() (#11058) by @Tobbe
Allow passing
NavigateOptions
(which for now is justreplace
) from a<Link>
and<NavLink>
tonavigate()
by setting anoptions
prop on the link component.feat(router): add router useBlocker hook (#10873) by @xmaxcooking
Add
useBlocker()
hook to router to allow blocking navigation. Most commonly used to prevent users from accidentally leaving a page with unsaved changes.feat(trusted-docs): Allows useRedwoodTrustedDocuments to set more custom UsePersistedOperationsOptions (#10894) by @dthyresson
Allows useRedwoodTrustedDocuments to set more custom UsePersistedOperationsOptions
Allows the useRedwoodTrustedDocuments plugin to define:
This can let you override to allow certain ops or skip validation etc:
The allow authenticated request is still considered, but
allowArbitraryOperations
can override.Omitted
getPersistedOperation
as this extracts hash from store.feat(prisma): Support multi file Prisma schemas (#10869) by @dthyresson
Prisma's
prismaSchemaFolder
feature allows you to define multiple files in a schema subdirectory of your prisma directory.This PR updates:
to support single and multi file Prisma schemas.
If you have enabled Prisma multi file schemas, you configure your project toml api
schemaPath
setting the directory where your schema.prisma can be found, for example: './api/db/schema'When organizing your Prisma Schema into multiple files, you will need enable that feature in Prisma, move your
schema.prisma
file into a new directory such as./api/db/schema
and then setschemaPath
in the api toml config.:::
For example:
feat(Storybook Vite): Add JS project support (#10900) by @arimendelow
This adds support to the SBV CLI for JS projects.
RSC: Add auth support to ServerRouter (#10925) by @Tobbe
Please see #10925 for more detailsfeat(eslint-plugin): support flat config (#10910) by @JoshuaKGoldberg
Makes it possible to use the eslint-plugin package in the "flat config" eslint configuration format.
feat(baremetal): Check for setup before running deploy (#10922) by @Tobbe
Print a helpful error message if baremetal has not been setup before running
yarn rw deploy baremetal
.RSC: Add auth support to ClientRouter (#10908) by @Tobbe
Please see #10908 for more detailsRSC: Make `rw g page` work for RSC projects (#10903) by @Tobbe
Please see #10903 for more detailsfeat(dbAuth): Hint about migration after setup (#10875) by @Tobbe
Please see #10875 for more detailsfeat(router): Navigate to splash page using routes.home() (#10874) by @Tobbe
This PR makes it so that
routes.home()
works even when there's no actual/
route in theRoutes.tsx
file if navigating to/
would show the splash page.feat(dbAuth): Automatically create User model in fresh projects (#10871) by @Tobbe
Automatically create a
User
model in the project'sschema.prisma
when setting up dbAuth in a new project.feat(dbAuth): Prompt to generate dbAuth pages (#10865) by @Tobbe
When setting up dbAuth we'll now prompt if the user also wants to generate pages for login, signup, password reset etc. We only prompt if no existing pages exist.
feat(g dbAuth): Detect WebAuthn support (#10864) by @Tobbe
Automatically add WebAuthn support to generated pages when WebAuthn is enabled for dbAuth
feat(dbAuth): Prompt for creating User table (#10849) by @Tobbe
To skip the prompt you can pass
--createUserModel
(or just-u
) toyarn rw setup auth dbAuth
.RSC: Add 'use client' to auth templates (#10766) by @Tobbe
Please see #10766 for more detailsRSC: getLocation in ServerRouter (#10759) by @Tobbe
Please see #10759 for more detailsRSC: Externalize more modules during build (#10753) by @Tobbe
Please see #10753 for more detailsRSC: Include `` in SSR (#10688) by @Tobbe
Please see #10688 for more detailsfeat(rsc-auth): Implement getRoles function in auth mw & update default ServerAuthState (#10656) by @dac09
clear()
function to remove auth state - just syntax sugarExample usage
feat(serverStore): Add location to serverStore for RSCs to access location (#10697) by @dac09
a)
getFullUrl
- to construct the absolute url from an express requestb)
getFullUrlFromFlightRequest
- this is used when we get a request to render RSCs in the rscRequestHandler. This one is different because the location we want is for the actual page, not of the request (which goes to to the RSC endpoint).getLocation
function to retrieve the Location (URL object) from server storeShort video demonstrating location coming through in two cases:
a) Soft renders (makes a request to the RSC endpoint)
b) Hard render
https://s.tape.sh/4g7LFsYP
Usage example:
Longer term, we may want to change how the endpoint for flight requests so that the location doesn't have to be constructed specially.
RSC: Cache client side navigation (#10686) by @Tobbe
Please see #10686 for more detailsIn useOgImage() hook adds searchParams option for setting arbitrary query string vars to generated URL (#10677) by @cannikin
This can be used like so:
RSC Client Router (#10557) by @Tobbe
Please see #10557 for more detailsfeat: Reworks RSC server entries and route manifest building to derive from routes and include if route info related to authentication (#10572) by @dthyresson
This PR is in furtherance of authentication support in RSC.
It refactors:
How server entries are built -- not from "processing the pages dir" (which is a deprecated function) but rather the routes ... and the page info for that route. Note here that a page can be used in multiple routes, so the auth info cannot really be determined here.
The route manifest building to include per route:
Now if some page, route request is being handled by RSC we might be able to check if it "isPrivate" and enforce auth with the roles and even where tp redirect to if not authenticated.
feat(auth-middleware): Return a Tuple with Route pattern configuration when creating dbAuth middleware (#10642) by @dac09
[dbAuthMw, '*']
from the init function to make it harder to accidentally misconfigure the auth middlewarefeat(middleware): Add .shortCircuit to MiddlewareResponse (#10586) by @dac09
Adds a helper to generate a intercept/short-circuit response, that will interrupt execution of all middleware and react rendering, and immediately return the response.
There's a few different ways you can use this, see examples below:
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.