* Support typing backend queries
* Implement types for actions and extract entities
* Add Prisma entities to the frontend
* Add frontend types to internal todoApp
* Undo moving for easier review
* Revert back to generating a query.js file
* Rename buildEntityData
* Fix structural typing bug
* Rename function for making entity json data
* Expand EntityMap to improve readability
* Remove leftover testing artifacts
* Remove wasp prefix from _entityName
* Remove solved todo in schema template
* Fix docs in method
* Adding uninstall command (#953)
* Adding uninstall command
* Updates docs and changelog related to the uninstall command
* Use StrongPath instead of FilePath
* Fix review feedback
* Move prisma client generation messages
* Generalize FileDraft functions
* Generate prisma clients using ENV
* Fix schema checksum check
* Small refactor in db generator
* Run prisma generate from server root dir
* Fix types for useAction
* Fix type error for useAction
* Fix schema generation in Dockerfile
* Refactor passing env vars to prisma schema
* Fix useAction types
* Replace Prelude readFile with SP readFile
* Add comment for prisma/client in web app
* Replace Prelude writeFile with SP writeFile
* Replace do and if with ifM
* Rename readProjectTelemetryFile
* Refactor readOrCreateUserSignatureFile
* Remove redundant comment
* Fix typo in variable name
* Simulate unions with a type class
* Further improve strongpath types
* Add expand types to types index
* Remove redundant comment
* Organize internal type modules
* Fix formatting
* Remove leftover code
* Generate prisma clients after migration
* Change ModuleRootDir to ComponentRootDir
* Remove solved todo
* Improve naming
* Remove redundant env variable
* Improve formatting
* Fix errors after merging
* Include input and output types
* Temporarily delete _types
* Restore _types index
* Add types to queries
* Rename WaspEntity to Entity
* Change local function name
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Rename local function again
* Update changelog
* Fix error type in useQuery
* Rename Component to AppComponent
* Refactor DbGenerator
* Explain Abs paths in SP helpers
* Update e2e tests
* Fix formatting
* Change signature for doesFileExist
* Change signature for SP functions
* Remove redundant do block
* Fix formatting
* Reorder functions
* Rename module to appComponent in functions
* Rename module to component in functions
* Rename telemetry cache function
* Fix formatting
* Update changelog
* Remove redundant import
* Update e2e tests
---------
Co-authored-by: Mihovil Ilakovac <mihovil@ilakovac.com>
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Support typing backend queries
* Implement types for actions and extract entities
* Add Prisma entities to the frontend
* Add frontend types to internal todoApp
* Undo moving for easier review
* Revert back to generating a query.js file
* Rename buildEntityData
* Remove solved todo in schema template
* Fix docs in method
* Adding uninstall command (#953)
* Adding uninstall command
* Updates docs and changelog related to the uninstall command
* Use StrongPath instead of FilePath
* Fix review feedback
* Move prisma client generation messages
* Generalize FileDraft functions
* Generate prisma clients using ENV
* Fix schema checksum check
* Small refactor in db generator
* Run prisma generate from server root dir
* Fix types for useAction
* Fix type error for useAction
* Fix schema generation in Dockerfile
* Refactor passing env vars to prisma schema
* Fix useAction types
* Replace Prelude readFile with SP readFile
* Add comment for prisma/client in web app
* Replace Prelude writeFile with SP writeFile
* Replace do and if with ifM
* Rename readProjectTelemetryFile
* Refactor readOrCreateUserSignatureFile
* Remove redundant comment
* Fix typo in variable name
* Simulate unions with a type class
* Further improve strongpath types
* Generate prisma clients after migration
* Change ModuleRootDir to ComponentRootDir
* Remove solved todo
* Improve naming
* Remove redundant env variable
* Improve formatting
* Fix errors after merging
* Change local function name
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Rename local function again
* Update changelog
* Fix error type in useQuery
* Rename Component to AppComponent
* Refactor DbGenerator
* Explain Abs paths in SP helpers
* Update e2e tests
* Fix formatting
* Change signature for doesFileExist
* Change signature for SP functions
* Remove redundant do block
* Fix formatting
* Reorder functions
* Rename module to appComponent in functions
* Rename module to component in functions
* Rename telemetry cache function
* Fix formatting
---------
Co-authored-by: Mihovil Ilakovac <mihovil@ilakovac.com>
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* feat: add type variable for operation input argument
* Pass where object by name.
* Change default type of operator input to `never`.
* Update e2e checksums.
* Rename operation Result type to Output, remove redundant default types.
---------
Co-authored-by: Bas Dirks <bas.dirks@bettyblocks.com>
* Support typing backend queries
* Implement types for actions and extract entities
* Add CR fixes
* Add type to imports and exports for entities
* Change query extensions back to .js
* Tidy up default arguments for operation types
* Don't throw syntax error when there are no entities
* Update e2e tests
* Fix formatting
* Fix typo in comment
* Update changelog and bump project version
* 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.
* 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>
This patch allows operations to individually specify whether they want
to use or opt out of auth middleware, via an additional `auth` argument
under the actions/queries sections. If left unspecified it is assumed to
be true.
This is addressed by removing the current global auth middleware
registration, and adding it instead to individual operation route
specification.
Now dev dependencies in package.json are no more hardcoded, instead they are generated (like dependencies) from ServerGenerator.hs and inserted as devDepsChunk.
- `wasp db migrate-save` and `wasp db migrate-up` got replaced with `wasp db migrate-dev`.
- Wasp now has a declarative way to express which db is used, postgresql or sqlite: `db { system: PostgreSQL }`.
- Prisma is now at the latest version, 2.21. PSL parser was upgraded to work with this.
- PostgreSQL can now be used for local development.
- We migrated examples/realworld to work with this new version of Wasp.