Skip to content

Buildengine phase1 - #386

Open
kanhadhiwar53-hash wants to merge 2 commits into
AndroidCSOfficial:devfrom
kanhadhiwar53-hash:buildengine-phase1
Open

kanhadhiwar53-hash wants to merge 2 commits into
AndroidCSOfficial:devfrom
kanhadhiwar53-hash:buildengine-phase1

Conversation

@kanhadhiwar53-hash

Copy link
Copy Markdown

No description provided.

BuildEngine Bot added 2 commits September 22, 2026 08:06
…2/zipalign/apksigner)

- BuildManager: async orchestrator (build/clean/rebuild/cancel), streams
  BuildLogEvent per stage
- steps/: EcjCompileStep, KotlincCompileStep, D8DexStep, Aapt2Step,
  ApkAssembleStep, ZipAlignStep, ApkSignStep — each parses tool diagnostics
  into BuildError(file, line, message) for editor click-to-line
- classpath/ClasspathCollector: libs/*.jar + libs/*.aar -> compile/dex
  classpath, with content-hash AAR exploding cache
- tools/BuildToolsLocator + ToolsProvisioner: locates bundled tools under
  <filesDir>/build-tools/, first-run checksummed download of the core
  package (not bundled in APK, not on app-open) so no forced huge SDK
  download; Kotlin toolchain is a separate optional package
- See buildengine/PLAN.md for full roadmap, requirement mapping, and the
  exact existing files (GradleBuildService, RunTasksViewModel, etc.) that
  Phase 3 needs to touch to wire this in.
…t model)

Scans src/main/{java,kotlin,res,assets} + AndroidManifest.xml + libs/*.jar
+ libs/*.aar directly and produces the same AndroidModule/GradleProject/
WorkspaceImpl shape WorkspaceModelBuilder builds from a Gradle sync today —
so Java/Kotlin completion, indexing and XML resource resolution keep
working once Gradle sync is gone, not just APK building.

Reuses tooling:builder-model-impl's Default* classes (plain data holders
around AGP builder-model interfaces, no Gradle runtime dependency) instead
of inventing new model types, so existing consumers of the project model
are untouched. Updated buildengine/PLAN.md: keep tooling:builder-model-impl
in Phase 4's removal list, added Phase 2 status + known limitations
(single-module only, no transitive Maven deps, ProjectSyncIssues shape
unverified against the real jar, not yet wired into ProjectManagerImpl).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant