bleach
Remove mold from your repositories :)
Bleach is a project dedicated to helping software development teams keep track of their repositories and make sure no pull request is left unattended.
Bleach may query GitHub and BitBucket repositories, and write alerts on pull requests open for too long to Slack.
Bleach may also try to make an educated guess as for whether or not two branches are out of sync. For example, a master branch may be expected to contain all commits from a staging branch, and Bleach will alert if that is not the case.
Installing
For unpriviliged users:
pip install --user bleachrepo
Or for priviliged users / with sudo:
pip install bleachrepo
Running & Commands
python -m bleach <org> <repo> <command> <additional_params_for_command>
Viable commands are:
pr - check the status of open pull requests of given <repo> in <org>.
branch - compare two branches, checking if commits are present in one branch, but not another.
Pull requests
pr is used to check the status of pull requests in a given repo, and helps find pull requests that are open for too long.
for example, python -m bleach shesekino bleach pr will write to stdout a summary of pull requests open for over 2 days.
Branch sync
branch is used to check for commits appearing in one branch, but not another.
This feature can be useful for repositories with a master branch that is expected to eventually contain all recent commits from a staging branch.
python -m bleach shesekino bleach branch test-branch-discrepancy-1 test-branch-discrepancy-2 will check if there are commits in branch test-branch-discrepancy-2 that do not appear in test-branch-discrepancy-1.
This feature somewhat relies on guesswork and assumptions.
Private & public repositories
Public repositories require no special treatment.
For private repositories, obtain a GitHub access token with repo permissions, then set it as an environment variable:
export BLEACH_GITHUB_ACCESS_TOKEN=<access token>
and run normally.
Writing to Slack
Set a webhook URL to slack:
export BLEACH_SLACK_WEBHOOK=<webhook url>
then run:
python -m bleach --outputMethod slack <org> <repo> <command>
Metadata
Release files for bleachrepo 0.0.24
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| bleachrepo-0.0.24.tar.gz | 7.7 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| bleachrepo-0.0.24-py2-none-any.whl | Python 2 | none | any | Details |
Total release size: 19.2 kB
Release files / bleachrepo-0.0.24.tar.gz
| Download URL | bleachrepo-0.0.24.tar.gz |
|---|---|
| Size | 7.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
601f11e272391a3fbc2ea241e51d62788cfa6f973aa205c7a2ecffbc558bd9b2
|
|
BLAKE2b-256 checksum How to use checksums |
dbba7927d16b30231b3fd8812f079afea3690341ddb0291b52f6874d5f949479
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.7.2
|
Release files / bleachrepo-0.0.24-py2-none-any.whl
| Download URL | bleachrepo-0.0.24-py2-none-any.whl |
|---|---|
| Size | 11.4 kB |
| Tags | Python 2 |
|
SHA-256 checksum How to use checksums |
86476fd554199cf825869dcca3146ca9e332fe7c068da3ed6273a5fd268c9800
|
|
BLAKE2b-256 checksum How to use checksums |
d6f89b80a60c8ef1f07e66f5c7f992fc649a04f6f48eb5e79f9dc3f55994dd73
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.7.2
|
Security for bleachrepo 0.0.24
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.