Skip to content

Simplify project and platform build boundaries - #190

Merged
enfipy merged 3 commits into
mainfrom
refactor/project-build-boundaries
Aug 20, 2026
Merged

Simplify project and platform build boundaries#190
enfipy merged 3 commits into
mainfrom
refactor/project-build-boundaries

Conversation

@enfipy

@enfipy enfipy commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator

Closes #189.

Summary

  • separate deterministic project-config parsing from environment resolution
  • share Cargo project discovery, package roots, and path resolution between builds and doctor
  • rename ambiguous Config and CrossbowMetadata concepts without compatibility aliases
  • consolidate native APK/AAB preparation and split Android build/doctor code by concrete domain
  • use published android-manifest 0.4.0 and remove the Boolean/XML compatibility heuristics
  • remove YaSerde entirely from the dependency graph
  • replace deprecated home-directory lookup and targeted production panic paths

Android manifest verification

The Crossbow regressions pass directly against android-manifest 0.4.0:

  • native Boolean wrapper deserialization
  • XML attributes containing ampersands, angle brackets, quotes, Unicode, and literal entity text
  • one-layer serialization plus parsed-value round trip

Validation

  • cargo fmt --all -- --check
  • strict Clippy with tests for no features, Android, Apple, and all features
  • 89 crossbundle-tools unit tests passed; one Android-SDK-dependent test filtered on this host
  • 14 crossbundle CLI unit tests passed
  • cargo_metadata, doctor_cli, and update_command integrations passed
  • crossbundle and crossbundle-tools doctests passed

The complete workspace all-feature build reaches the existing Linux host boundary in the Apple-only objc2 dependency; package-level platform matrices are clean.

@enfipy
enfipy marked this pull request as ready for review August 20, 2026 22:01
@enfipy
enfipy merged commit 19dff04 into main Aug 20, 2026
9 checks passed
@enfipy
enfipy deleted the refactor/project-build-boundaries branch August 20, 2026 23:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

Simplify project configuration and platform build boundaries for 0.3

1 participant