mobxjs / mobx-state-tree

Full-featured reactive state management without the boilerplate
https://mobx-state-tree.js.org/
MIT License
6.9k stars 640 forks source link

Feat/has env and getenv changes #2163

Closed coolsoftwaretyler closed 3 months ago

coolsoftwaretyler commented 3 months ago

What does this PR do and why?

Supercedes https://github.com/mobxjs/mobx-state-tree/pull/2039, which was a re-write of https://github.com/mobxjs/mobx-state-tree/pull/938.

This is a breaking change. We approved it a long time ago, but have dramatically changed the file structure of the repo along the way. No longer requires us to update the middlewares (since those are not in the repository anymore).

We'll ship this along with version 6.0.0, which has a few other minor breaking changes.

Closes https://github.com/mobxjs/mobx-state-tree/issues/820

Steps to validate locally

Test should pass. getEnv now throws when one is not found, and we have a hasEnv function you can use to check if there is one or not. This makes the getEnv API more consistent with things like getParent and getRoot, which also throw when there is none found.