* 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
* 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.
* 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
* 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
* 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.
* 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
* 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
* 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
* 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>