termrender 1.0.0__tar.gz → 2.0.0__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.
- {termrender-1.0.0 → termrender-2.0.0}/.github/workflows/publish.yml +2 -3
- {termrender-1.0.0 → termrender-2.0.0}/CHANGELOG.md +50 -0
- {termrender-1.0.0 → termrender-2.0.0}/PKG-INFO +1 -1
- termrender-2.0.0/src/termrender/__main__.py +986 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/parser.py +9 -2
- termrender-2.0.0/tests/test_cli_contract.py +209 -0
- termrender-1.0.0/.git +0 -1
- termrender-1.0.0/src/termrender/__main__.py +0 -479
- {termrender-1.0.0 → termrender-2.0.0}/.gitignore +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/CLAUDE.md +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/LICENSE +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/README.md +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/design.json +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/pyproject.toml +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/requirements.json +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/CLAUDE.md +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/__init__.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/blocks.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/emit.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/layout.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/py.typed +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/CLAUDE.md +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/__init__.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/borders.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/charts.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/code.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/columns.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/diff.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/divider.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/mermaid.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/panel.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/quote.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/stat.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/table.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/text.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/timeline.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/renderers/tree.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/src/termrender/style.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/tests/__init__.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/tests/test_charts.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/tests/test_column_alignment.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/tests/test_diff.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/tests/test_inline_badge.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/tests/test_linebreak.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/tests/test_mermaid_compat.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/tests/test_myst_gaps.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/tests/test_stat.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/tests/test_tasklist.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/tests/test_timeline.py +0 -0
- {termrender-1.0.0 → termrender-2.0.0}/tests/test_variable_colons.py +0 -0
|
@@ -6,7 +6,6 @@ on:
|
|
|
6
6
|
|
|
7
7
|
permissions:
|
|
8
8
|
contents: write
|
|
9
|
-
id-token: write
|
|
10
9
|
|
|
11
10
|
jobs:
|
|
12
11
|
release:
|
|
@@ -33,8 +32,6 @@ jobs:
|
|
|
33
32
|
if: needs.release.outputs.released == 'true'
|
|
34
33
|
runs-on: ubuntu-latest
|
|
35
34
|
environment: pypi
|
|
36
|
-
permissions:
|
|
37
|
-
id-token: write
|
|
38
35
|
steps:
|
|
39
36
|
- uses: actions/checkout@v4
|
|
40
37
|
with:
|
|
@@ -46,3 +43,5 @@ jobs:
|
|
|
46
43
|
- run: pip install build
|
|
47
44
|
- run: python -m build
|
|
48
45
|
- uses: pypa/gh-action-pypi-publish@release/v1
|
|
46
|
+
with:
|
|
47
|
+
password: ${{ secrets.PYPI_API_TOKEN }}
|
|
@@ -1,6 +1,56 @@
|
|
|
1
1
|
# CHANGELOG
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
## v2.0.0 (2026-05-16)
|
|
5
|
+
|
|
6
|
+
### Continuous Integration
|
|
7
|
+
|
|
8
|
+
- **publish**: Authenticate PyPI upload with API token
|
|
9
|
+
([`09e21c8`](https://github.com/crouton-labs/termrender/commit/09e21c8f58529f8c9ba9a383c24563e6ebaba2f3))
|
|
10
|
+
|
|
11
|
+
Trusted publishing has failed on every release since v0.8.0 (invalid-publisher: OIDC claims for
|
|
12
|
+
crouton-labs/termrender had no matching PyPI publisher), so 0.9.0-1.0.1 were tagged but never
|
|
13
|
+
reached PyPI. Switch the publish job to token auth via the pypi-environment secret PYPI_API_TOKEN
|
|
14
|
+
and drop the now-unused id-token permission.
|
|
15
|
+
|
|
16
|
+
### Features
|
|
17
|
+
|
|
18
|
+
- **cli**: Redesign CLI to agent-oriented JSON-stdin contract
|
|
19
|
+
([`ef70751`](https://github.com/crouton-labs/termrender/commit/ef7075103bc49d13cbd6bebdd01841454e5950ff))
|
|
20
|
+
|
|
21
|
+
Restructure the CLI as a noun-verb tree consumed by programs/agents: `termrender doc
|
|
22
|
+
{render,check,watch}` and `termrender pane {open,update}`. All parameters arrive as a single JSON
|
|
23
|
+
object on stdin; no flags except -h. Errors are structured JSON {error,message,next} on stdout
|
|
24
|
+
with stable codes and non-zero exit. `doc check` emits {ok,errors[]} JSON on stdout (was "ok" on
|
|
25
|
+
stderr). Per-node -h is a spec (input/output schema + Effects), not examples. The library render()
|
|
26
|
+
API is unchanged; rendered ANSI output for doc render/doc watch is intentionally preserved as the
|
|
27
|
+
product.
|
|
28
|
+
|
|
29
|
+
BREAKING CHANGE: the flag/positional CLI surface is removed. `termrender FILE`, -w/--width,
|
|
30
|
+
--no-color, --check, --cjk, --tmux, --pane, --tmux-new-window, --watch, and -V/--version no longer
|
|
31
|
+
exist. Callers must invoke a subcommand and pass parameters as a JSON object on stdin. Version is
|
|
32
|
+
shown in root -h.
|
|
33
|
+
|
|
34
|
+
### Breaking Changes
|
|
35
|
+
|
|
36
|
+
- **cli**: The flag/positional CLI surface is removed. `termrender FILE`, -w/--width, --no-color,
|
|
37
|
+
--check, --cjk, --tmux, --pane, --tmux-new-window, --watch, and -V/--version no longer exist.
|
|
38
|
+
Callers must invoke a subcommand and pass parameters as a JSON object on stdin. Version is shown
|
|
39
|
+
in root -h.
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
## v1.0.1 (2026-04-28)
|
|
43
|
+
|
|
44
|
+
### Bug Fixes
|
|
45
|
+
|
|
46
|
+
- **parser**: Extract bullet text from paragraph children in loose lists
|
|
47
|
+
([`95f389b`](https://github.com/crouton-labs/termrender/commit/95f389b808d89195a8b9dd957d7949328a8859e8))
|
|
48
|
+
|
|
49
|
+
Mistune wraps list_item content in block_text for tight lists and in paragraph for loose lists. Only
|
|
50
|
+
block_text was being extracted into item spans, so loose-list bullets rendered with empty text —
|
|
51
|
+
the renderer's `if not block.text` short-circuit dropped the paragraph child entirely.
|
|
52
|
+
|
|
53
|
+
|
|
4
54
|
## v1.0.0 (2026-04-27)
|
|
5
55
|
|
|
6
56
|
### Documentation
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: termrender
|
|
3
|
-
Version:
|
|
3
|
+
Version: 2.0.0
|
|
4
4
|
Summary: Rich terminal rendering of directive-flavored markdown
|
|
5
5
|
Project-URL: Homepage, https://github.com/CaptainCrouton89/termrender
|
|
6
6
|
Project-URL: Repository, https://github.com/CaptainCrouton89/termrender
|