@samitouri / QOS-React / commits / ef06b54f8d

fix: clarify which mobx libs are not compatible with compiler (#32570)

## Summary Right now, `react-compiler-healthcheck` flags `mobx` as a "known incompatible library". But it's not precisely *MobX* that's incompatible. It's the observer HOC that comes from `mobx-react` and `mobx-react-lite`. I've been working on [mst-use-observable](https://github.com/coolsoftwaretyler/mst-use-observable), which makes MobX-State-Tree compatible with the compiler. However, projects that use `mobx-state-tree` and `mst-use-observable` will still depend on `mobx` as a dependency. And there [have been efforts in the past to write a hook for observability](https://github.com/mobxjs/mobx/discussions/2566). So it's possible that MobX could become compatible, so long as authors access it with a hook, rather than the HOC. I would like to propose updating the health check to be a little more precise and flag the HOC dependencies, rather than MobX itself. Thanks in advance for your consideration! ## How did you test this change? `npx react-compiler-healthcheck` shouldn't flag on `mobx` in dependencies, but will for `mobx-react-lite` and `mobx-react`. Test suites, formatting, linting, all passed. --------- Co-authored-by: lauren <poteto@users.noreply.github.com>

Tyler Scott Williams committed Mar 13, 2025 at 11:46 UTC ef06b54f8d1d9818806e221974c8b64efbbfda0d
1 file changed +5 -1
compiler/packages/react-compiler-healthcheck/src/config.ts
+5 -1
@@ -1,3 +1,7 @@
1 export const config = {
2 - knownIncompatibleLibraries: ['mobx', '@risingstack/react-easy-state'],
2 + knownIncompatibleLibraries: [
3 + 'mobx-react',
4 + 'mobx-react-lite',
5 + '@risingstack/react-easy-state',
6 + ],
7 };