53 Commits

Author SHA1 Message Date
dependabot[bot]
4e8a302253 Bump idna from 3.3 to 3.7
Bumps [idna](https://github.com/kjd/idna) from 3.3 to 3.7.
- [Release notes](https://github.com/kjd/idna/releases)
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.rst)
- [Commits](https://github.com/kjd/idna/compare/v3.3...v3.7)

---
updated-dependencies:
- dependency-name: idna
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-12 00:43:33 +00:00
dependabot[bot]
dcd2a49037 Bump beautifulsoup4 from 4.11.2 to 4.12.3 (#150)
Bumps [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) from 4.11.2 to 4.12.3.

---
updated-dependencies:
- dependency-name: beautifulsoup4
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-22 19:10:17 -05:00
dependabot[bot]
224680a8e1 Bump github/codeql-action from 2 to 3 (#149)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2 to 3.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-18 17:10:01 -05:00
dependabot[bot]
1f4dc1ace9 Bump actions/setup-python from 4 to 5 (#148)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-11 19:12:52 -05:00
dependabot[bot]
e24b7fbaed Bump urllib3 from 1.26.17 to 1.26.18 (#147)
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.17 to 1.26.18.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.17...1.26.18)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-17 21:45:53 -04:00
dependabot[bot]
16ca06ef58 Bump urllib3 from 1.26.9 to 1.26.17 (#146)
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.9 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.9...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-03 06:59:08 -04:00
dependabot[bot]
40cd26166e Bump actions/checkout from 3 to 4 (#145)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-04 16:45:54 -04:00
dependabot[bot]
f4dd94cfff Bump certifi from 2022.12.7 to 2023.7.22 (#144)
Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.12.7 to 2023.7.22.
- [Commits](https://github.com/certifi/python-certifi/compare/2022.12.07...2023.07.22)

---
updated-dependencies:
- dependency-name: certifi
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-19 16:01:45 -04:00
dependabot[bot]
c148897a00 Bump beautifulsoup4 from 4.11.1 to 4.11.2 (#141)
Bumps [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) from 4.11.1 to 4.11.2.

---
updated-dependencies:
- dependency-name: beautifulsoup4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-07 14:58:27 -05:00
dependabot[bot]
ac10720c68 Bump certifi from 2022.6.15 to 2022.12.7 (#140)
Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.6.15 to 2022.12.7.
- [Release notes](https://github.com/certifi/python-certifi/releases)
- [Commits](https://github.com/certifi/python-certifi/compare/2022.06.15...2022.12.07)

---
updated-dependencies:
- dependency-name: certifi
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-09 14:35:00 -05:00
Dave G
260ef74d4e Add json output flag (#139) 2022-07-05 00:11:00 -04:00
dependabot[bot]
3df07dc65e Bump colorama from 0.4.4 to 0.4.5 (#138)
Bumps [colorama](https://github.com/tartley/colorama) from 0.4.4 to 0.4.5.
- [Release notes](https://github.com/tartley/colorama/releases)
- [Changelog](https://github.com/tartley/colorama/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/tartley/colorama/compare/0.4.4...0.4.5)

---
updated-dependencies:
- dependency-name: colorama
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-20 16:47:40 -04:00
dependabot[bot]
b96cab1638 Bump actions/setup-python from 3 to 4 (#137)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 3 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-13 20:19:53 -04:00
dependabot[bot]
67d3f2db14 Bump pre-commit from 1.21.0 to 2.1.1 (#136)
Bumps [pre-commit](https://github.com/pre-commit/pre-commit) from 1.21.0 to 2.1.1.
- [Release notes](https://github.com/pre-commit/pre-commit/releases)
- [Changelog](https://github.com/pre-commit/pre-commit/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pre-commit/pre-commit/compare/v1.21.0...v2.1.1)

---
updated-dependencies:
- dependency-name: pre-commit
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-29 11:16:21 -04:00
dependabot[bot]
b0e11ec375 Bump github/codeql-action from 1 to 2 (#133)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 1 to 2.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-29 11:16:13 -04:00
dependabot[bot]
3421e107b6 Bump actions/checkout from 2 to 3 (#134)
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-29 11:16:06 -04:00
dependabot[bot]
3b3aeac80e Bump actions/setup-python from 1 to 3 (#135)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 1 to 3.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v1...v3)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-29 11:15:59 -04:00
Dave G
a7e20b77e6 Update dependabot.yml 2022-05-29 10:56:28 -04:00
dependabot[bot]
90af78c5f2 Bump rope from 1.1.0 to 1.1.1 (#132)
Bumps [rope](https://github.com/python-rope/rope) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/python-rope/rope/releases)
- [Changelog](https://github.com/python-rope/rope/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python-rope/rope/compare/1.1.0...1.1.1)

---
updated-dependencies:
- dependency-name: rope
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-26 07:27:34 -04:00
dependabot[bot]
9e3a92d548 Bump rope from 1.0.0 to 1.1.0 (#131)
Bumps [rope](https://github.com/python-rope/rope) from 1.0.0 to 1.1.0.
- [Release notes](https://github.com/python-rope/rope/releases)
- [Changelog](https://github.com/python-rope/rope/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python-rope/rope/compare/1.0.0...1.1.0)

---
updated-dependencies:
- dependency-name: rope
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-25 08:31:14 -04:00
Dave G
9c61c419aa Bump version to 0.8.1 (#130) 2022-05-15 13:19:27 -04:00
Dave G
c38d3f256b Update dependencies (#129)
* Update dependencies

* Add python 3.10
2022-05-15 13:18:10 -04:00
dependabot[bot]
4fa889a64a Bump soupsieve from 2.3.2 to 2.3.2.post1 (#128)
Bumps [soupsieve](https://github.com/facelessuser/soupsieve) from 2.3.2 to 2.3.2.post1.
- [Release notes](https://github.com/facelessuser/soupsieve/releases)
- [Commits](https://github.com/facelessuser/soupsieve/compare/2.3.2...2.3.2.post1)

---
updated-dependencies:
- dependency-name: soupsieve
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-15 07:30:11 -04:00
dependabot[bot]
aa06127990 Bump beautifulsoup4 from 4.11.0 to 4.11.1 (#127)
Bumps [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) from 4.11.0 to 4.11.1.

---
updated-dependencies:
- dependency-name: beautifulsoup4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-11 07:19:08 -04:00
dependabot[bot]
47b7785e42 Bump rope from 0.23.0 to 1.0.0 (#126)
Bumps [rope](https://github.com/python-rope/rope) from 0.23.0 to 1.0.0.
- [Release notes](https://github.com/python-rope/rope/releases)
- [Changelog](https://github.com/python-rope/rope/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python-rope/rope/compare/0.23.0...1.0.0)

---
updated-dependencies:
- dependency-name: rope
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Dave G <davegallant@gmail.com>
2022-04-08 07:41:19 -04:00
dependabot[bot]
b8a863650f Bump beautifulsoup4 from 4.10.0 to 4.11.0 (#125)
Bumps [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) from 4.10.0 to 4.11.0.

---
updated-dependencies:
- dependency-name: beautifulsoup4
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-08 07:35:38 -04:00
dependabot[bot]
51b2982f28 Bump soupsieve from 2.3.1 to 2.3.2 (#124)
Bumps [soupsieve](https://github.com/facelessuser/soupsieve) from 2.3.1 to 2.3.2.
- [Release notes](https://github.com/facelessuser/soupsieve/releases)
- [Commits](https://github.com/facelessuser/soupsieve/compare/2.3.1...2.3.2)

---
updated-dependencies:
- dependency-name: soupsieve
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-07 08:09:29 -04:00
dependabot[bot]
cca01264c6 Bump rope from 0.22.0 to 0.23.0 (#123)
Bumps [rope](https://github.com/python-rope/rope) from 0.22.0 to 0.23.0.
- [Release notes](https://github.com/python-rope/rope/releases)
- [Changelog](https://github.com/python-rope/rope/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python-rope/rope/compare/0.22.0...0.23.0)

---
updated-dependencies:
- dependency-name: rope
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-28 07:22:05 -05:00
dependabot[bot]
69ff622629 Bump click from 8.0.3 to 8.0.4 (#122)
Bumps [click](https://github.com/pallets/click) from 8.0.3 to 8.0.4.
- [Release notes](https://github.com/pallets/click/releases)
- [Changelog](https://github.com/pallets/click/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/click/compare/8.0.3...8.0.4)

---
updated-dependencies:
- dependency-name: click
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-21 09:42:14 -05:00
dependabot[bot]
18f37bfef4 Bump pytest from 7.0.0 to 7.0.1 (#121)
Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.0.0 to 7.0.1.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/7.0.0...7.0.1)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-14 07:27:05 -05:00
dependabot[bot]
8cb12bc4b5 Bump urllib3 from 1.26.4 to 1.26.5 (#117)
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.4 to 1.26.5.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.4...1.26.5)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Dave G <davegallant@gmail.com>
2022-02-08 11:00:38 -05:00
dependabot[bot]
889f459437 Bump pytest from 6.2.5 to 7.0.0 (#120)
Bumps [pytest](https://github.com/pytest-dev/pytest) from 6.2.5 to 7.0.0.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/6.2.5...7.0.0)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-07 07:47:57 -05:00
dependabot[bot]
6e36ddde92 Bump requests from 2.27.0 to 2.27.1 (#119)
Bumps [requests](https://github.com/psf/requests) from 2.27.0 to 2.27.1.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.27.0...v2.27.1)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-06 09:39:13 -05:00
dependabot[bot]
554a057c7f Bump requests from 2.26.0 to 2.27.0 (#118)
Bumps [requests](https://github.com/psf/requests) from 2.26.0 to 2.27.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.26.0...v2.27.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-04 07:12:01 -05:00
dependabot[bot]
aba15cf0c3 Bump rope from 0.20.1 to 0.22.0 (#115)
Bumps [rope](https://github.com/python-rope/rope) from 0.20.1 to 0.22.0.
- [Release notes](https://github.com/python-rope/rope/releases)
- [Changelog](https://github.com/python-rope/rope/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python-rope/rope/commits/0.22.0)

---
updated-dependencies:
- dependency-name: rope
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Dave G <davegallant@gmail.com>
2021-12-05 18:59:36 -05:00
dependabot[bot]
f422135014 Bump soupsieve from 2.2.1 to 2.3.1 (#114)
Bumps [soupsieve](https://github.com/facelessuser/soupsieve) from 2.2.1 to 2.3.1.
- [Release notes](https://github.com/facelessuser/soupsieve/releases)
- [Commits](https://github.com/facelessuser/soupsieve/compare/2.2.1...2.3.1)

---
updated-dependencies:
- dependency-name: soupsieve
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-05 18:58:56 -05:00
dependabot[bot]
c8a2d8990f Bump pylint from 2.11.1 to 2.12.0 (#116)
Bumps [pylint](https://github.com/PyCQA/pylint) from 2.11.1 to 2.12.0.
- [Release notes](https://github.com/PyCQA/pylint/releases)
- [Changelog](https://github.com/PyCQA/pylint/blob/main/ChangeLog)
- [Commits](https://github.com/PyCQA/pylint/compare/v2.11.1...v2.12.0)

---
updated-dependencies:
- dependency-name: pylint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-05 18:58:47 -05:00
dependabot[bot]
e2e0323488 Bump click from 8.0.1 to 8.0.3 (#110)
Bumps [click](https://github.com/pallets/click) from 8.0.1 to 8.0.3.
- [Release notes](https://github.com/pallets/click/releases)
- [Changelog](https://github.com/pallets/click/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/click/compare/8.0.1...8.0.3)

---
updated-dependencies:
- dependency-name: click
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-11 23:27:32 -04:00
dependabot[bot]
31ff0e480f Bump pylint from 2.9.6 to 2.11.1 (#108)
* Bump pylint from 2.9.6 to 2.11.1

Bumps [pylint](https://github.com/PyCQA/pylint) from 2.9.6 to 2.11.1.
- [Release notes](https://github.com/PyCQA/pylint/releases)
- [Changelog](https://github.com/PyCQA/pylint/blob/main/ChangeLog)
- [Commits](https://github.com/PyCQA/pylint/compare/v2.9.6...v2.11.1)

---
updated-dependencies:
- dependency-name: pylint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Use f strings everywhere

* Add black.yml

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Dave G <davegallant@gmail.com>
2021-09-25 13:30:01 -04:00
dependabot[bot]
d0103f0733 Bump beautifulsoup4 from 4.9.3 to 4.10.0 (#107)
Bumps [beautifulsoup4](http://www.crummy.com/software/BeautifulSoup/bs4/) from 4.9.3 to 4.10.0.

---
updated-dependencies:
- dependency-name: beautifulsoup4
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Dave G <davegallant@gmail.com>
2021-09-20 16:54:32 -04:00
dependabot[bot]
46af76750e Bump pytest from 6.2.4 to 6.2.5 (#106)
Bumps [pytest](https://github.com/pytest-dev/pytest) from 6.2.4 to 6.2.5.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/6.2.4...6.2.5)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-20 16:53:47 -04:00
dependabot[bot]
8a9e84a30a Bump rope from 0.19.0 to 0.20.1 (#109)
Bumps [rope](https://github.com/python-rope/rope) from 0.19.0 to 0.20.1.
- [Release notes](https://github.com/python-rope/rope/releases)
- [Changelog](https://github.com/python-rope/rope/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python-rope/rope/commits)

---
updated-dependencies:
- dependency-name: rope
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-20 16:53:16 -04:00
DG
062baa7707 Update README.md (#104) 2021-08-10 00:00:02 -04:00
DG
31ed869d05 Add brew/pipx instructions (#103)
* Add easier ways to install
2021-08-09 23:54:07 -04:00
dependabot[bot]
eb349c0ff9 Bump pylint from 2.9.5 to 2.9.6 (#102)
Bumps [pylint](https://github.com/PyCQA/pylint) from 2.9.5 to 2.9.6.
- [Release notes](https://github.com/PyCQA/pylint/releases)
- [Changelog](https://github.com/PyCQA/pylint/blob/main/ChangeLog)
- [Commits](https://github.com/PyCQA/pylint/compare/v2.9.5...v2.9.6)

---
updated-dependencies:
- dependency-name: pylint
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-29 09:19:13 -04:00
dependabot[bot]
f4afe538e5 Bump pylint from 2.9.3 to 2.9.5 (#101)
Bumps [pylint](https://github.com/PyCQA/pylint) from 2.9.3 to 2.9.5.
- [Release notes](https://github.com/PyCQA/pylint/releases)
- [Changelog](https://github.com/PyCQA/pylint/blob/main/ChangeLog)
- [Commits](https://github.com/PyCQA/pylint/compare/v2.9.3...v2.9.5)

---
updated-dependencies:
- dependency-name: pylint
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-21 09:40:56 -04:00
dependabot[bot]
0cb97f56e7 Bump requests from 2.25.1 to 2.26.0 (#100)
Bumps [requests](https://github.com/psf/requests) from 2.25.1 to 2.26.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/master/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.25.1...v2.26.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-14 08:51:47 -04:00
dependabot[bot]
460ea6eef0 Bump click from 7.1.2 to 8.0.1 (#95)
* Bump click from 7.1.2 to 8.0.1

Bumps [click](https://github.com/pallets/click) from 7.1.2 to 8.0.1.
- [Release notes](https://github.com/pallets/click/releases)
- [Changelog](https://github.com/pallets/click/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/click/compare/7.1.2...8.0.1)

Signed-off-by: dependabot[bot] <support@github.com>

* Get version using importlib.metdata

* Conditionally import metadata

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Dave Gallant <dave.gallant@rewind.io>
2021-07-11 09:27:36 -04:00
dependabot[bot]
f73fdc71b6 Bump pylint from 2.9.2 to 2.9.3 (#99)
Bumps [pylint](https://github.com/PyCQA/pylint) from 2.9.2 to 2.9.3.
- [Release notes](https://github.com/PyCQA/pylint/releases)
- [Changelog](https://github.com/PyCQA/pylint/blob/main/ChangeLog)
- [Commits](https://github.com/PyCQA/pylint/compare/v2.9.2...v2.9.3)

---
updated-dependencies:
- dependency-name: pylint
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-02 09:27:06 -04:00
dependabot[bot]
398cb19161 Bump pylint from 2.9.0 to 2.9.2 (#98)
Bumps [pylint](https://github.com/PyCQA/pylint) from 2.9.0 to 2.9.2.
- [Release notes](https://github.com/PyCQA/pylint/releases)
- [Changelog](https://github.com/PyCQA/pylint/blob/main/ChangeLog)
- [Commits](https://github.com/PyCQA/pylint/compare/v2.9.0...v2.9.2)

---
updated-dependencies:
- dependency-name: pylint
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-01 09:54:53 -04:00
dependabot[bot]
1c28c9875e Bump pylint from 2.8.3 to 2.9.0 (#97)
Bumps [pylint](https://github.com/PyCQA/pylint) from 2.8.3 to 2.9.0.
- [Release notes](https://github.com/PyCQA/pylint/releases)
- [Changelog](https://github.com/PyCQA/pylint/blob/master/ChangeLog)
- [Commits](https://github.com/PyCQA/pylint/compare/v2.8.3...v2.9.0)

---
updated-dependencies:
- dependency-name: pylint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-30 11:16:58 -04:00
dependabot[bot]
027e79739e Bump pylint from 2.8.2 to 2.8.3 (#96)
Bumps [pylint](https://github.com/PyCQA/pylint) from 2.8.2 to 2.8.3.
- [Release notes](https://github.com/PyCQA/pylint/releases)
- [Changelog](https://github.com/PyCQA/pylint/blob/master/ChangeLog)
- [Commits](https://github.com/PyCQA/pylint/compare/v2.8.2...v2.8.3)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-01 08:48:45 -04:00
dependabot[bot]
2d98bc54f6 Bump pytest from 6.2.3 to 6.2.4 (#93)
Bumps [pytest](https://github.com/pytest-dev/pytest) from 6.2.3 to 6.2.4.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/6.2.3...6.2.4)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-05 07:40:24 -04:00
16 changed files with 691 additions and 510 deletions

View File

@@ -4,5 +4,8 @@ updates:
directory: "/"
schedule:
interval: weekly
time: "8:00"
open-pull-requests-limit: 10
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: weekly

10
.github/workflows/black.yml vendored Normal file
View File

@@ -0,0 +1,10 @@
name: Black
on: [push, pull_request]
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: psf/black@stable

View File

@@ -13,7 +13,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
fetch-depth: 2
@@ -21,7 +21,7 @@ jobs:
if: ${{ github.event_name == 'pull_request' }}
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
uses: github/codeql-action/init@v3
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
uses: github/codeql-action/analyze@v3

View File

@@ -7,9 +7,9 @@ jobs:
if: startsWith(github.ref, 'refs/tags')
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v1
uses: actions/setup-python@v5
with:
python-version: 3.9
- name: Install pypa/build

View File

@@ -5,21 +5,32 @@ jobs:
build:
strategy:
matrix:
python-version: [3.6, 3.7, 3.8, 3.9]
python-version: [
"3.6",
"3.7",
"3.8",
"3.9",
"3.10",
]
fail-fast: false
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v1
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
pip install poetry==1.1.6
pip install poetry==1.1.13
poetry install
- name: Run pre-commit
run: |
git diff --name-only $TRAVIS_COMMIT_RANGE | xargs poetry run pre-commit run --files
- name: Test
run: poetry run make ci

View File

@@ -1,4 +1,2 @@
include rfd/VERSION
recursive-exclude * __pycache__
recursive-include tests *

View File

@@ -12,8 +12,9 @@
- [View Hot Deals](#view-hot-deals)
- [View and Sort Hot Deals](#view-and-sort-hot-deals)
- [Search](#search)
- [Advanced](#advanced)
- [Regex](#regex)
- [View Posts](#view-posts)
- [JSON Output](#json-output)
- [Shell Completion](#shell-completion)
- [bash](#bash)
- [zsh](#zsh)
@@ -31,14 +32,21 @@ It is often faster to use a CLI than to load up a web page and navigate web elem
## Installation
> :information_source: python2 may still work but it is [no longer supported](https://www.python.org/doc/sunset-python-2/).
### pip
```bash
python3 -m pip install --user rfd
```sh
pip3 install --user rfd
```
After installation, if you cannot access `rfd` in your path, try `python3 -m rfd`.
This can also be installed with [pipx](https://github.com/pypa/pipx).
### brew
If you have [brew](https://brew.sh):
```sh
brew install davegallant/public/rfd
```
## Usage
@@ -85,7 +93,7 @@ rfd threads --sort-by views --pages 10
rfd search 'pizza'
```
#### Advanced
#### Regex
Regular expressions can be used for search.
@@ -103,6 +111,16 @@ rfd posts https://forums.redflagdeals.com/kobo-vs-kindle-2396227/
This allows for easy grepping and searching for desired expressions.
### JSON Output
All commands support JSON output.
For example:
```sh
rfd threads --output json
```
## Shell Completion
Shell completion can be enabled if using `bash` or `zsh`.

View File

@@ -1 +0,0 @@
rfd/VERSION

919
poetry.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
[tool.poetry]
name = "rfd"
version = "0.7.1"
version = "0.9.0"
description = "view RedFlagDeals.com from the command line"
authors = ["Dave Gallant <davegallant@gmail.com>"]
license = "GPL-3.0-or-later"
@@ -8,17 +8,17 @@ readme = "README.md"
[tool.poetry.dependencies]
python = "^3.6"
beautifulsoup4 = "<4.9.4"
beautifulsoup4 = ">=4.10.1"
click = ">=7.0"
colorama = ">=0.4.3"
requests = ">=2.22.0"
soupsieve = "<3.0"
[tool.poetry.dev-dependencies]
pre-commit = "1.21.0"
pylint = "^2.8.2"
pre-commit = "2.1.1"
pylint = "^2.12.0"
pytest = ">=4.6.6"
rope = "0.19.0"
rope = "1.1.1"
[tool.poetry.scripts]
rfd = "rfd.__main__:cli"

View File

@@ -1 +0,0 @@
0.7.1

View File

@@ -1,12 +0,0 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from os.path import dirname, abspath, join
def load_version():
with open(join(dirname(abspath(__file__)), "VERSION")) as handle:
return handle.read()
version = load_version()

View File

@@ -27,7 +27,7 @@ def get_safe_per_page(limit):
def create_user_map(users):
"""Create a map of user ids to usernames."""
m = dict()
m = {}
for user in users:
m[user.get("user_id")] = user.get("username")
return m
@@ -47,12 +47,12 @@ def get_threads(forum_id, pages):
try:
for page in range(1, pages + 1):
response = requests.get(
"{}/api/topics?forum_id={}&per_page=40&page={}".format(
API_BASE_URL, forum_id, page
)
f"{API_BASE_URL}/api/topics?forum_id={forum_id}&per_page=40&page={page}"
)
if response.status_code != 200:
raise Exception("When collecting threads, received a status code: %s" % response.status_code)
raise Exception(
f"When collecting threads, received a status code: {response.status_code}"
)
threads += response.json().get("topics")
except JSONDecodeError as err:
logging.error("Unable to decode threads. %s", err)
@@ -65,7 +65,7 @@ def get_posts(post):
Args:
post (str): either full url or postid
Yields:
Returns:
list(Post): Posts
"""
if is_valid_url(post):
@@ -76,29 +76,33 @@ def get_posts(post):
raise ValueError()
response = requests.get(
"{}/api/topics/{}/posts?per_page=40&page=1".format(API_BASE_URL, post_id)
f"{API_BASE_URL}/api/topics/{post_id}/posts?per_page=40&page=1"
)
total_pages = response.json().get("pager").get("total_pages")
posts = []
for page in range(0, total_pages + 1):
response = requests.get(
"{}/api/topics/{}/posts?per_page={}&page={}".format(
API_BASE_URL, post_id, 40, page
)
f"{API_BASE_URL}/api/topics/{post_id}/posts?per_page=40&page={page}"
)
users = create_user_map(response.json().get("users"))
posts = response.json().get("posts")
current_posts = response.json().get("posts")
for i in posts:
for _post in current_posts:
# Sometimes votes is null
if i.get("votes") is not None:
calculated_score = calculate_score(i)
if _post.get("votes") is not None:
calculated_score = calculate_score(_post)
else:
calculated_score = 0
yield Post(
body=strip_html(i.get("body")),
score=calculated_score,
user=users[i.get("author_id")],
posts.append(
Post(
body=strip_html(_post.get("body")),
score=calculated_score,
user=users[_post.get("author_id")],
)
)
return posts

View File

@@ -3,12 +3,24 @@ from __future__ import unicode_literals
import logging
import sys
import json
import click
try:
from importlib import metadata
except ImportError: # for Python<3.8
import importlib_metadata as metadata
from colorama import init
from .api import get_threads, get_posts
from .threads import parse_threads, search_threads, sort_threads, generate_thread_output
from .posts import generate_posts_output
from .__version__ import version as current_version
from .threads import (
parse_threads,
search_threads,
sort_threads,
generate_thread_output,
ThreadEncoder,
)
from .posts import generate_posts_output, PostEncoder
init()
@@ -18,12 +30,13 @@ logging.getLogger().addHandler(logging.StreamHandler())
def get_version():
return "rfd v" + current_version
return "rfd v" + metadata.version("rfd")
def print_version(ctx, value):
def print_version(ctx, _, value):
if not value or ctx.resilient_parsing:
return
click.echo(get_version(), nl=False)
click.echo(get_version(), nl=True)
ctx.exit()
@@ -45,7 +58,10 @@ def cli(ctx):
@cli.command(short_help="Display all posts in a thread.")
@click.argument("post_id")
def posts(post_id):
@click.option(
"--output", default=None, help="Defaults to custom formatting. Other options: json"
)
def posts(post_id, output):
"""Iterate all pages and display all posts in a thread.
post_id can be a full url or post id only
@@ -57,12 +73,23 @@ def posts(post_id):
"""
try:
click.echo_via_pager(generate_posts_output(get_posts(post=post_id)))
if output == "json":
click.echo_via_pager(
json.dumps(
get_posts(post=post_id),
cls=PostEncoder,
indent=2,
sort_keys=True,
)
)
else:
click.echo_via_pager(generate_posts_output(get_posts(post=post_id)))
except ValueError:
click.echo("Invalid post id.")
sys.exit(1)
except AttributeError:
click.echo("The RFD API did not return the expected data.")
except AttributeError as err:
click.echo("The RFD API did not return the expected data. %s", err)
sys.exit(1)
@@ -70,7 +97,10 @@ def posts(post_id):
@click.option("--forum-id", default=9, help="The forum id number")
@click.option("--pages", default=1, help="Number of pages to show. Defaults to 1.")
@click.option("--sort-by", default=None, help="Sort threads by")
def threads(forum_id, pages, sort_by):
@click.option(
"--output", default=None, help="Defaults to custom formatting. Other options: json"
)
def threads(forum_id, pages, sort_by, output):
"""Display threads in the specified forum id. Defaults to 9 (hot deals).
Popular forum ids:
@@ -87,8 +117,21 @@ def threads(forum_id, pages, sort_by):
74 \t shopping discussion
88 \t cell phones
"""
_threads = sort_threads(parse_threads(get_threads(forum_id, pages)), sort_by=sort_by)
click.echo_via_pager(generate_thread_output(_threads))
_threads = sort_threads(
parse_threads(get_threads(forum_id, pages)), sort_by=sort_by
)
if output == "json":
click.echo_via_pager(
json.dumps(
sort_threads(_threads, sort_by=sort_by),
cls=ThreadEncoder,
indent=2,
sort_keys=True,
)
)
else:
click.echo_via_pager(generate_thread_output(_threads))
@cli.command(short_help="Search deals based on a regular expression.")
@@ -97,8 +140,11 @@ def threads(forum_id, pages, sort_by):
"--forum-id", default=9, help="The forum id number. Defaults to 9 (hot deals)."
)
@click.option("--sort-by", default=None, help="Sort threads by")
@click.option(
"--output", default=None, help="Defaults to custom formatting. Other options: json"
)
@click.argument("regex")
def search(pages, forum_id, sort_by, regex):
def search(pages, forum_id, sort_by, output, regex):
"""Search deals based on regex.
Popular forum ids:
@@ -121,6 +167,17 @@ def search(pages, forum_id, sort_by, regex):
_threads = parse_threads(get_threads(forum_id, pages=pages))
for thread in search_threads(threads=_threads, regex=regex):
matched_threads.append(thread)
click.echo_via_pager(
generate_thread_output(sort_threads(matched_threads, sort_by=sort_by))
)
if output == "json":
click.echo_via_pager(
json.dumps(
sort_threads(matched_threads, sort_by=sort_by),
indent=2,
sort_keys=True,
cls=ThreadEncoder,
)
)
else:
click.echo_via_pager(
generate_thread_output(sort_threads(matched_threads, sort_by=sort_by))
)

View File

@@ -1,21 +1,36 @@
# pylint: disable=old-style-class
import os
import json
from colorama import Fore, Style
from .scores import get_vote_color
class Post:
def __init__(self, body, score, user):
self.body = body
self.score = score
self.user = user
class PostEncoder(json.JSONEncoder):
def default(self, o):
if isinstance(o, Post):
return dict(
body=o.body,
score=o.score,
user=o.user,
)
return json.JSONEncoder.default(self, o)
def get_terminal_width():
_, columns = os.popen("stty size", "r").read().split()
return int(columns)
def generate_posts_output(posts):
output = ""
output += ("-" * get_terminal_width())
output += "-" * get_terminal_width()
for post in posts:
output += (
" -"
@@ -23,10 +38,10 @@ def generate_posts_output(posts):
+ Fore.RESET
+ post.body
+ Fore.YELLOW
+ " ({})".format(post.user)
+ f" ({post.user})"
)
output += (Style.RESET_ALL)
output += Style.RESET_ALL
output += "\n"
output += ("-" * get_terminal_width())
output += "-" * get_terminal_width()
output += "\n"
return output

View File

@@ -1,9 +1,10 @@
import re
import json
from colorama import Fore, Style
from . import API_BASE_URL
from .scores import calculate_score, get_vote_color
# pylint: disable=old-style-class
class Thread:
def __init__(self, title, dealer_name, score, url, views):
self.dealer_name = dealer_name
@@ -13,11 +14,24 @@ class Thread:
self.views = views
def __repr__(self):
return "Thread(%s)" % self.title
return f"Thread({self.title})"
class ThreadEncoder(json.JSONEncoder):
def default(self, o):
if isinstance(o, Thread):
return dict(
dealer_name=o.dealer_name,
score=o.score,
title=o.title,
url=o.url,
views=o.views,
)
return json.JSONEncoder.default(self, o)
def build_web_path(slug):
return "{}{}".format(API_BASE_URL, slug)
return f"{API_BASE_URL}{slug}"
def get_dealer(topic):
@@ -88,12 +102,12 @@ def generate_thread_output(threads):
+ "."
+ get_vote_color(thread.score)
+ Fore.RESET
+ "%s%s" % (dealer, thread.title)
+ f"{dealer}{thread.title}"
+ Fore.LIGHTYELLOW_EX
+ " (%d views)" % thread.views
+ f" ({thread.views} views)"
+ Fore.RESET
)
output += Fore.BLUE + " {}".format(thread.url)
output += Fore.BLUE + f" {thread.url}"
output += Style.RESET_ALL
output += "\n\n"
yield output