Migrate from `bazelbuild/setup-bazelisk` to `bazel-contrib/setup-bazel` in `ci.yml` The `bazelbuild/setup-bazelisk` is archived since March 11, 2024: https://github.com/bazelbuild/setup-bazelisk Instead, it is recommended to use `bazel-contrib/setup-bazel`: https://github.com/bazel-contrib/setup-bazel The migration guide is available here: https://github.com/bazel-contrib/setup-bazel#migrating-from-bazelbuildsetup-bazelisk
This project provides build rules for integrating Robolectric into Bazel projects.
Follow instructions in the release notes from the release you use: https://github.com/robolectric/robolectric-bazel/releases
In your android_local_test targets in the BUILD files, depend on the Robolectric targets @maven//:org_robolectric_robolectric and @robolectric//bazel:android-all:
android_local_test( name = "greeter_activity_test", srcs = ["GreeterTest.java"], manifest = "TestManifest.xml", test_class = "com.example.bazel.GreeterTest", deps = [ ":greeter_activity", "@maven//:org_robolectric_robolectric", "@robolectric//bazel:android-all", ], )
update-versions.py walks org.robolectric:android-all-instrumented on Maven Central and rewrites bazel/robolectric.bzl in place: it bumps the version and sha256 of any Android API group that has a newer release, and inserts new entries for any numeric API newer than the highest one currently listed.
./update-versions.py # apply updates ./update-versions.py --dry-run # preview without writing
A new release can be published by just pushing a tag.
Once the tag is pushed, GitHub Actions will build, test, and publish a release to both GitHub releases and the BCR.
Example:
git tag 4.11.1 git push origin 4.11.1