Skip to content

Releases: psyb0t/android-lab

v0.16.0

Choose a tag to compare

@github-actions github-actions released this 02 Nov 15:26
  • Both local images use the signed Ubuntu archive and security repositories over HTTPS, removing the unavailable snapshot service from fresh builds.

  • Package downloads retry transient failures five times. An incomplete package-index update fails the build before installation.

  • Ubuntu packages now follow distribution updates rather than a fixed snapshot. Rebuilding a tag can install newer distribution packages; retain a tested local image when an identical package set is required.

v0.15.0

Choose a tag to compare

@github-actions github-actions released this 27 Oct 17:50
  • The tool image is built on Ubuntu 24.04 instead of the Alpine-based Docker CLI image. Alpine keeps only the newest build of each package, so the exact package pins broke make dev-image whenever Alpine published an update.

  • Ubuntu packages in both images come from a fixed snapshot.ubuntu.com date instead of the live archive, so rebuilding a tag installs the same packages.

  • The Docker CLI, Compose and Buildx binaries are copied from the same pinned Docker CLI image as before. jq 1.8.2, ShellCheck 0.11.0, shfmt 3.13.1, noVNC 1.6.0 and websockify 0.13.0 are upstream releases checked against pinned SHA-256 values, at the versions the Alpine image carried.

  • python3 is Ubuntu's Python 3.12, run from a virtual environment with pytest 9.0.3 installed from the hash-pinned requirements-pytest.txt. python3 -m pytest works as before.

  • adb is the SDK platform-tools build, the same one the emulator image uses, instead of Alpine's android-tools package.

  • The issue-pull workflow runs at hours derived from the repository name instead of the same four hours as every other repository.

  • Images derived from the tool image install extra packages with apt-get instead of apk add.

  • Python code run in the tool image must support Python 3.12.

  • docs/integration.md explains which tags keep building after their base distribution moves on.

v0.14.1

Choose a tag to compare

@github-actions github-actions released this 19 Oct 13:36
  • ANDROID_LAB_EMULATOR_MEMORY_LIMIT overrides the emulator memory cap. start accepts a whole number followed by m or g and rejects anything else.

  • The emulator container's memory cap is 12g instead of 8g. A 4 GiB guest with software rendering holds about 7.4 GiB, so long test runs hit the 8g cap and the kernel killed the emulator mid-run.

  • A running lab keeps its old cap until android-lab restart recreates the emulator with this release.

  • The README and the installer's usage comment write <version> and show how to pick a release from the tags, as the android-lab skill already does. A release now changes only VERSION.

v0.14.0

Choose a tag to compare

@github-actions github-actions released this 18 Oct 12:51
  • AGENTS.md is tracked. It documents the lab workflow and the version references to update when VERSION changes.

  • The android-lab skill is published to ClawHub on each release. It tells an agent how to pick a release from the tags, install the images, build with Gradle, run the emulator, install APKs, inspect the UI and forward ports from the app's own directory, with the exact docker run commands.

  • android-lab start publishes the web viewer on 127.0.0.1:61326 by default. Before, Compose bound 61325 while the readiness check waited for 61326, so start failed unless ANDROID_LAB_VNC_HOST_PORT was set.

  • On 0.13.0, set ANDROID_LAB_VNC_HOST_PORT=61326 for lifecycle commands, or install 0.14.0.

v0.13.0

Choose a tag to compare

@github-actions github-actions released this 18 Oct 12:07
  • install.sh builds the local images for one tagged release. It is meant for curl | bash, keeps images that already exist, checks the tag's VERSION, and needs only Bash, Git, Make and Docker on the host. make test covers it with stubbed Docker, Git and Make.

  • Tag pushes create a GitHub Release after the checks pass.

  • Portable Android Lab skills and setup references, with README instructions for installing them in another Android project.

  • Codeberg and GitLab mirrors, scheduled mirror issue sync, and public archive jobs.

  • The README documents generic port forwarding without launcher-specific protocols.

  • Make sizes tool CPU limits and Gradle workers for the Docker host, capped at ten CPUs.

  • Split Dikciz Launcher into a standalone repository. Android Lab now embeds generic Gradle, emulator and device commands in local versioned tooling images.

  • Consumers build Android Lab images locally, then use their own Makefiles. Images are not published to a registry.

  • Gradle projects may live at the consumer workspace root. Controllers use explicit host workspace paths and workspace-specific Compose names.

  • Lab contract tests check the configured Gradle worker count instead of requiring ten workers on every runner.

  • The pipeline's concurrency group no longer collides with the reusable code workflow's group.

  • The development image pins shfmt 3.13.1-r3. Alpine removed the -r2 rebuild, which broke make dev-image.

  • Build both images with install.sh or make build in Android Lab after SDK license acceptance, then run Dikciz operations from its separate checkout.

  • Preserve .android-lab/ when migrating. It contains the saved phone and stable signing identity.

  • Changelog entries before 0.13.0 describe the combined lab and launcher repository.