Skip to content

Latest commit

 

History

History
80 lines (64 loc) · 3.72 KB

File metadata and controls

80 lines (64 loc) · 3.72 KB

Changelog

0.2.6

  • initSplitDeploy now writes exactly one run configuration — TeamCode fast deploy — and nothing else.
  • Removed all Android Studio / IntelliJ file manipulation: the .idea/workspace.xml run-configuration scrubbing and the watch-feature base-manifest hack are gone. The plugin no longer reads or writes any IDE file other than the single .run/ config it generates. The base manifest reverts to the plain stub, so one installFullApp is needed after upgrading from 0.2.4/0.2.5.

0.2.5

  • The generated run configurations are now TeamCode (full install — the familiar stock entry name, backed by the safe installFullApp) and TeamCode fast deploy. The Robot full install entry from earlier 0.2.x versions is removed on the next initSplitDeploy.

0.2.4

  • Permanently stop Android Studio from auto-creating an "FtcBase" Android App run configuration after every Gradle sync. The generated FtcBase manifest stub now declares the watch hardware uses-feature, which makes the IDE's post-sync config creator skip the module (it skips watch-required app modules with no launcher activity in their own manifest). uses-feature entries are Play Store filtering metadata only: adb/PackageInstaller installs ignore them and nothing changes at runtime on the Control Hub or a phone Robot Controller. The base manifest changes, so one installFullApp is required after upgrading.

0.2.3

  • Actually hide the blocked AGP device tasks from the grouped task listing: AGP assigns the "install" group after plugin configuration, so the demotion now runs once all projects are evaluated.

0.2.2

  • Block AGP's raw device tasks (installDebug, installRelease, uninstallAll, ...) on every module. They bypassed all split-deploy safety (installDebug replaces the app with a base APK that has no TeamCode split); IDEs list them as runnable entry points. They now fail fast and point to installFullApp / deployTeamCode, and are hidden from the grouped task listing.

0.2.1

  • initSplitDeploy writes only the two everyday run configurations (TeamCode fast deploy, Robot full install) and deletes the doctor and rollback entries generated by older versions (both remain available as Gradle tasks).
  • initSplitDeploy now also removes Android Studio's auto-created Android App run configurations from .idea/workspace.xml and selects TeamCode fast deploy, keeping the run dropdown to exactly the two supported entries. Run it while Android Studio is closed for the cleanup to stick.

0.2.0

  • Replace closure tasks with typed, configuration-cache-safe Gradle tasks.
  • Add exact adb device selection and actionable offline/unauthorized errors.
  • Make full install non-destructive by default, grant runtime permissions, and refuse the explicit uninstall fallback over network adb.
  • Record and validate per-device base compatibility fingerprints, including resolved external dependency artifacts.
  • Back up the installed TeamCode split before transactional replacement; clean up or abandon every failed PackageInstaller session and verify backup hashes.
  • Add rollbackTeamCode and the read-only splitDeployDoctor preflight task.
  • Wait for the FTC SDK ready marker after restart instead of reporting success as soon as Android launches the process.
  • Block matching top-level classes between repository TeamCode and OnBot Java before both full and fast installs by default.
  • Avoid rewriting the generated base manifest when its contents are unchanged.
  • Add parser, hashing, state, and duplicate-detection tests plus CI checks.

0.1.0

  • Initial settings plugin, generated base application, TeamCode dynamic feature, full install, and partial split deployment workflow.