* 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
* upgrade frontend deps and react to 17
* update examples
* upgrade server deps
* do not upgrade to prisma 4 in this PR
* update e2e
* update pg-boss URLs
* Fix errors in thoughts
* Fix controlled component error in realworld
Co-authored-by: shayneczyzewski <shayne.czyzewski@gmail.com>
* 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>
* 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>
* 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
* Refactor diagnostics
Now stores diagnostics info in the state instead of computing when diagnostics
are being published.
* Refactor Wasp.LSP.State into multiple files
* Move all LSP type imports to qualified
More consistent and more clear where things come from
* Use new concrete parser in diagnostics
Before running full analyzer, runs CST parser to check if it parses correctly
and to collect many parse errors. The CST is always put into the state. Then, if
successful, the full analyzer gets run as before.
* Add basic autocompletion
Always suggests every declaration name in the file, with no context-sensitivity.
* Refactor some names
* Syntax tree traversal code
* Attempt at context-sensitive autocomplete
Not done, but doing some more refactoring before going back to this
* Refactor Control.Syntax.Traverse to use total functions
* Make autocompletion context sensitive
It actually works now
* Miscellaneous code clean up
* Fix incorrect type name
* Fix syntax traversal bug with back
* Remove unreadable symbols from syntax traversal
* Refactor completion code
* Refactor syntax traversal code
* Apply suggestions from code review
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Feedback from code review
* Add tests for Control.Monad.Loops.untilM
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Minor spelling/grammar fixes in getting-started.md
* minor grammar/spelling fixes in new project
* minor spelling/grammar fixes in task-entity.md
* minor spelling/grammar fixes to listing-tasks.md
* minor spelling/grammar fixes in creating-tasks.md
* minor spelling/grammar fixes in updating-tasks.md
* corrections to auth.md
* minor fixes to dependencies.md
* fixes to the-end.md
* fix link
* typo