* 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
* 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
* 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.
* Add first draft of blog post
* Finish article
* finalized filip intro post - added intro + rm martijn post.
* Update web/blog/2022-05-31-filip-intro.md
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Update web/blog/2022-05-31-filip-intro.md
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Update web/blog/2022-05-31-filip-intro.md
Co-authored-by: Matija Sosic <matija.sosic@gmail.com>
* Make final edits to the intro blog post
Co-authored-by: Matija Sosic <matija.sosic@gmail.com>
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* 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
* 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>
* Extract authors to avoid duplication
* Show all blogs in sidebar on web
* Truncate all blog posts to fit on feed
* Change waspleau blog post summary
* Update Waspello tagline
* Remove duplicate Shayne intro line