Update README and pyproject.toml. am: 4576977c62

Original change: https://android-review.googlesource.com/c/platform/tools/rr_prebuilt/+/2768236

Change-Id: I1e3faaf9d51d4e34bc1caa49b3cc8d09c92a46f7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
tree: 5343a138ed8d4cdd0202c66cae4d94bd04139128
  1. rr/
  2. rrprebuiltupdater/
  3. tests/
  4. .gitignore
  5. Makefile
  6. OWNERS
  7. poetry.lock
  8. pyproject.toml
  9. README.md
  10. requirements.txt
  11. update.py
  12. update.sh
README.md

rr prebuilts

This directory contains the prebuilt binaries for rr. These binaries come from aosp-rr-dev. See toolchain/rr/android/README.md for information about how to build and update that project.

Updating prebuilts

To update the prebuilt binaries in this directory to a newer version from ci.android.com, run:

$ ./update.sh $BUILD_ID

$BUILD_ID is optional. If omitted, the latest completed build will be used.

Development guide for update.py

The development environment is managed using Poetry. If you need to make a non-trivial change you will want to install that so you can run the linters, formatters, and tests. Once installed, run poetry install in this directory to install the development dependencies.

Run the type checker and linter with make lint.

Auto-format the code with make format.

Run the tests with make test

Run all of the above with make check or just make.

Managing dependencies

New dependencies can be added with poetry add <name> or removed with poetry add <name>. Updating a dependency to a newer version is also done with poetry add.

Whenever dependencies are updated, run poetry export --without-hashes --output requirements.txt to update the requirements.txt file. That file is used by update.sh so poetry is only needed by developers of update.py, not callers. Note that poetry does not generate the correct output for the local fetchartifact dependency, so after running export, you'll need to manually fix that line.