diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml new file mode 100644 index 0000000..9e93b88 --- /dev/null +++ b/.github/workflows/tests.yml @@ -0,0 +1,25 @@ +name: Tests +on: [push] + +jobs: + build: + strategy: + matrix: + python-version: [3.6, 3.7, 3.8, 3.9] + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v1 + with: + python-version: ${{ matrix.python-version }} + - name: Install dependencies + run: | + pip install . + pip install -r requirements_dev.txt + - name: Run pre-commit + run: | + git diff --name-only $TRAVIS_COMMIT_RANGE | xargs pre-commit run --files + - name: Test + run: make ci diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index d6d1a9c..0000000 --- a/.travis.yml +++ /dev/null @@ -1,36 +0,0 @@ -language: python -dist: bionic -sudo: false -cache: false -stages: - - name: deploy - if: repo = davegallant/rfd AND tag IS present - -before_install: - - pip install -U pip -install: - - python setup.py install - - pip install -r requirements_dev.txt - - git diff --name-only $TRAVIS_COMMIT_RANGE | xargs pre-commit run --files -script: - - tox - -jobs: - include: - - python: "2.7" - - python: "3.5" - - python: "3.6" - - python: "3.7" - - python: "3.8" - - python: "3.9-dev" - - - stage: deploy - python: "3.8" - deploy: - on: - repo: davegallant/rfd - tags: true - provider: pypi - user: __token__ - password: - secure: qxOUGvwMz+ZfkDeizevNoMGDWSxkyhQLb6xmjjxcv6ZiZo7u3c7IbPD5rKD8fayWZ+7uLplc7BNBce4DDYgtLcxQEq2NpFWZ+hQSXN98luMdR532axoaa4N4UaLW6rhm+lfgiQljv27vnc2Ce6xYcIwLdpmoGBRnEV4+EmDdhLTwV9wJwkfpMtffV0Lsx8R8uAOfm3y71/urmJWszH2xVxAyOWP+hkSvccyiN6v2KiPQ428f/iqHlusz1ChKanKlFo141CsUAZc5sHRDy8QJmb2VpPUU75whnkGJONj1/hOuWlInzeH+mXYsT7YieM2SgkXdShdKMuyJz081Nsvy0jufMY1v1D/WwGLlhsYgrx/Q3W3ivvzSPn0TbE4FHexh0N4JoZ7K/fBNS0lQ9aLaV7nwEJKYcs5UY8hBywOIEpImkM79tdDiuGJyQ+ulwvZHLvfMy/LXi06DzHFFMz0skGNXT/b+8/IjeU47dSxSvfls7sgO8OKvWnecIeXfXQ9nUIP4aCjaE3G9nsdBzRNgaASZkCiReWIgA13Dbb7Sqb7fKRaAI+j7PZw5j7s8kT5zfdTDYGCAnGyFkDR+L4EXM5/0UDTIjpUgLTxOPxkl4REin5V4ojJC87h0bUONhzNG5odGpZ45kZMUpuhJgLtQ42hvOxZ6B6I2Ln8ZeHIN59w= diff --git a/README.md b/README.md index 606fe74..b38d7da 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,6 @@ Hot deals on the command line. -[![Build Status](https://travis-ci.com/davegallant/rfd.svg?branch=master)](https://travis-ci.com/davegallant/rfd) [![PyPI version](https://badge.fury.io/py/rfd.svg)](https://badge.fury.io/py/rfd) [![Dependabot](https://badgen.net/badge/Dependabot/enabled/green?icon=dependabot)](https://dependabot.com/) [![Downloads](https://pepy.tech/badge/rfd)](https://pepy.tech/project/rfd) @@ -17,7 +16,7 @@ pip install rfd ## Usage -```shell +```sh Usage: rfd [OPTIONS] COMMAND [ARGS]... CLI for https://forums.redflagdeals.com @@ -34,60 +33,62 @@ Commands: ## Examples -All commands open up in a pager. - -Search can be done using `/`. - -Close pager with `q`. +All commands open up in a [terminal pager](https://en.wikipedia.org/wiki/Terminal_pager). ### View Hot Deals -```console -$ rfd threads +```sh +rfd threads ``` ### View and Sort Hot Deals -```console -$ rfd threads --sort-by score +```sh +rfd threads --sort-by score ``` -```console -$ rfd threads --sort-by views --pages 10 +To view and sort multiple pages, use `--pages`: + +```sh +rfd threads --sort-by views --pages 10 ``` ### Simple Search -```console -$ rfd search 'pizza' +```sh +rfd search 'pizza' ``` ### Advanced Search Regular expressions can be used for search. -```console -$ rfd search '(coffee|starbucks)' --pages 10 --sort-by views +```sh +rfd search '(coffee|starbucks)' --pages 10 --sort-by views ``` ### View Posts -```console -$ rfd posts https://forums.redflagdeals.com/kobo-vs-kindle-2396227/ +It's possible to view an entire post and all comments by running: + +```sh +rfd posts https://forums.redflagdeals.com/kobo-vs-kindle-2396227/ ``` +This allows for easy grepping and searching for desired expressions. + ## Shell Completion -Completion can be enabled if using `bash` or `zsh`. +Shell completion can be enabled if using `bash` or `zsh`. ### bash -```console -$ echo 'eval "$(_RFD_COMPLETE=source rfd)"' >> ~/.profile +```sh +echo 'eval "$(_RFD_COMPLETE=source rfd)"' >> ~/.profile ``` ### zsh -```console -$ echo 'eval "$(_RFD_COMPLETE=source_zsh rfd)"' >> ~/.zshrc +```sh +echo 'eval "$(_RFD_COMPLETE=source_zsh rfd)"' >> ~/.zshrc ``` diff --git a/tests/integration/test_cli.py b/tests/integration/test_cli.py index c8d8963..8e9acce 100644 --- a/tests/integration/test_cli.py +++ b/tests/integration/test_cli.py @@ -6,7 +6,7 @@ def run_cli(args): cmd = ["python", "-m", "rfd"] + args.split() p = Popen(cmd, stdout=PIPE) stdout, _ = p.communicate() - assert p.returncode == 0 + assert p.returncode == 0, stdout return stdout diff --git a/tox.ini b/tox.ini deleted file mode 100644 index 81d8bd6..0000000 --- a/tox.ini +++ /dev/null @@ -1,11 +0,0 @@ -[tox] -envlist = py{27, - 35, - 36, - 37, - } - -[testenv] -passenv = SSH_AUTH_SOCK -commands = - make ci