Commit Graph

547 Commits

Author SHA1 Message Date
Shayne Czyzewski
fc29a891dc
Update example versions (#836) 2022-11-26 10:02:25 -05:00
Filip Sodić
a73870c0a1
Fix database setup after NPM install (#839)
* Fix database setup after installation

* Change function name
2022-11-26 15:27:10 +01:00
Martin Sosic
3078d9831b Quick additional improvement of npm installation progress indicator. 2022-11-25 21:46:01 +01:00
Martin Sosic
d5d2c53d7e npm installation now has nice progress indicator. 2022-11-25 21:32:55 +01:00
Filip Sodić
5da642e8eb
TypeScript fixes before Beta (#831)
* Change typescript modules to esnext

* Fix tsconfigs and use recommended settings

* Fix server not loading env variables

* Fix TS output overwriting error

* Fix wrong types

* Change MainPage.tsx to MainPage.jsx

* Remove duplication for Node tsconfig

* Update e2e tests for TS fixes

* Fix formatting
2022-11-25 20:10:10 +01:00
Filip Sodić
24fb75ffd0
Update e2e tests after supporting TypeScript (#828) 2022-11-24 15:03:19 +01:00
Filip Sodić
784c47c317
Server-side TypeScript support (#827) 2022-11-24 14:38:39 +01:00
Filip Sodić
31df276a25
Client-side TypeScript support (#824)
* Add typescript support to generator

* Change jsconfig to tsconfig for client

* Change Main.js to Main.tsx

* Implement TypeScript support on client

* Fix formatting

* Fixes in actions/index.ts

* Remove extra types from comments

* Update waspc/src/Wasp/Generator/ServerGenerator.hs

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Remove server-specific typescript stuff

* Fix useQuery type

* Add typeroots to client tsconfig

* Improve TypeScript support on client

* Remove tsx extension from template wasp file

* Format code

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
2022-11-24 14:28:37 +01:00
Martin Sosic
ccf3c7199f Npm install now prints more information during wasp start. 2022-11-23 17:46:07 +01:00
Martin Šošić
bb8202109a
wasp version command now prints info how to change version. (#826) 2022-11-23 16:55:12 +01:00
Martin Šošić
4087774d26
Removed alpha messaging. (#825) 2022-11-23 14:33:18 +01:00
Martin Sosic
c3000cf322 improved text in README on test releases. 2022-11-22 20:13:04 +01:00
Martin Sosic
bf5e402e9c Updated README with info on release candidates. 2022-11-22 19:57:38 +01:00
Martin Sosic
a8c2bd0e80 fixed e2e tests, fixed release script. 2022-11-22 19:31:43 +01:00
Martin Sosic
61b0d668b3 Updated release script. 2022-11-22 19:13:36 +01:00
Martin Sosic
7243b3ad70 Bumped Wasp version to 0.7.0 2022-11-22 19:12:19 +01:00
Shayne Czyzewski
8b4d21ec4c
Update Prisma to latest version (#806) 2022-11-16 09:11:22 -05:00
Shayne Czyzewski
52e710494f
Update default favicon (#815) 2022-11-16 06:57:18 -05:00
Filip Sodić
2fe7398462
Adapt example apps to project struct change (#809)
* Separate ext code to client and server

* Use skeleton in createNewProject and refactor

* Refactor Lib.hs to use ExceptT

* Fix formatting

* Pop up returns

* Extract liftIO and add a do block

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>

* Address some review comments

* Add skeleton comment

* Extract common CommandError message

* Separate skeleton comment into two rows

* Move server and client dirs into src

* Simplify maybeToEither

* Further refactor Lib.hs

* Further simplify skeleton comment

* Add shared code directory to project structure

* Update e2e test inputs

* Update e2e test outputs

* Fix formatting

* Fix bug in compile function

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Change map to fmap in compile function

* Fix formatting

* Force git to include empty directories

* Remove extra empty line from .gitkeep files

* Add .jsconfig to enable go-to-definition

* Watch shared directory for changes

* Add final newline to jsconfigs

* Fix regular and e2e tests

* Update e2e tests

* Fix cli template packaging and update todoApp

* Add a shared function demo to todoApp

* Update waspc and e2e tests

* Fix compiler warnings and rename function

* Rename mkError to mkParserError

* Remove redundant empty line

* Fix test warnings

* Fix formatting

* Update waspc.cabal with jsconfigs

* Minimize jsconfig.json files

* Add jsconfigs to waspc todoApp

* Update e2e tests

* Update e2e tests

* Update docs for new project structure

* Update todoApp example to new structure

* Update ItWaspsOnMyMachine

* Update thoughts

* Update Waspello to new structure

* Update Waspleau to new structure

* Update Realworld to new structure, fix warnings

* Fix directory tree watching on wasp start

* Implement review feedback

* Fix typo in docs

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>

* Fix typo in docs

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>

* Fix another typo in docs

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>

* Add src prefix to file path in docs

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>

* Remove env server file

* Apply suggestions from code review

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>

* Address code review comments

* Fix incorrect path in docs

* Fix references to ext in docs

* Edit changelog and add migration guide

* Further update docs to new structure

* Update blogs about example apps to new structure

* Fix typo in docs

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>

* Update typo on frontpage

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>

* Add missing src in docs

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
2022-11-11 18:58:29 +01:00
Filip Sodić
67eca7ecf6
Add peek and go to definition for JS files (#795)
* Separate ext code to client and server

* Use skeleton in createNewProject and refactor

* Refactor Lib.hs to use ExceptT

* Fix formatting

* Pop up returns

* Extract liftIO and add a do block

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>

* Address some review comments

* Add skeleton comment

* Extract common CommandError message

* Separate skeleton comment into two rows

* Move server and client dirs into src

* Simplify maybeToEither

* Further refactor Lib.hs

* Further simplify skeleton comment

* Add shared code directory to project structure

* Update e2e test inputs

* Update e2e test outputs

* Fix formatting

* Fix bug in compile function

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Change map to fmap in compile function

* Fix formatting

* Force git to include empty directories

* Remove extra empty line from .gitkeep files

* Add .jsconfig to enable go-to-definition

* Watch shared directory for changes

* Add final newline to jsconfigs

* Fix regular and e2e tests

* Update e2e tests

* Fix cli template packaging and update todoApp

* Add a shared function demo to todoApp

* Update waspc and e2e tests

* Fix compiler warnings and rename function

* Rename mkError to mkParserError

* Remove redundant empty line

* Fix test warnings

* Fix formatting

* Update waspc.cabal with jsconfigs

* Minimize jsconfig.json files

* Add jsconfigs to waspc todoApp

* Update e2e tests

* Update e2e tests

* Fix directory tree watching on wasp start

* Implement review feedback

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
2022-11-11 17:38:38 +01:00
Filip Sodić
86e0893d6f
Separate user code into client, server, shared (#753)
* Separate ext code to client and server

* Use skeleton in createNewProject and refactor

* Refactor Lib.hs to use ExceptT

* Fix formatting

* Pop up returns

* Extract liftIO and add a do block

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>

* Address some review comments

* Add skeleton comment

* Extract common CommandError message

* Separate skeleton comment into two rows

* Move server and client dirs into src

* Simplify maybeToEither

* Further refactor Lib.hs

* Further simplify skeleton comment

* Add shared code directory to project structure

* Update e2e test inputs

* Update e2e test outputs

* Fix formatting

* Fix bug in compile function

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Change map to fmap in compile function

* Fix formatting

* Force git to include empty directories

* Remove extra empty line from .gitkeep files

* Watch shared directory for changes

* Fix regular and e2e tests

* Fix cli template packaging and update todoApp

* Add a shared function demo to todoApp

* Update waspc and e2e tests

* Fix compiler warnings and rename function

* Rename mkError to mkParserError

* Remove redundant empty line

* Fix test warnings

* Fix formatting

* Fix directory tree watching on wasp start

* Implement review feedback

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
2022-11-11 17:20:49 +01:00
Filip Sodić
6d0e81e757
Don't require golden dirs before e2e:accept-all (#800) 2022-11-07 17:07:47 +01:00
Martin Sosic
33699b5e53 Updated our new-release script to work with semver versions. 2022-11-07 13:24:35 +01:00
Shayne Czyzewski
e0fd8975a9
Fix warnings in tests (#801) 2022-11-06 08:26:53 -05:00
Martin Šošić
d9fc27bcde
Improved how Wasp prints output of underlying processes. (#794) 2022-11-04 19:57:34 +01:00
Martin Šošić
26f45942f8
If wrong wasp version, message gives instructions how to install correct one. (#799)
* If wrong wasp version, message gives instructions how to install correct one.

* fix
2022-11-04 19:24:51 +01:00
Shayne Czyzewski
fa9f487e2a
Adds opt-in support for Tailwind (#777) 2022-11-04 09:39:13 -04:00
Martin Šošić
7c45475601
Detect when jobs quiet down and print compiler warnings/errors. (#781)
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>

Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
2022-11-01 22:43:39 +01:00
Anthony Suárez
0cde880f24
Feat: Validate wasp version from spec (#786)
* Add wasp field to AppSpec.App

* Validate app.wasp.version in AppSpec.Valid

* Add app.wasp.version field on .wasp file generated by CreateNewProject

* Add app.wasp.version to .wasp files of e2e tests

* Add app.wasp.version to examples' .wasp files

* Add app.wasp.version to docs

* Change waspc version from 0.6.0.0 to 0.6.0

* Change app.wasp.version validation to use regular semver

* Format code

* Refactor app.wasp.version validation

* Refactor app.wasp.version validation

* Update supported app.wasp.version format in docs

* Add TODO to validateWaspVersion

* Refactor app.wasp.version using toEnum

* Create Wasp.Version module with waspVersion constant

* Fix parseWaspVersionRange regex

Fixed:
  - The regex wasn't checking the string *starts* with ^.
  - The . symbols were not escaped.
  - The $ token is not specified as supported in the regex-tdfa docs.
    \' is used instead.

* Add comment explaining wasp version validation restrictions

* Use Wasp.Version.waspVersion instead of Paths_wasp.version
2022-10-31 23:00:03 +01:00
Shayne Czyzewski
51b7f0d42c
Updates node/npm to current LTS (#788) 2022-10-31 08:08:50 -04:00
Filip Sodić
1b129188b0
Update React Query to version 4 (#782)
* Update to React Query 4, pass 1

* Fix array key for React Query 4

* Fix logout bug after React Query 4 update

* Update e2e tests
2022-10-25 11:41:03 +02:00
Martin Sosic
bbb0f36879 Revert "Add user-friendly error when DATABASE_URL envar is not set (#743)"
We are doing this because we forgot to account for .env files,
so we redundant warnings.

This reverts commit f6da4f8899.
2022-10-21 18:17:29 +02:00
Shayne Czyzewski
dc036f56cd
Updates CRA from v4 to v5 (#771) 2022-10-19 10:39:45 -04:00
Hari Sankar
76e43b3685
Add information of completion command in wasp help (#256) (#766)
* Add information of completion command in `wasp help` (fix #256)

* Fix syntax error

* Move completion command under GENERAL
2022-10-19 09:46:15 +02:00
Steven Garcia
c018d284a9
Update Wasp CLI bash completion list (#765)
* Update Wasp CLI bash completion list

* Add completion and completion:generate to commands

Co-authored-by: sgarcia <sgarcia@pop-os.localdomain>
2022-10-19 09:44:00 +02:00
Steven Garcia
f6da4f8899
Add user-friendly error when DATABASE_URL envar is not set (#743)
Co-authored-by: sgarcia <sgarcia@pop-os.localdomain>
2022-10-18 11:58:21 +02:00
Ankesh
ac625d964f
Remove trailing slash from Wasp backend URL (#749)
* Add trailing slash note in deploying document

* Remove trailing slash, if present in the wasp backend URL

* e2e-test for trailing slash fix

* e2e test for trailing slash in wasp backend url

* Fix e2e-tests checksums

Co-authored-by: Filip Sodić <filip.sodic@gmail.com>
2022-10-18 01:31:39 +02:00
InfiniteVerma
c6b61ce573
Checks for duplicate FileDraft _dstPath during generation (#733) 2022-10-17 10:59:24 -04:00
Steven Garcia
e2fe5b2402
Fix compiler warnings in tests (#764)
Co-authored-by: sgarcia <sgarcia@pop-os.localdomain>
2022-10-17 01:32:44 +02:00
Filip Sodić
8cd5220293
Remove rudandant aboslute API URLs (#755)
* Remove rudandant aboslute API URLs

* Remove redundant imports from js files

* Update e2e tests
2022-10-14 15:16:35 +02:00
Shayne Czyzewski
8fc6fd1836
Adds support for Dockerfile customization (#732) 2022-10-13 12:46:07 -04:00
Shayne Czyzewski
a84f3547fa
Fixes login issue for uppercase usernames (#751) 2022-10-13 12:04:45 -04:00
Shayne Czyzewski
4cdc06dd13
Warn if .env file found (#746) 2022-10-06 13:23:40 +02:00
Peter Reshetin
3f63340fc1
feat: separate env vars for server and client (#683) 2022-10-06 12:51:28 +02:00
Filip Sodić
b470d50be8
Generalize WriteableMonad (#742)
* Fix unused variable warning (#736)

* Generalize WriteableMonad functions

* Format code and remove redundant imports

* Improve MockWriteableMonad with RankNTypes
2022-10-04 11:05:52 +02:00
Max Khamrovskyi
75245747d2
Docs update for Hacktoberfest (#731)
* Initial docs update for Hacktoberfest

* Contributing.md update

* Update "Before you begin" section

* Update web/docs/tutorials/dev-excuses-app/creating-the-project.md

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Update web/docs/tutorials/dev-excuses-app/updating-main-page-js-file.md

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Update CONTRIBUTING.md

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Update web/docs/tutorials/dev-excuses-app/modifying-main-wasp-file.md

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Update the section names

* Update CONTRIBUTING.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/tutorials/dev-excuses-app/updating-main-page-js-file.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/contributing.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/contributing.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/contributing.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Add Discord component and some minor fixes

* Add unclear notice

* Update web/docs/pick-a-tutorial.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/tutorials/dev-excuses-app.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/tutorials/dev-excuses-app.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/tutorials/dev-excuses-app.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/tutorials/dev-excuses-app/modifying-main-wasp-file.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/getting-started.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/tutorials/dev-excuses-app/modifying-main-wasp-file.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Review updates

* Update web/docs/tutorials/dev-excuses-app/modifying-main-wasp-file.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update suggestion

* Update web/docs/tutorials/dev-excuses-app/perform-migration-and-run.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update web/docs/tutorials/dev-excuses-app/perform-migration-and-run.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update

* Update web/docs/tutorials/dev-excuses-app/updating-main-page-js-file.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Remove lines

* Update CONTRIBUTING.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update getExcuse function

* Update page naming convention

* Remove Main.css

* Update migration text

* Update image

* Update "Wasp's compiler is built with Haskell"

* Add tutorials description

* Update web/docs/pick-a-tutorial.md

Co-authored-by: Matija Sosic <matija.sosic@gmail.com>

* Update Discord link and tutorial ending

* Update links

Co-authored-by: mkhamrov <mkhamrov@redhat.com>
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
Co-authored-by: Matija Sosic <matija.sosic@gmail.com>
2022-09-30 15:31:09 +03:00
Martin Sosic
62c31f26ff Added extra step to our release process in README.md. 2022-09-29 16:16:29 +02:00
Filip Sodić
31391ee2dc Fix unused variable warning (#736) 2022-09-29 16:04:08 +02:00
Martin Sosic
1b65f042b0 Updated wasp version to 0.6.0.0. 2022-09-29 12:06:32 +02:00
Martin Sosic
da9074e093 fixed new-release script to work with release branch. 2022-09-29 12:06:14 +02:00
Martin Sosic
f0dd465c84 Updated ChangeLog. 2022-09-29 11:59:49 +02:00
Filip Sodić
fbf6de0d4d
Fix flickering UI in optimistic updates (#668)
* Fix query cache key generation issue

* Make waspc/todoApp return tasks in consistent order

* Implement basic support for optimistic updates

* Fix query cache key generation issue again

* Add action counter to prevent flickering updates

* Add remove todo to action counter

* Count only optimistically updated cache keys

* Make waspc/todoApp return tasks in consistent order

(cherry picked from commit 57606c74e4)

* Reduce duplication in frontend actions and queries

* Fix formatting

* Fix optimistic updates after merge

* Experimenting

* Hash queries before counting

* Rename parameters in counter

* Add task done toggling to task page

* Fixes after merge

* Fix wrong condition in example todo app

* Simplify counter with react-query's internal hash

* Remove console log and add notes

* Clear up some todos and tidy up

* Fix formatting

* Remove leftover todo

* Fix a bug that caused double action calls

* Simplify query key hashing function

* Revert accidental blog changes

* Revert accidental blog changes

* Apply optimistic updates on each query response

* Clean up code for optimistic updates

* Clean up more code for optimistic updates

* Remove redundant optimistic update tuple list

* Rename query to queryKey

* Return previous data from onMutate

* Move counter into the constructor function

* Move updatesHandler into the constructor function

* Remove debug logs from optimisticUpdatesMap

* Rename and refactor optimistic updates

* Fix typo in comments

* Remove the option to directly specify query key

* Remove flickering fixes for optimistic updates

* Add optimistic updates to Task.js

* First round of code review feedback

* Remove react query's additional options from hook

* Futher review feedback and code docs

* Fix and document error handling for optimistic updates

* Fix formatting and remove comment

* Further document optimistic update mechanisms

* Fix memory leak in updates handler map

* Update optimistic update docs

* Improve comment for useAction

* Further improve comments in actions/index

* Heavily comment actions/index

* Fix capitalization in action/index

* Add types to actions/index

* Fix jsdoc types in actions/index

* Comment testing sleeps

* Comment sleep function in todoApp/ext/actions

* Properly handle type errors in actions/index

* Fix formatting in actions/index

* Rename an argument in actions/index

* Move updateFn change to optimistic update instantiation

* Extract common functionality in actions/index

* Reuse common functionality for optimistic updates

* Fix formatting in actions/index

* Comment the internal action mechanism

* Add jsdoc types to actions/index

* Revise jsdoc in actions/index

* Document makeOptimisticUpdateMutationFn

* Add updateQuery constraints

* Address PR comments

* Update e2e tests

* Mention optimistic updates in cache invalidation

* Further elaborate updateQuery constraints

* Update e2e tests
2022-09-22 00:17:00 +02:00
Filip Sodić
4a94c9851e
Implement optimistic updates
* Remove flickering fixes for optimistic updates

* Add optimistic updates to Task.js

* First round of code review feedback

* Remove react query's additional options from hook

* Futher review feedback and code docs

* Fix and document error handling for optimistic updates

* Further document optimistic update mechanisms

* Update optimistic update docs

* Improve comment for useAction

* Further improve comments in actions/index

* Heavily comment actions/index

* Fix capitalization in action/index

* Add types to actions/index

* Fix jsdoc types in actions/index

* Comment testing sleeps

* Comment sleep function in todoApp/ext/actions

* Properly handle type errors in actions/index

* Fix formatting in actions/index

* Move updateFn change to optimistic update instantiation

* Extract common functionality in actions/index

* Fix formatting in actions/index

* Add jsdoc types to actions/index

* Revise jsdoc in actions/index

* Address PR comments

* Update e2e tests

* Mention optimistic updates in cache invalidation
2022-09-21 17:40:06 +02:00
Shayne Czyzewski
b965dfeb30
Works around sodium-native bug to support Heroku deploys (#729) 2022-09-20 10:51:47 -04:00
Shayne Czyzewski
40041ff42b
[CLI] Prisma migration warning improvements (#682) 2022-09-16 10:12:15 -04:00
Shayne Czyzewski
1a7a04b87c
Updates React to 17, plus some other minor version updates (#720) 2022-09-16 09:55:26 -04:00
Martin Šošić
65648f7bb4
fix (#718) 2022-09-08 15:28:24 +02:00
Martin Šošić
99487ff2f7
waspls is now part of waspc (#716) 2022-09-08 13:56:37 +02:00
Shayne Czyzewski
6cd38b0f94
Adds Google as an authentication method (#669) 2022-09-06 14:35:59 -04:00
Martin Šošić
eb69deb348
Removed duplication between waspls and waspc, made them two packages in the same cabal project (#712) 2022-09-06 14:10:42 +02:00
Prat
51d7f30b97
Add support for kebab-case in project name (#590) (#700)
* Add support for kebab-case in project name (#590)

* clean up kebab case naming (#590)

* clean up code for create new project (#590)

* clean up code for kebab-name project (#590)

Co-authored-by: Prat T <pt2121@users.noreply.github.com>
2022-09-02 11:54:25 +02:00
Filip Sodić
9af898f570
Add missing module prefix to fix the CI build (#707) 2022-08-26 18:09:32 +02:00
Martin Šošić
8cc63a85a5
Make SemanticVersion module more expressive
* First try.

* first version that compiles.

* Added range function.

* fixed tests.

* Fixed order of funcions in the code.

* fix

* Simplify semantic version module

* Change qualified import name for SV

Co-authored-by: Filip Sodić <filip.sodic@fer.hr>
2022-08-26 16:46:55 +02:00
Shayne Czyzewski
bc92b024e1
Renames auth method EmailAndPassword to UsernameAndPassword (#696) 2022-08-24 10:32:46 -04:00
Martin Šošić
75ce7db663
Fix incorrect parsing of escaped strings in Wasp (#699)
* Fixed incorrect handling of escaped strings in parser.

* Refactored Parser golden tests a bit.

* Moved PrettyPrinter for Parser AST to Parser.

* fix
2022-08-23 14:01:00 +02:00
Shayne Czyzewski
d827d05d96
Jobs callback function updates (#676) 2022-08-17 13:53:05 -04:00
Shayne Czyzewski
f06e9894a9
[docs] Updates READMEs with new branching and merging model (#695)
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
2022-08-17 11:42:32 -04:00
Craig McIlwrath
0de0855787
Integrate new error resilient parser into waspc (#684)
* Add CST parsing code into waspc

* Implement CST -> AST conversion

* Implement parseExpression & isValidWaspIdentifier

* Implement golden tests for Parser

* Configure CI git checkout to always use LF line endings
2022-08-11 12:26:12 -04:00
h4r1337
3c4f59692b
Updates examples/todoApp (#679)
* Update examples/todoApp - fix #678

* Changed HttpError from 403 to 401

* Updated HttpError from 401 to 404
2022-07-27 15:16:06 -04:00
Martin Sosic
8bae408298 Hide e2e golden files in Github. 2022-07-19 18:16:39 +02:00
Filip Sodić
67562e32cc
Remove undefined values from query keys (#671)
* Remove undefined values from query keys

* Update e2e tests
2022-07-18 14:18:06 +02:00
Martin Sosic
a0299febbc Updated wasp version to 0.5.2.1. 2022-07-14 22:58:33 +02:00
Martin Sosic
496da79f50 Added version 0.5.2.1 to Changelog. 2022-07-14 22:57:51 +02:00
Shayne Czyzewski
d5a9039722
Work around versioned package NPM bug (#661) 2022-07-07 10:37:48 -04:00
Filip Sodić
d1bea1c513
Add task status toggling to task page in todo app (#664)
* Add task done toggling to task page

* Fix wrong condition in example todo app
2022-07-06 23:13:35 +02:00
Shayne Czyzewski
9f7d212b8c
Fix User model name assumption (#660) 2022-07-01 08:18:40 -04:00
Martin Šošić
25a1b991ef
Now waspc assumes all files to be UTF8 regardless of OS'es default locale. (#653) 2022-06-28 19:48:02 +02:00
Martin Šošić
ec032e74e6
Touched-up deployment and related instructions. (#651) 2022-06-28 13:54:55 +02:00
Martin Šošić
12c0e7b1f0
Added ./run cmd + README section for accepting e2e test changes. (#644) 2022-06-23 20:09:21 +02:00
Martin Sosic
90571c0298 Updated wasp version to 0.5.2.0. 2022-06-23 14:19:43 +02:00
Martin Šošić
4f22ea1c08
Updated Prisma to 3.15.2. Fixes #629. (#643) 2022-06-23 14:18:13 +02:00
Martin Sosic
2a1fae3ecd Updated CHANGELOG for v0.5.1.0. 2022-06-17 17:24:19 +02:00
Martin Sosic
a3acc62f74 Updated wasp version to 0.5.1.0. 2022-06-17 17:08:29 +02:00
Martin Šošić
62f0a76937
Limited Wasp version to ^16.0.0 && <=16.15.0 (#634)
* Limited Wasp node version to ^16.0.0 && <=16.15.0.

In the process, I removed .nvmrc files from generated code and
refactored SemanticVersion to follow npm spec.
I also updated CI to use node 16.15.0, and not any 16.
I also updated docs.
2022-06-17 17:02:54 +02:00
Filip Sodić
fdd8e47b25
Reduce duplication when creating frontend queries and actions (#633)
* Make waspc/todoApp return tasks in consistent order

(cherry picked from commit 57606c74e4)

* Reduce duplication in frontend actions and queries

* Fix formatting

* Update e2e tests to include queries/core
2022-06-17 14:35:01 +02:00
Filip Sodić
5e5b264448
Make waspc/todoApp return tasks in consistent order (#632)
(cherry picked from commit 57606c74e4)
2022-06-16 14:50:02 +02:00
Filip Sodić
0b78f658be
Implement support for query client configuration (#612)
* Implement support for query client configuration

* Make sure query client is always initialized

* Fix formatting

* Fix formatting

* Add missing await in index.js

* Separate query client setup into two functions

* Introduce default query client config

* Fix missing export in docs

* Fix missing field warnings

* Add query client setup docs

* Update e2e tests for query client config
2022-06-09 10:37:19 +02:00
Shayne Czyzewski
4d57213e18
Move react-error-overlay into dependencies (#626)
* Move react-error-overlay to dependencies

* fix e2e

Co-authored-by: shayneczyzewski <shayne.czyzewski@gmail.com>
2022-06-07 18:35:52 +02:00
Shayne Czyzewski
d5a0e322d4
Fix unresponsive UI on server reload (#621) 2022-06-03 16:38:21 -04:00
Shayne Czyzewski
a264d2ee29
Make warnings filterable to avoid redundant messages (#610) 2022-06-02 14:04:57 -04:00
Modotte
f8c775923d
Modularize Lexer.x (#599)
* Modularize Lexer.x

Extract utility functions from Lexer.x into a separate file.

* Move more utilities out of Lexer.x

* Fix hlint and ormolu warnings
2022-05-24 17:57:05 +02:00
Filip Sodić
59c714111e
Support for the client setup function (#595)
* Add clientSetup support to analyzer and tidy up generator

* Add clientSetup support to generator

* Add tests for client setup function and tidy up

* Address PR comments for client setup function

* Clean up server and web app generators

* Document react query invalidation on logout

* Update e2e tests after query client cache clean

* Fix syntax error in exmaple app

* Remove leftover todos

* Fix formatting

* Fix formatting

* Fix tests for client setup function

* Update e2e test

* Fix todos in templates

* Add docs for client setup

* Fix docs typo

* Fix docs typo

* Fix docs typo

* Fix docs typo

* Update e2e test
2022-05-20 14:49:26 +02:00
Martin Sosic
a6f5a7d7b2 Updated wasp version to 0.5.0.0. 2022-05-18 12:55:22 +02:00
Martin Sosic
cda64a3d46 Added v0.5 to the CHANGELOG. 2022-05-18 12:54:42 +02:00
Shayne Czyzewski
4de7d16331
Adds cron support to pg-boss Jobs and documentation (#586) 2022-05-13 12:30:55 -04:00
Shayne Czyzewski
f14be11fc3
Add pg-boss as a Job executor (#582)
Note: This does not provide cron support, that is coming in the next PR.
2022-05-03 14:34:25 -04:00
Shayne Czyzewski
a5f86524e0
Changes python to python3 in Dockerfile (#577) 2022-04-21 08:33:49 -04:00
Martin Šošić
4ee7cebc36
Context and user id can now be passed to our telemetry. (#564)
* Added 'context' field to our telemetry, specifically to recognize when Wasp is running on Gitpod.

* Telemetry user id can now be specified via ENV var.

* Improved user signature obtaining code a bit.

* Added fromMaybeM.
2022-04-15 18:46:47 +02:00
Filip Sodić
50d806daa6
Update React Query to v3 (#554)
* Apply minor syntax fixes to templates

* Fix Wasp react app warnings

* Fix small bug in waspc todo app

* Rearrange functions in RouterGenerator

* Migrate react-query to v3

* Collapse config in react query

* Update e2e tests after react-query migration

* Rename function in RouterGenerator

* Update job tests
2022-04-15 11:23:15 +02:00
Shayne Czyzewski
43043708b3
Adds output for new Job golden test. (#557) 2022-04-13 12:46:51 -04:00
Shayne Czyzewski
adcb15a41c
Adds a simple pass-through Jobs implementation. (#553) 2022-04-13 12:30:29 -04:00
Martin Sosic
801ba69e54 Increased resolution of module graph produced by run script. 2022-04-13 14:19:17 +02:00
Phil de Joux
45a1ffd5c5
Change NOTE to a warning. (#552) 2022-04-06 21:09:33 +02:00
Shayne Czyzewski
302fcc11d8
Adds support for basic Wasp job DSL parsing (#540) 2022-04-06 10:07:45 -04:00
Phil de Joux
f9008e81bf
Add a warning in the project file to run cabal update. (#526) 2022-04-06 15:10:11 +02:00
Shayne Czyzewski
f91dbdc6fa
Change termination method of spawned processes on *nix (#524) 2022-03-31 11:55:42 -04:00
Filip Sodić
b3d9014e37
Allow Wasp identifiers for project names (#520)
* Allow Wasp identifiers for project names

* Rename initialState to makeInitialState

* Fix formatting

* Use parser to parse Wasp identifiers

* Add newline at the end of Wasp.Analyzer.Parser

* Fix newline at the end of Wasp.Analyzer.Parser

* Clean up and rename parsing

* Fix newline at the end of Wasp.Analyzer.Parser

* Add tests for new parser functions

* Fix formatting

* Fix formatting

* Reformat where statement

* Address PR comments and remove redundant module

* Remove keywords from error message

* Fix formatting in CreateNewProject.hs

* Remove redundant note on duplication
2022-03-30 01:25:56 +02:00
Shayne Czyzewski
52ec8d7232
Improve performance of writing FileDrafts (#506)
Closes #503 

Co-authored-by: Martijn Faassen <martijn@wasp-lang.dev>
2022-03-29 08:53:28 -04:00
Shayne Czyzewski
31b01838ae
Add missing react-app data-files (#529)
Co-authored-by: shayneczyzewski <shayne.czyzewski@gmail.com>
2022-03-28 19:26:37 +02:00
Shayne Czyzewski
a4a2b03a81
Swap cabal freeze file for index-state (#519) 2022-03-24 08:50:14 -04:00
Filip Sodić
52badd651e
[Analyzer] Reverse the order of Wasp error messages (#500)
* Reverse the order for TypeError messages

* Remove redundant import and unused pragma

* Remove redundant import and unused pragma

* Reverse additional type error messages

* Remove redundant import

* Format util test file

* Address PR comments

* Add empty line to TypeError.hs

* Address PR comments

* Format TypeError.hs

* Reverse message order in evaluation errors

* Extract common error message functions

* Add tests for EvaluationErrors

* Improve naming in Wasp.ErrorMessage

* Fix formatting

* Fix formatting

* Format code

* Change naming and syntax in ErrorMessage

* hange names in EvaluationError tests

* Add full stops to documentation

* Fix formatting in tests
2022-03-23 13:18:43 +01:00
Shayne Czyzewski
1995ccdb9d
Make CLI code testable (#510) 2022-03-23 08:04:09 -04:00
Phil de Joux
318eb03294
Edit of setup section around ghcup and with-compiler. (#511) 2022-03-22 15:19:22 +01:00
Filip Sodić
8a3fba8831
Require LTS version of Node for Wasp (#504)
* Require LTS node and npm on client and server

* Update node and npm versions in the docs

* Add npmrc and nvmrc to WebAppGenerator

* Change function name in test

* Add newline to nvmrc

* Add newline to Common.hs

* Remove extra empty line in nvmrc

* Remove extra empty line in Common.hs

* Update end to end tests for node LTS

* Add newline at the end of server/nvmrc

* Ensure Node version 16 in CI

* Fix broken ci file

* Change how Wasp specifies required versions

* Fix formatting

* Use type alias for semantic versions

* Remove incorrect comment on Prisma LTS

* Update e2e checksums

* Fix typo in gitignore

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>

* Sort e2e checksums

* Extract semantic version to its module

* Fix formatting

* Fix formatting again

* Add comment explaining nvmrc

* Add tests and change semver naming

* Add natural numbers and formatting to semver

* Add newline at the end of semver module

* Add missing space to node mismatch message

Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
2022-03-21 15:00:19 +01:00
Phil de Joux
790a9b609e
Remove duplicate hlint ignore. (#514) 2022-03-18 12:46:11 +01:00
Martin Sosic
e40c664e20 Removed leftover package.yaml. 2022-03-18 12:43:02 +01:00
Phil de Joux
08704f4117
Follow hlint suggestions. (#513) 2022-03-18 12:33:37 +01:00
Martin Sosic
7865110085 Constrained versions of dev tools (ormolu, hlint, stan). 2022-03-17 17:58:30 +01:00
Martin Šošić
da8d3a1d85
Check in CI that cabal freeze file is up to date. (#508) 2022-03-17 14:22:58 +01:00
Martin Sosic
27a22fcf3e Added command to ./run for printing module graph of our code. 2022-03-17 14:20:59 +01:00
Martin Šošić
2a16bfd3cf
App spec validation (#459) 2022-03-17 12:36:36 +01:00
Martin Sosic
ac0567fa6a Added some more info about how we parallelize cabal compilation. 2022-03-16 22:27:35 +01:00
Martin Šošić
857912c2cc
Migrated Wasp from Stack to Cabal (#471)
Co-authored-by: shayneczyzewski <shayne.czyzewski@gmail.com>
2022-03-16 16:00:18 +01:00
Shayne Czyzewski
038ae0132f
Ensure .waspchecksums file is sorted (#507) 2022-03-15 20:51:50 -04:00
Shayne Czyzewski
8bc004ef29
Makes Wasp smarter when writing over existing generated files (#486)
Closes #209
2022-03-15 07:43:52 -04:00
Filip Sodić
5c6c10dc46
Add function definition rules to code style guide (#502) 2022-03-10 17:57:10 +01:00
Martijn Faassen
b6f738416a
Use send message protocol in cli (#493)
Use cliSendMessage everywhere in CLI

Instead of using waspSays and friends, we use the new cliSendMessage protocol everywhere to
send messages. For convenience we introduce a cliSendMessageC that's lifted to commands.

We handle CommandErrors specially now, and have a special way to display errors (failures) and warnings
with a heading.
2022-03-09 15:43:41 +01:00
Shayne Czyzewski
f68c2d5a8b
Remove python2 dependency from e2e and update README (#497) 2022-03-09 07:46:41 -05:00
Shayne Czyzewski
f24ed0d347
Fixes database setup message type (#488) 2022-03-04 15:38:07 -05:00
Shayne Czyzewski
4ecc46eab3
Adds golden output dirs for E2E testing (Part 2) (#475) 2022-03-01 15:42:31 -05:00
Shayne Czyzewski
84821005f4
Adds E2E CLI testing support via Golden Tests (Part 1) (#470) 2022-03-01 15:00:51 -05:00
Martin Šošić
8c3f60a617
Added instructions to publish docs on new release. 2022-03-01 12:05:45 +01:00
Shayne Czyzewski
9d060d7428
Check for main branch in new-release script (#476) 2022-02-25 07:40:28 -05:00
Martijn Faassen
f944f0beb3
Send messages from the setup phase (#472)
We introduce a SendMessage protocol. 

We implement it in the CLI as that knows how to send messages. We also pass it into the generator so that it can reach the setup phase. There we use it to emit messages on the CLI.
2022-02-24 12:20:37 +01:00
Shayne Czyzewski
22cdd5b70a
Added release process notes to README (#474) 2022-02-23 13:59:56 -05:00
shayneczyzewski
c1bf9bff4a Updated wasp version to 0.4.0.0. 2022-02-23 11:19:45 -05:00
Shayne Czyzewski
4bf9cc93e3
Added CHANGELOG entry for 0.4.0.0 (#473) 2022-02-23 08:21:40 -05:00
Martin Sosic
600e4eace6 Added a bit on TODO/NOTE in code style guide. 2022-02-22 18:37:43 +01:00
Martin Sosic
16632fb74c Added code style guide to waspc/README.md. 2022-02-22 17:57:14 +01:00
Martijn Faassen
540a4d0ded
Do npm install as part of generation process, only when needed (#464)
Create a seperate runSetup function

This does the `npm install` (if required) and the database setup.

Since this is now happening in the generation phase, this means we don't need
`compileAndSetup` anymore.

Since compile now sets up the dependencies, we only need to compile in any db command

Reworked the naming and types of combining the various dependencies.
2022-02-18 17:23:14 +01:00
Martijn Faassen
2b050fb9c7 Fix error handling bug
Errors were not properly handled as `error` was not bound
2022-02-16 18:42:11 +01:00
Shayne Czyzewski
09a72a7e1a
Upgrade Prisma to version 3.9.1 (#452) 2022-02-11 17:55:41 -05:00
Martijn Faassen
830bb43be1 We can compare PackageJsonDependencies independent of dependency order
Use an explicit Ord to enforce dependencies are compared by name.
2022-02-11 11:05:02 +01:00
Martijn Faassen
27b3c83f7a Introduce combinePackageDependencies
This is the base operation used now to combine package dependencies. It
knows about dev dependencies too. I've adjusted the code for
both web app and server to use this.

I've factored out commonalities in error handling into PackageJsonGenerator

We now support devDependencies for web app and in the deps command

We also have nicer functions to generate the package json entries
directly from the PackageJsonDependencies structure
2022-02-11 11:05:02 +01:00
Shayne Czyzewski
f0ec477dbd
fix: error when running prisma generate without entities (#457) 2022-02-10 07:24:50 -05:00
Martijn Faassen
55d9e1bbd8
Resolve dependencies refactor (#449)
Create a new resolveDependencies

Use Map to do differences between Wasp and user package.json dependencies.

This is now used internally in resolveNpmDeps.

Also fixes a bug in the conflict error message, where the wasp and user dependency
were previously not properly distinguished.

Add .vscode and move everything that appears text editor related to a section
2022-02-09 14:02:19 +01:00
Martijn Faassen
8a97732c71
Merge pull request #450 from wasp-lang/269-compile-and-npm-install
269 compile and npm install
2022-02-08 17:12:53 +01:00
Martin Sosic
a0b7477d19 Renamed all references to master branch into main branch. 2022-02-08 15:34:32 +01:00
Martijn Faassen
91a40a6105 Revert to the previous behavior for now.
Leave comments in place on what to do once we can skip `npm install`.
2022-02-08 11:00:24 +01:00
Shayne Czyzewski
2ccc0408c4
Adds Prisma client generation during app generation (#444)
Closes #427
2022-02-07 15:09:22 -05:00