From a177b04e58f0da013118c5dcf16b57d87b670ce7 Mon Sep 17 00:00:00 2001 From: ghinks Date: Mon, 13 Jan 2025 16:04:20 -0500 Subject: [PATCH 1/6] feat: poetry pypi testing - rename folders --- .gitignore | 2 +- README.md | 8 ++++---- {pr_reviews => github_review_counter}/__init__.py | 0 {pr_reviews => github_review_counter}/cli/__init__.py | 0 .../cli/parse_cmd_line.py | 0 {pr_reviews => github_review_counter}/main.py | 2 +- github_review_counter/queries/__init__.py | 1 + .../queries/get_prs.py | 2 +- .../queries/get_repos_gql.py | 6 ++++-- .../queries/get_reviewers_rest.py | 0 .../queries/local_exceptions.py | 0 pr_reviews/queries/__init__.py | 1 - pyproject.toml | 10 +++++----- tests/get_reviewers/test_get_reviewers_rest.py | 2 +- tests/get_reviewers/test_get_reviewers_rest_fetch.py | 2 +- .../test_get_reviewers_rest_fetch_batch.py | 2 +- .../test_get_reviewers_rest_pull_requests.py | 2 +- tests/test_get_prs.py | 4 +++- tests/test_get_repos_gql.py | 4 ++-- 19 files changed, 26 insertions(+), 22 deletions(-) rename {pr_reviews => github_review_counter}/__init__.py (100%) rename {pr_reviews => github_review_counter}/cli/__init__.py (100%) rename {pr_reviews => github_review_counter}/cli/parse_cmd_line.py (100%) rename {pr_reviews => github_review_counter}/main.py (98%) create mode 100644 github_review_counter/queries/__init__.py rename {pr_reviews => github_review_counter}/queries/get_prs.py (96%) rename {pr_reviews => github_review_counter}/queries/get_repos_gql.py (90%) rename {pr_reviews => github_review_counter}/queries/get_reviewers_rest.py (100%) rename {pr_reviews => github_review_counter}/queries/local_exceptions.py (100%) delete mode 100644 pr_reviews/queries/__init__.py diff --git a/.gitignore b/.gitignore index 3a3480c..6e4f5a5 100644 --- a/.gitignore +++ b/.gitignore @@ -160,5 +160,5 @@ cython_debug/ # and can be added to the global gitignore or merged into this file. For a more nuclear # option (not recommended) you can uncomment the following to ignore the entire idea folder. .idea/ -/pr_reviews/queries/graphql.config.yml +/github_review_counter/queries/graphql.config.yml TODOS.md \ No newline at end of file diff --git a/README.md b/README.md index 58bf8bb..7ab2202 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ have specific languages when specified. basic usage: ```bash -pr_reviews -o kubernetes -l python +github_review_counter -o kubernetes -l python ``` which would produce the following output @@ -32,17 +32,17 @@ the repositories will be included in the statistics. multiple languages: ```bash -pr_reviews -o kubernetes -l python,go +github_review_counter -o kubernetes -l python,go ``` All languages: ```bash -pr_reviews -o kubernetes +github_review_counter -o kubernetes ``` Specifying the time frame: ```bash -pr_reviews -o kubernetes -l python -s 2021-01-01 -e 2021-01-31 +github_review_counter -o kubernetes -l python -s 2021-01-01 -e 2021-01-31 ``` ## Options diff --git a/pr_reviews/__init__.py b/github_review_counter/__init__.py similarity index 100% rename from pr_reviews/__init__.py rename to github_review_counter/__init__.py diff --git a/pr_reviews/cli/__init__.py b/github_review_counter/cli/__init__.py similarity index 100% rename from pr_reviews/cli/__init__.py rename to github_review_counter/cli/__init__.py diff --git a/pr_reviews/cli/parse_cmd_line.py b/github_review_counter/cli/parse_cmd_line.py similarity index 100% rename from pr_reviews/cli/parse_cmd_line.py rename to github_review_counter/cli/parse_cmd_line.py diff --git a/pr_reviews/main.py b/github_review_counter/main.py similarity index 98% rename from pr_reviews/main.py rename to github_review_counter/main.py index ce35903..2996b30 100644 --- a/pr_reviews/main.py +++ b/github_review_counter/main.py @@ -2,7 +2,7 @@ from tabulate import tabulate -from pr_reviews.queries.local_exceptions import ( +from github_review_counter.queries.local_exceptions import ( GitHubTokenNotDefinedError, LoginNotFoundError, ) diff --git a/github_review_counter/queries/__init__.py b/github_review_counter/queries/__init__.py new file mode 100644 index 0000000..fbb5e5c --- /dev/null +++ b/github_review_counter/queries/__init__.py @@ -0,0 +1 @@ +TIMEOUT = 10 diff --git a/pr_reviews/queries/get_prs.py b/github_review_counter/queries/get_prs.py similarity index 96% rename from pr_reviews/queries/get_prs.py rename to github_review_counter/queries/get_prs.py index 69e34db..b7b7498 100644 --- a/pr_reviews/queries/get_prs.py +++ b/github_review_counter/queries/get_prs.py @@ -3,7 +3,7 @@ import requests -from pr_reviews.queries import TIMEOUT +from github_review_counter.queries import TIMEOUT GITHUB_TOKEN = os.getenv("GITHUB_TOKEN") diff --git a/pr_reviews/queries/get_repos_gql.py b/github_review_counter/queries/get_repos_gql.py similarity index 90% rename from pr_reviews/queries/get_repos_gql.py rename to github_review_counter/queries/get_repos_gql.py index f35c294..12811ed 100644 --- a/pr_reviews/queries/get_repos_gql.py +++ b/github_review_counter/queries/get_repos_gql.py @@ -2,8 +2,10 @@ import requests -from pr_reviews.queries import TIMEOUT -from pr_reviews.queries.local_exceptions import GitHubTokenNotDefinedError +from github_review_counter.queries import TIMEOUT +from github_review_counter.queries.local_exceptions import ( + GitHubTokenNotDefinedError, +) # exceptions.py diff --git a/pr_reviews/queries/get_reviewers_rest.py b/github_review_counter/queries/get_reviewers_rest.py similarity index 100% rename from pr_reviews/queries/get_reviewers_rest.py rename to github_review_counter/queries/get_reviewers_rest.py diff --git a/pr_reviews/queries/local_exceptions.py b/github_review_counter/queries/local_exceptions.py similarity index 100% rename from pr_reviews/queries/local_exceptions.py rename to github_review_counter/queries/local_exceptions.py diff --git a/pr_reviews/queries/__init__.py b/pr_reviews/queries/__init__.py deleted file mode 100644 index f27e666..0000000 --- a/pr_reviews/queries/__init__.py +++ /dev/null @@ -1 +0,0 @@ -TIMEOUT = 10 \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 8d15be8..824efbe 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,13 +1,13 @@ [tool.poetry] -name = "pr-reviews" +name = "github-review-counter" version = "0.1.0" description = "A tool to discover who is reviewing your organization's PRs" authors = ["ghinks "] license = "Apache" -repository = "https://github.com/ghinks/pr-reviews" +repository = "https://github.com/ghinks/github-pr-review-counter" readme = "README.md" packages = [ - { include = "pr_reviews/**/*" } + { include = "github_review_counter/**/*" } ] [tool.poetry.dependencies] @@ -31,13 +31,13 @@ requires = ["poetry-core"] build-backend = "poetry.core.masonry.api" [tool.poetry.scripts] -pr-reviews = "pr_reviews.main:main" +github-review-counter = "github_review_counter.main:main" [tool.ruff] line-length = 79 exclude = [ "venv", - "pr_reviews/**/__init__.py", + "github_review_counter/**/__init__.py", "tests/__init__.py", "tests/get_reviewers/__init__.py" ] diff --git a/tests/get_reviewers/test_get_reviewers_rest.py b/tests/get_reviewers/test_get_reviewers_rest.py index 1019e8f..56af351 100644 --- a/tests/get_reviewers/test_get_reviewers_rest.py +++ b/tests/get_reviewers/test_get_reviewers_rest.py @@ -8,7 +8,7 @@ import pytest from aioresponses import aioresponses -from pr_reviews.queries.get_reviewers_rest import fetch +from github_review_counter.queries.get_reviewers_rest import fetch @pytest.fixture diff --git a/tests/get_reviewers/test_get_reviewers_rest_fetch.py b/tests/get_reviewers/test_get_reviewers_rest_fetch.py index c496068..d50f967 100644 --- a/tests/get_reviewers/test_get_reviewers_rest_fetch.py +++ b/tests/get_reviewers/test_get_reviewers_rest_fetch.py @@ -4,7 +4,7 @@ import aiohttp from aioresponses import aioresponses -from pr_reviews.queries.get_reviewers_rest import fetch +from github_review_counter.queries.get_reviewers_rest import fetch from tests.utils import get_reviews_url, read_reviews_file diff --git a/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py b/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py index 04c66ac..5cb3ff6 100644 --- a/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py +++ b/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py @@ -3,7 +3,7 @@ from aioresponses import aioresponses -from pr_reviews.queries.get_reviewers_rest import fetch_batch +from github_review_counter.queries.get_reviewers_rest import fetch_batch from tests.utils import get_reviews_url, read_reviews_file diff --git a/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py b/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py index c995f56..9d22c22 100644 --- a/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py +++ b/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py @@ -2,7 +2,7 @@ from aioresponses import aioresponses -from pr_reviews.queries.get_reviewers_rest import ( +from github_review_counter.queries.get_reviewers_rest import ( get_reviewers_for_pull_requests, ) from tests.utils import get_reviews_url, read_reviews_file diff --git a/tests/test_get_prs.py b/tests/test_get_prs.py index 2ea35cb..6b478df 100644 --- a/tests/test_get_prs.py +++ b/tests/test_get_prs.py @@ -2,7 +2,9 @@ from datetime import datetime, timezone from unittest.mock import Mock, patch -from pr_reviews.queries.get_prs import get_pull_requests_between_dates +from github_review_counter.queries.get_prs import ( + get_pull_requests_between_dates, +) class TestGetPullRequestsBetweenDates(unittest.TestCase): diff --git a/tests/test_get_repos_gql.py b/tests/test_get_repos_gql.py index 13ffa25..19dabfd 100644 --- a/tests/test_get_repos_gql.py +++ b/tests/test_get_repos_gql.py @@ -2,11 +2,11 @@ import unittest from unittest.mock import Mock, patch -from pr_reviews.queries.get_repos_gql import get_repos_by_language +from github_review_counter.queries.get_repos_gql import get_repos_by_language class TestGetReposByLanguage(unittest.TestCase): - @patch("pr_reviews.queries.get_repos_gql.requests.post") + @patch("github_review_counter.queries.get_repos_gql.requests.post") @patch.dict(os.environ, {"GITHUB_TOKEN": "test_token"}) def test_get_repos_by_language(self, mock_post) -> None: # noqa: ANN001 # Mock the response from the GitHub API From cbd372aa917b81c683174f65424b1be96e309948 Mon Sep 17 00:00:00 2001 From: ghinks Date: Tue, 14 Jan 2025 12:49:18 -0500 Subject: [PATCH 2/6] feat: poetry pypi testing - change name to review tally --- .gitignore | 2 +- README.md | 8 ++++---- pyproject.toml | 8 ++++---- {github_review_counter => reviewtally}/__init__.py | 0 {github_review_counter => reviewtally}/cli/__init__.py | 0 .../cli/parse_cmd_line.py | 0 {github_review_counter => reviewtally}/main.py | 2 +- .../queries/__init__.py | 0 {github_review_counter => reviewtally}/queries/get_prs.py | 2 +- .../queries/get_repos_gql.py | 4 ++-- .../queries/get_reviewers_rest.py | 0 .../queries/local_exceptions.py | 0 tests/get_reviewers/test_get_reviewers_rest.py | 2 +- tests/get_reviewers/test_get_reviewers_rest_fetch.py | 2 +- .../get_reviewers/test_get_reviewers_rest_fetch_batch.py | 2 +- .../test_get_reviewers_rest_pull_requests.py | 2 +- tests/test_get_prs.py | 2 +- tests/test_get_repos_gql.py | 4 ++-- 18 files changed, 20 insertions(+), 20 deletions(-) rename {github_review_counter => reviewtally}/__init__.py (100%) rename {github_review_counter => reviewtally}/cli/__init__.py (100%) rename {github_review_counter => reviewtally}/cli/parse_cmd_line.py (100%) rename {github_review_counter => reviewtally}/main.py (98%) rename {github_review_counter => reviewtally}/queries/__init__.py (100%) rename {github_review_counter => reviewtally}/queries/get_prs.py (96%) rename {github_review_counter => reviewtally}/queries/get_repos_gql.py (92%) rename {github_review_counter => reviewtally}/queries/get_reviewers_rest.py (100%) rename {github_review_counter => reviewtally}/queries/local_exceptions.py (100%) diff --git a/.gitignore b/.gitignore index 6e4f5a5..fae713a 100644 --- a/.gitignore +++ b/.gitignore @@ -160,5 +160,5 @@ cython_debug/ # and can be added to the global gitignore or merged into this file. For a more nuclear # option (not recommended) you can uncomment the following to ignore the entire idea folder. .idea/ -/github_review_counter/queries/graphql.config.yml +/reviewtally/queries/graphql.config.yml TODOS.md \ No newline at end of file diff --git a/README.md b/README.md index 7ab2202..ab6e569 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ have specific languages when specified. basic usage: ```bash -github_review_counter -o kubernetes -l python +reviewtally -o kubernetes -l python ``` which would produce the following output @@ -32,17 +32,17 @@ the repositories will be included in the statistics. multiple languages: ```bash -github_review_counter -o kubernetes -l python,go +reviewtally -o kubernetes -l python,go ``` All languages: ```bash -github_review_counter -o kubernetes +reviewtally -o kubernetes ``` Specifying the time frame: ```bash -github_review_counter -o kubernetes -l python -s 2021-01-01 -e 2021-01-31 +reviewtally -o kubernetes -l python -s 2021-01-01 -e 2021-01-31 ``` ## Options diff --git a/pyproject.toml b/pyproject.toml index 824efbe..50dfe20 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,5 @@ [tool.poetry] -name = "github-review-counter" +name = "review_tally" version = "0.1.0" description = "A tool to discover who is reviewing your organization's PRs" authors = ["ghinks "] @@ -7,7 +7,7 @@ license = "Apache" repository = "https://github.com/ghinks/github-pr-review-counter" readme = "README.md" packages = [ - { include = "github_review_counter/**/*" } + { include = "reviewtally/**/*" } ] [tool.poetry.dependencies] @@ -31,13 +31,13 @@ requires = ["poetry-core"] build-backend = "poetry.core.masonry.api" [tool.poetry.scripts] -github-review-counter = "github_review_counter.main:main" +review-tally = "reviewtally.main:main" [tool.ruff] line-length = 79 exclude = [ "venv", - "github_review_counter/**/__init__.py", + "reviewtally/**/__init__.py", "tests/__init__.py", "tests/get_reviewers/__init__.py" ] diff --git a/github_review_counter/__init__.py b/reviewtally/__init__.py similarity index 100% rename from github_review_counter/__init__.py rename to reviewtally/__init__.py diff --git a/github_review_counter/cli/__init__.py b/reviewtally/cli/__init__.py similarity index 100% rename from github_review_counter/cli/__init__.py rename to reviewtally/cli/__init__.py diff --git a/github_review_counter/cli/parse_cmd_line.py b/reviewtally/cli/parse_cmd_line.py similarity index 100% rename from github_review_counter/cli/parse_cmd_line.py rename to reviewtally/cli/parse_cmd_line.py diff --git a/github_review_counter/main.py b/reviewtally/main.py similarity index 98% rename from github_review_counter/main.py rename to reviewtally/main.py index 2996b30..8abedae 100644 --- a/github_review_counter/main.py +++ b/reviewtally/main.py @@ -2,7 +2,7 @@ from tabulate import tabulate -from github_review_counter.queries.local_exceptions import ( +from reviewtally.queries.local_exceptions import ( GitHubTokenNotDefinedError, LoginNotFoundError, ) diff --git a/github_review_counter/queries/__init__.py b/reviewtally/queries/__init__.py similarity index 100% rename from github_review_counter/queries/__init__.py rename to reviewtally/queries/__init__.py diff --git a/github_review_counter/queries/get_prs.py b/reviewtally/queries/get_prs.py similarity index 96% rename from github_review_counter/queries/get_prs.py rename to reviewtally/queries/get_prs.py index b7b7498..358b848 100644 --- a/github_review_counter/queries/get_prs.py +++ b/reviewtally/queries/get_prs.py @@ -3,7 +3,7 @@ import requests -from github_review_counter.queries import TIMEOUT +from reviewtally.queries import TIMEOUT GITHUB_TOKEN = os.getenv("GITHUB_TOKEN") diff --git a/github_review_counter/queries/get_repos_gql.py b/reviewtally/queries/get_repos_gql.py similarity index 92% rename from github_review_counter/queries/get_repos_gql.py rename to reviewtally/queries/get_repos_gql.py index 12811ed..694f238 100644 --- a/github_review_counter/queries/get_repos_gql.py +++ b/reviewtally/queries/get_repos_gql.py @@ -2,8 +2,8 @@ import requests -from github_review_counter.queries import TIMEOUT -from github_review_counter.queries.local_exceptions import ( +from reviewtally.queries import TIMEOUT +from reviewtally.queries.local_exceptions import ( GitHubTokenNotDefinedError, ) diff --git a/github_review_counter/queries/get_reviewers_rest.py b/reviewtally/queries/get_reviewers_rest.py similarity index 100% rename from github_review_counter/queries/get_reviewers_rest.py rename to reviewtally/queries/get_reviewers_rest.py diff --git a/github_review_counter/queries/local_exceptions.py b/reviewtally/queries/local_exceptions.py similarity index 100% rename from github_review_counter/queries/local_exceptions.py rename to reviewtally/queries/local_exceptions.py diff --git a/tests/get_reviewers/test_get_reviewers_rest.py b/tests/get_reviewers/test_get_reviewers_rest.py index 56af351..d1b12cc 100644 --- a/tests/get_reviewers/test_get_reviewers_rest.py +++ b/tests/get_reviewers/test_get_reviewers_rest.py @@ -8,7 +8,7 @@ import pytest from aioresponses import aioresponses -from github_review_counter.queries.get_reviewers_rest import fetch +from reviewtally.queries.get_reviewers_rest import fetch @pytest.fixture diff --git a/tests/get_reviewers/test_get_reviewers_rest_fetch.py b/tests/get_reviewers/test_get_reviewers_rest_fetch.py index d50f967..8c71adf 100644 --- a/tests/get_reviewers/test_get_reviewers_rest_fetch.py +++ b/tests/get_reviewers/test_get_reviewers_rest_fetch.py @@ -4,7 +4,7 @@ import aiohttp from aioresponses import aioresponses -from github_review_counter.queries.get_reviewers_rest import fetch +from reviewtally.queries.get_reviewers_rest import fetch from tests.utils import get_reviews_url, read_reviews_file diff --git a/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py b/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py index 5cb3ff6..45d2e52 100644 --- a/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py +++ b/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py @@ -3,7 +3,7 @@ from aioresponses import aioresponses -from github_review_counter.queries.get_reviewers_rest import fetch_batch +from reviewtally.queries.get_reviewers_rest import fetch_batch from tests.utils import get_reviews_url, read_reviews_file diff --git a/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py b/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py index 9d22c22..8de39eb 100644 --- a/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py +++ b/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py @@ -2,7 +2,7 @@ from aioresponses import aioresponses -from github_review_counter.queries.get_reviewers_rest import ( +from reviewtally.queries.get_reviewers_rest import ( get_reviewers_for_pull_requests, ) from tests.utils import get_reviews_url, read_reviews_file diff --git a/tests/test_get_prs.py b/tests/test_get_prs.py index 6b478df..c3bc1d0 100644 --- a/tests/test_get_prs.py +++ b/tests/test_get_prs.py @@ -2,7 +2,7 @@ from datetime import datetime, timezone from unittest.mock import Mock, patch -from github_review_counter.queries.get_prs import ( +from reviewtally.queries.get_prs import ( get_pull_requests_between_dates, ) diff --git a/tests/test_get_repos_gql.py b/tests/test_get_repos_gql.py index 19dabfd..2fe1c5b 100644 --- a/tests/test_get_repos_gql.py +++ b/tests/test_get_repos_gql.py @@ -2,11 +2,11 @@ import unittest from unittest.mock import Mock, patch -from github_review_counter.queries.get_repos_gql import get_repos_by_language +from reviewtally.queries.get_repos_gql import get_repos_by_language class TestGetReposByLanguage(unittest.TestCase): - @patch("github_review_counter.queries.get_repos_gql.requests.post") + @patch("reviewtally.queries.get_repos_gql.requests.post") @patch.dict(os.environ, {"GITHUB_TOKEN": "test_token"}) def test_get_repos_by_language(self, mock_post) -> None: # noqa: ANN001 # Mock the response from the GitHub API From 6a411faca1e022a64e5a0ec02acff2e695d0c243 Mon Sep 17 00:00:00 2001 From: ghinks Date: Tue, 14 Jan 2025 12:54:30 -0500 Subject: [PATCH 3/6] feat: poetry pypi testing - change name to review tally --- .gitignore | 2 +- README.md | 10 +++++----- {reviewtally => github_review_counter}/__init__.py | 0 {reviewtally => github_review_counter}/cli/__init__.py | 0 .../cli/parse_cmd_line.py | 0 {reviewtally => github_review_counter}/main.py | 2 +- .../queries/__init__.py | 0 .../queries/get_prs.py | 2 +- .../queries/get_repos_gql.py | 4 ++-- .../queries/get_reviewers_rest.py | 0 .../queries/local_exceptions.py | 0 tests/get_reviewers/test_get_reviewers_rest.py | 2 +- tests/get_reviewers/test_get_reviewers_rest_fetch.py | 2 +- .../test_get_reviewers_rest_fetch_batch.py | 2 +- .../test_get_reviewers_rest_pull_requests.py | 2 +- tests/test_get_prs.py | 2 +- tests/test_get_repos_gql.py | 4 ++-- 17 files changed, 17 insertions(+), 17 deletions(-) rename {reviewtally => github_review_counter}/__init__.py (100%) rename {reviewtally => github_review_counter}/cli/__init__.py (100%) rename {reviewtally => github_review_counter}/cli/parse_cmd_line.py (100%) rename {reviewtally => github_review_counter}/main.py (98%) rename {reviewtally => github_review_counter}/queries/__init__.py (100%) rename {reviewtally => github_review_counter}/queries/get_prs.py (96%) rename {reviewtally => github_review_counter}/queries/get_repos_gql.py (92%) rename {reviewtally => github_review_counter}/queries/get_reviewers_rest.py (100%) rename {reviewtally => github_review_counter}/queries/local_exceptions.py (100%) diff --git a/.gitignore b/.gitignore index fae713a..6e4f5a5 100644 --- a/.gitignore +++ b/.gitignore @@ -160,5 +160,5 @@ cython_debug/ # and can be added to the global gitignore or merged into this file. For a more nuclear # option (not recommended) you can uncomment the following to ignore the entire idea folder. .idea/ -/reviewtally/queries/graphql.config.yml +/github_review_counter/queries/graphql.config.yml TODOS.md \ No newline at end of file diff --git a/README.md b/README.md index ab6e569..218c6d4 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# pr-reviews +# review-tally This tool is intended to retrieve basic statics about the reviews of pull requests for a GitHub organization in a given time frame. The default time @@ -7,7 +7,7 @@ have specific languages when specified. basic usage: ```bash -reviewtally -o kubernetes -l python +review-tally -o kubernetes -l python ``` which would produce the following output @@ -32,17 +32,17 @@ the repositories will be included in the statistics. multiple languages: ```bash -reviewtally -o kubernetes -l python,go +review-tally -o kubernetes -l python,go ``` All languages: ```bash -reviewtally -o kubernetes +review-tally -o kubernetes ``` Specifying the time frame: ```bash -reviewtally -o kubernetes -l python -s 2021-01-01 -e 2021-01-31 +review-tally -o kubernetes -l python -s 2021-01-01 -e 2021-01-31 ``` ## Options diff --git a/reviewtally/__init__.py b/github_review_counter/__init__.py similarity index 100% rename from reviewtally/__init__.py rename to github_review_counter/__init__.py diff --git a/reviewtally/cli/__init__.py b/github_review_counter/cli/__init__.py similarity index 100% rename from reviewtally/cli/__init__.py rename to github_review_counter/cli/__init__.py diff --git a/reviewtally/cli/parse_cmd_line.py b/github_review_counter/cli/parse_cmd_line.py similarity index 100% rename from reviewtally/cli/parse_cmd_line.py rename to github_review_counter/cli/parse_cmd_line.py diff --git a/reviewtally/main.py b/github_review_counter/main.py similarity index 98% rename from reviewtally/main.py rename to github_review_counter/main.py index 8abedae..2996b30 100644 --- a/reviewtally/main.py +++ b/github_review_counter/main.py @@ -2,7 +2,7 @@ from tabulate import tabulate -from reviewtally.queries.local_exceptions import ( +from github_review_counter.queries.local_exceptions import ( GitHubTokenNotDefinedError, LoginNotFoundError, ) diff --git a/reviewtally/queries/__init__.py b/github_review_counter/queries/__init__.py similarity index 100% rename from reviewtally/queries/__init__.py rename to github_review_counter/queries/__init__.py diff --git a/reviewtally/queries/get_prs.py b/github_review_counter/queries/get_prs.py similarity index 96% rename from reviewtally/queries/get_prs.py rename to github_review_counter/queries/get_prs.py index 358b848..b7b7498 100644 --- a/reviewtally/queries/get_prs.py +++ b/github_review_counter/queries/get_prs.py @@ -3,7 +3,7 @@ import requests -from reviewtally.queries import TIMEOUT +from github_review_counter.queries import TIMEOUT GITHUB_TOKEN = os.getenv("GITHUB_TOKEN") diff --git a/reviewtally/queries/get_repos_gql.py b/github_review_counter/queries/get_repos_gql.py similarity index 92% rename from reviewtally/queries/get_repos_gql.py rename to github_review_counter/queries/get_repos_gql.py index 694f238..12811ed 100644 --- a/reviewtally/queries/get_repos_gql.py +++ b/github_review_counter/queries/get_repos_gql.py @@ -2,8 +2,8 @@ import requests -from reviewtally.queries import TIMEOUT -from reviewtally.queries.local_exceptions import ( +from github_review_counter.queries import TIMEOUT +from github_review_counter.queries.local_exceptions import ( GitHubTokenNotDefinedError, ) diff --git a/reviewtally/queries/get_reviewers_rest.py b/github_review_counter/queries/get_reviewers_rest.py similarity index 100% rename from reviewtally/queries/get_reviewers_rest.py rename to github_review_counter/queries/get_reviewers_rest.py diff --git a/reviewtally/queries/local_exceptions.py b/github_review_counter/queries/local_exceptions.py similarity index 100% rename from reviewtally/queries/local_exceptions.py rename to github_review_counter/queries/local_exceptions.py diff --git a/tests/get_reviewers/test_get_reviewers_rest.py b/tests/get_reviewers/test_get_reviewers_rest.py index d1b12cc..56af351 100644 --- a/tests/get_reviewers/test_get_reviewers_rest.py +++ b/tests/get_reviewers/test_get_reviewers_rest.py @@ -8,7 +8,7 @@ import pytest from aioresponses import aioresponses -from reviewtally.queries.get_reviewers_rest import fetch +from github_review_counter.queries.get_reviewers_rest import fetch @pytest.fixture diff --git a/tests/get_reviewers/test_get_reviewers_rest_fetch.py b/tests/get_reviewers/test_get_reviewers_rest_fetch.py index 8c71adf..d50f967 100644 --- a/tests/get_reviewers/test_get_reviewers_rest_fetch.py +++ b/tests/get_reviewers/test_get_reviewers_rest_fetch.py @@ -4,7 +4,7 @@ import aiohttp from aioresponses import aioresponses -from reviewtally.queries.get_reviewers_rest import fetch +from github_review_counter.queries.get_reviewers_rest import fetch from tests.utils import get_reviews_url, read_reviews_file diff --git a/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py b/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py index 45d2e52..5cb3ff6 100644 --- a/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py +++ b/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py @@ -3,7 +3,7 @@ from aioresponses import aioresponses -from reviewtally.queries.get_reviewers_rest import fetch_batch +from github_review_counter.queries.get_reviewers_rest import fetch_batch from tests.utils import get_reviews_url, read_reviews_file diff --git a/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py b/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py index 8de39eb..9d22c22 100644 --- a/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py +++ b/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py @@ -2,7 +2,7 @@ from aioresponses import aioresponses -from reviewtally.queries.get_reviewers_rest import ( +from github_review_counter.queries.get_reviewers_rest import ( get_reviewers_for_pull_requests, ) from tests.utils import get_reviews_url, read_reviews_file diff --git a/tests/test_get_prs.py b/tests/test_get_prs.py index c3bc1d0..6b478df 100644 --- a/tests/test_get_prs.py +++ b/tests/test_get_prs.py @@ -2,7 +2,7 @@ from datetime import datetime, timezone from unittest.mock import Mock, patch -from reviewtally.queries.get_prs import ( +from github_review_counter.queries.get_prs import ( get_pull_requests_between_dates, ) diff --git a/tests/test_get_repos_gql.py b/tests/test_get_repos_gql.py index 2fe1c5b..19dabfd 100644 --- a/tests/test_get_repos_gql.py +++ b/tests/test_get_repos_gql.py @@ -2,11 +2,11 @@ import unittest from unittest.mock import Mock, patch -from reviewtally.queries.get_repos_gql import get_repos_by_language +from github_review_counter.queries.get_repos_gql import get_repos_by_language class TestGetReposByLanguage(unittest.TestCase): - @patch("reviewtally.queries.get_repos_gql.requests.post") + @patch("github_review_counter.queries.get_repos_gql.requests.post") @patch.dict(os.environ, {"GITHUB_TOKEN": "test_token"}) def test_get_repos_by_language(self, mock_post) -> None: # noqa: ANN001 # Mock the response from the GitHub API From cf2a1ffb364faa73a9128fc18032d94f2f02b492 Mon Sep 17 00:00:00 2001 From: ghinks Date: Tue, 14 Jan 2025 13:00:22 -0500 Subject: [PATCH 4/6] update the ci action to build whl with poetry --- .github/workflows/ci.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6c7d843..89b833b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,4 +25,7 @@ jobs: poetry run ruff check - name: run unit tests run: | - poetry run pytest \ No newline at end of file + poetry run pytest + - name: build package + run: | + poetry build \ No newline at end of file From 1329c7a8124b3e6afa6b6b161ea3a019d06ce2d2 Mon Sep 17 00:00:00 2001 From: ghinks Date: Tue, 14 Jan 2025 13:52:21 -0500 Subject: [PATCH 5/6] update folder names --- .gitignore | 2 +- {github_review_counter => reviewtally}/__init__.py | 0 {github_review_counter => reviewtally}/cli/__init__.py | 0 {github_review_counter => reviewtally}/cli/parse_cmd_line.py | 0 {github_review_counter => reviewtally}/main.py | 2 +- {github_review_counter => reviewtally}/queries/__init__.py | 0 {github_review_counter => reviewtally}/queries/get_prs.py | 2 +- .../queries/get_repos_gql.py | 4 ++-- .../queries/get_reviewers_rest.py | 0 .../queries/local_exceptions.py | 0 tests/get_reviewers/test_get_reviewers_rest.py | 2 +- tests/get_reviewers/test_get_reviewers_rest_fetch.py | 2 +- tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py | 2 +- tests/get_reviewers/test_get_reviewers_rest_pull_requests.py | 2 +- tests/test_get_prs.py | 2 +- tests/test_get_repos_gql.py | 4 ++-- 16 files changed, 12 insertions(+), 12 deletions(-) rename {github_review_counter => reviewtally}/__init__.py (100%) rename {github_review_counter => reviewtally}/cli/__init__.py (100%) rename {github_review_counter => reviewtally}/cli/parse_cmd_line.py (100%) rename {github_review_counter => reviewtally}/main.py (98%) rename {github_review_counter => reviewtally}/queries/__init__.py (100%) rename {github_review_counter => reviewtally}/queries/get_prs.py (96%) rename {github_review_counter => reviewtally}/queries/get_repos_gql.py (92%) rename {github_review_counter => reviewtally}/queries/get_reviewers_rest.py (100%) rename {github_review_counter => reviewtally}/queries/local_exceptions.py (100%) diff --git a/.gitignore b/.gitignore index 6e4f5a5..fae713a 100644 --- a/.gitignore +++ b/.gitignore @@ -160,5 +160,5 @@ cython_debug/ # and can be added to the global gitignore or merged into this file. For a more nuclear # option (not recommended) you can uncomment the following to ignore the entire idea folder. .idea/ -/github_review_counter/queries/graphql.config.yml +/reviewtally/queries/graphql.config.yml TODOS.md \ No newline at end of file diff --git a/github_review_counter/__init__.py b/reviewtally/__init__.py similarity index 100% rename from github_review_counter/__init__.py rename to reviewtally/__init__.py diff --git a/github_review_counter/cli/__init__.py b/reviewtally/cli/__init__.py similarity index 100% rename from github_review_counter/cli/__init__.py rename to reviewtally/cli/__init__.py diff --git a/github_review_counter/cli/parse_cmd_line.py b/reviewtally/cli/parse_cmd_line.py similarity index 100% rename from github_review_counter/cli/parse_cmd_line.py rename to reviewtally/cli/parse_cmd_line.py diff --git a/github_review_counter/main.py b/reviewtally/main.py similarity index 98% rename from github_review_counter/main.py rename to reviewtally/main.py index 2996b30..8abedae 100644 --- a/github_review_counter/main.py +++ b/reviewtally/main.py @@ -2,7 +2,7 @@ from tabulate import tabulate -from github_review_counter.queries.local_exceptions import ( +from reviewtally.queries.local_exceptions import ( GitHubTokenNotDefinedError, LoginNotFoundError, ) diff --git a/github_review_counter/queries/__init__.py b/reviewtally/queries/__init__.py similarity index 100% rename from github_review_counter/queries/__init__.py rename to reviewtally/queries/__init__.py diff --git a/github_review_counter/queries/get_prs.py b/reviewtally/queries/get_prs.py similarity index 96% rename from github_review_counter/queries/get_prs.py rename to reviewtally/queries/get_prs.py index b7b7498..358b848 100644 --- a/github_review_counter/queries/get_prs.py +++ b/reviewtally/queries/get_prs.py @@ -3,7 +3,7 @@ import requests -from github_review_counter.queries import TIMEOUT +from reviewtally.queries import TIMEOUT GITHUB_TOKEN = os.getenv("GITHUB_TOKEN") diff --git a/github_review_counter/queries/get_repos_gql.py b/reviewtally/queries/get_repos_gql.py similarity index 92% rename from github_review_counter/queries/get_repos_gql.py rename to reviewtally/queries/get_repos_gql.py index 12811ed..694f238 100644 --- a/github_review_counter/queries/get_repos_gql.py +++ b/reviewtally/queries/get_repos_gql.py @@ -2,8 +2,8 @@ import requests -from github_review_counter.queries import TIMEOUT -from github_review_counter.queries.local_exceptions import ( +from reviewtally.queries import TIMEOUT +from reviewtally.queries.local_exceptions import ( GitHubTokenNotDefinedError, ) diff --git a/github_review_counter/queries/get_reviewers_rest.py b/reviewtally/queries/get_reviewers_rest.py similarity index 100% rename from github_review_counter/queries/get_reviewers_rest.py rename to reviewtally/queries/get_reviewers_rest.py diff --git a/github_review_counter/queries/local_exceptions.py b/reviewtally/queries/local_exceptions.py similarity index 100% rename from github_review_counter/queries/local_exceptions.py rename to reviewtally/queries/local_exceptions.py diff --git a/tests/get_reviewers/test_get_reviewers_rest.py b/tests/get_reviewers/test_get_reviewers_rest.py index 56af351..d1b12cc 100644 --- a/tests/get_reviewers/test_get_reviewers_rest.py +++ b/tests/get_reviewers/test_get_reviewers_rest.py @@ -8,7 +8,7 @@ import pytest from aioresponses import aioresponses -from github_review_counter.queries.get_reviewers_rest import fetch +from reviewtally.queries.get_reviewers_rest import fetch @pytest.fixture diff --git a/tests/get_reviewers/test_get_reviewers_rest_fetch.py b/tests/get_reviewers/test_get_reviewers_rest_fetch.py index d50f967..8c71adf 100644 --- a/tests/get_reviewers/test_get_reviewers_rest_fetch.py +++ b/tests/get_reviewers/test_get_reviewers_rest_fetch.py @@ -4,7 +4,7 @@ import aiohttp from aioresponses import aioresponses -from github_review_counter.queries.get_reviewers_rest import fetch +from reviewtally.queries.get_reviewers_rest import fetch from tests.utils import get_reviews_url, read_reviews_file diff --git a/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py b/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py index 5cb3ff6..45d2e52 100644 --- a/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py +++ b/tests/get_reviewers/test_get_reviewers_rest_fetch_batch.py @@ -3,7 +3,7 @@ from aioresponses import aioresponses -from github_review_counter.queries.get_reviewers_rest import fetch_batch +from reviewtally.queries.get_reviewers_rest import fetch_batch from tests.utils import get_reviews_url, read_reviews_file diff --git a/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py b/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py index 9d22c22..8de39eb 100644 --- a/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py +++ b/tests/get_reviewers/test_get_reviewers_rest_pull_requests.py @@ -2,7 +2,7 @@ from aioresponses import aioresponses -from github_review_counter.queries.get_reviewers_rest import ( +from reviewtally.queries.get_reviewers_rest import ( get_reviewers_for_pull_requests, ) from tests.utils import get_reviews_url, read_reviews_file diff --git a/tests/test_get_prs.py b/tests/test_get_prs.py index 6b478df..c3bc1d0 100644 --- a/tests/test_get_prs.py +++ b/tests/test_get_prs.py @@ -2,7 +2,7 @@ from datetime import datetime, timezone from unittest.mock import Mock, patch -from github_review_counter.queries.get_prs import ( +from reviewtally.queries.get_prs import ( get_pull_requests_between_dates, ) diff --git a/tests/test_get_repos_gql.py b/tests/test_get_repos_gql.py index 19dabfd..2fe1c5b 100644 --- a/tests/test_get_repos_gql.py +++ b/tests/test_get_repos_gql.py @@ -2,11 +2,11 @@ import unittest from unittest.mock import Mock, patch -from github_review_counter.queries.get_repos_gql import get_repos_by_language +from reviewtally.queries.get_repos_gql import get_repos_by_language class TestGetReposByLanguage(unittest.TestCase): - @patch("github_review_counter.queries.get_repos_gql.requests.post") + @patch("reviewtally.queries.get_repos_gql.requests.post") @patch.dict(os.environ, {"GITHUB_TOKEN": "test_token"}) def test_get_repos_by_language(self, mock_post) -> None: # noqa: ANN001 # Mock the response from the GitHub API From 509e6471ff4fdf462679324e5fe9550250de97a3 Mon Sep 17 00:00:00 2001 From: ghinks Date: Tue, 14 Jan 2025 15:11:42 -0500 Subject: [PATCH 6/6] readme update to match new script name --- README.md | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 218c6d4..bc2569e 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,13 @@ # review-tally -This tool is intended to retrieve basic statics about the reviews of pull +This tool is intended to retrieve a basic review count for the pull requests for a GitHub organization in a given time frame. The default time -from is 2 weeks. The tool will retrieve statistics only on repositories that -have specific languages when specified. +from is 2 weeks. The tool will retrieve statistics only on all repositories in +the specified organization unless there are specific languages specified. basic usage: ```bash -review-tally -o kubernetes -l python +review-tally -o expressjs -l javascript ``` which would produce the following output @@ -22,10 +22,6 @@ user3 15 This output shows the number of reviews that each user has carried out in the time period for the repositories that have python as a language specified. -The authors intent is to provide basic statistics about who is carrying out -reviews over a period of time so that the organization can better understand -who is contributing to the review process. - A comma separated list of languages can be provided to filter the repositories that are included in the statistics. If no languages are provided then all of the repositories will be included in the statistics.