Skip to main content

thank-you-stars is a CLI tool to stars to a PyPI package and its dependencies hosted on GitHub.

Project description

Summary

thank-you-stars is a CLI tool to stars to a PyPI package and its dependencies hosted on GitHub.

PyPI package version Supported Python versions

Usage

Prerequisite

Basic usage

$ thank-you-stars <PyPI package>

thank-you-stars will do:

  1. Find a repository on GitHub correlated with the PyPI package

  2. Star the repository if found

  3. 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+

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

thank-you-stars-0.1.0.tar.gz (18.9 kB view details)

Uploaded Source

Built Distribution

thank_you_stars-0.1.0-py3-none-any.whl (18.1 kB view details)

Uploaded Python 3

File details

Details for the file thank-you-stars-0.1.0.tar.gz.

File metadata

  • Download URL: thank-you-stars-0.1.0.tar.gz
  • Upload date:
  • Size: 18.9 kB
  • Tags: Source
  • Uploaded using 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

File hashes

Hashes for thank-you-stars-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c5b47fff6dfc82a1699ad4d4a5e0858a38da6abaa47901a69ee6952376df3b4c
MD5 97add6121d4e2296a557f49fd5aff063
BLAKE2b-256 eacd96110fbc31f9faf813c491f73c7399d8c2105505c8574b80b2799818af6b

See more details on using hashes here.

File details

Details for the file thank_you_stars-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: thank_you_stars-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 18.1 kB
  • Tags: Python 3
  • Uploaded using 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

File hashes

Hashes for thank_you_stars-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9cfa9698c4f915e776259bcc1a543efb7d2923db3a14666d248f11c80acfdda7
MD5 cb33fcb1b43c6bd6c06b8bbf7007de6c
BLAKE2b-256 e4e5c787359e36c04c826d6592f342dd510c72d139a2c9f888aec07390f686a5

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