Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yume190/migration
https://github.com/yume190/migration
Last synced: 23 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/yume190/migration
- Owner: yume190
- License: mit
- Created: 2024-08-02T05:11:32.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-08-09T07:02:59.000Z (6 months ago)
- Last Synced: 2024-08-10T08:27:51.970Z (6 months ago)
- Language: Swift
- Size: 36.1 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Swift Migration(POC)
---
[Swift Migration Guide](https://github.com/apple/swift-migration-guide)
> [!CAUTION]
> Don't use `XCode 15.4` or must test UsrTests/testUsr success firstCurrently, only `Add Explicit Sendable` is allowed.
[Sendable](Sendable.md), [Sendable 中文](Sendable_TW.md)
---
## Install
``` bash
brew install mint
mint install yume190/Migration
```## Usage
``` bash
migration \
--module "SCHEME NAME" \
--file Sample.xcworkspacemigration \
--module "SCHEME NAME" \
--file Sample.xcodeproj# spm
migration \
--module TARGET_NAME \
--file .# file
migration \
--sdk macosx \
--file xxx.swift
```---
## TODOS
* [ ] Add Explicit `Sendable`
* [x] Commom
* [x] Check all propery is `let`
* [x] Check all propery is `Sendable`
* [x] Exceptions
* [x] @MainActor var
* [x] nonisolated(unsafe) var
* [x] Add `Sendable` to `struct`
* [x] Add `Sendable` to `class`
* [x] Add `final` to `class`
* [x] `open class` can't `final`
* [x] Check `class` no child class
* [x] Check `class` not `NSObject`
* [ ] Add `Sendable` to `enum`
* [ ] Add `@MainActor`
* [ ] find caller
* [ ] find exist `@MainActor` structure
* [ ] find exist `@MainActor` instance property
* [ ] find use `@MainActor` instance property
* [ ] find use `@MainActor` call function
* [ ] `sending`?
* [ ] `@retroactive`?---
## Not Support
* deinit
* objc