Commit c838e76
Release v1.1.0: Add useAsyncMemoSuspense hook with implementation, tests, and documentation (#7)
* feat: add test suite with GitHub Actions workflow and React version compatibility tests
* feat: add cross-version React testing compatibility layer and fix type issues
* chore: add CodeRabbit config for main and develop branch reviews
* feat: add matrix testing across React 16-19 and Node 16-20 versions
* fix: add conditional testing library versions based on React version in CI workflow
* chore: add @testing-library/react dependency for React version compatibility
* test: add comprehensive test coverage for edge cases and error handling in useAsyncMemo and useAsyncEffekt
* chore: update Codecov action from v3 to v4
* add comment for any type usage
* chore: add strict error handling to matrix test script with set -euo pipefail
* fix: add error handling and exit codes to matrix test script
* style: improve readability of conditional npm install in Dockerfile.test
* chore: remove --force flag from npm install commands in test setup
* reset version to pre-release version
* fix: downgrade testing-library/react to v16.1.0 for React 19 test script
* fix: update test dependencies installation for different React versions in CI/Docker
* docs: add clickable links to README badges
* chore: add sideEffects:false to package.json for tree-shaking optimization
* feat: implement useAsyncMemoSuspense hook with global caching and dependency tracking
* feat(hooks): add docs and tests for useAsyncMemoSuspense
Adds JSDocs, README documentation, and tests for the new `useAsyncMemoSuspense` hook.
The documentation includes examples and important notes about SSR and client component usage.
The tests cover suspense, error handling, dependency changes, and scope usage.
* refactor: improve test coverage with TypeScript and realistic test scenarios
* test: improve timer handling and mock implementations in async memo tests
* ci: skip Suspense tests for React versions 16 and 17 in test workflow
* chore: update ErrorBoundary props type to use simplified React.PropsWithChildren syntax
* ci: exclude suspense module from test coverage collection for React 16/17
* chore: exclude test-utils.ts from code coverage metrics
* test: add comprehensive cache behavior and performance tests for useAsyncMemoSuspense
* docs: add vibe coded testing note in README
* refactor: removing unnecessary comments
---------
Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>1 parent e5147d7 commit c838e76
File tree
8 files changed
+895
-18
lines changed- .github/workflows
- src
- __tests__
8 files changed
+895
-18
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
44 | | - | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
45 | 50 | | |
46 | 51 | | |
47 | 52 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
6 | | - | |
7 | | - | |
8 | | - | |
9 | | - | |
10 | | - | |
11 | | - | |
12 | | - | |
13 | | - | |
14 | | - | |
15 | | - | |
16 | | - | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
17 | 18 | | |
18 | 19 | | |
19 | 20 | | |
| |||
311 | 312 | | |
312 | 313 | | |
313 | 314 | | |
314 | | - | |
| 315 | + | |
315 | 316 | | |
316 | 317 | | |
317 | 318 | | |
| |||
326 | 327 | | |
327 | 328 | | |
328 | 329 | | |
329 | | - | |
| 330 | + | |
330 | 331 | | |
331 | 332 | | |
332 | 333 | | |
| |||
361 | 362 | | |
362 | 363 | | |
363 | 364 | | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
| 371 | + | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
364 | 411 | | |
365 | 412 | | |
366 | 413 | | |
| |||
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| 5 | + | |
5 | 6 | | |
6 | 7 | | |
7 | 8 | | |
| |||
59 | 60 | | |
60 | 61 | | |
61 | 62 | | |
62 | | - | |
| 63 | + | |
63 | 64 | | |
64 | 65 | | |
65 | 66 | | |
| |||
76 | 77 | | |
77 | 78 | | |
78 | 79 | | |
79 | | - | |
| 80 | + | |
| 81 | + | |
80 | 82 | | |
81 | 83 | | |
82 | 84 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| 7 | + | |
7 | 8 | | |
8 | 9 | | |
9 | 10 | | |
| |||
0 commit comments