Files
SpotiFLAC-Mobile/.github/PULL_REQUEST_TEMPLATE.md
T
zarzet aa99726439 feat(backend): migrate production backend to Rust
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.
2026-09-14 22:58:27 +07:00

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. -->