github wasp-lang/wasp v0.21.0

latest release: v0.21.1
11 hours ago

⚠️ Breaking Changes

Remember to check out the migration guide for step-by-step documentation on how to upgrade.

  • Wasp now requires the wasp() plugin in your vite.config.ts file. You can import the plugin from wasp/client/vite and add it as the first plugin in your Vite configuration. (#3652)
  • User projects must now provide their own public/manifest.json file. This file is no longer auto-generated by Wasp. (#3652)
  • Wasp now has Tailwind CSS 4 support, and v3 support has been dropped. (#3571)
  • Wasp now uses Vitest 4 for testing. (#3580)
  • Removed the .wasp/build directory. Wasp now only uses .wasp/out for generated code, both in development and production mode. (#3540)
  • The Wasp SDK is now used as a workspace instead of a dependency. This avoids dependency resolution issues and further improves reliability of Wasp projects. (#3544)
  • Wasp now uses React Router 7. The package has been renamed from react-router-dom to react-router, so you'll need to update your imports. (#3490, #3658)
  • Wasp no longer generates netlify.toml in the .wasp/out/web-app dir. If you're deploying to Netlify, you'll need to add it manually. (#3665)
  • If you are manually deploying the client app, you now build it with npx vite build from the project root instead of running npm run build inside .wasp/out/web-app. The build output is still in .wasp/out/web-app/build. (#3652)
  • The REACT_APP_API_URL environment variable is no longer supported for specifying a custom server URL during deployment. Use the new --custom-server-url CLI option instead. (#3674)

🎉 New Features

  • User-land Vite configuration: Wasp runs Vite in your project root and no longer in .wasp/out/web-app dir. Your vite.config.ts is the source of truth for Vite configuration. (#3652)
  • The wasp() plugin accepts options to customize the underlying @vitejs/plugin-react behavior. (#3652)
  • Wasp apps can now offer login with Microsoft (both consumer and Entra accounts) (by @Pipboyguy). (#3637)
  • Wasp can now be installed through npm. (#3525)
  • Wasp now supports Tailwind CSS v4. (#3571)
  • Wasp now allows you to override built-in dependencies (advanced, best-effort support only). (#3643)

🐞 Bug fixes

  • Fixed an issue where if Wasp was installed from npm, wasp new would not work correctly. (#3585)
  • Fixed an issue where the Link component might not update with the values of search and hash (by @Pipboyguy). (#3633)
  • We now support Railway CLI v4.18.1 and greater on wasp deploy railway. (#3667)
  • Wasp TS spec now validates declaration names. (#3721)
  • Fixed Railway deployment failing when the project name contains special characters (e.g., kitchen-sink-0.20.0). (#3673)

📖 Documentation

  • Upgraded the installation instructions throughout the docs to the new npm installation method. (#3630)
  • The Wasp docs now include a "Guides" section, with step-by-step tutorials on how to use popular libraries and tools with Wasp. Check them out at https://wasp.sh/docs/guides! (#3597)

🔧 Small improvements

  • We've unlinked Wasp from any specific Tailwind CSS version, so in the future you can adopt new Tailwind CSS versions at your own pace, independently of Wasp. (#3571)
  • wasp new now shows a helpful message when the specified template has not been updated to the latest Wasp version. (#3511)
  • Running a Wasp in development or production mode won't modify your package-lock.json file anymore. (#3540)
  • We updated the basic starter template to the latest best practices for React 19 + TypeScript apps. This applies to new projects created with wasp new -t basic, and older projects are unaffected. (#3572)
  • We updated the testing environment to JSDOM 27 for more up-to-date mocking. (#3580)
  • We updated our API mocking to MSW 2 for better performance and reliability. (#3580)
  • wasp info now tells you if the last compilation was done in development or production mode. (#3612)
  • wasp uninstall now supports the npm installation method. (#3620)
  • Added anonymous usage analytics to the npm package installer to help us understand how Wasp is being installed. You can disable this by setting WASP_TELEMETRY_DISABLE=1. (#3619)
  • Improved error messages when using dependencies that are incompatible with internal Wasp dependencies. (#3655)
  • Removed a Rollup version override, since the upstream Rollup issue has been fixed. (#3654)
  • The dev compiler file watcher now ignores .DS_Store files, preventing unnecessary recompilations on macOS. (#3734)
  • Added guardrails to avoid installing Wasp through the installer or npm methods when the other method is already being used. (#3711)

Don't miss a new wasp release

NewReleases is sending notifications on new releases.