Upgrade v0.16 (#357)

* bump version

* add update banner and cursorrules
This commit is contained in:
vincanger 2025-01-29 12:26:21 +01:00 committed by GitHub
parent f995341f0b
commit 8eecd97147
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
20 changed files with 75 additions and 25 deletions

View File

@ -1,7 +1,7 @@
--- template/app/main.wasp --- template/app/main.wasp
+++ opensaas-sh/app/main.wasp +++ opensaas-sh/app/main.wasp
@@ -3,30 +3,29 @@ @@ -3,30 +3,29 @@
version: "^0.15.0" version: "^0.16.0"
}, },
- title: "My Open SaaS App", - title: "My Open SaaS App",

View File

@ -1,6 +1,6 @@
--- template/app/package-lock.json --- template/app/package-lock.json
+++ opensaas-sh/app/package-lock.json +++ opensaas-sh/app/package-lock.json
@@ -0,0 +1,11736 @@ @@ -0,0 +1,11737 @@
+{ +{
+ "name": "opensaas", + "name": "opensaas",
+ "lockfileVersion": 3, + "lockfileVersion": 3,
@ -31,6 +31,7 @@
+ "react-router-dom": "^6.26.2", + "react-router-dom": "^6.26.2",
+ "stripe": "11.15.0", + "stripe": "11.15.0",
+ "tailwind-merge": "^2.2.1", + "tailwind-merge": "^2.2.1",
+ "tailwindcss": "^3.2.7",
+ "vanilla-cookieconsent": "^3.0.1", + "vanilla-cookieconsent": "^3.0.1",
+ "wasp": "file:.wasp/out/sdk/wasp", + "wasp": "file:.wasp/out/sdk/wasp",
+ "zod": "^3.23.8" + "zod": "^3.23.8"
@ -61,7 +62,6 @@
+ "axios": "^1.4.0", + "axios": "^1.4.0",
+ "express": "~4.21.0", + "express": "~4.21.0",
+ "jsdom": "^21.1.1", + "jsdom": "^21.1.1",
+ "lodash.merge": "^4.6.2",
+ "lucia": "^3.0.1", + "lucia": "^3.0.1",
+ "mitt": "3.0.0", + "mitt": "3.0.0",
+ "msw": "^1.1.0", + "msw": "^1.1.0",
@ -74,7 +74,8 @@
+ "react-router-dom": "^6.26.2", + "react-router-dom": "^6.26.2",
+ "superjson": "^2.2.1", + "superjson": "^2.2.1",
+ "tailwindcss": "^3.2.7", + "tailwindcss": "^3.2.7",
+ "vitest": "^1.2.1" + "vitest": "^1.2.1",
+ "zod": "^3.23.8"
+ }, + },
+ "devDependencies": { + "devDependencies": {
+ "@tsconfig/node18": "latest", + "@tsconfig/node18": "latest",

View File

@ -2,7 +2,7 @@
title: Admin Dashboard title: Admin Dashboard
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
import { Image } from 'astro:assets'; import { Image } from 'astro:assets';
import dbStudio from '@assets/stripe/db-studio.png'; import dbStudio from '@assets/stripe/db-studio.png';

View File

@ -2,7 +2,7 @@
title: User Overview title: User Overview
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
This reference will help you understand how the User entity works in this template. This reference will help you understand how the User entity works in this template.

View File

@ -2,7 +2,7 @@
title: Analytics title: Analytics
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
This guide will show you how to integrate analytics for your app. You can choose between [Google Analytics](#google-analytics) and [Plausible](#plausible). This guide will show you how to integrate analytics for your app. You can choose between [Google Analytics](#google-analytics) and [Plausible](#plausible).

View File

@ -2,7 +2,7 @@
title: Authentication title: Authentication
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
Setting up your app's authentication is easy with Wasp. In fact, it's already set up for you in the `main.wasp` file: Setting up your app's authentication is easy with Wasp. In fact, it's already set up for you in the `main.wasp` file:

View File

@ -2,7 +2,7 @@
title: Authorization title: Authorization
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
This guide will help you get started with authorization in your SaaS app. This guide will help you get started with authorization in your SaaS app.

View File

@ -2,7 +2,7 @@
title: Cookie Consent Modal title: Cookie Consent Modal
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
import { Image } from 'astro:assets'; import { Image } from 'astro:assets';
import cookieBanner from '@assets/cookie-consent/cookiebanner.png'; import cookieBanner from '@assets/cookie-consent/cookiebanner.png';

View File

@ -2,7 +2,7 @@
title: Deploying title: Deploying
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
import { Image } from 'astro:assets'; import { Image } from 'astro:assets';
import npmVersion from '@assets/stripe/npm-version.png'; import npmVersion from '@assets/stripe/npm-version.png';

View File

@ -2,7 +2,7 @@
title: Email Sending title: Email Sending
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
import { Tabs, TabItem } from '@astrojs/starlight/components'; import { Tabs, TabItem } from '@astrojs/starlight/components';

View File

@ -2,7 +2,7 @@
title: File Uploading title: File Uploading
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
import { Image } from 'astro:assets'; import { Image } from 'astro:assets';
import findS3 from '@assets/file-uploads/find-s3.png'; import findS3 from '@assets/file-uploads/find-s3.png';

View File

@ -2,7 +2,7 @@
title: Payments Integration title: Payments Integration
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
import { Image } from 'astro:assets'; import { Image } from 'astro:assets';
import testApiKeys from '@assets/stripe/api-keys.png'; import testApiKeys from '@assets/stripe/api-keys.png';

View File

@ -2,7 +2,7 @@
title: SEO title: SEO
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
import { Image } from 'astro:assets'; import { Image } from 'astro:assets';
import openSaaSGoogle from '@assets/seo/open-saas-google.png'; import openSaaSGoogle from '@assets/seo/open-saas-google.png';

View File

@ -2,7 +2,7 @@
title: Tests title: Tests
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
This guide will show you how to use the included end-to-end (e2e) tests for your Open SaaS application. This guide will show you how to use the included end-to-end (e2e) tests for your Open SaaS application.

View File

@ -2,7 +2,7 @@
title: Introduction title: Introduction
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
import HiddenLLMHelper from '../../components/HiddenLLMHelper.astro'; import HiddenLLMHelper from '../../components/HiddenLLMHelper.astro';

View File

@ -2,7 +2,7 @@
title: Getting Started title: Getting Started
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
import VideoPlayer from '../../../components/VideoPlayer.astro'; import VideoPlayer from '../../../components/VideoPlayer.astro';

View File

@ -2,7 +2,7 @@
title: Guided Tour title: Guided Tour
banner: banner:
content: | content: |
Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.15</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-14-to-0-15">migration instructions.</a> Open SaaS is now running on <b><a href='https://wasp-lang.dev'>Wasp v0.16</a></b>! <br/>⚙️<br/>If you're running an older version and would like to upgrade, please follow the <a href="https://wasp-lang.dev/docs/migration-guides/migrate-from-0-15-to-0-16">migration instructions.</a>
--- ---
Awesome, you now have your very own SaaS app up and running! But, first, here are some important things you need to know about your app in its current state: Awesome, you now have your very own SaaS app up and running! But, first, here are some important things you need to know about your app in its current state:

52
template/app/.cursorrules Normal file
View File

@ -0,0 +1,52 @@
// Wasp Import Rules
- Path to Wasp functions within .ts files must come from 'wasp', not '@wasp'!
✓ import { Task } from 'wasp/entities'
✓ import type { GetTasks } from 'wasp/server/operations'
✓ import { getTasks, useQuery } from 'wasp/client/operations'
✗ import { getTasks, useQuery } from '@wasp/...'
✗ import { getTasks, useQuery } from '@src/feature/operations.ts'
- Path to external imports within 'main.wasp' must start with "@src/"!
✓ component: import { LoginPage } from "@src/client/pages/auth/LoginPage.tsx"
✗ component: import { LoginPage } from "@client/pages/auth/LoginPage.tsx"
- In the client's root component, use the Outlet component rather than children
✓ import { Outlet } from 'react-router-dom';
// Wasp DB Schema Rules
- Add databse models to the 'schema.prisma' file, NOT to 'main.wasp' as "entities"
- Do NOT add a db.system nor a db.prisma property to 'main.wasp'. This is taken care of in 'schema.prisma'
- Keep the 'schema.prisma' within the root of the project
// Wasp Operations
- Types are generated automatically from the function definition in 'main.wasp',
✓ import type { GetTimeLogs, CreateTimeLog, UpdateTimeLog } from 'wasp/server/operations'
- Wasp also generates entity types based on the models in 'schema.prisma'
✓ import type { Project, TimeLog } from 'wasp/entities'
- Make sure that all Entities that should be included in the operations context are defined in its definition in 'main.wasp'
✓ action createTimeLog { fn: import { createTimeLog } from "@src/server/timeLogs/operations.js", entities: [TimeLog, Project] }
// Wasp Auth
- When creating Auth pages, use the LoginForm and SignupForm components provided by Wasp
✓ import { LoginForm } from 'wasp/client/auth'
- Wasp takes care of creating the user's auth model id, username, and password for a user, so a user model DOES NOT need these properties
✓ model User { id Int @id @default(autoincrement()) }
// Wasp Dependencies
- Do NOT add dependencies to 'main.wasp'
- Install dependencies via 'npm install' instead
// Wasp
- Use the latest Wasp version, ^0.16.0
- Always use typescript for Wasp code.
- When creating Wasp operations (queries and actions) combine them into an operations.ts file within the feature directory rather than into separate queries.ts and actions.ts files
// React
- Use relative imports for other react components
- If importing a function from an operations file, defer to the wasp import rules
// CSS
- Use Tailwind CSS for styling.
- Do not use inline styles unless necessary
// General
- Use single quotes

View File

@ -1,6 +1,6 @@
app OpenSaaS { app OpenSaaS {
wasp: { wasp: {
version: "^0.15.0" version: "^0.16.0"
}, },
title: "My Open SaaS App", title: "My Open SaaS App",

View File

@ -5,6 +5,8 @@
// compiler. Proper TS compiler configuration in Wasp is coming soon :) // compiler. Proper TS compiler configuration in Wasp is coming soon :)
{ {
"compilerOptions": { "compilerOptions": {
"composite": true,
"outDir": ".wasp/out/user",
"module": "esnext", "module": "esnext",
"target": "esnext", "target": "esnext",
// We're bundling all code in the end so this is the most appropriate option, // We're bundling all code in the end so this is the most appropriate option,
@ -32,10 +34,5 @@
// Source 2: https://github.com/testing-library/jest-dom/issues/546#issuecomment-1889884843 // Source 2: https://github.com/testing-library/jest-dom/issues/546#issuecomment-1889884843
"node_modules/@types" "node_modules/@types"
], ],
// Since this TS config is used only for IDE support and not for
// compilation, the following directory doesn't exist. We need to specify
// it to prevent this error:
// https://stackoverflow.com/questions/42609768/typescript-error-cannot-write-file-because-it-would-overwrite-input-file
"outDir": ".wasp/phantom"
} }
} }