Skip to content

chtext v1.1.0

Latest

Choose a tag to compare

@3D3Q3 3D3Q3 released this 04 Jul 09:48
a528292

[1.1.0] - 2026-07-04
Fixed

Quote-history database is now stored in ~/.chtext/seen_ids.sqlite instead of the current working directory. Previously, running chtext from different directories created separate history files, silently breaking duplicate detection and littering project folders. An existing seen_ids.sqlite in the working directory is migrated automatically on first run.
API client now checks HTTP status codes and wraps network failures, so outages and rate limits surface as clean error messages instead of raw tracebacks.
Non-JSON API responses (e.g. HTML error pages) now raise a descriptive CtextAPIError.
Ctrl+C is no longer swallowed during chtext browse chapter listing (bare except removed).
Windows UTF-8 console configuration moved from import time into main(), so importing chtext as a library no longer replaces sys.stdout/sys.stderr globally.
README installation commands were broken (markdown links pasted inside code blocks); now copy-pasteable.

Added

Test suite (tests/) covering the API client, duplicate-tracking database, segment extraction, and configuration — all network access mocked.
CI workflow: ruff lint + pytest across Python 3.9–3.13 on every push and pull request.
This changelog.

Changed

Package version is now single-sourced from chtext.cli.__version__ via pyproject.toml dynamic metadata.
Build system requirement raised to setuptools>=77 (required by the SPDX license = "MIT" expression already in use).
Minimum supported Python raised from 3.8 to 3.9: setuptools>=77 does not install on Python 3.8, which reached end of life in October 2024.
Code style cleanup (unused imports, redundant f-strings) enforced by ruff.

What's Changed

  • v1.1.0: DB path fix, API hardening, tests, CI, changelog, README repair by @3D3Q3 in #3
  • Allow manual dispatch of the PyPI publish workflow by @3D3Q3 in #4

Full Changelog: v1.0.0...v1.1.0