RedwoodJS v0.15.0 released

This release comes jam-packed with new features, improvements, and fixes. It’s hard to believe it’s only been 9 days since our previous release. None of this would be possible without the amazing Redwood Community that continues to grow and support each other and this project. To everyone who helped out on the forums, created an issue, opened a PR, or improved documentation, thank you :rocket:

Update 7/31: version 0.15.3 has been released including a few bug fixes. All notes below apply. When upgrading, upgrade to v0.15.3 (not v0.15.0)

v0.15.0 Highlights

  • Data Migrations: 'cause everybody needs to move data around sometimes :rocket:
    • Documentation
    • CLI Command
    • Note: code modification are required to use this feature. See “How to upgrade” section below.
  • Prisma Dynamic Provider Syntax :tada:
    • all your DBs, all in one syntax
    • fully backwards compatible
    • if you want to use the new syntax, first read this, then remove the Netlify plugin from netlify.toml
  • GraphQL Mocks working with Jest :tada:
    • this advances an integrated DX for Jest across both Web and API (using magic)
    • documentation

Changed

Added

  • DB: data migrations #852
  • Tests: Add graphQL mocks to jest #894
  • API: add a way to mock data in Storybook and Jest #856
  • Tests: add Router tests #858 @Terris
  • Config: Add .idea/ dir for Jetbrains IDE’s config to .gitignore #863 @biphobe
  • Config: add global declarations for automatically imported functions #884
  • Apollo Client: export useLazyQuery/useSubscription from @apollo #865 @biphobe
  • CLI: Add yarn rw dev option to pass any Webpack config as a string #904

Fixed

  • Generators: fix sdl generator to support Json type #824 @redstab
  • Dev-server: Bump kill-port #862 @Tobbe
  • Tests: fix test db path on Windows #869 @Tobbe
  • Auth: small Firebase scaffolding fixes. #873 @janimo
  • Auth: isAuthenticated should be false when getCurrentUser fails #878
  • API: Stringify function body prevents Netlify 502 error #877 @dthyresson
  • API: Cell Operation Names not PascalCased #888 @dthyresson
  • Config: Set cwd for generator babel transforms #879
  • Tests: fix jest module alias resolution #906

Breaking :warning:

Nothing to see here! :see_no_evil:


How to upgrade RedwoodJS to v0.15.0

:point_right: IMPORTANT: Skipping versions when upgrading is not recommended and will likely cause problems. Do read through all Release Notes between your current version and this latest version. Each minor release will likely require you to implement breaking change fixes and apply manual code modifications.

Manual Code Modifications

  1. To support dataMigrations during deploy, the following code modifications are required to the files .env.defaults , schema.prisma , and netlify.toml :

    • Set Prisma binaryTargets to be “native”. Edit the files .env.defaults and api/prisma/schema.prisma with changes via this commit
    • Add the dataMigrate up command to Netlify deploy build by editing the file netlify.toml with changes via this commit
  2. Update .env.defaults to silence the Prisma “update available” notifier ('cause we don’t actually want you to do that)

Upgrade Packages

Run the following command within your App directory:

yarn rw upgrade

Upgrade Tip: for this upgrade, you might have some issues with the old generated Prisma Client saved in node_modules. You can remove the node_modules directory and/or try yarn install --force. And you’ll need to regenerate the Prisma Client with yarn rw db up.

To run the upgrade command, your project must be using v0.6.0 or greater. See this forum topic for manual upgrade instructions and general upgrade help.


Redwood Releases on GitHub

You can see all Redwood release notes and version history on GitHub

4 Likes

One might need to remove node_modules and fetch packages again.
I had a findMany that threw a “Invalid feature flag: aggregation” error, there’s nothing in the prisma update related to it and the only thing that fixed it was removing node_modules :).
If it can save ten minutes to anyone :slight_smile:

Thanks for the update, team

1 Like

This might not seem like much, but it takes Windows startup times from around 10 minutes to like 2 seconds!

1 Like

@noire.munich thanks for the tip! I’ve added this to the release notes – I believe it’s the previous generated Prisma Client stored in node_modules that’s getting in the way, which is why a fresh yarn install helps.

@Tobbe a HUGE deal indeed --> I feel like the Release Notes could do a better job of highlighting Windows improvements… keep in on this, ok? And thanks for shipping so much code in this version :rocket:

1 Like

Too bad my vacation is just about over :frowning: I’ve had so much fun these few weeks working on RW stuff!

2 Likes