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

Update dependency mobx-react to v9 #13

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Dec 12, 2023

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
mobx-react (source) ^5.0.0 -> ^9.0.0 age adoption passing confidence

Release Notes

mobxjs/mobx (mobx-react)

v9.1.0

Compare Source

Minor Changes

v9.0.2

Compare Source

Patch Changes

v9.0.1

Compare Source

v9.0.0

Major Changes
Patch Changes

v7.6.0

Compare Source

Minor Changes

v7.5.3

Compare Source

Patch Changes

v7.5.2

Compare Source

Patch Changes

v7.5.1

Compare Source

Patch Changes

v7.5.0

Compare Source

Minor Changes

v7.4.0

Compare Source

Minor Changes
  • 4c5e75cd #​3382 Thanks @​iChenLei! - replace the deprecated react type definition with recommended type definition

  • bd4b70d8 #​3387 Thanks @​mweststrate! - Added experimental / poor man's support for React 18. Fixes #​3363, #​2526. Supersedes #​3005

    • Updated tests, test / build infra, peerDependencies to React 18
    • [breaking icmw upgrading to React 18] Already deprecated hooks like useMutableSource will trigger warnings in React 18, which is correct and those shouldn't be used anymore.
    • [breaking icmw upgrading to React 18] When using React 18, it is important that act is used in unit tests around every programmatic mutation. Without it, changes won't propagate!
    • The React 18 support is poor man's support; that is, we don't do anything yet to play nicely with Suspense features. Although e.g. startTransition basically works, MobX as is doesn't respect the Suspense model and will always reflect the latest state that is being rendered with, so tearing might occur. I think this is in theoretically addressable by using useSyncExternalStore and capturing the current values together with the dependency tree of every component instance. However that isn't included in this pull request 1) it would be a breaking change, whereas the current change is still compatible with React 16 and 17. 2) I want to collect use cases where the tearing leads to problems first to build a better problem understanding. If you run into the problem, please submit an issue describing your scenario, and a PR with a unit tests demonstrating the problem in simplified form. For further discussion see #​2526, #​3005
Patch Changes

v7.3.0

Compare Source

Minor Changes
Patch Changes
  • Updated dependencies [59b42c28]:
    • mobx-react-lite@3.3.0

v7.2.1

Compare Source

Patch Changes

v7.2.0

Compare Source

Minor Changes

v7.1.0

Compare Source

Patch Changes
  • Updated dependencies [28f8a11d]:
    • mobx@6.1.0
    • mobx-react-lite@4.0.0

v7.0.6

Compare Source

Patch Changes

v7.0.5

Compare Source

Patch Changes

v7.0.4

Compare Source

Patch Changes
  • 8bbbc7c0 Thanks @​FredyC! - Fix names of dist files (for real now). Third time is the charm 😅

  • Updated dependencies [8bbbc7c0]:

    • mobx-react-lite@3.1.4

v7.0.3

Compare Source

Patch Changes

v7.0.2

Compare Source

Patch Changes

v7.0.1

Compare Source

Patch Changes
  • 81a2f865 Thanks @​FredyC! - ESM bundles without NODE_ENV present are available in dist folder. This useful for consumption in browser environment that supports ESM Choose either esm.production.min.js or esm.development.js from dist folder.

  • Updated dependencies [81a2f865]:

    • mobx-react-lite@3.1.1

v7.0.0

Compare Source

v6.3.1

Compare Source

Patch Changes

v6.3.0

Compare Source

Minor Changes
Patch Changes

v6.2.3

Compare Source

v6.2.2

Compare Source

v6.2.1

Compare Source

v6.2.0

Compare Source

Release job failed. See https://github.com/mobxjs/mobx/pull/2842 for release notes

v6.1.8

Compare Source

v6.1.7

Compare Source

Patch Changes
  • 5640aa77 #​2799 Thanks @​urugator! - - fix: user provided debug names are not preserved on production
    • fix: property atom's debug name is dynamic on production
    • fix: observable(primitive, options) ignores options
    • fix: getDebugName(action) throws [MobX] Cannot obtain atom from undefined
    • fix: terser using unsafe: true

v6.1.6

Compare Source

Patch Changes
  • 9b195b17 #​2780 Thanks @​iChenLei! - The overall memory usage of MobX has been reduced in production builds by skipping the generation of debug identifiers. The internal mapid_ field of Reaction has been removed as part of the change.

