gitraze 0.2.1__tar.gz → 0.2.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {gitraze-0.2.1 → gitraze-0.2.3}/PKG-INFO +17 -16
- {gitraze-0.2.1 → gitraze-0.2.3}/README.md +16 -15
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze/cli.py +11 -4
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze/core/api_rest.py +20 -6
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze/modules/search.py +2 -2
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze.egg-info/PKG-INFO +17 -16
- {gitraze-0.2.1 → gitraze-0.2.3}/pyproject.toml +2 -2
- {gitraze-0.2.1 → gitraze-0.2.3}/LICENSE +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze/__init__.py +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze/config.py +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze/core/__init__.py +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze/core/api_graphql.py +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze/modules/__init__.py +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze/modules/analytics.py +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze/modules/repo.py +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze/modules/user.py +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze/utils/__init__.py +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze/utils/helpers.py +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze.egg-info/SOURCES.txt +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze.egg-info/dependency_links.txt +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze.egg-info/entry_points.txt +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze.egg-info/requires.txt +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/gitraze.egg-info/top_level.txt +0 -0
- {gitraze-0.2.1 → gitraze-0.2.3}/setup.cfg +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gitraze
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.3
|
|
4
4
|
Summary: A CLI and Python library for GitHub reconnaissance, search, and analysis
|
|
5
5
|
Author: AK Pandey
|
|
6
6
|
License-Expression: MIT
|
|
7
7
|
Project-URL: Homepage, https://github.com/akpandey-dev/gitraze
|
|
8
|
-
Keywords: github,cli,api,recon,search
|
|
8
|
+
Keywords: github,cli,api,recon,search,github-user,repository
|
|
9
9
|
Classifier: Programming Language :: Python :: 3
|
|
10
10
|
Classifier: Operating System :: OS Independent
|
|
11
11
|
Requires-Python: >=3.8
|
|
@@ -33,25 +33,25 @@ Gitraze is a powerful command-line tool designed to explore, analyze, and extrac
|
|
|
33
33
|
Most GitHub tools are either slow, bloated, or UI-heavy.
|
|
34
34
|
|
|
35
35
|
**Gitraze is different:**
|
|
36
|
-
-
|
|
37
|
-
-
|
|
38
|
-
-
|
|
39
|
-
-
|
|
36
|
+
- Fast, minimal, no nonsense
|
|
37
|
+
- Built for developers who think in terminals
|
|
38
|
+
- Deep GitHub data access (REST + GraphQL)
|
|
39
|
+
- Modular and extensible architecture
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
43
|
## Features
|
|
44
44
|
|
|
45
|
-
-
|
|
46
|
-
-
|
|
47
|
-
-
|
|
48
|
-
-
|
|
49
|
-
-
|
|
50
|
-
-
|
|
51
|
-
-
|
|
52
|
-
-
|
|
53
|
-
-
|
|
54
|
-
-
|
|
45
|
+
- Modular system (easy to extend and hack on)
|
|
46
|
+
- CLI-first workflow
|
|
47
|
+
- GitHub API integration (REST + GraphQL)
|
|
48
|
+
- Repository insights
|
|
49
|
+
- User analysis
|
|
50
|
+
- Filter PRs vs issues automatically
|
|
51
|
+
- Human-readable timestamps
|
|
52
|
+
- Cleaned descriptions (HTML stripped)
|
|
53
|
+
- Analytics modules (in progress)
|
|
54
|
+
- Search users, repos, issues, PRs, and topics
|
|
55
55
|
|
|
56
56
|
|
|
57
57
|
---
|
|
@@ -146,3 +146,4 @@ If you're here early — you're basically a beta tester 😈
|
|
|
146
146
|
## License
|
|
147
147
|
|
|
148
148
|
MIT License — do whatever you want, just don’t blame me if you break stuff.
|
|
149
|
+
|
|
@@ -16,25 +16,25 @@ Gitraze is a powerful command-line tool designed to explore, analyze, and extrac
|
|
|
16
16
|
Most GitHub tools are either slow, bloated, or UI-heavy.
|
|
17
17
|
|
|
18
18
|
**Gitraze is different:**
|
|
19
|
-
-
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
-
|
|
19
|
+
- Fast, minimal, no nonsense
|
|
20
|
+
- Built for developers who think in terminals
|
|
21
|
+
- Deep GitHub data access (REST + GraphQL)
|
|
22
|
+
- Modular and extensible architecture
|
|
23
23
|
|
|
24
24
|
---
|
|
25
25
|
|
|
26
26
|
## Features
|
|
27
27
|
|
|
28
|
-
-
|
|
29
|
-
-
|
|
30
|
-
-
|
|
31
|
-
-
|
|
32
|
-
-
|
|
33
|
-
-
|
|
34
|
-
-
|
|
35
|
-
-
|
|
36
|
-
-
|
|
37
|
-
-
|
|
28
|
+
- Modular system (easy to extend and hack on)
|
|
29
|
+
- CLI-first workflow
|
|
30
|
+
- GitHub API integration (REST + GraphQL)
|
|
31
|
+
- Repository insights
|
|
32
|
+
- User analysis
|
|
33
|
+
- Filter PRs vs issues automatically
|
|
34
|
+
- Human-readable timestamps
|
|
35
|
+
- Cleaned descriptions (HTML stripped)
|
|
36
|
+
- Analytics modules (in progress)
|
|
37
|
+
- Search users, repos, issues, PRs, and topics
|
|
38
38
|
|
|
39
39
|
|
|
40
40
|
---
|
|
@@ -128,4 +128,5 @@ If you're here early — you're basically a beta tester 😈
|
|
|
128
128
|
|
|
129
129
|
## License
|
|
130
130
|
|
|
131
|
-
MIT License — do whatever you want, just don’t blame me if you break stuff.
|
|
131
|
+
MIT License — do whatever you want, just don’t blame me if you break stuff.
|
|
132
|
+
|
|
@@ -15,7 +15,7 @@ def main():
|
|
|
15
15
|
parser.add_argument(
|
|
16
16
|
"--version",
|
|
17
17
|
action="version",
|
|
18
|
-
version="gitraze 0.2.
|
|
18
|
+
version="gitraze 0.2.3"
|
|
19
19
|
)
|
|
20
20
|
|
|
21
21
|
subparsers = parser.add_subparsers(dest="command", required=True)
|
|
@@ -87,15 +87,22 @@ def handle_repo(args):
|
|
|
87
87
|
|
|
88
88
|
def handle_search(args):
|
|
89
89
|
category = args.category
|
|
90
|
-
query = " ".join(args.query)
|
|
91
|
-
print(f"[+] Searching {category} for '{query}'...")
|
|
92
90
|
|
|
93
|
-
|
|
91
|
+
raw_query = " ".join(args.query)
|
|
92
|
+
clean_query = raw_query.replace('"', '')
|
|
93
|
+
query = f'"{clean_query}"'
|
|
94
|
+
|
|
95
|
+
print(f"[+] Searching {category} for {query}...")
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
data = get_search_rest(category, query, args.limit)
|
|
99
|
+
|
|
94
100
|
if "error" in data:
|
|
95
101
|
print(data["error"])
|
|
96
102
|
return
|
|
97
103
|
|
|
98
104
|
print("[✓] Done")
|
|
105
|
+
|
|
99
106
|
if isinstance(data, list):
|
|
100
107
|
for i, item in enumerate(data, 1):
|
|
101
108
|
pretty_print(item, title=f"{category} [{i}] -> {query}")
|
|
@@ -41,13 +41,27 @@ def get_repo(owner, repo):
|
|
|
41
41
|
|
|
42
42
|
def get_search(category, query):
|
|
43
43
|
url = f"{REST_BASE_URL}/search/{SEARCH_MAP.get(category)}"
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
44
|
+
|
|
45
|
+
filters = []
|
|
46
|
+
if category == "prs":
|
|
47
|
+
filters.append("type:pr")
|
|
48
|
+
elif category == "issues":
|
|
49
|
+
filters.append("type:issue")
|
|
50
|
+
|
|
51
|
+
if category in ["issues", "prs"]:
|
|
52
|
+
filters.extend([
|
|
53
|
+
"in:title",
|
|
54
|
+
"comments:1..50",
|
|
55
|
+
"-author:app",
|
|
56
|
+
])
|
|
57
|
+
|
|
58
|
+
final_query = f"{query} {' '.join(filters)}".strip()
|
|
59
|
+
|
|
49
60
|
params = {
|
|
50
|
-
"q":
|
|
61
|
+
"q": final_query,
|
|
62
|
+
"per_page": 100,
|
|
63
|
+
"sort": "comments" if category in ["issues", "prs"] else "best-match",
|
|
64
|
+
"order": "desc"
|
|
51
65
|
}
|
|
52
66
|
try:
|
|
53
67
|
response = requests.get(
|
|
@@ -5,6 +5,8 @@ from gitraze.core.api_rest import get_search
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
def get_search_rest(category, query, limit=1):
|
|
8
|
+
if category not in ["repos", "users", "issues", "prs", "topics"]:
|
|
9
|
+
return {"error": "Invalid category"}
|
|
8
10
|
data = get_search(category, query)
|
|
9
11
|
if "error" in data:
|
|
10
12
|
return data
|
|
@@ -15,8 +17,6 @@ def get_search_rest(category, query, limit=1):
|
|
|
15
17
|
elif category == "prs":
|
|
16
18
|
items = [i for i in items if "pull_request" in i]
|
|
17
19
|
|
|
18
|
-
if category not in ["repos", "users", "issues", "prs", "topics"]:
|
|
19
|
-
return {"error": "Invalid category"}
|
|
20
20
|
if not items:
|
|
21
21
|
return {"error": "No results found"}
|
|
22
22
|
items = items[:limit]
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gitraze
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.3
|
|
4
4
|
Summary: A CLI and Python library for GitHub reconnaissance, search, and analysis
|
|
5
5
|
Author: AK Pandey
|
|
6
6
|
License-Expression: MIT
|
|
7
7
|
Project-URL: Homepage, https://github.com/akpandey-dev/gitraze
|
|
8
|
-
Keywords: github,cli,api,recon,search
|
|
8
|
+
Keywords: github,cli,api,recon,search,github-user,repository
|
|
9
9
|
Classifier: Programming Language :: Python :: 3
|
|
10
10
|
Classifier: Operating System :: OS Independent
|
|
11
11
|
Requires-Python: >=3.8
|
|
@@ -33,25 +33,25 @@ Gitraze is a powerful command-line tool designed to explore, analyze, and extrac
|
|
|
33
33
|
Most GitHub tools are either slow, bloated, or UI-heavy.
|
|
34
34
|
|
|
35
35
|
**Gitraze is different:**
|
|
36
|
-
-
|
|
37
|
-
-
|
|
38
|
-
-
|
|
39
|
-
-
|
|
36
|
+
- Fast, minimal, no nonsense
|
|
37
|
+
- Built for developers who think in terminals
|
|
38
|
+
- Deep GitHub data access (REST + GraphQL)
|
|
39
|
+
- Modular and extensible architecture
|
|
40
40
|
|
|
41
41
|
---
|
|
42
42
|
|
|
43
43
|
## Features
|
|
44
44
|
|
|
45
|
-
-
|
|
46
|
-
-
|
|
47
|
-
-
|
|
48
|
-
-
|
|
49
|
-
-
|
|
50
|
-
-
|
|
51
|
-
-
|
|
52
|
-
-
|
|
53
|
-
-
|
|
54
|
-
-
|
|
45
|
+
- Modular system (easy to extend and hack on)
|
|
46
|
+
- CLI-first workflow
|
|
47
|
+
- GitHub API integration (REST + GraphQL)
|
|
48
|
+
- Repository insights
|
|
49
|
+
- User analysis
|
|
50
|
+
- Filter PRs vs issues automatically
|
|
51
|
+
- Human-readable timestamps
|
|
52
|
+
- Cleaned descriptions (HTML stripped)
|
|
53
|
+
- Analytics modules (in progress)
|
|
54
|
+
- Search users, repos, issues, PRs, and topics
|
|
55
55
|
|
|
56
56
|
|
|
57
57
|
---
|
|
@@ -146,3 +146,4 @@ If you're here early — you're basically a beta tester 😈
|
|
|
146
146
|
## License
|
|
147
147
|
|
|
148
148
|
MIT License — do whatever you want, just don’t blame me if you break stuff.
|
|
149
|
+
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "gitraze"
|
|
3
|
-
version = "0.2.
|
|
3
|
+
version = "0.2.3"
|
|
4
4
|
description = "A CLI and Python library for GitHub reconnaissance, search, and analysis"
|
|
5
5
|
authors = [{ name = "AK Pandey" }]
|
|
6
6
|
dependencies = ["requests", "colorama"]
|
|
@@ -8,7 +8,7 @@ readme = "README.md"
|
|
|
8
8
|
requires-python = ">=3.8"
|
|
9
9
|
license = "MIT"
|
|
10
10
|
|
|
11
|
-
keywords = ["github", "cli", "api", "recon", "search"]
|
|
11
|
+
keywords = ["github", "cli", "api", "recon", "search", "github-user", "repository"]
|
|
12
12
|
|
|
13
13
|
classifiers = [
|
|
14
14
|
"Programming Language :: Python :: 3",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|