-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Support #if
branching in enum reducers/state
#2800
Conversation
This adds support for `#if` branching across enum cases in observable state and reducer enums.
This is updated for #2827. I don't think there is a reasonable way to parse #if os(macOS) && DEBUG
case macFeature1(MacFeature1)
#endif
… // other features
#if DEBUG && os(macOS)
case macFeature2(MacFeature2)
#endif As such, as soon as a case is contained in an In the future when the Swift bug is fixed we can remove this erasure, but it shouldn't be a big deal in the meantime, and isn't much different from the |
…ure to from: "1.9.0" (#940) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [pointfreeco/swift-composable-architecture](https://togithub.com/pointfreeco/swift-composable-architecture) | minor | `from: "1.8.2"` -> `from: "1.9.0"` | --- ### Release Notes <details> <summary>pointfreeco/swift-composable-architecture (pointfreeco/swift-composable-architecture)</summary> ### [`v1.9.0`](https://togithub.com/pointfreeco/swift-composable-architecture/releases/tag/1.9.0) [Compare Source](https://togithub.com/pointfreeco/swift-composable-architecture/compare/1.8.2...1.9.0) #### What's Changed See [Migrating to 1.9](https://togithub.com/pointfreeco/swift-composable-architecture/blob/main/Sources/ComposableArchitecture/Documentation.docc/Articles/MigrationGuides/MigratingTo1.9.md) for more details. - Added: New versions of `TestStore.send` that accept case key paths (thanks [@​scogeo](https://togithub.com/scogeo), [pointfreeco/swift-composable-architecture#2681; [pointfreeco/swift-composable-architecture#2868). - Added `Reducer.dependency(value)`, for overriding a reducer's dependency using a singleton value of a type ([pointfreeco/swift-composable-architecture#2863). - Fixed: Improve `Store` diagnostics for deriving bindings ([pointfreeco/swift-composable-architecture#2793). - Fixed: Avoid erroneous perception checks when `ViewStore`s are initialized in a view that doesn't use `WithPerceptionTracking` ([pointfreeco/swift-composable-architecture#2849). - Fixed: Support `#if` branching in `@ObservableState` and enum `@Reducer`s ([pointfreeco/swift-composable-architecture#2800). - Infrastructure: Tree navigation documentation fixes (thanks [@​imjn](https://togithub.com/imjn), [pointfreeco/swift-composable-architecture#2837); presentation reducer documentation fixes (thanks [@​ozumin](https://togithub.com/ozumin), [pointfreeco/swift-composable-architecture#2853). - Infrastructure: Improve tutorial diffing (thanks [@​oka-yuji](https://togithub.com/oka-yuji), [pointfreeco/swift-composable-architecture#2844). - Infrastructure: Expand release build test coverage ([pointfreeco/swift-composable-architecture#2856). - Infrastructure: Document gotcha with macros and previews ([pointfreeco/swift-composable-architecture#2855). #### New Contributors - [@​imjn](https://togithub.com/imjn) made their first contribution in [pointfreeco/swift-composable-architecture#2837 - [@​oka-yuji](https://togithub.com/oka-yuji) made their first contribution in [pointfreeco/swift-composable-architecture#2844 - [@​ozumin](https://togithub.com/ozumin) made their first contribution in [pointfreeco/swift-composable-architecture#2853 **Full Changelog**: pointfreeco/swift-composable-architecture@1.8.2...1.9.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://togithub.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://togithub.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi4xMDAuMCIsInVwZGF0ZWRJblZlciI6IjM2LjEwMC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9--> Co-authored-by: Self-hosted Renovate Bot <361546+cgrindel-self-hosted-renovate[bot]@users.noreply.github.enterprise.com>
This adds support for
#if
branching across enum cases in observable state and reducer enums.