Release Notes¶
appcore 1.5 (2025-09-26)¶
Enhancements¶
CLI: Add comprehensive CLI application framework with Command and Application base classes, supporting JSON, Plain, Rich, and TOML output formats, file and stream routing, and built-in introspection commands for configuration, environment, and directories.
CLI: Add graceful handling for Git Bash/Mintty terminals with Unicode limitations, displaying user-friendly guidance instead of crashing on help requests.
Compatibility: Improve PyPy support with enhanced exception handling patterns.
Dependencies: Add compatible version constraints to all production dependencies for more predictable and reproducible installations.
Documentation: Add comprehensive CLI applications guide, complete API documentation for all modules, architecture overview with ADRs, and enhanced README with practical usage examples.
Appcore 1.4 (2025-07-20)¶
Enhancements¶
New helper functions with proper type guards on generics used with
gather_asyncwhenreturn_exceptions = True: is_error and is_value. Also,Resultis now a protocol.
Repairs¶
Proper function signature overloads for
gather_asyncto use with type narrowing whenreturn_exceptionsisTrue.
Appcore 1.3 (2025-07-19)¶
Enhancements¶
Support logfile paths, in addition to log streams, for logger preparation. A
TargetDescriptorincludes a location, an optional open mode (append or truncate;truncateby default), and an optional codec (utf-8, by default).
Appcore 1.2 (2025-07-15)¶
Enhancements¶
Application: Require name if constructing application information object directly. During preparation, construct absent application information object using the distribution name as the application name.
Appcore 1.1 (2025-07-13)¶
Enhancements¶
Documentation: Cover all modules in the public API. (Forgot to do this during initial release.)
Repairs¶
Distribution: Improve package detection to properly handle namespace packages and installed packages using __name__ attribute and sys.modules boundary detection instead of ineffective __module__ checking.
Appcore 1.0.2 (2025-07-10)¶
Repairs¶
Distribution: Do not skip packages in Python site packages directories when detecting the caller.
Appcore 1.0.1 (2025-07-10)¶
Repairs¶
Fix configuration system to gracefully handle missing templates by returning empty dictionary instead of crashing.
Fix distribution detection to auto-detect calling package instead of incorrectly using appcore package location for configuration files.
Appcore 1.0 (2025-07-09)¶
No significant changes.