mirror of
https://github.com/zarzet/SpotiFLAC-Mobile.git
synced 2026-09-29 04:42:02 +02:00
Replace the Go backend with the Rust workspace and route Android/iOS through UniFFI bindings. Include the migrated extension runtime, network, providers, media metadata, downloads and library operations, with version 5.0.0+147. Remove Go sources, adapters, native build selection and CI dependencies. Build Rust unconditionally and lock the iOS Rust pod using a relative path. Retain legacy source and migration evidence in a local ignored archive. Validation: Android Kotlin compile and 53 native tests; Swift Rust-branch equivalence and syntax; CocoaPods install; workflow, shell, Ruby, plist and diff checks. Reuse the preceding 100 Rust tests, fmt/Clippy and five-ABI build checkpoint; no new APK or iOS application build for this cleanup. Known follow-up: URL/URLSearchParams globals are missing from the Rust JS runtime. A controlled extension replay confirms a URL-resolution regression; this commit does not fix that runtime gap.
43 lines
1.2 KiB
Markdown
43 lines
1.2 KiB
Markdown
## Summary
|
|
|
|
<!-- What changed, why is it needed, and which user-visible behavior is affected? -->
|
|
|
|
## Related Issues
|
|
|
|
<!-- Use "Fixes #123" when this PR should close an issue. -->
|
|
|
|
## Type of Change
|
|
|
|
- [ ] Bug fix
|
|
- [ ] Feature
|
|
- [ ] Performance improvement
|
|
- [ ] Refactor with no intended behavior change
|
|
- [ ] Tests, build, or repository maintenance
|
|
- [ ] Documentation or localization
|
|
|
|
## Validation
|
|
|
|
<!-- Check only commands relevant to this change. Explain skipped checks below. -->
|
|
|
|
- [ ] `dart format --output=none --set-exit-if-changed lib test`
|
|
- [ ] `flutter analyze`
|
|
- [ ] `flutter test`
|
|
- [ ] `bash scripts/check_rust_backend.sh`
|
|
- [ ] Android or iOS native checks
|
|
- [ ] Manual reproduction or device test
|
|
|
|
Validation notes:
|
|
|
|
<!-- Devices, commands, test cases, or the reason a check was not applicable. -->
|
|
|
|
## Contributor Checklist
|
|
|
|
- [ ] This PR is focused and contains no unrelated changes.
|
|
- [ ] Extension-specific behavior, if any, uses a generic capability or manifest contract.
|
|
- [ ] User-facing strings, documentation, and generated files are updated where needed.
|
|
- [ ] No credentials, downloaded media, or build artifacts are included.
|
|
|
|
## Screenshots or Recordings
|
|
|
|
<!-- Add before/after media for UI changes. Delete this section otherwise. -->
|