Skip to content

feat!: prepare ctui 1.0.0 - #6

Merged
meeas merged 31 commits into
mainfrom
major_overhaul
Sep 14, 2026
Merged

meeas merged 31 commits into
mainfrom
major_overhaul

Conversation

@meeas

@meeas meeas commented Sep 14, 2026

Copy link
Copy Markdown
Contributor

Summary

Prepare ctui 1.0 as the first stable release.

Major changes

  • Change core library from synchronous to asynchronous
  • Add automatic command-line usage for all ctui apps
  • Add scripted command sequences from command-line
  • Add explicit Linux-style named command arguments
  • Add new Types
    • HexBytes
    • FuzzyHexPattern
    • FuzzyStringPattern
    • IntegerRanges
    • IntegerSpan
  • Migrate from tinydb to asynchronous SQLite project persistence
  • Add project migrations, integrity checks, and backups
  • Define and test the supported public API
  • Expand the tutorials and developer documentation
  • Add Python 3.11–3.14 CI across Linux, Linux ARM64, Windows, and macOS
  • Add wheel and source-distribution smoke tests
  • Add trusted PyPI publishing, attestations, prerelease handling, and release notes

Release preparation

  • Package version: 1.0.0rc1
  • Changelog added
  • Release checklist added
  • License included in wheel and source distribution
  • Tag/package-version consistency enforced
  • RC releases marked as GitHub prereleases

Validation

  • 101 unit tests pass
  • Black passes
  • isort passes
  • Lockfile is current
  • Wheel builds and passes isolated smoke testing
  • Source distribution builds and passes isolated smoke testing
  • Package metadata and license inclusion verified
  • GitHub CI passes

meeas added 30 commits August 22, 2026 22:55
- Per-project configs, records, and command history
- Built-in project/config/history management commands
- JSON config and SQLite project import/export
- Config templates and cross-platform storage paths
- Command confirmations and history suppression
- Keyword/value arguments without --
- Python 3.11 minimum
- Updated examples, documentation, and tests
…sion and sampling of finite patterns; add corresponding examples and tests
…ex formatting validation; add corresponding tests
…integer ranges; implement corresponding examples and tests
… 1.0 release

Key improvements:
- Fixed command parsing, missing option values, invalid flags/signatures, and registry collisions.
- Ensured all command execution failures emit command_failed.
- Added concise CLI handling for unexpected command exceptions.
- Hardened startup/shutdown cleanup for storage and project backends.
- Fixed ignored layout injection and dialog configuration parameters.
- Added validation for project names, config imports, and negative query limits.
- Corrected stale tutorial commands and README named-argument examples.
- Added installation guidance and missing example imports.
- Corrected repository metadata from ctserial to ctui.
- Aligned package licensing with the checked-in GPLv3 license and source headers.
- Removed the obsolete six dependency.
- Added public API documentation throughout the project services.
- Formatted source, tests, and examples with Black and isort.
Verification completed:
- 91 tests pass on Python 3.11, 3.12, 3.13, and 3.14.
- Tutorial commands and the tutorial command file execute successfully.
- Source, tests, and examples compile successfully.
- Black, isort, and whitespace checks pass.
- Source and wheel distributions build successfully.
- The wheel imports and runs in an isolated Python 3.11 environment.
…update connection methods and add tests for non-blocking behavior
…ecks; add smoke tests for built distributions
@meeas
meeas merged commit dc6e1ef into main Sep 14, 2026
36 checks passed
@meeas
meeas deleted the major_overhaul branch September 14, 2026 00:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant