TaipanStack v0.4.2 Release Notes¶
TaipanStack v0.4.2 is a critical security and resilience patch. This release hardens the core security boundary of the project by isolating subprocess execution environments, remediating sensitive data exposure in domain models, and implementing strict resource limits to prevent Denial of Service (DoS) vectors.
See documentation at: TaipanStack Dev Portal.
What's New & Fixed in v0.4.2¶
🛡️ Core Security & Sentinel Guards¶
- [Critical] Subprocess Environment Isolation (PR #403): Implemented a mandatory whitelist approach for environment variables during subprocess execution. This prevents accidental leakage of sensitive credentials (tokens, keys) from the host environment to child processes.
- [Critical] Command Injection Hardening (PR #385): Injected new security guards against OS command concatenation and shell escape sequences in the subprocess utility suite.
- [Critical] Sensitive Data Redaction (PR #402): Enhanced
UserInDBmodels to strictly redact password hashes from public serialization schemas, preventing accidental "Sensitive Data Exposure" in API responses. - [High] PBKDF2 DoS Mitigation (PR #411): Enforced
MAX_LEGACY_ITERATIONSlimit on PBKDF2 hash verification to prevent CPU exhaustion attacks via maliciously high iteration counts. - [High] Cache Collision Resilience (PR #388): Hardened the
@cacheddecorator against collision vulnerabilities that could lead to unauthorized data retrieval. - [Medium] Mandatory Network Timeouts (PR #381): Enforced default timeout values across all
db_bridge,http_bridge, andweb_bridgecomponents to ensure system availability during upstream latency spikes.
⚡ Performance & Reliability¶
- [Perf] Lazy find_files Evaluation (PR #394): Refactored the
find_filesutility to use lazy evaluation, drastically reducing the memory footprint when crawling massive directory structures. - [Fix] Log Redaction Robustness (PR #378): Resolved a potential crash in
_redact_dictwhen processing dictionaries with non-string keys (e.g., integers or booleans). - [Resilience] CircuitBreaker Callback Guards (PR #380): Added exception isolation to
CircuitBreakerstate change callbacks, ensuring that a failing callback does not disrupt the core execution flow.
🧪 QA & Architecture¶
- Resource Leak Detection (PR #393): Enabled
ResourceWarningin the globalpytestconfiguration. This proactively detects unclosed file handles, sockets, and memory leaks during CI/CD. - FileSystem Exception Refactor (PR #401): Standardized all filesystem error classes to use idiomatic dataclass properties, improving code consistency and maintainability.
- Simplified Sanitizers (PR #384): Reduced cyclomatic complexity in the security sanitizer suite to improve auditability and reduce the potential for logic bugs.
Security Advice¶
Following the v0.4.2 update, we recommend auditing any custom subprocess implementations to ensure you are utilizing the new allowed_env_vars parameter if your child processes require specific environment variables to function correctly.