repoglance 0.2.1__tar.gz → 0.2.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.
- {repoglance-0.2.1 → repoglance-0.2.2}/.github/workflows/release.yml +1 -1
- repoglance-0.2.2/.repoglance-badge.json +1 -0
- repoglance-0.2.2/CHANGELOG.md +41 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/PKG-INFO +15 -15
- {repoglance-0.2.1 → repoglance-0.2.2}/README.md +11 -11
- {repoglance-0.2.1 → repoglance-0.2.2}/RELEASING.md +2 -2
- {repoglance-0.2.1 → repoglance-0.2.2}/assets/badge.svg +4 -4
- repoglance-0.2.2/assets/demo.svg +329 -0
- repoglance-0.2.2/assets/showcase/flask.svg +268 -0
- repoglance-0.2.2/assets/showcase/httpie.svg +311 -0
- repoglance-0.2.2/assets/showcase/requests.svg +290 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/pyproject.toml +4 -4
- {repoglance-0.2.1 → repoglance-0.2.2}/src/repoglance/__init__.py +1 -1
- {repoglance-0.2.1 → repoglance-0.2.2}/src/repoglance/complexity.py +8 -19
- {repoglance-0.2.1 → repoglance-0.2.2}/src/repoglance/metrics.py +1 -1
- {repoglance-0.2.1 → repoglance-0.2.2}/src/repoglance/report.py +5 -5
- {repoglance-0.2.1 → repoglance-0.2.2}/src/repoglance/scanner.py +116 -46
- repoglance-0.2.2/tests/test_cli.py +54 -0
- repoglance-0.2.2/tests/test_scanner_extra.py +65 -0
- repoglance-0.2.1/.repolens-badge.json +0 -1
- repoglance-0.2.1/assets/demo.svg +0 -289
- repoglance-0.2.1/assets/showcase/flask.svg +0 -268
- repoglance-0.2.1/assets/showcase/httpie.svg +0 -311
- repoglance-0.2.1/assets/showcase/requests.svg +0 -290
- {repoglance-0.2.1 → repoglance-0.2.2}/.github/workflows/ci.yml +0 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/.github/workflows/repoglance.yml +0 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/.gitignore +0 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/.pre-commit-hooks.yaml +0 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/CONTRIBUTING.md +0 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/LICENSE +0 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/action.yml +0 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/src/repoglance/__main__.py +0 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/src/repoglance/badge.py +0 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/src/repoglance/cli.py +0 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/src/repoglance/gitinfo.py +0 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/src/repoglance/languages.py +0 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/tests/test_complexity.py +0 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/tests/test_features.py +0 -0
- {repoglance-0.2.1 → repoglance-0.2.2}/tests/test_scanner.py +0 -0
|
@@ -5,7 +5,7 @@ name: Release
|
|
|
5
5
|
#
|
|
6
6
|
# One-time setup on PyPI: create the project's "pending publisher" at
|
|
7
7
|
# https://pypi.org/manage/account/publishing/ with
|
|
8
|
-
# owner: SRJ-ai repo:
|
|
8
|
+
# owner: SRJ-ai repo: repoglance workflow: release.yml environment: pypi
|
|
9
9
|
|
|
10
10
|
on:
|
|
11
11
|
push:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schemaVersion": 1, "label": "repoglance", "message": "1.6k loc \u2022 Python", "color": "blue"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project are documented here. The format is based on
|
|
4
|
+
[Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project
|
|
5
|
+
adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
6
|
+
|
|
7
|
+
## [0.2.2] - 2026-08-01
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
- Respect the repository's `.gitignore`: when scanning a git repo, the file
|
|
11
|
+
list comes from `git ls-files` so ignored files are excluded (matches the
|
|
12
|
+
behavior of `tokei`/`scc`). Non-git directories still use a pruned walk.
|
|
13
|
+
- Count C-style `/* ... */` block comments when classifying lines, improving the
|
|
14
|
+
comment ratio (and therefore the health score) for C-family languages.
|
|
15
|
+
- Expanded test suite: CLI end-to-end (`click` runner), `.gitignore` handling,
|
|
16
|
+
block comments, and inline complexity scoring.
|
|
17
|
+
|
|
18
|
+
### Changed
|
|
19
|
+
- Every file is now read exactly once. Complexity is computed during the scan
|
|
20
|
+
from the text already in memory instead of re-reading every file in a second
|
|
21
|
+
pass — roughly halving I/O on large repositories.
|
|
22
|
+
|
|
23
|
+
## [0.2.1] - 2026-08-01
|
|
24
|
+
|
|
25
|
+
### Changed
|
|
26
|
+
- Marketplace listing name set to a globally-unique title.
|
|
27
|
+
|
|
28
|
+
## [0.2.0] - 2026-08-01
|
|
29
|
+
|
|
30
|
+
### Changed
|
|
31
|
+
- Renamed the PyPI package and CLI to **repoglance** (the GitHub repository is
|
|
32
|
+
unchanged). Only line-comment TODO markers are counted, avoiding false
|
|
33
|
+
positives from prose and marker lists.
|
|
34
|
+
|
|
35
|
+
## [0.1.0] - 2026-08-01
|
|
36
|
+
|
|
37
|
+
### Added
|
|
38
|
+
- Initial release: rich terminal report (languages, complexity hotspots, TODO
|
|
39
|
+
tracker, biggest files, git activity), health score, JSON/Markdown/SVG/HTML
|
|
40
|
+
output, self-contained and dynamic badges, CI gate, GitHub Action, and
|
|
41
|
+
pre-commit hook.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: repoglance
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.2
|
|
4
4
|
Summary: Instant, gorgeous insight into any code repository — languages, complexity hotspots, TODOs and git activity in one terminal command.
|
|
5
|
-
Project-URL: Homepage, https://github.com/SRJ-ai/
|
|
6
|
-
Project-URL: Repository, https://github.com/SRJ-ai/
|
|
7
|
-
Project-URL: Issues, https://github.com/SRJ-ai/
|
|
5
|
+
Project-URL: Homepage, https://github.com/SRJ-ai/repoglance
|
|
6
|
+
Project-URL: Repository, https://github.com/SRJ-ai/repoglance
|
|
7
|
+
Project-URL: Issues, https://github.com/SRJ-ai/repoglance/issues
|
|
8
8
|
Author: repoglance contributors
|
|
9
9
|
License: MIT
|
|
10
10
|
License-File: LICENSE
|
|
@@ -37,11 +37,11 @@ Point it at any folder. In under a second you get a beautiful terminal report:
|
|
|
37
37
|
language breakdown, complexity hotspots, TODO tracker, biggest files, and git
|
|
38
38
|
activity. **Zero config. Zero API keys. Zero telemetry.**
|
|
39
39
|
|
|
40
|
-
[](https://github.com/SRJ-ai/repoglance/actions/workflows/ci.yml)
|
|
41
41
|
[](https://www.python.org/)
|
|
42
42
|
[](LICENSE)
|
|
43
43
|
[](CONTRIBUTING.md)
|
|
44
|
-
[](https://github.com/SRJ-ai/repoglance)
|
|
45
45
|
|
|
46
46
|
</div>
|
|
47
47
|
|
|
@@ -69,9 +69,9 @@ repoglance run against well-known projects (click to view the full report):
|
|
|
69
69
|
|
|
70
70
|
| Project | Files | Lines of code | Health |
|
|
71
71
|
|---|--:|--:|:--:|
|
|
72
|
-
| [flask](assets/showcase/flask.svg) |
|
|
73
|
-
| [httpie](assets/showcase/httpie.svg) |
|
|
74
|
-
| [requests](assets/showcase/requests.svg) |
|
|
72
|
+
| [flask](assets/showcase/flask.svg) | 209 | 25,293 | D (64) |
|
|
73
|
+
| [httpie](assets/showcase/httpie.svg) | 236 | 20,114 | D (62) |
|
|
74
|
+
| [requests](assets/showcase/requests.svg) | 89 | 13,785 | C (70) |
|
|
75
75
|
|
|
76
76
|
<div align="center">
|
|
77
77
|
|
|
@@ -196,7 +196,7 @@ jobs:
|
|
|
196
196
|
runs-on: ubuntu-latest
|
|
197
197
|
steps:
|
|
198
198
|
- uses: actions/checkout@v4
|
|
199
|
-
- uses: SRJ-ai/
|
|
199
|
+
- uses: SRJ-ai/repoglance@main
|
|
200
200
|
with:
|
|
201
201
|
fail-under: "70" # optional health gate
|
|
202
202
|
max-complexity: "25" # optional complexity gate
|
|
@@ -209,8 +209,8 @@ The report also lands in the workflow's **job summary** every run.
|
|
|
209
209
|
```yaml
|
|
210
210
|
# .pre-commit-config.yaml
|
|
211
211
|
repos:
|
|
212
|
-
- repo: https://github.com/SRJ-ai/
|
|
213
|
-
rev: v0.2.
|
|
212
|
+
- repo: https://github.com/SRJ-ai/repoglance
|
|
213
|
+
rev: v0.2.2
|
|
214
214
|
hooks:
|
|
215
215
|
- id: repoglance
|
|
216
216
|
args: ["--ci", "--fail-under", "70"]
|
|
@@ -222,11 +222,11 @@ Commit a shields endpoint file and point a dynamic badge at it — the badge
|
|
|
222
222
|
refreshes itself, no service to run:
|
|
223
223
|
|
|
224
224
|
```bash
|
|
225
|
-
repoglance --badge-json .
|
|
225
|
+
repoglance --badge-json .repoglance-badge.json # commit this file
|
|
226
226
|
```
|
|
227
227
|
|
|
228
228
|
```markdown
|
|
229
|
-

|
|
230
230
|
```
|
|
231
231
|
|
|
232
232
|
### Markdown anywhere
|
|
@@ -237,7 +237,7 @@ repoglance --md # paste into a PR, wiki, or Slack
|
|
|
237
237
|
|
|
238
238
|
## Design goals
|
|
239
239
|
|
|
240
|
-
- **Fast** — a single
|
|
240
|
+
- **Fast** — a single pass, no external services.
|
|
241
241
|
- **Honest** — no network, no telemetry, no surprise writes.
|
|
242
242
|
- **Pretty** — powered by [rich](https://github.com/Textualize/rich).
|
|
243
243
|
- **Scriptable** — everything the report shows is available as `--json`.
|
|
@@ -8,11 +8,11 @@ Point it at any folder. In under a second you get a beautiful terminal report:
|
|
|
8
8
|
language breakdown, complexity hotspots, TODO tracker, biggest files, and git
|
|
9
9
|
activity. **Zero config. Zero API keys. Zero telemetry.**
|
|
10
10
|
|
|
11
|
-
[](https://github.com/SRJ-ai/repoglance/actions/workflows/ci.yml)
|
|
12
12
|
[](https://www.python.org/)
|
|
13
13
|
[](LICENSE)
|
|
14
14
|
[](CONTRIBUTING.md)
|
|
15
|
-
[](https://github.com/SRJ-ai/repoglance)
|
|
16
16
|
|
|
17
17
|
</div>
|
|
18
18
|
|
|
@@ -40,9 +40,9 @@ repoglance run against well-known projects (click to view the full report):
|
|
|
40
40
|
|
|
41
41
|
| Project | Files | Lines of code | Health |
|
|
42
42
|
|---|--:|--:|:--:|
|
|
43
|
-
| [flask](assets/showcase/flask.svg) |
|
|
44
|
-
| [httpie](assets/showcase/httpie.svg) |
|
|
45
|
-
| [requests](assets/showcase/requests.svg) |
|
|
43
|
+
| [flask](assets/showcase/flask.svg) | 209 | 25,293 | D (64) |
|
|
44
|
+
| [httpie](assets/showcase/httpie.svg) | 236 | 20,114 | D (62) |
|
|
45
|
+
| [requests](assets/showcase/requests.svg) | 89 | 13,785 | C (70) |
|
|
46
46
|
|
|
47
47
|
<div align="center">
|
|
48
48
|
|
|
@@ -167,7 +167,7 @@ jobs:
|
|
|
167
167
|
runs-on: ubuntu-latest
|
|
168
168
|
steps:
|
|
169
169
|
- uses: actions/checkout@v4
|
|
170
|
-
- uses: SRJ-ai/
|
|
170
|
+
- uses: SRJ-ai/repoglance@main
|
|
171
171
|
with:
|
|
172
172
|
fail-under: "70" # optional health gate
|
|
173
173
|
max-complexity: "25" # optional complexity gate
|
|
@@ -180,8 +180,8 @@ The report also lands in the workflow's **job summary** every run.
|
|
|
180
180
|
```yaml
|
|
181
181
|
# .pre-commit-config.yaml
|
|
182
182
|
repos:
|
|
183
|
-
- repo: https://github.com/SRJ-ai/
|
|
184
|
-
rev: v0.2.
|
|
183
|
+
- repo: https://github.com/SRJ-ai/repoglance
|
|
184
|
+
rev: v0.2.2
|
|
185
185
|
hooks:
|
|
186
186
|
- id: repoglance
|
|
187
187
|
args: ["--ci", "--fail-under", "70"]
|
|
@@ -193,11 +193,11 @@ Commit a shields endpoint file and point a dynamic badge at it — the badge
|
|
|
193
193
|
refreshes itself, no service to run:
|
|
194
194
|
|
|
195
195
|
```bash
|
|
196
|
-
repoglance --badge-json .
|
|
196
|
+
repoglance --badge-json .repoglance-badge.json # commit this file
|
|
197
197
|
```
|
|
198
198
|
|
|
199
199
|
```markdown
|
|
200
|
-

|
|
201
201
|
```
|
|
202
202
|
|
|
203
203
|
### Markdown anywhere
|
|
@@ -208,7 +208,7 @@ repoglance --md # paste into a PR, wiki, or Slack
|
|
|
208
208
|
|
|
209
209
|
## Design goals
|
|
210
210
|
|
|
211
|
-
- **Fast** — a single
|
|
211
|
+
- **Fast** — a single pass, no external services.
|
|
212
212
|
- **Honest** — no network, no telemetry, no surprise writes.
|
|
213
213
|
- **Pretty** — powered by [rich](https://github.com/Textualize/rich).
|
|
214
214
|
- **Scriptable** — everything the report shows is available as `--json`.
|
|
@@ -5,7 +5,7 @@ via GitHub Actions using PyPI's **trusted publisher** (OIDC) — there is no API
|
|
|
5
5
|
token stored anywhere.
|
|
6
6
|
|
|
7
7
|
> The PyPI distribution is **`repoglance`**; the GitHub repository is
|
|
8
|
-
> **`SRJ-ai/
|
|
8
|
+
> **`SRJ-ai/repoglance`**. Keep that distinction in mind below.
|
|
9
9
|
|
|
10
10
|
## One-time PyPI setup
|
|
11
11
|
|
|
@@ -13,7 +13,7 @@ token stored anywhere.
|
|
|
13
13
|
2. Fill in:
|
|
14
14
|
- **PyPI project name:** `repoglance`
|
|
15
15
|
- **Owner:** `SRJ-ai`
|
|
16
|
-
- **Repository:** `
|
|
16
|
+
- **Repository:** `repoglance`
|
|
17
17
|
- **Workflow name:** `release.yml`
|
|
18
18
|
- **Environment:** `pypi`
|
|
19
19
|
3. Save.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20" role="img" aria-label="repoglance: 1.
|
|
2
|
-
<title>repoglance: 1.
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20" role="img" aria-label="repoglance: 1.6k loc • Python">
|
|
2
|
+
<title>repoglance: 1.6k loc • Python</title>
|
|
3
3
|
<linearGradient id="s" x2="0" y2="100%">
|
|
4
4
|
<stop offset="0" stop-color="#bbb" stop-opacity=".1"/>
|
|
5
5
|
<stop offset="1" stop-opacity=".1"/>
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
<g fill="#fff" text-anchor="middle" font-family="Verdana,Geneva,DejaVu Sans,sans-serif" font-size="110" text-rendering="geometricPrecision">
|
|
14
14
|
<text aria-hidden="true" x="418" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="635">repoglance</text>
|
|
15
15
|
<text x="418" y="140" transform="scale(.1)" textLength="635">repoglance</text>
|
|
16
|
-
<text aria-hidden="true" x="1420" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="970">1.
|
|
17
|
-
<text x="1420" y="140" transform="scale(.1)" textLength="970">1.
|
|
16
|
+
<text aria-hidden="true" x="1420" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="970">1.6k loc • Python</text>
|
|
17
|
+
<text x="1420" y="140" transform="scale(.1)" textLength="970">1.6k loc • Python</text>
|
|
18
18
|
</g>
|
|
19
19
|
</svg>
|