Commit Graph

789 Commits

Author SHA1 Message Date
Filip Sodić
7df1b10ffd
Bump Wasp version to 0.11.6 and update e2e tests (#1493) 2023-10-10 15:02:31 +02:00
Mihovil Ilakovac
03cfcdfaaf
Wasp Studio [experimental] (#1483) 2023-10-10 12:17:05 +02:00
Mihovil Ilakovac
88d9534fd3
Allow customising the Vite config (#1465) 2023-10-09 15:40:33 +02:00
Mihovil Ilakovac
20eb9e007a
Bumps Wasp version (#1448) 2023-09-16 00:43:46 +02:00
Mihovil Ilakovac
b9ba6fbaa4
Fixes Auth UI (#1447) 2023-09-16 00:13:37 +02:00
Mihovil Ilakovac
16fa3bd487 Merge branch 'main' into wasp-ai 2023-09-14 12:23:29 +02:00
Mihovil Ilakovac
99c9021f82
Signup Customisation [RFC] (#1395) 2023-09-12 13:19:47 +02:00
Mihovil Ilakovac
cb88dfc618
Adding support for Postgres Extensions (#1443) 2023-09-12 13:03:57 +02:00
Martin Šošić
ed3be9ca1a
Update README.md with info about installing LLVM on Mac to build wasp 2023-09-10 15:12:31 +02:00
Mihovil Ilakovac
092ff2acaf
Type safe async jobs (#1400) 2023-09-07 16:32:55 +02:00
Martin Sosic
0183d9cbf2 Fixed e2e tests that I messed up when adding comments to app.js. 2023-09-07 14:42:36 +02:00
Martin Šošić
7da0aae3e9
Added a comment to app.js about default express error handler behaviour. 2023-09-06 17:18:21 +02:00
Martin Šošić
179ec45aa9
Updated default .gitignore for new Wasp project to be more robust regarding .env files (#1425) 2023-08-31 15:50:17 +02:00
Mihovil Ilakovac
6b77b673a6
Fixes a types export issue (#1421) 2023-08-31 11:56:20 +02:00
Mihovil Ilakovac
66a04a07ce
Updates tutorial link in templates (#1423) 2023-08-31 10:26:41 +02:00
Mihovil Ilakovac
792c014551
Implement type safe links (#1235) 2023-08-30 14:40:17 +02:00
Craig McIlwrath
0f9726b7a1
[waspls] use the wasp project root instead of the workspace root (#1393)
* calculate project root via location of .wasp file

previously, waspls used workspace root, which was incorrect if you opened a
workspace larger than the wasp project.

this does not add support for multi-project workspaces.

* update changelog with waspls scaffolding info
2023-08-11 08:18:37 -04:00
Craig McIlwrath
d12b403e7d
[waspls] improves LSP scaffolding (#1381)
* create directories when scaffolding, if needed

* refresh export cache after scaffolding

* better process for ensuring a blank line between old code and new scaffolded code
2023-08-10 10:01:20 -04:00
Filip Sodić
a076e9a67a
Add install command to run script (#1385) 2023-08-10 11:22:38 +02:00
Mihovil Ilakovac
b34ab5dc8b
Fixes .env.client copying (#1391) 2023-08-10 11:20:33 +02:00
Craig McIlwrath
ea70a8e4bb
[waspls] fix client directory module resolution (#1372)
Previously, waspls incorrectly thought that importing `@client/file.jsx` could be referencing the file `src/client/file.tsx`. But this JS/TS "merging" is only correct on the server (for reasons that are not explained by the TS documentation on module resolution). This commit fixes that by requiring exact matches for external imports beginning with `@client`.

This incorrect behavior manifested as several different bugs:
- Not reporting missing `.jsx` files when a `.tsx` file with the same name exists.
- Go-to definition going to the `.tsx` file instead of the `.jsx` file when the external import ends in `.jsx`.
- Scaffold actions suggestions scaffolding in both the `.jsx` and `.tsx`files.

This commit fixes all of these buggy behaviors.
2023-07-28 10:49:09 -04:00
Mihovil Ilakovac
7c09e3964b
Updates LSP templates (#1375) 2023-07-28 10:33:04 +02:00
Craig McIlwrath
76d9fc4213
[waspls] Add code actions for scaffolding external code (#1316)
When an external import tries to import a symbol from a TypeScript/JavaScript file, waspls now offers quickfix code actions to scaffold a function in that file.

It uses the surrounding context of the external import to determine what code to write for the code action. See [`ScaffoldTsSymbol.hs`](457911d5e9/waspc/waspls/src/Wasp/LSP/Commands/ScaffoldTsSymbol.hs) for a detailed description of how it works. At a high level, there is a `templateForFile` function in `Wasp.LSP.Commands.ScaffoldTsSymbol` that selects the correct template from `data/lsp/templates/ts`. For example, `action.fn.ts` contains a template for scaffolding an `action` function in a TypeScript file and would be used when a code action is requested with the cursor at the location marked by `|`:

```wasp
action createTask {
  fn: import { createTask } from "@server/actions.js"|
}
```

The scaffold action runs as a [LSP command](https://microsoft.github.io/language-server-protocol/specifications/specification-3-16/#workspace_executeCommand). To prepare for wanting to define more commands in waspls in the future, this PR also introduces the concept of `Commands` (`Wasp.LSP.Commands.Command`) that define some properties about each command waspls wants to handle.
2023-07-26 08:00:16 -04:00
Craig McIlwrath
8b1d6a96ab
[waspls] implement goto definition for declarations (#1310) 2023-07-18 08:16:26 -04:00
Filip Sodić
ba683d0969 Add extendedWhereUnique to Wasp AI 2023-07-12 17:51:33 +02:00
Filip Sodić
4bff9069a3 Merge branch 'main' into wasp-ai 2023-07-12 17:44:24 +02:00
Filip Sodić
af9d7992b3
Add support for Prisma preview features (#1315) 2023-07-12 17:08:57 +02:00
Martin Sosic
803fad6d9f Added creativity level, improved messaging in wasp-ai, some links. 2023-07-12 16:18:57 +02:00
Martin Sosic
d2268b734f Reverted wasp cli version in Wasp AI to 0.11.0. 2023-07-11 16:30:12 +02:00
Martin Sosic
fa6c3867eb Fixed wrong cabal version. 2023-07-11 16:27:00 +02:00
Martin Sosic
9ab013c5c2 Updated e2e tests. 2023-07-11 15:43:41 +02:00
Filip Sodić
e2ed9682e0 Merge branch 'wasp-ai' of github.com:wasp-lang/wasp into wasp-ai 2023-07-11 13:27:44 +02:00
Filip Sodić
ce5f292cca Improve Page examples for chat gpt 2023-07-11 13:27:32 +02:00
Martin Sosic
7291ca882a Updated version to 0.11.1. 2023-07-11 13:06:49 +02:00
Martin Sosic
805aaef1dd Temperature can now be adjusted via CLI. 2023-07-11 12:38:32 +02:00
Martin Sosic
737ab428ed Added GPT4 as an option via project config JSON. 2023-07-11 12:28:19 +02:00
Filip Sodić
2eb648ce01 Tell Chat GPT to improve page design 2023-07-10 18:26:25 +02:00
Filip Sodić
72f6b08c99 Enrich example page with styles and logic 2023-07-10 17:57:22 +02:00
Martin Sosic
4f8a448dc9 Gave it examples on what to avoid regarding update() and findUnique(). 2023-07-10 15:48:02 +02:00
Martin Sosic
dcf6001623 Explained to GPT not to use multiple fields in the 'where' of update() or findUnique(). 2023-07-10 11:15:01 +02:00
Martin Sosic
81257bb179 Updated action example to not use updateMany as it confused GPT. 2023-07-08 21:40:24 +02:00
Martin Sosic
1d8d47c028 Added logout button to Layout.jsx. 2023-07-08 21:13:55 +02:00
Martin Sosic
248ee950bd Removed list of all possible imports from Page prompts. 2023-07-08 20:30:44 +02:00
Filip Sodić
0cc65dbd3e
Add import heuristic (#1311) 2023-07-08 01:26:54 +02:00
Martin Sosic
a321684959 Login/Signup page now have nice width. 2023-07-07 17:46:30 +02:00
Martin Sosic
ef66f0e991 Told it to replace local js imports with actual implementation. 2023-07-07 16:09:32 +02:00
Martin Sosic
e3f09be9ae Wasp AI: small fixes. 2023-07-07 15:46:43 +02:00
Martin Sosic
64163763e3 Wasp AI: Plan is not repeatedly fixed. 2023-07-07 15:21:10 +02:00
Craig McIlwrath
2d3f0e116c
[waspls] cleanup extimport code (#1292)
mainly refactoring. also updates CI workflow to run packages/ts-inspect tests.
2023-07-07 08:21:33 -04:00
Martin Sosic
d2e5007a0a Wasp AI: Told GPT we are using sqlite so it can't do String[] in PSL. 2023-07-07 12:11:53 +02:00
Filip Sodić
352476e6e3
Fix Wasp AI import and login/logout problems (#1308) 2023-07-07 12:06:24 +02:00
Martin Šošić
4d4c2c2f72
Wasp AI: got prisma format working, fixed recovery on http errors
* Put some skeleton logic in.

* Fixed wrong handling of http errors, got prisma format working.

* fix
2023-07-07 01:24:26 +02:00
Martin Sosic
f714b8eb1d Added prisma TS package to Wasp, for running prisma format. 2023-07-06 18:29:02 +02:00
Martin Sosic
a7254cadb7 Code agent now sends the exception that crashed it as the last log. 2023-07-05 19:03:48 +02:00
Martin Sosic
42d656d9ad Added logs when retrying GPT requests. 2023-07-05 18:24:42 +02:00
Martin Sosic
513d696337 Fixed wrong http error handling. 2023-07-05 17:40:45 +02:00
Filip Sodić
0551983d5f Prevent chat gpt from generating login and signup 2023-07-05 16:23:04 +02:00
Filip Sodić
023478498c Fix typo in actions 2023-07-05 14:05:18 +02:00
Filip Sodić
cd0c5cb1bb
Fix incorrect import and useAction hook usage (#1305) 2023-07-05 11:57:54 +02:00
Martin Sosic
312441579a Improved code a bit for retrying GPT requests. 2023-07-05 01:00:18 +02:00
Martin Sosic
f22e7a87c6 Made ChatGPT retrying more robust (reacts to more http status codes). 2023-07-04 22:32:23 +02:00
Martin Sosic
0d58f24266 Reduced duration and tokens for JSON fixing, fixed removing double imports in operations. 2023-06-30 16:46:17 +02:00
Martin Sosic
b54627bc6e Made Wasp AI even more resistant to invalid JSON being returned from GPT. 2023-06-30 14:45:09 +02:00
Martin Sosic
046a49b709 Improved how we choose to use ChatGPT4. 2023-06-30 02:13:26 +02:00
Martin Sosic
958807f25b Now we use GPT4, if available, for plan. 2023-06-30 01:49:42 +02:00
Mihovil Ilakovac
f6cd3c79fd Use custom color 2023-06-29 22:36:03 +02:00
Martin Sosic
a5323a2e05 Added JSON config via CLI for Wasp AI. 2023-06-29 21:25:23 +02:00
Martin Sosic
005c17cef6 fix 2023-06-29 19:49:57 +02:00
Martin Sosic
cd4563f1e7 Some more prompt fixes. 2023-06-29 19:35:27 +02:00
Martin Sosic
bc3ac4e894 Improved some prompts. 2023-06-29 19:35:27 +02:00
Martin Sosic
84bda360b1 small fix of 403 http status to 401. 2023-06-29 16:56:55 +02:00
Martin Sosic
32c1f08a98 Enriched Operation examples. 2023-06-29 16:53:48 +02:00
Martin Šošić
3b6b6ddf1a
Wasp ai fuller examples (#1300)
* Enriched main.wasp example.

* Enriched examples in the prompts for Plan and for Wasp file.
2023-06-29 15:55:07 +02:00
Mihovil Ilakovac
c209077d20 Page fixing update 2023-06-29 15:32:40 +02:00
Mihovil Ilakovac
88a8f6a2ef Updates prompts: pages fixing, operations fixing 2023-06-29 15:12:48 +02:00
Mihovil Ilakovac
3e6e89d4e3 Adds pages fixing. Improve JSON fixing prompt. 2023-06-29 14:36:55 +02:00
Martin Sosic
20c06bc9e7 fix 2023-06-29 14:00:33 +02:00
Martin Sosic
f989bd7fca Now we do multiple attempts to fix wasp file if there are compile errors left. 2023-06-29 13:36:50 +02:00
Martin Sosic
d553f29f70 Merge branch 'main' into wasp-ai 2023-06-29 12:46:05 +02:00
Craig McIlwrath
c1d86b1f91
Show multiple parse errors from Wasp Analyzer (#1298)
* allow multiple errors to come out of analyzer

basically just plumbing. does add one new thing: all the concrete parse
errors get reported now 🥳

* add statement level error recovery to abstract parser

* add expression level parse recovery

recovers from errors inside dict entries, lists,
and tuples.

* document parser error recovery

* run formatter
2023-06-29 12:34:31 +02:00
Mihovil Ilakovac
a2a41ea0a0 Fixes imports example 2023-06-29 00:23:37 +02:00
Mihovil Ilakovac
1b4e7cd765 Formatting
Signed-off-by: Mihovil Ilakovac <mihovil@ilakovac.com>
2023-06-28 23:51:24 +02:00
Mihovil Ilakovac
f4b76f0e34 Merge branch 'main' into wasp-ai 2023-06-28 23:40:57 +02:00
Mihovil Ilakovac
7caf367d41 Adds Tailwind support. Small prompt adjustments. 2023-06-28 23:40:00 +02:00
Martin Sosic
302936bf7f Added reporting of tokens usage. 2023-06-28 23:19:06 +02:00
Martin Sosic
08c235d12e Added fixing of NodeJS operations files. 2023-06-28 22:04:57 +02:00
Martin Sosic
286117b404 Added fixing of individual Operations. 2023-06-28 20:28:37 +02:00
Martin Sosic
cf8877479c Small fix of plan fixing. 2023-06-28 17:11:33 +02:00
Martin Sosic
1d6277846b Implemented fixing of Wasp file. 2023-06-28 16:48:22 +02:00
Mihovil Ilakovac
feeb9217de Updates data files list 2023-06-28 11:54:28 +02:00
Martin Sosic
5d13b4d607 tiny plan fixing fix. 2023-06-28 11:40:33 +02:00
Martin Sosic
15ce1bf5bb Now new-ai can be called programmaticaly more easily. 2023-06-28 11:25:09 +02:00
Martin Šošić
6c2049ad5a
Added plan fixing. (#1296) 2023-06-28 09:42:08 +02:00
Martin Sosic
349875b242 Upped number of retries for JSON from 1 to 2. Added pretty debugging of chatGPT prompts. 2023-06-27 18:24:12 +02:00
Martin Šošić
69129df3ce
If chatGPT responds with invalid JSON, ask it to fix it. (#1293) 2023-06-27 16:03:06 +02:00
Martin Šošić
3cb1dbd9f9
Update README.md with instructions on updating starter templates before release. 2023-06-27 12:31:36 +02:00
Mihovil Ilakovac
a10e4fdff1 Adds missing basic template files 2023-06-27 10:35:28 +02:00
Martin Sosic
db52fdbeac Merge branch 'main' into wasp-ai 2023-06-26 19:12:41 +02:00
Martin Šošić
466e33d50c
Wasp ai retry (#1288)
* Wasp AI now retries requests to chat GPT.

* Improved retry.

* Got tests for retry working.

* one more test.

* Improved retry tests a bit.

* Finished tests.

* fix
2023-06-26 17:48:08 +02:00
Mihovil Ilakovac
0e5e653832 Add info about Auto CRUD and Websockets to ChangeLog.
Co-authored-by: Craig McIlwrath <craigmc08@gmail.com>
2023-06-26 14:44:32 +02:00