Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix: type support for suspense and fallbackData(#2396) #2452

Merged
merged 9 commits into from Feb 24, 2023

Conversation

taro-28
Copy link
Contributor

@taro-28 taro-28 commented Feb 24, 2023

close #2396

@codesandbox-ci
Copy link

codesandbox-ci bot commented Feb 24, 2023

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Latest deployment of this branch, based on commit 21ef487:

Sandbox Source
SWR-Basic Configuration
SWR-States Configuration
SWR-Infinite Configuration
SWR-SSR Configuration

@taro-28 taro-28 marked this pull request as ready for review February 24, 2023 16:58
@taro-28 taro-28 changed the title Fix: type support for suspense and fallbackData Fix: type support for suspense and fallbackData(#2396) Feb 24, 2023
@huozhi
Copy link
Member

huozhi commented Feb 24, 2023

Thanks for the PR, can you add some typing tests for it?

@taro-28
Copy link
Contributor Author

taro-28 commented Feb 24, 2023

I understand, I'll try it!

@taro-28 taro-28 marked this pull request as draft February 24, 2023 19:40
@taro-28 taro-28 marked this pull request as ready for review February 24, 2023 20:30
Copy link
Member

@huozhi huozhi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@huozhi huozhi merged commit 04df1bf into vercel:main Feb 24, 2023
@taro-28 taro-28 deleted the fix/suspense-generics branch February 25, 2023 11:22
@nstepien
Copy link
Contributor

This would be a huge fix for us! 🎉 Can we expect a swr release soon?

connorch added a commit to connorch/swr that referenced this pull request Mar 14, 2023
promer94 pushed a commit that referenced this pull request Mar 14, 2023
… type (#2506)

* add test case

* Revert "Fix: type support for suspense and fallbackData(#2396) (#2452)"

This reverts commit 04df1bf.

* fix: better tests that now properly explain why partial type inferrence won't work in typescript

* add test for passing in a config of type SWRConfiguration
kodiakhq bot pushed a commit to kula-app/OnLaunch that referenced this pull request Mar 15, 2023
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [swr](https://swr.vercel.app) ([source](https://togithub.com/vercel/swr)) | [`2.0.3` -> `2.1.0`](https://renovatebot.com/diffs/npm/swr/2.0.3/2.1.0) | [![age](https://badges.renovateapi.com/packages/npm/swr/2.1.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/swr/2.1.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/swr/2.1.0/compatibility-slim/2.0.3)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/swr/2.1.0/confidence-slim/2.0.3)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>vercel/swr</summary>

### [`v2.1.0`](https://togithub.com/vercel/swr/releases/tag/v2.1.0)

[Compare Source](https://togithub.com/vercel/swr/compare/v2.0.4...v2.1.0)

#### Feature

-   Subscription mode by [@&#8203;huozhi](https://togithub.com/huozhi) in [vercel/swr#1263
-   parallel option for useSWRInfinite by [@&#8203;koba04](https://togithub.com/koba04) in [vercel/swr#2404

Checkout [subscription docs](https://swr.vercel.app/docs/subscription) and [useSWRInfinite parallel fetching docs](https://swr.vercel.app/docs/pagination#parallel-fetching-mode) for more details

#### Patches

-   fix: use the latest config in useSWRMutation by [@&#8203;koba04](https://togithub.com/koba04) in [vercel/swr#2468
-   Fix: type support for suspense and fallbackData([#&#8203;2396](https://togithub.com/vercel/swr/issues/2396)) by [@&#8203;taro-28](https://togithub.com/taro-28) in [vercel/swr#2452
-   Error should be reset when new data comes by [@&#8203;huozhi](https://togithub.com/huozhi) in [vercel/swr#2472
-   fix: avoid creating new snapshot if cache is not updated at client during streaming by [@&#8203;promer94](https://togithub.com/promer94) in [vercel/swr#2475
-   refactor: initialize the cache only on first access by [@&#8203;promer94](https://togithub.com/promer94) in [vercel/swr#2479

#### Misc

-   ci: fix publish workflow by [@&#8203;promer94](https://togithub.com/promer94) in [vercel/swr#2453
-   ci: faster e2e test by [@&#8203;promer94](https://togithub.com/promer94) in [vercel/swr#2428
-   test: add a test for keepPreviousData without changing key by [@&#8203;koba04](https://togithub.com/koba04) in [vercel/swr#2470
-   Always assume subscriptions will return sub count from current key by [@&#8203;huozhi](https://togithub.com/huozhi) in [vercel/swr#2460
-   test: Fix flaky e2e test by [@&#8203;promer94](https://togithub.com/promer94) in [vercel/swr#2476
-   chore: Add subscription example by [@&#8203;huozhi](https://togithub.com/huozhi) in [vercel/swr#2480

#### New Contributors

-   [@&#8203;taro-28](https://togithub.com/taro-28) made their first contribution in [vercel/swr#2452

**Full Changelog**: vercel/swr@v2.0.4...v2.1.0

### [`v2.0.4`](https://togithub.com/vercel/swr/releases/tag/v2.0.4)

[Compare Source](https://togithub.com/vercel/swr/compare/v2.0.3...v2.0.4)

#### Patches

-   build: fix release job condition by [@&#8203;huozhi](https://togithub.com/huozhi) in [vercel/swr#2392
-   types: fix some mutation type issue by [@&#8203;promer94](https://togithub.com/promer94) in [vercel/swr#2421
-   fix: Error retry should be handled by global revalidator instead of local revalidation function by [@&#8203;promer94](https://togithub.com/promer94) in [vercel/swr#2415
-   fix: ensure initCache setter function stays within bounds of subscriptions by [@&#8203;lfbergee](https://togithub.com/lfbergee) in [vercel/swr#2411

#### Misc

-   test: stream ssr e2e by [@&#8203;promer94](https://togithub.com/promer94) in [vercel/swr#2395
-   test: fix an act warning by [@&#8203;koba04](https://togithub.com/koba04) in [vercel/swr#2403

#### New Contributors

-   [@&#8203;lfbergee](https://togithub.com/lfbergee) made their first contribution in [vercel/swr#2411

**Full Changelog**: vercel/swr@v2.0.3...v2.0.4

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/kula-app/OnLaunch).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS44LjMiLCJ1cGRhdGVkSW5WZXIiOiIzNS44LjMifQ==-->
renovate bot added a commit to Unleash/unleash that referenced this pull request May 4, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [swr](https://swr.vercel.app)
([source](https://togithub.com/vercel/swr)) | [`2.0.4` ->
`2.1.5`](https://renovatebot.com/diffs/npm/swr/2.0.4/2.1.5) |
[![age](https://badges.renovateapi.com/packages/npm/swr/2.1.5/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/swr/2.1.5/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/swr/2.1.5/compatibility-slim/2.0.4)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/swr/2.1.5/confidence-slim/2.0.4)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vercel/swr</summary>

### [`v2.1.5`](https://togithub.com/vercel/swr/releases/tag/v2.1.5)

[Compare
Source](https://togithub.com/vercel/swr/compare/v2.1.4...v2.1.5)

#### What's Changed

- fix: missing interop helpers in bundle by
[@&#8203;huozhi](https://togithub.com/huozhi) in
[vercel/swr#2582

**Full Changelog**:
vercel/swr@v2.1.4...v2.1.5

### [`v2.1.4`](https://togithub.com/vercel/swr/releases/tag/v2.1.4)

[Compare
Source](https://togithub.com/vercel/swr/compare/v2.1.3...v2.1.4)

#### What's Changed

- Upgrade bundler by [@&#8203;huozhi](https://togithub.com/huozhi) in
[vercel/swr#2557
- examples: fix invalid links by
[@&#8203;fxOne](https://togithub.com/fxOne) in
[vercel/swr#2559
- types: Allow auto-import by improving generated types by
[@&#8203;oosawy](https://togithub.com/oosawy) in
[vercel/swr#2563
- fix: pass serialized args to preload fetcher by
[@&#8203;oosawy](https://togithub.com/oosawy) in
[vercel/swr#2564
- chore: use provenance for release by
[@&#8203;HerringtonDarkholme](https://togithub.com/HerringtonDarkholme)
in
[vercel/swr#2571
- deps: update
[@&#8203;testing-library/react](https://togithub.com/testing-library/react)
to v14 by [@&#8203;koba04](https://togithub.com/koba04) in
[vercel/swr#2578
- fix: Fix dependency tracking and useSES bug by
[@&#8203;shuding](https://togithub.com/shuding) and
[@&#8203;promer94](https://togithub.com/promer94) in
[vercel/swr#2576

#### New Contributors

- [@&#8203;fxOne](https://togithub.com/fxOne) made their first
contribution in
[vercel/swr#2559
- [@&#8203;oosawy](https://togithub.com/oosawy) made their first
contribution in
[vercel/swr#2563
-
[@&#8203;HerringtonDarkholme](https://togithub.com/HerringtonDarkholme)
made their first contribution in
[vercel/swr#2571

**Full Changelog**:
vercel/swr@v2.1.3...v2.1.4

### [`v2.1.3`](https://togithub.com/vercel/swr/releases/tag/v2.1.3)

[Compare
Source](https://togithub.com/vercel/swr/compare/v2.1.2...v2.1.3)

#### What's Changed

- Fix [#&#8203;2548](https://togithub.com/vercel/swr/issues/2548): pass
origin key to subcription callback by
[@&#8203;Zheaoli](https://togithub.com/Zheaoli) in
[vercel/swr#2550
- Examples: fix type in axios-typescript example by
[@&#8203;daochouwangu](https://togithub.com/daochouwangu) in
[vercel/swr#2552
- Update Cache Interface types by
[@&#8203;dmmulroy](https://togithub.com/dmmulroy) in
[vercel/swr#2554
- fix: data passed to refreshInterval function is not latest by
[@&#8203;hong24](https://togithub.com/hong24) in
[vercel/swr#2354
- types: allow passing function as `Data` for
`useSWRSubscriptionOptions` by
[@&#8203;promer94](https://togithub.com/promer94) in
[vercel/swr#2551

#### New Contributors

- [@&#8203;Zheaoli](https://togithub.com/Zheaoli) made their first
contribution in
[vercel/swr#2550
- [@&#8203;daochouwangu](https://togithub.com/daochouwangu) made their
first contribution in
[vercel/swr#2552
- [@&#8203;dmmulroy](https://togithub.com/dmmulroy) made their first
contribution in
[vercel/swr#2554

**Full Changelog**:
vercel/swr@v2.1.2...v2.1.3

### [`v2.1.2`](https://togithub.com/vercel/swr/releases/tag/v2.1.2)

[Compare
Source](https://togithub.com/vercel/swr/compare/v2.1.1...v2.1.2)

##### Patches

-   Improved type inferring for `swr/subscription`
-   Adding `SWRSubscriptionOptions` type for `swr/subscription`

#### Changes

- test: add typing test for empty config by
[@&#8203;koba04](https://togithub.com/koba04) in
[vercel/swr#2521
- test: fix syntax error in Equal type alias implementation by
[@&#8203;SACHINnANYAKKARA](https://togithub.com/SACHINnANYAKKARA) in
[vercel/swr#2517
- chore: remove engines by
[@&#8203;promer94](https://togithub.com/promer94) in
[vercel/swr#2536
- types: improve `useSWRSubscription` types by
[@&#8203;promer94](https://togithub.com/promer94) in
[vercel/swr#2535
- Rename subscription types by
[@&#8203;huozhi](https://togithub.com/huozhi) in
[vercel/swr#2537

#### New Contributors

- [@&#8203;SACHINnANYAKKARA](https://togithub.com/SACHINnANYAKKARA) made
their first contribution in
[vercel/swr#2517

**Full Changelog**:
vercel/swr@v2.1.1...v2.1.2

### [`v2.1.1`](https://togithub.com/vercel/swr/releases/tag/v2.1.1)

[Compare
Source](https://togithub.com/vercel/swr/compare/v2.1.0...v2.1.1)

#### Patches

- refactor: remove useless dataRef, always compare cached data by
[@&#8203;promer94](https://togithub.com/promer94) in
[vercel/swr#2431
- fix: swr infers incorrect `data` type for default `SWRConfig` generic
type by [@&#8203;connorch](https://togithub.com/connorch) in
[vercel/swr#2506

#### Documentation

- docs: update subscription example by
[@&#8203;huozhi](https://togithub.com/huozhi) in
[vercel/swr#2499

#### New Contributors

- [@&#8203;connorch](https://togithub.com/connorch) made their first
contribution in
[vercel/swr#2506

**Full Changelog**:
vercel/swr@v2.1.0...v2.1.1

### [`v2.1.0`](https://togithub.com/vercel/swr/releases/tag/v2.1.0)

[Compare
Source](https://togithub.com/vercel/swr/compare/v2.0.4...v2.1.0)

#### Feature

- Subscription mode by [@&#8203;huozhi](https://togithub.com/huozhi) in
[vercel/swr#1263
- parallel option for useSWRInfinite by
[@&#8203;koba04](https://togithub.com/koba04) in
[vercel/swr#2404

Checkout [subscription docs](https://swr.vercel.app/docs/subscription)
and [useSWRInfinite parallel fetching
docs](https://swr.vercel.app/docs/pagination#parallel-fetching-mode) for
more details

#### Patches

- fix: use the latest config in useSWRMutation by
[@&#8203;koba04](https://togithub.com/koba04) in
[vercel/swr#2468
- Fix: type support for suspense and
fallbackData([#&#8203;2396](https://togithub.com/vercel/swr/issues/2396))
by [@&#8203;taro-28](https://togithub.com/taro-28) in
[vercel/swr#2452
- Error should be reset when new data comes by
[@&#8203;huozhi](https://togithub.com/huozhi) in
[vercel/swr#2472
- fix: avoid creating new snapshot if cache is not updated at client
during streaming by [@&#8203;promer94](https://togithub.com/promer94) in
[vercel/swr#2475
- refactor: initialize the cache only on first access by
[@&#8203;promer94](https://togithub.com/promer94) in
[vercel/swr#2479

#### Misc

- ci: fix publish workflow by
[@&#8203;promer94](https://togithub.com/promer94) in
[vercel/swr#2453
- ci: faster e2e test by
[@&#8203;promer94](https://togithub.com/promer94) in
[vercel/swr#2428
- test: add a test for keepPreviousData without changing key by
[@&#8203;koba04](https://togithub.com/koba04) in
[vercel/swr#2470
- Always assume subscriptions will return sub count from current key by
[@&#8203;huozhi](https://togithub.com/huozhi) in
[vercel/swr#2460
- test: Fix flaky e2e test by
[@&#8203;promer94](https://togithub.com/promer94) in
[vercel/swr#2476
- chore: Add subscription example by
[@&#8203;huozhi](https://togithub.com/huozhi) in
[vercel/swr#2480

#### New Contributors

- [@&#8203;taro-28](https://togithub.com/taro-28) made their first
contribution in
[vercel/swr#2452

**Full Changelog**:
vercel/swr@v2.0.4...v2.1.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS42OS4zIiwidXBkYXRlZEluVmVyIjoiMzUuNjkuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Improved type support for suspense is not working well
3 participants