Skip to main content

Automation for analyzing changes to the rosdep database and rosdistro index

Project description

rosdistro-reviewer

build coverage pypi

Automation for analyzing changes to the rosdep database and rosdistro index

The rosdistro index and rosdep database hold a significant amount of semi-manually curated information about various types of packages and how they are associated. To facilitate maintenance of this data and discourage modifications which might introduce unexpected behavior for users, robust automation is needed to validate proposed changes.

This tool analyzes a git repository containing changes to the rosdistro index and/or rosdep database and provides specific and actionable feedback. It is also capable of posting that feedback directly to a content forge like GitHub as a pull request review.

Invoking rosdistro-reviewer locally

Nearly all of the validation that rosdistro-review does can be performed locally. To run the analysis, just run rosdistro-reviewer from anywhere in the git repository you'd like to check. By default, the tool will only analyze uncommitted changes against the most recent commit. If you've already committed your changes and you'd still like to check them, you can choose a different target ref with the --target-ref option. For example:

$ rosdistro-reviewer --target-ref origin/master

  ✅ No changes recommended
 /————————————————————————————————————————————————————————————————————————————\
 | For changes related to rosdep:                                             |
 | * ✅ New rosdep keys are named appropriately                               |
 |                                                                            |
 | For changes related to yamllint:                                           |
 | * ✅ All new lines of YAML pass linter checks                              |
 \————————————————————————————————————————————————————————————————————————————/

Running rosdistro-reviewer in GitHub Actions

When a rosdistro pull request is opened on GitHub which contains changes that this tool can process, it is invoked using GitHub Actions and the resulting analysis is posted to the pull request as a review by the user github-actions[bot]. The rosdistro review team uses the information presented by this review to determine if proposed commits require changes before merging.

example GitHub pull request review

Unlike typical pull request automation, a new review will not be generated when new changes are pushed to the pull request branch. When you feel that you've sufficiently addressed the feedback given in a previous review, you should re-request review from "GitHub Actions" and a fresh analysis will be performed.

requesting re-review from GitHub Actions

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rosdistro-reviewer-0.1.2.tar.gz (24.4 kB view details)

Uploaded Source

Built Distribution

rosdistro_reviewer-0.1.2-py3-none-any.whl (22.6 kB view details)

Uploaded Python 3

File details

Details for the file rosdistro-reviewer-0.1.2.tar.gz.

File metadata

  • Download URL: rosdistro-reviewer-0.1.2.tar.gz
  • Upload date:
  • Size: 24.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/59.8.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10

File hashes

Hashes for rosdistro-reviewer-0.1.2.tar.gz
Algorithm Hash digest
SHA256 4563f8f27be0e033b904e292e589ed1a1df1baf4d5974e9f17e68f11e610ddb2
MD5 5c18a4bb0755bdfc637678e1df7077d7
BLAKE2b-256 ea49323dc914a68aa15602fd3d428f44e62624dbf94280d1ff2f6ce14c77d3c5

See more details on using hashes here.

File details

Details for the file rosdistro_reviewer-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: rosdistro_reviewer-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 22.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/59.8.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10

File hashes

Hashes for rosdistro_reviewer-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3dc053c5067e2e4071d0e2071ac975440bc7d93ad8a9798fa2b95c69dd4a282f
MD5 95ed1bac753586df218421a775e6c2cc
BLAKE2b-256 7e3698385ea1d4cf91d1e2f57df3fe86be78f24671db03a0f11f85e4b3693f06

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page