github-issue-list 0.0.1__tar.gz → 0.0.2__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.
- {github_issue_list-0.0.1 → github_issue_list-0.0.2}/PKG-INFO +2 -2
- {github_issue_list-0.0.1 → github_issue_list-0.0.2}/README.md +1 -1
- {github_issue_list-0.0.1 → github_issue_list-0.0.2}/pyproject.toml +1 -1
- {github_issue_list-0.0.1 → github_issue_list-0.0.2}/src/github_issue_list.egg-info/PKG-INFO +2 -2
- {github_issue_list-0.0.1 → github_issue_list-0.0.2}/src/github_issue_list.py +6 -1
- {github_issue_list-0.0.1 → github_issue_list-0.0.2}/tests/test_github_issue_list.py +7 -0
- {github_issue_list-0.0.1 → github_issue_list-0.0.2}/setup.cfg +0 -0
- {github_issue_list-0.0.1 → github_issue_list-0.0.2}/src/github_issue_list.egg-info/SOURCES.txt +0 -0
- {github_issue_list-0.0.1 → github_issue_list-0.0.2}/src/github_issue_list.egg-info/dependency_links.txt +0 -0
- {github_issue_list-0.0.1 → github_issue_list-0.0.2}/src/github_issue_list.egg-info/entry_points.txt +0 -0
- {github_issue_list-0.0.1 → github_issue_list-0.0.2}/src/github_issue_list.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: github-issue-list
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.2
|
|
4
4
|
Summary: List open GitHub issues assigned to a user in an organization.
|
|
5
5
|
Author: Kaizten Analytics
|
|
6
6
|
License-Expression: LicenseRef-Proprietary
|
|
@@ -57,7 +57,7 @@ options:
|
|
|
57
57
|
--username USERNAME GitHub assignee. Defaults to the authenticated gh user.
|
|
58
58
|
```
|
|
59
59
|
|
|
60
|
-
The table contains the full repository name, issue number, truncated title, UTC creation time, and elapsed time since creation. The search returns at most 1,000 issues, matching GitHub's issue-search result limit.
|
|
60
|
+
The table contains the full repository name, issue number, truncated title, issue URL, UTC creation time, and elapsed time since creation. The search returns at most 1,000 issues, matching GitHub's issue-search result limit.
|
|
61
61
|
|
|
62
62
|
## Development
|
|
63
63
|
|
|
@@ -46,7 +46,7 @@ options:
|
|
|
46
46
|
--username USERNAME GitHub assignee. Defaults to the authenticated gh user.
|
|
47
47
|
```
|
|
48
48
|
|
|
49
|
-
The table contains the full repository name, issue number, truncated title, UTC creation time, and elapsed time since creation. The search returns at most 1,000 issues, matching GitHub's issue-search result limit.
|
|
49
|
+
The table contains the full repository name, issue number, truncated title, issue URL, UTC creation time, and elapsed time since creation. The search returns at most 1,000 issues, matching GitHub's issue-search result limit.
|
|
50
50
|
|
|
51
51
|
## Development
|
|
52
52
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: github-issue-list
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.2
|
|
4
4
|
Summary: List open GitHub issues assigned to a user in an organization.
|
|
5
5
|
Author: Kaizten Analytics
|
|
6
6
|
License-Expression: LicenseRef-Proprietary
|
|
@@ -57,7 +57,7 @@ options:
|
|
|
57
57
|
--username USERNAME GitHub assignee. Defaults to the authenticated gh user.
|
|
58
58
|
```
|
|
59
59
|
|
|
60
|
-
The table contains the full repository name, issue number, truncated title, UTC creation time, and elapsed time since creation. The search returns at most 1,000 issues, matching GitHub's issue-search result limit.
|
|
60
|
+
The table contains the full repository name, issue number, truncated title, issue URL, UTC creation time, and elapsed time since creation. The search returns at most 1,000 issues, matching GitHub's issue-search result limit.
|
|
61
61
|
|
|
62
62
|
## Development
|
|
63
63
|
|
|
@@ -176,6 +176,10 @@ def truncate_title(title: str, limit: int = TITLE_LIMIT) -> str:
|
|
|
176
176
|
return clean[: limit - 3] + "..."
|
|
177
177
|
|
|
178
178
|
|
|
179
|
+
def issue_url(issue: Issue) -> str:
|
|
180
|
+
return f"https://github.com/{issue.repository}/issues/{issue.number}"
|
|
181
|
+
|
|
182
|
+
|
|
179
183
|
def table(headers: list[str], rows: list[list[str]]) -> str:
|
|
180
184
|
widths = [len(header) for header in headers]
|
|
181
185
|
for row in rows:
|
|
@@ -200,13 +204,14 @@ def render_issue_table(issues: list[Issue], now: datetime) -> str:
|
|
|
200
204
|
issue.repository,
|
|
201
205
|
f"#{issue.number}",
|
|
202
206
|
truncate_title(issue.title),
|
|
207
|
+
issue_url(issue),
|
|
203
208
|
format_github_datetime(issue.created_at),
|
|
204
209
|
elapsed_time(issue.created_at, now),
|
|
205
210
|
]
|
|
206
211
|
for issue in issues
|
|
207
212
|
]
|
|
208
213
|
return table(
|
|
209
|
-
["Repository", "Issue number", "Issue title", "Creation time", "Time since creation"],
|
|
214
|
+
["Repository", "Issue number", "Issue title", "Issue URL", "Creation time", "Time since creation"],
|
|
210
215
|
rows,
|
|
211
216
|
)
|
|
212
217
|
|
|
@@ -143,12 +143,19 @@ class GithubIssueListTests(unittest.TestCase):
|
|
|
143
143
|
self.assertIn("Repository", rendered)
|
|
144
144
|
self.assertIn("Issue number", rendered)
|
|
145
145
|
self.assertIn("Issue title", rendered)
|
|
146
|
+
self.assertIn("Issue URL", rendered)
|
|
146
147
|
self.assertIn("Creation time", rendered)
|
|
147
148
|
self.assertIn("Time since creation", rendered)
|
|
148
149
|
self.assertIn("octo/repo", rendered)
|
|
149
150
|
self.assertIn("#7", rendered)
|
|
151
|
+
self.assertIn("https://github.com/octo/repo/issues/7", rendered)
|
|
150
152
|
self.assertIn("2026-10-12T10:30:00Z", rendered)
|
|
151
153
|
self.assertIn("2d 1h 30m", rendered)
|
|
154
|
+
headers = [cell.strip() for cell in rendered.splitlines()[0].strip("|").split("|")]
|
|
155
|
+
self.assertEqual(
|
|
156
|
+
headers,
|
|
157
|
+
["Repository", "Issue number", "Issue title", "Issue URL", "Creation time", "Time since creation"],
|
|
158
|
+
)
|
|
152
159
|
self.assertEqual(issue_list.render_issue_table([], now), "(none found)")
|
|
153
160
|
|
|
154
161
|
def test_run_resolves_defaults_and_prints_table(self):
|
|
File without changes
|
{github_issue_list-0.0.1 → github_issue_list-0.0.2}/src/github_issue_list.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{github_issue_list-0.0.1 → github_issue_list-0.0.2}/src/github_issue_list.egg-info/entry_points.txt
RENAMED
|
File without changes
|
{github_issue_list-0.0.1 → github_issue_list-0.0.2}/src/github_issue_list.egg-info/top_level.txt
RENAMED
|
File without changes
|