Skip to content

Releases: redwoodjs/redwood

v8.5.0

02 Feb 17:31
Compare
Choose a tag to compare

Changelog

🚀 Features

  • feat(cli): Add support for RWJS_CWD and --cwd to TW setup (#11923) by @Tobbe
feat(cli): Support generating sdls for models with only an id and relation (#11931) by @Tobbe It's now possible to generate SDL files for models that look like this
// This would be seeded with available car brands
model CarBrand {
  brand String @id
  cars  Car[]
}
[Storybook] Improve typing, add doc links & remove redundant JSDoc in preview.tsx (#11745) by @Philzen Better types for storybook preview config Better IntelliSense hints for storybook
  • [TS + Docs] Include potential gql input variables in ListCell's Loading and Success component typing & improve TS docs (#11773) by @Philzen
feat(router): Add option to not reset scroll to the top on navigate/link (#11380) by @guitheengineer You can now do navigate(`?id=${id}`, { scroll: false }) and <Link to={`?id=${id}`} options={{ scroll: false }} /> to not reset the scroll to the top when navigating.
feat(dbAuth): Lax SameSite cookie policy (#11889) by @Tobbe Setting the SameSite cookie policy to Lax allows users to be immediately authenticated when arriving from external domains.

🛠️ Fixes

  • fix(router): Skip search params with undefined and null values passed to named routes (#11635) by @antonmoiseev
fix(cli): Pin TailwindCSS to v3 (#11920) by @Tobbe Pinning TW to v3 for our `yarn rw setup ui tailwind` command until we've added support for TW v4

📚 Docs

  • fix(docs): make bold the whole word, not just the first char (#11710) by @fromaline

📦 Dependencies

Click to see all dependency updates
  • chore(deps): update dependency prettier-plugin-curly to v0.3.1 (#11855) by @renovate
  • chore(deps): react-hook-form@7.54.2 (#11895) by @Tobbe
  • chore(deps) re-upgrade to yarn 4.6.0 (#11911) by @Tobbe
  • fix(deps): update dependency isbot to v5.1.21 (#11912) by @renovate
  • fix(deps): update dependency vite to v5.4.12 [security] (#11916) by @renovate
  • fix(deps): update dependency @fastify/multipart to v8.3.1 [security] (#11922) by @renovate
  • chore(deps): bump store2 from 2.14.2 to 2.14.4 (#11927) by @dependabot

v8.4.5

02 Feb 14:43
Compare
Choose a tag to compare

Changelog

Trying to fix our release process and broken releases

🛠️ Fixes

🧹 Chore

Click to see all chore contributions

v8.4.4

02 Feb 14:32
Compare
Choose a tag to compare

Changelog

This release manually fixes the versioning issue with previous release.

📦 Dependencies

Click to see all dependency updates

v8.4.3

02 Feb 14:19
Compare
Choose a tag to compare

⚠️
⚠️ This release is broken. Because of a bug in one of our dependencies the
⚠️ versioning of our packages did not work properly
⚠️ Please use a newer version
⚠️

Changelog

🛠️ Fixes

  • [Router] Fix TS error when passing WrapperProps to <PrivateSet>s (#11739) by @Philzen
  • fix(cli): Update cell test template to include id (#11749) by @Tobbe
  • fix(cli): Fix Cell test generation for list cells (#11779) by @Tobbe
  • fix(cli): Fix TS warnings in custom function template (#11770) by @Tobbe
  • Fix useEffect is not defined in i18n template (#11788) by @Philzen
  • fix(babel-config): Specify 'target' for the react compiler plugin (#11822) by @Tobbe
  • Export EmptyAsValue and RedwoodRegisterOptions from packages/forms (#11783) by @c-ciobanu
  • [setup i18n storybook] Use function with capitalized name to comply with eslint-rule (#11827) by @Philzen
  • fix(crwrsca): add @types/node to fix peer deps (#11842) by @Tobbe
  • fix(deploy): Restore Render deploy setup script (#11857) by @Tobbe
  • fix(cookie): Fix regression after v1 upgrade (#11866) by @Tobbe
  • fix(dev): Remove redundant whitespace in cli output (#11880) by @Tobbe
  • [fix] Make --load-env-files work with yarn rw test (#11887) by @Philzen
  • fix(templates+docs) Make Storybook links link to correct versions (#11892) by @Philzen
Fix AuthProviderProps export missing from @redwood/auth (#11766) by @Philzen `AuthProviderProps` is now exported from `@redwood/auth`
Fix absolute & component folder imports in Storybook config folder (#11746) by @Philzen Include the storybook config folder in the includes in `{ts,js}config.json`
[TS] Include query parameters in typed Cell component props (#11737) by @Philzen If you have a Cell that for example takes an `id` prop, to be used as a query parameter, it'd also be passed to the individual cell components. This is now properly reflected in the types.
fix(ogimage): Corrected package.json exports (#11724) by @Tobbe Fix publish warnings in our ogImage package. Making TS types available for anyone using this package
Remove header example with broken link (#11776) by @Philzen We used to have an `x-auth-comment` header with a link describing how to set up auth for the graphql playground. The link was broken, and no extra setup is needed anymore. So the comment header is now removed.
Fix Storybook preview config being set up in old config directory (#11869) by @Philzen Store Storybook config in `web/.storybook/`
fix(forms): Re-export InputFieldProps (#11879) by @Tobbe Makes it possible to import the `InputFieldProps` type from `@redwoodjs/forms`

📚 Docs

  • chore(docs): Fix links in Storybook docs; add link to dbAuth OAuth plugin (#11581) by @arimendelow

📦 Dependencies

Click to see all dependency updates
  • chore(deps): update dependency typescript-eslint to v8 (#11234) by @renovate
  • chore(deps): bump cross-spawn from 7.0.3 to 7.0.6 (#11725) by @dependabot
  • chore(deps): bump nanoid from 3.3.7 to 3.3.8 (#11778) by @dependabot
  • chore(deps): Bump systeminformation from 5.23.5 to 5.23.8 (#11793) by @Tobbe
  • fix(deps): update dependency @whatwg-node/server to v0.9.65 (#11819) by @renovate
  • fix(deps): update dependency dotenv to v16.4.7 (#11820) by @renovate
  • fix(deps): update dependency @vitejs/plugin-react to v4.3.4 (#11818) by @renovate
  • fix(deps): update dependency isbot to v5.1.19 (#11821) by @renovate
  • chore(deps): update dependency @clerk/types to v3.65.4 (#11829) by @renovate
  • chore(deps): update dependency @clerk/clerk-react to v4.32.4 (#11828) by @renovate
  • chore(deps): update dependency @types/nodemailer to v6.4.17 (#11833) by @renovate
  • chore(deps): update dependency eslint-plugin-n to v17.15.1 (#11840) by @renovate
  • chore(deps): update dependency firebase to v10.14.1 (#11834) by @renovate
  • chore(deps): update dependency @types/nodemailer to v6.4.17 (#11845) by @renovate
  • chore(deps): update dependency ioredis to v5.4.2 (#11846) by @renovate
  • chore(deps): update dependency eslint-plugin-jsonc to v2.18.2 (#11839) by @renovate
  • fix(deps): update dependency esbuild to v0.24.2 (#11847) by @renovate
  • fix(deps): update dependency eslint-plugin-jsx-a11y to v6.10.2 (#11848) by @renovate
  • chore(deps): update dependency eslint-plugin-package-json to ^0.18.0 (#11849) by @renovate
  • chore(deps): update dependency eslint-plugin-perfectionist to v3.9.1 (#11850) by @renovate
  • chore(deps): update dependency eslint-plugin-yml to v1.16.0 (#11853) by @renovate
  • chore(deps): update dependency prettier to v3.4.2 (#11854) by @renovate
  • fix(deps): update dependency nodemailer to v6.9.16 (#11858) by @renovate
  • chore(deps): update dependency knip to v5.41.1 (#11861) by @renovate
  • [chore] Use framer-motion @^11 instead of @^9 for Chakra UI setup (#11870) by @Philzen
  • Update to @typescript-eslint version that supports TypeScript 5.6.2 (#11878) by @Philzen

🧹 Chore

Click to see all chore contributions
  • [TS/chore] Migrate deprecated apollo `QueryReference` type in cellTypes.ts (#11780) by @Philzen
  • chore(formatting): Fix formatting in auth/src/index.ts (#11792) by @Tobbe
  • Remove extraneous `i18n` dependency from i18n setup (#11789) by @Philzen
  • [Chore] Update yarn to v4.6.0 (#11874) by @Philzen
  • [chore] Re-use loadEnvFiles from cli-helpers lib, elimininating code duplicatation (#11885) by @Philzen

v8.4.2

25 Dec 21:06
Compare
Choose a tag to compare

Changelog

🛠️ Fixes

fix: 🐛 add custom headers to subscription in apollo client (#11744) by @dennemark Allow passing custom headers to `sseLink`, which is used by the Apollo client for subscriptions.

Include .storybook folder in Linting (#11748) by @Philzen

fix(api-server): prevent race condition in server restart process (#11731) by @o0charlie0o

📚 Docs

📦 Dependencies

Click to see all dependency updates
  • chore(deps): bump @eslint/plugin-kit from 0.2.0 to 0.2.3 in /packages/create-redwood-rsc-app (#11720) by @dependabot
  • chore(deps): bump cross-spawn from 7.0.3 to 7.0.5 in /packages/create-redwood-rsc-app (#11723) by @dependabot
  • fix(deps): update dependency smol-toml to v1.3.1 [security] (#11733) by @renovate

🧹 Chore

Click to see all chore contributions
  • chore(test-project): Update TailwindCSS to 3.4.15 and PostCSS to 8.4.49 (#11721) by @Tobbe
  • chore(dbAuth): Early return to make code easier to read (#11722) by @Tobbe

v8.4.1

14 Nov 23:13
85511da
Compare
Choose a tag to compare

Changelog

🛠️ Fixes

fix(dbAuth): Don't use Multi Value Headers on Vercel (#11718) by @Tobbe

Fixes a regression regarding dbAuth on Vercel introduced in RW 8

Properly kill dev api-server (#11691) by @callingmedic911

Sometime the api-server doesn't get killed in time before the new instance is started. This change makes sure that we wait for the process. If it's not killed within 2 seconds with SIGTERM, we send a SIGKILL to it.

Fix build with TS alias without basePath (#11693) by @callingmedic911

It fixes the build process for a project with TypeScript path alias. It uses root directory as the fallback if there's no baseUrl in tsconfig.json.

v8.4.0

09 Oct 13:08
c608868
Compare
Choose a tag to compare

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

🚧 🧹 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

25 Sep 01:23
b6e6805
Compare
Choose a tag to compare

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

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

Click to see all chore contributions

🚧 🧹 Experimental Chore

Click to see all chore contributions
  • chore(rsc): Simplify RscRoutes by removing external promise (#11574) by @Tobbe

v8.2.0

16 Sep 23:36
3187ee8
Compare
Choose a tag to compare

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

🧹 Chore

Click to see all chore contributions

🚧 🧹 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

12 Sep 02:19
e0a1e7d
Compare
Choose a tag to compare

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