Summary
thank-you-stars is a CLI tool to stars to a PyPI package and its dependencies hosted on GitHub.
Usage
Prerequisite
Generate a personal access token at GitHub developer settings with public_repo scope
Install target PyPI packages
Basic usage
$ thank-you-stars <PyPI package>
thank-you-stars will do:
Find a repository on GitHub correlated with the PyPI package
Star the repository if found
Repeat 1. and 2. for each of the dependency packages
Initial setup and add stars to GitHub repositories
With --setup option, you can configure an access token and then star to repositories.
$ thank-you-stars thank-you-stars --setup
personal access token (required): <input personal access token>
Collect package info: 100%|████████████████████████| 2/2 [00:00<00:00, 196.82it/s]
Collect GitHub info: 100%|████████████████████████| 14/14 [00:00<00:00, 29.11it/s]
[INFO] tys: skip owned repository: thank-you-stars
[INFO] tys: skip owned repository: thombashi/DateTimeRange
[INFO] tys: star to PyGithub/PyGithub
[INFO] tys: star to tartley/colorama
[INFO] tys: star to getlogbook/logbook
[INFO] tys: skip owned repository: thombashi/mbstrdecoder
[INFO] tys: skip owned repository: thombashi/msgfy
[INFO] tys: skip owned repository: thombashi/pathvalidate
[INFO] tys: skip owned repository: thombashi/pytablewriter
[INFO] tys: star to requests/requests
[INFO] tys: star to pypa/setuptools
[INFO] tys: star to simplejson/simplejson
[INFO] tys: skip owned repository: thombashi/subprocrunner
[INFO] tys: star to tqdm/tqdm
Once setup is completed, --setup option not required for subsequent executions.
Add stars GitHub repositories from a package source
$ cd <path to a package source>
$ thank-you-stars .
[INFO] tys: star to xxxx
...
Check starred status
$ thank-you-stars thank-you-stars --check
Collect package info: 100%|███████████████████████| 2/2 [00:00<00:00, 196.82it/s]
Collect GitHub info: 100%|███████████████████████| 14/14 [00:00<00:00, 29.11it/s]
| Package | Repository | Starred | Owner |
|-----------------|---------------------------|:-------:|:-----:|
| thank-you-stars | thombashi/thank-you-stars | | X |
| DateTimeRange | thombashi/DateTimeRange | | X |
| PyGithub | PyGithub/PyGithub | X | |
| colorama | tartley/colorama | X | |
| logbook | getlogbook/logbook | X | |
| mbstrdecoder | thombashi/mbstrdecoder | | X |
| msgfy | thombashi/msgfy | | X |
| pathvalidate | thombashi/pathvalidate | | X |
| pytablewriter | thombashi/pytablewriter | | X |
| requests | requests/requests | X | |
| setuptools | pypa/setuptools | X | |
| simplejson | simplejson/simplejson | X | |
| subprocrunner | thombashi/subprocrunner | | X |
| tqdm | tqdm/tqdm | X | |
Increase the repository traversal depth
$ thank-you-stars thank-you-stars --check --depth 3 -v
Collect package info: 100%|████████████████████████| 4/4 [00:00<00:00, 185.04it/s]
Collect GitHub info: 100%|██████████████████████| 27/27 [00:00<00:00, 1414.71it/s]
| Package | Repository | Starred | Owner | Depth |
|-----------------|---------------------------|:-------:|:-----:|------:|
| thank-you-stars | thombashi/thank-you-stars | | X | 0 |
| DateTimeRange | thombashi/DateTimeRange | | X | 1 |
| PyGithub | PyGithub/PyGithub | X | | 1 |
| colorama | tartley/colorama | X | | 1 |
| logbook | getlogbook/logbook | X | | 1 |
| mbstrdecoder | thombashi/mbstrdecoder | | X | 1 |
| msgfy | thombashi/msgfy | | X | 1 |
| pathvalidate | thombashi/pathvalidate | | X | 1 |
| pytablewriter | thombashi/pytablewriter | | X | 1 |
| requests | requests/requests | X | | 1 |
| setuptools | pypa/setuptools | X | | 1 |
| simplejson | simplejson/simplejson | X | | 1 |
| subprocrunner | thombashi/subprocrunner | | X | 1 |
| tqdm | tqdm/tqdm | X | | 1 |
| DataProperty | thombashi/DataProperty | | X | 2 |
| certifi | certifi/python-certifi | | | 2 |
| chardet | chardet/chardet | X | | 2 |
| deprecated | tantale/deprecated | | | 2 |
| dominate | Knio/dominate | X | | 2 |
| idna | kjd/idna | | | 2 |
| pyjwt | jpadilla/pyjwt | | | 2 |
| python-dateutil | paxan/python-dateutil | | | 2 |
| six | benjaminp/six | X | | 2 |
| tabledata | thombashi/tabledata | | X | 2 |
| typepy | thombashi/typepy | | X | 2 |
| urllib3 | urllib3/urllib3 | | | 2 |
| wrapt | GrahamDumpleton/wrapt | | | 3 |
Command help
$ thank-you-stars -h
usage: thank-you-stars [-h] [--version] [--token TOKEN] [--config CONFIG]
[--setup] [--check] [-v] [--depth DEPTH]
[--include-owner-repo] [--no-cache] [--dry-run]
[--debug | --quiet] [--stacktrace]
target
Give stars a PyPI package and its dependencies.
positional arguments:
target PyPI package name or path to the package source code
directory
optional arguments:
-h, --help show this help message and exit
--version show program's version number and exit
--dry-run Do no harm.
--debug for debug print.
--quiet suppress execution log messages.
Configurations:
--token TOKEN GitHub personal access token that has public_repo
scope.
--config CONFIG path to a conig file. the config file expected to
contain token: { "token" : <GitHub personal access
token that has public_repo scope> } (defaults to
~/.thank-you-stars.json).",
--setup setup token interactively, and then starring.
Star Status:
--check list starred status for each package with tabular
format and exit. does not actually star to found
GitHub repositories.
-v, --verbosity increase output verbosity.
Repository Search:
--depth DEPTH depth to recursively find dependencies of
dependencies." 0 means to star specified the package
only. 1 means to star specified the package and its
dependencies. equals to 2 or greater will increase the
depth of traverse that dependencies of dependencies.
--include-owner-repo starred to repositories that owned by you.
--no-cache disable the local caches.
Debug:
--stacktrace print stack trace for debug information. --debug
option required to see the debug print.
Issue tracker: https://github.com/thombashi/thank-you-stars/issues
Installation
pip install thank-you-stars
Dependencies
Python 3.5+
Metadata
Release files for thank-you-stars 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| thank-you-stars-0.1.0.tar.gz | 18.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| thank_you_stars-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 37.1 kB
Release files / thank-you-stars-0.1.0.tar.gz
| Download URL | thank-you-stars-0.1.0.tar.gz |
|---|---|
| Size | 18.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c5b47fff6dfc82a1699ad4d4a5e0858a38da6abaa47901a69ee6952376df3b4c
|
|
BLAKE2b-256 checksum How to use checksums |
eacd96110fbc31f9faf813c491f73c7399d8c2105505c8574b80b2799818af6b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.2
|
Release files / thank_you_stars-0.1.0-py3-none-any.whl
| Download URL | thank_you_stars-0.1.0-py3-none-any.whl |
|---|---|
| Size | 18.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9cfa9698c4f915e776259bcc1a543efb7d2923db3a14666d248f11c80acfdda7
|
|
BLAKE2b-256 checksum How to use checksums |
e4e5c787359e36c04c826d6592f342dd510c72d139a2c9f888aec07390f686a5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.2
|