This commit updates the CI configuration, pyproject.toml, and codebase to drop support for Python versions below 3.12 and add support for Python 3.13. Type hints are updated to use modern syntax, and redundant checks for extraction filter support are removed as Python 3.12+ always supports filters.
Dropped custom extraction filter implementations and related exception classes for older Python versions in `core.py`. Updated README to reflect the new minimum Python version requirement (3.12) and removed outdated support section.
Reordered arguments in the test_filter_with_other_options method for better readability and consistency. This change improves clarity in the test setup.
Introduced security filters for extracting `.tzst` archives, including backward compatibility for Python < 3.12. Updated README with documentation on filter usage and added implementation for 'data', 'tar', and 'fully_trusted' filters in `core.py`. Bumped version to 0.4.0 in `__init__.py`.
Updated the CLI to support a `--streaming` option for memory-efficient operations and a `--no-atomic` option to disable atomic file operations. Adjusted related functions to handle these new arguments and updated the documentation accordingly. Also bumped the library version to 0.3.1.
Enhanced the README to include detailed information about streaming mode for large archives, atomic file operations, and improved error handling. Added examples, CLI options, and Python API usage for memory-efficient processing and recovery mechanisms.
Introduced streaming mode for memory-efficient handling of large archives and added atomic file operations for reliable archive creation. Updated CLI commands, core functionality, and tests to support these features. Improved error handling and documentation for append mode and compression level validation.
Added a FUNDING.yml file to specify sponsorship details. Updated the CI workflow to include a new job for updating badges and improved PyPI version handling. Modified README badges and CLI to include a banner print function and adjusted version display.