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(utils): add init property to the return type of atomWithReset #2304

Merged
merged 4 commits into from
Dec 28, 2023

Conversation

jaesoekjjang
Copy link
Contributor

@jaesoekjjang jaesoekjjang commented Dec 17, 2023

Related Issues or Discussions

Fixes #2303

Summary

Changed return type of atomWithReset(),

return anAtom as WritableAtom<Value, [Update], void>

to

return anAtom as WritableAtom<Value, [Update], void> & WithInitialValue<Value>

Check List

  • yarn run prettier for formatting code and docs

Copy link

vercel bot commented Dec 17, 2023

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
jotai ✅ Ready (Inspect) Visit Preview 💬 Add feedback Dec 28, 2023 2:58pm

Copy link

codesandbox-ci bot commented Dec 17, 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 ddef07e:

Sandbox Source
React Configuration
React TypeScript Configuration
React Browserify Configuration
React Snowpack Configuration
Next.js Configuration
Next.js with custom Babel config Configuration
React with custom Babel config Configuration

Copy link
Member

@dai-shi dai-shi left a comment

Choose a reason for hiding this comment

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

Thanks for working on it.

@@ -23,7 +23,7 @@ type Write<Args extends unknown[], Result> = (
...args: Args
) => Result

type WithInitialValue<Value> = {
export type WithInitialValue<Value> = {
Copy link
Member

Choose a reason for hiding this comment

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

This type is intentionally private. Please define it in atomWithReset.ts.
init property is an internal property too.

Copy link
Member

@dai-shi dai-shi left a comment

Choose a reason for hiding this comment

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

As I said in #2303, using .init is not recommended in the userland code. (Technically, there can be breaking changes without notice. If this is confusing, we should probably remove WithInitialValue type.)

This change is technically valid, and helps hacks. I will merge it later when preparing the next release.

@dai-shi
Copy link
Member

dai-shi commented Dec 17, 2023

Let me add a commit to add a note in the source code and see how you feel.

@jaesoekjjang
Copy link
Contributor Author

Let me add a commit to add a note in the source code and see how you feel.

Love it :)

@dai-shi dai-shi added this to the v2.6.1 milestone Dec 28, 2023
@dai-shi dai-shi changed the title fix: add init property to the return type of atomWithReset fix(utils): add init property to the return type of atomWithReset Dec 28, 2023
@dai-shi dai-shi merged commit e986e63 into pmndrs:main Dec 28, 2023
33 checks passed
davydkov referenced this pull request in likec4/likec4 Feb 7, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [jotai](https://togithub.com/pmndrs/jotai) | [`^2.6.0` ->
`^2.6.4`](https://renovatebot.com/diffs/npm/jotai/2.6.0/2.6.4) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/jotai/2.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/jotai/2.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/jotai/2.6.0/2.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/jotai/2.6.0/2.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>pmndrs/jotai (jotai)</summary>

### [`v2.6.4`](https://togithub.com/pmndrs/jotai/releases/tag/v2.6.4)

[Compare
Source](https://togithub.com/pmndrs/jotai/compare/v2.6.3...v2.6.4)

Performance improvement! Check it out!

##### What's Changed

- refactor: refactoring store and options type by
[@&#8203;ssi02014](https://togithub.com/ssi02014) in
[https://github.com/pmndrs/jotai/pull/2360](https://togithub.com/pmndrs/jotai/pull/2360)
- refactor: modified Args type by
[@&#8203;ssi02014](https://togithub.com/ssi02014) in
[https://github.com/pmndrs/jotai/pull/2367](https://togithub.com/pmndrs/jotai/pull/2367)
- Improve performance of recomputeDependents by
[@&#8203;samkline](https://togithub.com/samkline) in
[https://github.com/pmndrs/jotai/pull/2363](https://togithub.com/pmndrs/jotai/pull/2363)
- fix(vanilla): fix unexpected cache in jotai-scope by
[@&#8203;yf-yang](https://togithub.com/yf-yang) in
[https://github.com/pmndrs/jotai/pull/2371](https://togithub.com/pmndrs/jotai/pull/2371)

##### New Contributors

- [@&#8203;ssi02014](https://togithub.com/ssi02014) made their first
contribution in
[https://github.com/pmndrs/jotai/pull/2360](https://togithub.com/pmndrs/jotai/pull/2360)
- [@&#8203;samkline](https://togithub.com/samkline) made their first
contribution in
[https://github.com/pmndrs/jotai/pull/2363](https://togithub.com/pmndrs/jotai/pull/2363)
- [@&#8203;yf-yang](https://togithub.com/yf-yang) made their first
contribution in
[https://github.com/pmndrs/jotai/pull/2371](https://togithub.com/pmndrs/jotai/pull/2371)

**Full Changelog**:
pmndrs/jotai@v2.6.3...v2.6.4

### [`v2.6.3`](https://togithub.com/pmndrs/jotai/releases/tag/v2.6.3)

[Compare
Source](https://togithub.com/pmndrs/jotai/compare/v2.6.2...v2.6.3)

Some improvements in core and utils 👏

#### What's Changed

- fix: atoms should not remount on recalculations (with async
dependencies) by [@&#8203;dmaskasky](https://togithub.com/dmaskasky) in
[https://github.com/pmndrs/jotai/pull/2347](https://togithub.com/pmndrs/jotai/pull/2347)
- fix(utils): atomWithReducer for jotai-scope by
[@&#8203;dai-shi](https://togithub.com/dai-shi) in
[https://github.com/pmndrs/jotai/pull/2351](https://togithub.com/pmndrs/jotai/pull/2351)
- fix(utils/atomWithStorage): defaultStorage with disabled local storage
crashes on mount by
[@&#8203;benediktschlager](https://togithub.com/benediktschlager) in
[https://github.com/pmndrs/jotai/pull/2354](https://togithub.com/pmndrs/jotai/pull/2354)
- feat(vanilla): customizable atom.unstable_is by
[@&#8203;dai-shi](https://togithub.com/dai-shi) in
[https://github.com/pmndrs/jotai/pull/2356](https://togithub.com/pmndrs/jotai/pull/2356)

#### New Contributors

- [@&#8203;SpringHgui](https://togithub.com/SpringHgui) made their first
contribution in
[https://github.com/pmndrs/jotai/pull/2320](https://togithub.com/pmndrs/jotai/pull/2320)
- [@&#8203;sakurawen](https://togithub.com/sakurawen) made their first
contribution in
[https://github.com/pmndrs/jotai/pull/2358](https://togithub.com/pmndrs/jotai/pull/2358)
- [@&#8203;JoltCode](https://togithub.com/JoltCode) made their first
contribution in
[https://github.com/pmndrs/jotai/pull/2357](https://togithub.com/pmndrs/jotai/pull/2357)
- [@&#8203;benediktschlager](https://togithub.com/benediktschlager) made
their first contribution in
[https://github.com/pmndrs/jotai/pull/2354](https://togithub.com/pmndrs/jotai/pull/2354)

**Full Changelog**:
pmndrs/jotai@v2.6.2...v2.6.3

### [`v2.6.2`](https://togithub.com/pmndrs/jotai/releases/tag/v2.6.2)

[Compare
Source](https://togithub.com/pmndrs/jotai/compare/v2.6.1...v2.6.2)

Some improvements for atomWithStorage. Feedback is welcome.

#### What's Changed

- fix(vanilla): should mount once with atom creator atom by
[@&#8203;nogaten](https://togithub.com/nogaten) in
[https://github.com/pmndrs/jotai/pull/2319](https://togithub.com/pmndrs/jotai/pull/2319)
- feat(utils): createJSONStrage options by
[@&#8203;dai-shi](https://togithub.com/dai-shi) in
[https://github.com/pmndrs/jotai/pull/2324](https://togithub.com/pmndrs/jotai/pull/2324)
- feat(utils): add withStorageValidator by
[@&#8203;dai-shi](https://togithub.com/dai-shi) in
[https://github.com/pmndrs/jotai/pull/2336](https://togithub.com/pmndrs/jotai/pull/2336)

#### New Contributors

- [@&#8203;L-Qun](https://togithub.com/L-Qun) made their first
contribution in
[https://github.com/pmndrs/jotai/pull/2318](https://togithub.com/pmndrs/jotai/pull/2318)
- [@&#8203;ahme-dev](https://togithub.com/ahme-dev) made their first
contribution in
[https://github.com/pmndrs/jotai/pull/2332](https://togithub.com/pmndrs/jotai/pull/2332)
- [@&#8203;nogaten](https://togithub.com/nogaten) made their first
contribution in
[https://github.com/pmndrs/jotai/pull/2319](https://togithub.com/pmndrs/jotai/pull/2319)

**Full Changelog**:
pmndrs/jotai@v2.6.1...v2.6.2

### [`v2.6.1`](https://togithub.com/pmndrs/jotai/releases/tag/v2.6.1)

[Compare
Source](https://togithub.com/pmndrs/jotai/compare/v2.6.0...v2.6.1)

This version has two minor improvements for library authors. It's
wonderful to see Jotai ecosystem growing. No major bugs have been
reported lately. It's fairly okay to say the current version is pretty
stable.

#### What's Changed

- fix(utils): add init property to the return type of atomWithReset by
[@&#8203;jaesoekjjang](https://togithub.com/jaesoekjjang) in
[https://github.com/pmndrs/jotai/pull/2304](https://togithub.com/pmndrs/jotai/pull/2304)
- fix(utils): add description for the RESET symbol. by
[@&#8203;MiroslavPetrik](https://togithub.com/MiroslavPetrik) in
[https://github.com/pmndrs/jotai/pull/2307](https://togithub.com/pmndrs/jotai/pull/2307)

#### New Contributors

- [@&#8203;wherehows](https://togithub.com/wherehows) made their first
contribution in
[https://github.com/pmndrs/jotai/pull/2270](https://togithub.com/pmndrs/jotai/pull/2270)
- [@&#8203;benson00077](https://togithub.com/benson00077) made their
first contribution in
[https://github.com/pmndrs/jotai/pull/2284](https://togithub.com/pmndrs/jotai/pull/2284)
- [@&#8203;ioExpander](https://togithub.com/ioExpander) made their first
contribution in
[https://github.com/pmndrs/jotai/pull/2280](https://togithub.com/pmndrs/jotai/pull/2280)
- [@&#8203;jaesoekjjang](https://togithub.com/jaesoekjjang) made their
first contribution in
[https://github.com/pmndrs/jotai/pull/2304](https://togithub.com/pmndrs/jotai/pull/2304)

**Full Changelog**:
pmndrs/jotai@v2.6.0...v2.6.1

</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://developer.mend.io/github/likec4/likec4).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xNzMuMCIsInVwZGF0ZWRJblZlciI6IjM3LjE3My4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

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.

2 participants