Skip to content

Releases: redwoodjs/redwood

v7.0.6

01 Mar 19:32
Compare
Choose a tag to compare

Patch Release

  • fix(esm): fix initial ESM blockers for Redwood apps (#10083) by @jtoar and @Josh-Walker-GM

    This PR makes some initial fixes that were required for making a Redwood app ESM. Redwood apps aren't ready to transition to ESM yet, but we're working towards it and these changes were backwards-compatible. If you're interested in trying out ESM, there will be an experimental setup command in the future. For now you'd have to make manual changes to your project:

    • dist imports, like import ... from '@redwoodjs/api/logger' need to be changed to import ... from '@redwoodjs/api/logger/index.js'
    • The Redwood Vite plugin in web/vite.config.ts needs to be changed to redwood.default before being invoked

    There are probably many others still depending on your project. Again, we don't recommend actually doing this yet, but are enumerating things just to be transparent about the changes in this release.

v7.1.0-rc.29

29 Feb 17:47
2e0fe5e
Compare
Choose a tag to compare
v7.1.0-rc.29 Pre-release
Pre-release

Changelog

  • fix(deps): update prisma monorepo to v5.10.2 (#10088)

    This release updates Prisma to v5.10.2. Here are quick links to all the release notes since the last version (v5.9.1):

  • Add support for loading more env var files (#9961, #10093, #10094, and #10123) by @orta

    Fixes #9877. This PR adds CLI functionality to load more .env files via NODE_ENV and an --load-env-files flag.
    Env vars loaded via either of these methods override the values in .env:

    # Loads '.env.production', which overrides values in '.env'
    NODE_ENV=production yarn rw exec myScript
    
    # Load '.env.stripe' and '.env.nakama', which overrides values
    yarn rw exec myScript --load-env-files stripe nakama
    # Or you can specify them individually:
    yarn rw exec myScript --load-env-files stripe --load-env-files nakama
    

    Note that this feature is mainly for local scripting. Most deploy providers don't let you upload .env files (unless you're using baremetal) and usually have their own way of determining environments.

  • fix(api-server): Preserve original host header for proxied API requests (#10082) by @magJ

    Some apps rely on reading the host header (e.g. multi-tenant apps served over multiple subdomains). This change forwards on the original host header on proxied Fastify requests, and the experimental SSR/RSC server.

  • fix(deps): update opentelemetry-js monorepo (#10065) by @Tobbe

    Updates our opentelemetry packages. This is a breaking change for users of our experimental opentelemetry support. This is what their changelog says is breaking:

    • fix(exporter-metrics-otlp-grpc): programmatic headers take precedence over
      environment variables #2370 @Vunovati
    • fix(exporter-metrics-otlp-http): programmatic headers take precedence over
      environment variables #2370 @Vunovati
    • fix(exporter-metrics-otlp-proto): programmatic headers take precedence over
      environment variables #2370 @Vunovati
    • fix(otlp-exporter-base)!: decrease default concurrency limit to 30 #4211
      @pichlermarc
      • fixes a memory leak on prolonged collector unavailability
      • this change is marked as breaking as it changes defaults
    • fix(instrumentation)!: pin import-in-the-middle@1.7.1 #4441
      • Fixes a bug where, in some circumstances, ESM instrumentation packages
        would try to instrument CJS exports on ESM, causing the end-user
        application to crash.
      • This breaking change only affects users that are using the experimental
        @opentelemetry/instrumentation/hook.mjs loader hook AND Node.js 18.19 or
        later:
        • This reverts back to an older version of import-in-the-middle due to
          DataDog/import-in-the-middle#57
        • This version does not support Node.js 18.19 or later

Dependencies

Click to see all upgraded dependencies
  • fix(deps): update opentelemetry-js monorepo #10065
  • fix(deps): update prisma monorepo to v5.10.2 #10088
  • Update dependency @apollo/client to v3.9.5 #10087
  • Update storybook monorepo to v7.6.17 #10089
  • Update babel monorepo to v7.24.0 #10090
  • fix(deps): update dependency fastify to v4.26.2 #10092
  • fix(deps): update dependency @fastify/http-proxy to v9.4.0 #10091

v7.0.5

29 Feb 09:57
d436479
Compare
Choose a tag to compare

Patch Release

  • fix(deploy): handle server file (#10061) by @jtoar

    This fixes the CLI commands for Coherence and Flightcontrol. For Coherence, it fixes a bug introduced in the last patch where the logic for detecting the server file in the setup command (yarn rw setup deploy coherence) was flipped. For Flightcontrol, it updates the setup command (yarn rw setup deploy flightcontrol) so that it handles Corepack and updates the corresponding deploy command (yarn rw deploy flightcontrol) so that it detects the server file similar to the Coherence fix.

v7.0.4

28 Feb 22:47
89017bc
Compare
Choose a tag to compare

Patch Release

  • fix(coherence): update setup command to detect server file (#10060) by @jtoar

    The yarn rw setup deploy coherence command now detects if your project has the server file and configures the api prod command accordingly:

    # coherence.yml
    
    api:
      # ...
      prod:
        command: ["yarn", "rw", "build", "api", "&&", "yarn", "node", "api/dist/server.js", "--apiRootPath=/api"]
  • Update jsdoc for ScenarioData type (#10066) by @c-ciobanu

    Fix formatting of JSDocs in scenario.ts.

  • chore(docs): Add link to SuperTokens auth (#10067) by @danbtl

    Add a missing link to the SuperTokens auth page in the docs.

v7.0.3

26 Feb 21:27
ac260a6
Compare
Choose a tag to compare

Patch Release

  • fix(render): reduce memory and handle server file by @jtoar

    This PR improves Render deploys by reducing memory consumption and fixing it so that it uses the server file if it's present.

    Render deploys seem to consistently run out of memory during the data migration step. This step is configurable and its doubtful that every deploy has data migrations to apply, but it's enabled by default so it runs more-or-less every time in practice. The main issue is that the data migrate functionality is a plugin so a yarn install kicks off in Render's deploy container which must be more memory-constrained than the build container. (Assuming there are two different containers, which seems to be the case.)

    Instead of running data migrations, this PR issues a warning that if you want to run data migrations, you need to first add the @redwoodjs/cli-data-migrate package as a devDependency:

    yarn add -D @redwoodjs/cli-data-migrate
    

    That way a yarn install won't be necessary to run data migrations.

    Although this PR fixes Render deploy so that it uses the server file if present, realtime features still don't seem to work. We're still investigating; in the meantime, consider using another provider like Coherence if you're just getting started and want to try out realtime features.

  • Update MetaTags to be Metadata in Docs (#10053) by @codisfy

    The tutorial still used the MetaTags component instead of the newer Metadata component that the generator templates use. This PR updates all instances of MetaTags with Metadata.

v7.0.2

22 Feb 06:12
Compare
Choose a tag to compare

Patch Release

  • fix(sentry): move templates to the command's directory by @jtoar

    Fixes https://community.redwoodjs.com/t/redwood-v7-0-0-upgrade-guide/5713/25.

    yarn rw setup monitoring sentry would fail with the following error:

    ✔ Adding required api packages...
    ✔ Adding required web packages...
    ✔ Adding SENTRY_DSN var to .env...
    ✖ ENOENT: no such file or directory, open '~/rw-app/node_modules/@redwoodjs/cli/dist/commands/setup/monitoring/sentry/templates/sentryApi.ts.template'
    ◼ Implementing the Envelop plugin
    ◼ Replacing Redwood's Error boundary
    ◼ One more thing...
    ENOENT: no such file or directory, open '~/rw-app/node_modules/@redwoodjs/cli/dist/commands/setup/monitoring/sentry/templates/sentryApi.ts.template'
    

    It was just that the template files for the sentry setup command weren't moved out of experimental. This PR moves them to the command's directory.

v7.0.1

21 Feb 00:16
Compare
Choose a tag to compare

Patch Release

This release fixes a peer dependency warning in Redwood projects that have the @redwoodjs/api-server package as a dependency in the api workspace:

➤ YN0060: │ @redwoodjs/graphql-server is listed by your project with version 7.0.0, which doesn't satisfy what @redwoodjs/api-server (pccff9) requests (6.0.7).

There was a bug in Redwood's release process that resulted in the version of @redwoodjs/graphql-server requested by @redwoodjs/api-server getting missed (it should've been 7.0.0 but was instead left at 6.0.7, the last version released off the main branch). See https://community.redwoodjs.com/t/redwood-v7-0-0-upgrade-guide/5713/21 for the original issue.

v7.0.0

20 Feb 04:47
Compare
Choose a tag to compare

Upgrade Guide

https://community.redwoodjs.com/t/redwood-v7-0-0-upgrade-guide/5713

Changelog

Breaking

  • chore(crwa): remove React prop-types package #9206 by @jtoar
  • fix(cli): Exit with non-zero exit code when yarn rw g types has errors #9280 by @Josh-Walker-GM
  • update node to v20 #9701
  • feat(CLI): add check node version middleware, rm .nvmrc, yarn engines #9728 by @jtoar
  • Adds allowedUserFields option to define the only data that can be returned to client by dbAuth functions #9374 by @cannikin
  • @testing-library/jest-dom v6 upgrade #9719 by @Tobbe
  • 7.0 RC: Remove hardcoded check for session.id #10013 by @cannikin

GraphQL

  • fix: Improve GraphQL Schema Validation to allow Subscription types when not using Realtime and ensure schema does not use reserved names #9005 by @dthyresson
  • feat: Support GraphQL Fragments with Apollo Client and Fragment Registry #9140 by @dthyresson
  • feature: Realtime setup and generator commands out of experimental and into main cli #9342 by @dthyresson
  • feature: Support GraphQL Trusted Documents aka Persisted Operations for added security #9416 by @dthyresson
  • Trusted Documents docs: Proofreading corrections #9737 by @Tobbe
  • Allow GraphQL documents to be typed with a TypedDocumentNode for fully-typed result and variables objects #9619 by @dthyresson
  • feat(scaffold/cell): Adds TypedDocument Support to Cell and Scaffold Generators #9693 by @dthyresson
  • Feat: Gql fragments support for prerender. Clean up crwa templates #9594 by @dthyresson
  • yarn rw setup graphql fragments #9811 by @Tobbe
  • feat: Adds Setup CLI Command to Configure GraphQL Trusted Documents #9800 by @dthyresson
  • prerender: Enable Trusted Documents support #9825 by @Tobbe
  • Add support for Prisma Bytes and GraphQL scalar Byte #9847 by @Tobbe
  • fix(gql): Better graphql.config.js template #9957 by @Tobbe
  • feat(gql): Codemod existing projects to get newest gql config #9959 by @Tobbe

Sentry

Server

  • Fastify config: Use exact file extension in log message #9828 by @Tobbe
  • Improve how the api-server watch command works #9841 by @Tobbe
  • fix(server): ensure consistency between CLI serve entrypoints regarding help and strict #9809 by @jtoar
  • feat(server file): add createServer #9845 by @jtoar
  • chore(server): dedupe web serve logic #9884 by @jtoar
  • chore(cli): Move coerceRootPath() #9891 by @Tobbe
  • fix(serve): fix server listening logs #9894 by @jtoar
  • feat(server): dedupe api server code, make host configurable #9948 by @jtoar
  • fix(server): spelling, fix deploy handler imports, dedupe server builder #9949 by @jtoar
  • fix(api-server): Remove duplicate command alias #9950 by @Tobbe
  • fix(server): use file extension in import, fix graphql route registering #9984 by @jtoar
  • fix(server): fix env var loading in createServer #10021 by @jtoar

Studio

Features

  • add TS support for storybook preview tsx config extension #9309 by @bnn1
  • useRoutePaths #9755 by @Tobbe
  • useRouteName #9758 by @Tobbe
  • useRoutePath(): Get the path for the current route by default #9790 by @Tobbe
  • Add routeParams to useMatch #9793 by @Tobbe
  • Add cli-helpers util to update redwood.toml #9832 by @Tobbe
  • describeScenario docs #9706 by @cjreimer
  • feat(testing): Add describeScenario utility to group scenario tests #9866 by @dac09
  • feat(dbAuth): Refactor dbAuthHandler to support WebAPI Request events #9835 by @dac09
  • feat(deps): update prisma monorepo to v5.9.1 #9980

Fixes

Docs

Chores

  • chore(esm): convert crwa to esm and bundle #9786 by @jtoar
  • chore(build): Avoid prebuilding api side, instead use an esbuild plugin #9767 by @dac09
  • chore(esm): convert @redwoodjs/project-config to ESM #9870 by @jtoar
  • chore(esm): convert @redwoodjs/cli-helpers to ESM #9872 by @jtoar
  • chore(api-server): switch to vitest #9929 by @Josh-Walker-GM

Dependencies

Click to see all upgraded dependencies
  • chore(deps): update dependency graphiql to v3 #9674
  • chore(deps): update dependency node to v20 #9701
  • chore(deps): update dependency @envelop/core to v5 #9669
  • fix(deps): update dependency sqlite to v5 #9698
  • fix(deps): update dependency react-helmet-async to v2 #9697
  • chore(deps): update babel monorepo #9892
  • chore(deps): update dependency esbuild to v0.20.0 #9897
  • chore(deps): update dependency @envelop/types to v5 #9899
  • fix(deps): update dependency @envelop/disable-introspection to v6 #9901
  • chore(deps): update dependency @envelop/testing to v7 #9898
  • fix(deps): update dependency @envelop/filter-operation-type to v6 #9902
  • fix(deps): update dependency @envelop/live-query to v7 #9903
  • fix(deps): update dependency @envelop/on-resolve to v4 #9904
  • fix(deps): update dependency @envelop/depth-limit to v4 #9905
  • fix(deps): update dependency @graphql-yoga/plugin-defer-stream to v3 #9906
  • fix(deps): update dependency @graphql-yoga/plugin-graphql-sse to v3 #9907
  • fix(deps): update dependency vite to v4.5.2 [security] #9852
  • chore(deps): update dependency firebase to v10.7.0 #9605
  • fix(deps): update dependency webpack to v5.90.0 #9911
  • fix(deps): update dependency react-hook-form to v7.49.3 #9910
  • fix(deps): update dependency graphql-yoga to v5.1.1 #9913
  • fix(deps): update dependency @graphql-yoga/subscription to v5 #9912
  • fix(deps): update dependency @graphql-yoga/plugin-persisted-operations to v3 #9908
  • fix(deps): update dependency @graphql-yoga/redis-event-target to v3 #9909
  • chore(deps): update dependency lerna to v8.0.2 #9914
  • fix(deps): update storybook monorepo to v7.6.10 #9917
  • chore(deps): update dependency vitest to v1.2.2 #9915
  • fix(deps): update apollo graphql packages #9916
  • chore(deps): update dependency @playwright/test to v1.41.1 #9918
  • fix(deps): update dependency graphql-sse to v2.5.2 #9921
  • fix(deps): update dependency fastify to v4.25.2 #9920
  • fix(deps): update dependency core-js to v3.35.1 #9919
  • fix(deps): update dependency @clerk/clerk-sdk-node to v4.13.7 #9923
  • chore(deps): update dependency @testing-library/dom to v9.3.4 #9924
  • fix(deps): update dependency @testing-library/user-event to v14.5.2 #9925
  • chore(deps): update dependency @clerk/clerk-react to v4.30.3 #9922
  • chore(deps): update dependency @testing-library/jest-dom to v6.3.0 #9926
  • chore(deps): bump follow-redirects from 1.15.3 to 1.15.4 in /docs #9818
  • chore(deps): bump @fastify/reply-from from 9.4.0 to 9.6.0 #9813
  • chore(deps): bump follow-redirects from 1.15.2 to 1.15.4 #9817
  • fix(deps): update dependency nodemailer to v6.9.9 [security] #9951
  • fix(deps): update dependency firebase-admin to v11.11.1 #9953

v7.0.0-rc.x

30 Jan 11:26
Compare
Choose a tag to compare
v7.0.0-rc.x Pre-release
Pre-release

Upgrade Guide

https://community.redwoodjs.com/t/redwood-v7-0-0-rc-is-now-available/5713

Changelog

Breaking

  • chore(crwa): remove React prop-types package #9206 by @jtoar
  • fix(cli): Exit with non-zero exit code when yarn rw g types has errors #9280 by @Josh-Walker-GM
  • update node to v20 #9701
  • feat(CLI): add check node version middleware, rm .nvmrc, yarn engines #9728 by @jtoar
  • Adds allowedUserFields option to define the only data that can be returned to client by dbAuth functions #9374 by @cannikin
  • @testing-library/jest-dom v6 upgrade #9719 by @Tobbe
  • 7.0 RC: Remove hardcoded check for session.id #10013 by @cannikin

GraphQL

  • fix: Improve GraphQL Schema Validation to allow Subscription types when not using Realtime and ensure schema does not use reserved names #9005 by @dthyresson
  • feat: Support GraphQL Fragments with Apollo Client and Fragment Registry #9140 by @dthyresson
  • feature: Realtime setup and generator commands out of experimental and into main cli #9342 by @dthyresson
  • feature: Support GraphQL Trusted Documents aka Persisted Operations for added security #9416 by @dthyresson
  • Trusted Documents docs: Proofreading corrections #9737 by @Tobbe
  • Allow GraphQL documents to be typed with a TypedDocumentNode for fully-typed result and variables objects #9619 by @dthyresson
  • feat(scaffold/cell): Adds TypedDocument Support to Cell and Scaffold Generators #9693 by @dthyresson
  • Feat: Gql fragments support for prerender. Clean up crwa templates #9594 by @dthyresson
  • yarn rw setup graphql fragments #9811 by @Tobbe
  • feat: Adds Setup CLI Command to Configure GraphQL Trusted Documents #9800 by @dthyresson
  • prerender: Enable Trusted Documents support #9825 by @Tobbe
  • Add support for Prisma Bytes and GraphQL scalar Byte #9847 by @Tobbe
  • fix(gql): Better graphql.config.js template #9957 by @Tobbe
  • feat(gql): Codemod existing projects to get newest gql config #9959 by @Tobbe

Sentry

Server

  • Fastify config: Use exact file extension in log message #9828 by @Tobbe
  • Improve how the api-server watch command works #9841 by @Tobbe
  • fix(server): ensure consistency between CLI serve entrypoints regarding help and strict #9809 by @jtoar
  • feat(server file): add createServer #9845 by @jtoar
  • chore(server): dedupe web serve logic #9884 by @jtoar
  • chore(cli): Move coerceRootPath() #9891 by @Tobbe
  • fix(serve): fix server listening logs #9894 by @jtoar
  • feat(server): dedupe api server code, make host configurable #9948 by @jtoar
  • fix(server): spelling, fix deploy handler imports, dedupe server builder #9949 by @jtoar
  • fix(api-server): Remove duplicate command alias #9950 by @Tobbe
  • fix(server): use file extension in import, fix graphql route registering #9984 by @jtoar
  • fix(server): fix env var loading in createServer #10021 by @jtoar

Studio

Features

  • add TS support for storybook preview tsx config extension #9309 by @bnn1
  • useRoutePaths #9755 by @Tobbe
  • useRouteName #9758 by @Tobbe
  • useRoutePath(): Get the path for the current route by default #9790 by @Tobbe
  • Add routeParams to useMatch #9793 by @Tobbe
  • Add cli-helpers util to update redwood.toml #9832 by @Tobbe
  • describeScenario docs #9706 by @cjreimer
  • feat(testing): Add describeScenario utility to group scenario tests #9866 by @dac09
  • feat(dbAuth): Refactor dbAuthHandler to support WebAPI Request events #9835 by @dac09
  • feat(deps): update prisma monorepo to v5.9.1 #9980

Fixes

Docs

Chores

  • chore(esm): convert crwa to esm and bundle #9786 by @jtoar
  • chore(build): Avoid prebuilding api side, instead use an esbuild plugin #9767 by @dac09
  • chore(esm): convert @redwoodjs/project-config to ESM #9870 by @jtoar
  • chore(esm): convert @redwoodjs/cli-helpers to ESM #9872 by @jtoar
  • chore(api-server): switch to vitest #9929 by @Josh-Walker-GM

Dependencies

Click to see all upgraded dependencies
  • chore(deps): update dependency graphiql to v3 #9674
  • chore(deps): update dependency node to v20 #9701
  • chore(deps): update dependency @envelop/core to v5 #9669
  • fix(deps): update dependency sqlite to v5 #9698
  • fix(deps): update dependency react-helmet-async to v2 #9697
  • chore(deps): update babel monorepo #9892
  • chore(deps): update dependency esbuild to v0.20.0 #9897
  • chore(deps): update dependency @envelop/types to v5 #9899
  • fix(deps): update dependency @envelop/disable-introspection to v6 #9901
  • chore(deps): update dependency @envelop/testing to v7 #9898
  • fix(deps): update dependency @envelop/filter-operation-type to v6 #9902
  • fix(deps): update dependency @envelop/live-query to v7 #9903
  • fix(deps): update dependency @envelop/on-resolve to v4 #9904
  • fix(deps): update dependency @envelop/depth-limit to v4 #9905
  • fix(deps): update dependency @graphql-yoga/plugin-defer-stream to v3 #9906
  • fix(deps): update dependency @graphql-yoga/plugin-graphql-sse to v3 #9907
  • fix(deps): update dependency vite to v4.5.2 [security] #9852
  • chore(deps): update dependency firebase to v10.7.0 #9605
  • fix(deps): update dependency webpack to v5.90.0 #9911
  • fix(deps): update dependency react-hook-form to v7.49.3 #9910
  • fix(deps): update dependency graphql-yoga to v5.1.1 #9913
  • fix(deps): update dependency @graphql-yoga/subscription to v5 #9912
  • fix(deps): update dependency @graphql-yoga/plugin-persisted-operations to v3 #9908
  • fix(deps): update dependency @graphql-yoga/redis-event-target to v3 #9909
  • chore(deps): update dependency lerna to v8.0.2 #9914
  • fix(deps): update storybook monorepo to v7.6.10 #9917
  • chore(deps): update dependency vitest to v1.2.2 #9915
  • fix(deps): update apollo graphql packages #9916
  • chore(deps): update dependency @playwright/test to v1.41.1 #9918
  • fix(deps): update dependency graphql-sse to v2.5.2 #9921
  • fix(deps): update dependency fastify to v4.25.2 #9920
  • fix(deps): update dependency core-js to v3.35.1 #9919
  • fix(deps): update dependency @clerk/clerk-sdk-node to v4.13.7 #9923
  • chore(deps): update dependency @testing-library/dom to v9.3.4 #9924
  • fix(deps): update dependency @testing-library/user-event to v14.5.2 #9925
  • chore(deps): update dependency @clerk/clerk-react to v4.30.3 #9922
  • chore(deps): update dependency @testing-library/jest-dom to v6.3.0 #9926
  • chore(deps): bump follow-redirects from 1.15.3 to 1.15.4 in /docs #9818
  • chore(deps): bump @fastify/reply-from from 9.4.0 to 9.6.0 #9813
  • chore(deps): bump follow-redirects from 1.15.2 to 1.15.4 #9817
  • fix(deps): update dependency nodemailer to v6.9.9 [security] #9951
  • fix(deps): update dependency firebase-admin to v11.11.1 #9953

v6.6.4

25 Jan 01:36
Compare
Choose a tag to compare

Patch Release

  • fix(crwa): remove yarn-install option for yarn 1 #9881 by @jtoar

    This only affects yarn create redwood-app. This PR removes the ability to run yarn install when using yarn v1 to run yarn create redwood-app. Users are expected to cd into the new directory and run yarn install there where the correct version will automatically be picked up by corepack.