Skip to content

Releases: wasp-lang/wasp

v0.13.2

11 Apr 16:45
Compare
Choose a tag to compare

0.13.2 (2024-04-11)

🐞 Bug fixes

  • Fixed problems with Wasp's type inference in projects created using Wasp 0.13.1.

v0.13.1

04 Apr 17:33
Compare
Choose a tag to compare

0.13.1 (2024-04-04)

🐞 Bug fixes

  • Vite HMR now works correctly with Wasp's new project structure (no more full-page reloads).
  • Keycloak UI helpers are now correctly exported.

🔧 Small improvements

  • Improved how IDE auto-imports symbols from the wasp package. If you have an existing project, add these lines to your tsconfig.json to getter better IDE support:

    {
      "compilerOptions" {
        "target": "esnext",
        "moduleResolution": "bundler",
        // ...
      }
      // ...
    }
    

v0.13.0

20 Mar 09:45
f255fb8
Compare
Choose a tag to compare

⚠️ Breaking changes

Wasp 0.13.0 switches away from using Passport for our OAuth providers in favor of Arctic from the Lucia ecosystem. This change simplifies the codebase and makes it easier to add new OAuth providers in the future.

This however, means that there are breaking changes in the way you define OAuth providers in your Wasp project.

Read the migration guide at https://wasp-lang.dev/docs/migrate-from-0-12-to-0-13 for more details.

🎉 New features

  • Wasp adds support for Keycloak as an OAuth provider.
  • Wasp now supports defining the WASP_SERVER_URL environment variable and exposes it as serverUrl in the server config which can be imported from wasp/server.

🐞 Bug fixes

  • Projects that import wasp/auth/types no longer fail when building the web app.
  • Wasp now displays OAuth related errors in the browser instead of redirecting to the login page.

🔧 Small improvements

  • Wasp uses Oslo for handling JWTs.

v0.13.0-rc2

18 Mar 15:50
329c324
Compare
Choose a tag to compare
v0.13.0-rc2 Pre-release
Pre-release
Updates tag for starters (#1903)

v0.13.0-rc1

18 Mar 14:04
72ebdb8
Compare
Choose a tag to compare
v0.13.0-rc1 Pre-release
Pre-release
Fixes tests for 0.13.0 RC (#1899)

v0.12.4

12 Mar 16:33
Compare
Choose a tag to compare

🐞 Bug fixes

  • Projects that import wasp/auth/types no longer fail when building the web app.

v0.12.3

01 Mar 22:19
Compare
Choose a tag to compare

0.12.3

🎉 New features

  • Wasp AI switched from GPT 3.5 Turbo 0613 to GPT 3.5 Turbo 0125, which gives it bigger context, ensuring generation doesn't fail for bigger apps, while also being cheaper.

v0.12.2

29 Feb 18:14
Compare
Choose a tag to compare

0.12.2

🐞 Bug fixes

  • We were adding Crypto polyfill even when not needed (when node > 18), which was then causing an error. Now polyfill is added only if needed.

v0.12.1

27 Feb 15:40
Compare
Choose a tag to compare

0.12.1

🐞 Bug fixes

  • Reverted Wasp AI to using GPT3.5-Turbo-0613 instead of new GPT3.5-Turbo-0125 since 0125 would often return code that is missing newlines.

v0.12.0

27 Feb 11:40
Compare
Choose a tag to compare

This is a big update, introducing major changes that span the entirety of Wasp, specifically the new project structure and new Auth.

⚠️ Breaking changes

If your project is using an older version of Wasp, you will want to check out the detailed migration instructions at https://wasp-lang.dev/docs/migrate-from-0-11-to-0-12 .

New project structure

The output of wasp new myProject before 0.12.0:

.
├── .gitignore
├── main.wasp
├── src
│   ├── client
│   │   ├── Main.css
│   │   ├── MainPage.jsx
│   │   ├── react-app-env.d.ts
│   │   ├── tsconfig.json
│   │   └── waspLogo.png
│   ├── server
│   │   └── tsconfig.json
│   ├── shared
│   │   └── tsconfig.json
│   └── .waspignore
└── .wasproot

The output of wasp new myProject with 0.12.0:

.
├── .gitignore
├── main.wasp
├── package.json
├── public
│   └── .gitkeep
├── src
│   ├── Main.css
│   ├── MainPage.jsx
│   ├── queries.ts
│   ├── vite-env.d.ts
│   ├── .waspignore
│   └── waspLogo.png
├── tsconfig.json
├── vite.config.ts
└── .wasproot

The main differences are:

  • Your project now has a package.json file.
  • tsconfig.json, vite.config.ts, and public/ moved to the top dir.
  • The server/client code separation is no longer necessary. You can now organize your code however you want, as long as it's inside the src/ directory.
  • All external imports in your Wasp file now must have paths starting with @src (e.g., import foo from '@src/MainPage.jsx'). The paths can no longer start with @server or @client.

New Auth

Before 0.12.0, authentication in Wasp was based on the User model which the developer needed to set up properly and take care of the auth fields like email or password.

With 0.12.0, authentication is based on the auth models which are automatically set up by Wasp. You don't need to take care of the auth fields anymore, be it by adding them to the User model or by adding whole new entities like SocialLogin.

The User model is now just a business logic model and you use it for storing the data that is relevant for your app.

In the background, Wasp is now using Lucia as the core auth library.

Naming requirements

Operation (i.e., Queries and Actions) and Job names in .wasp files must now begin with a lowercase letter: query getTasks {...}, job sendReport {...}.

Entity names in .wasp files must now begin with an uppercase letter: entity Foo {...}.

Regression Notes
  • Multiple auth methods per single user are not allowed anymore (while before a user could first sign up with a social account and then add email/pass to it).
  • Auth field customization is no longer possible using the _waspCustomValidations on the User entity.
    These are both temporary regressions and will be replaced with better mechanisms in the future.

🎉 [New Feature] Wasp now works with any Node version >= 18

So far, Wasp required a specific Node version that is compatible with the latest LTS Node (lately that was 18).

We relaxed that constraint so it now works with any Node version equal to or newer than the oldest LTS version that Wasp supports, meaning that now Wasp works with any Node version >= 18.

🎉 [New Feature] Wasp AI in the CLI (wasp new:ai)

While so far it was available only through the https://usemage.ai , Wasp AI is now also available via the wasp CLI, enabling you to create a new Wasp app from nothing more than a title and a short description.

You can run it by picking AI as an option in the wasp new wizard, or via wasp new:ai which allows you to provide all the details via the command line (useful for more programmatic usage).

You need to provide your own OpenAI API token, but that also means you can choose which model to use for the code generation: e.g. you can use GPT-4 all the way, instead of the default GPT-4 + GPT-3 combo that https://usemage.ai uses.

🎉 [New Feature] New template: Open Saas

Wasp now comes with a new template for kickstarting your apps, specifically SaaS apps: https://opensaas.sh/ .

This is the richest template for Wasp so far, with features like Stripe integration, admin dashboard, file uploading, blog (Astro), ...

You can choose it from the wasp new's wizard.