v6.1.5

Compare Source

Patch Changes

v6.1.4

Compare Source

v6.1.3

Compare Source

v6.1.2

Compare Source

Patch Changes
  • ca09f2f5 #​2761 Thanks @​urugator! - configure({ safeDescriptors: false }) now forces all props of observable objects to be writable and configurable

v6.1.1

Compare Source

Patch Changes
  • 39eca50d #​2757 Thanks @​urugator! - Fix error stringification on minified build
    Fix isObservableProp not supporting Symbols
    Fix makeAutoObservable not ignoring inferredAnnotationsSymbol

v6.1.0

Compare Source

This release fixes a plethora of bugs related to sub-classing and reflecting / iterating on observable objects.
The behavior of MobX is in many edge cases much more explicitly defined now.

A new annotation was introduced: @override / override to support re-defining actions and computed values(!) on sub classses.

For idiomatic MobX usage this release should have little impact, but if you are using a lot of sub-classing, reflection APIs or direct object manipulations like defineProperty,
this release might introduce previously unseen errors for cases that silently failed before, or even worked successfully even though the correct behavior wasn't specified earlier.

If you are migrating from MobX 4/5 we strongly recommend to go to 6.1 in one go, and skip 6.0.*, as some buggy behavior compared to the previous majors has been corrected.

As always, our libraries come as-is and are maintained by volunteers. Upgrades are at own risk and voluntary. Bug reports require a minimal reproductions and a correctly filled out issue template.

Support the ongoing maintenance at: https://opencollective.com/mobx

Minor Changes

28f8a11d #​2641 Thanks @​urugator!

  • action, computed, flow defined on prototype can be overriden by subclass via override annotation/decorator. Previously broken.
  • Overriding anything defined on instance itself (this) is not supported and should throw. Previously partially possible or broken.
  • Attempt to re-annotate property always throws. Previously mostly undefined outcome.
  • All annotated and non-observable props (action/flow) are non-writable. Previously writable.
  • All annotated props of non-plain object are non-configurable. Previously configurable.
  • Observable object should now work more reliably in various (edge) cases.
  • Proxied objects now support Object.defineProperty. Previously unsupported/broken.
  • extendObservable/makeObservable/defineProperty notifies observers/listeners/interceptors about added props. Previously inconsistent.
  • keys/values/entries works like Object.keys/values/entries. Previously included only observables.
  • has works like in. Previously reported true only for existing own observable props.
  • set no longer transforms existing non-observable prop to observable prop, but simply sets the value.
  • remove/delete works with non-observable and computed props. Previously unsupported/broken.
  • Passing options to observable/extendObservable/makeObservable throws if the object is already observable . Previously passed options were mostly ignored.
  • autoBind option is now sticky - same as deep and name option.
  • observable/extendObservable now also picks non-enumerable keys (same as make[Auto]Observable).
  • Removed deprecated action.bound("name")
  • Proxied objects should be compatible with Reflect API. Previously throwing instead of returning booleans.

v6.0.4

Compare Source

v6.0.3

Compare Source

Patch Changes
  • d0e6778d - Create ESM bundles with NODE_ENV correctly replaced so it can be used in browser (#​2564)

v6.0.2

Compare Source

Patch Changes

v6.0.1

Compare Source

v6.0.0

Compare Source


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.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

Copy link

coderabbitai bot commented Dec 12, 2023

Important

Auto Review Skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on X ?


Tips

Chat with CodeRabbit Bot (@coderabbitai)

  • You can reply to a review comment from CodeRabbit.
  • You can also chat with CodeRabbit bot directly around the specific lines of code or files in the PR by tagging @coderabbitai in a new comment.
  • You can tag @coderabbitai in a PR comment and ask questions about the PR and the codebase.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger a review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai help to get help.

Additionally, you can add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Configration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • The JSON schema for the configuration file is available here.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/coderabbit-overrides.v2.json

Copy link

sweep-ai bot commented Dec 12, 2023

Apply Sweep Rules to your PR?

  • Apply: All new business logic should have corresponding unit tests.
  • Apply: Refactor large functions to be more modular.
  • Apply: Add docstrings to all functions and file headers.

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.

None yet

0 participants