4.1.0
-
Add support for
autoExhaustiveTypesconfig and a@nonExhaustivedirective to control automatic exhaustive checks for unions/interfaces. -
Add React-free mode support and split React APIs into
RescriptRelayReact.- New compiler config:
rescriptRelayMode: "Default" | "NonReact"(defaults to"Default"). - PPX
-non-react - Mark
@rescript/reactandreact-relayas optional peer deps so non‑React usage does not require them.
- New compiler config:
-
BREAKING: Move all React-specific APIs out of
RescriptRelayintoRescriptRelayReact.RescriptRelay.Context.Provider->RescriptRelayReact.Context.ProviderRescriptRelay.useEnvironmentFromContext->RescriptRelayReact.useEnvironmentFromContextRescriptRelay.useSubscribeToInvalidationState->RescriptRelayReact.useSubscribeToInvalidationState
Migration:
- Update imports/usages in app code to reference
RescriptRelayReactfor the APIs listed above. - For non‑React usage, set
rescriptRelayMode: "NonReact"inrelay.config.jsand pass-non-reactto the PPX.