-
Notifications
You must be signed in to change notification settings - Fork 30
Develop #85
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
WalkthroughThis update refactors the internal Zstd context management in the PHP extension by introducing centralized context initialization and helper functions for compression and decompression. It adds support for decompression dictionaries, replaces fixed-size output buffers with dynamic streaming buffers, and standardizes error handling and dictionary management throughout the codebase. Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant PHP_Extension
participant Zstd_Lib
User->>PHP_Extension: Call zstd_compress/uncompress
PHP_Extension->>PHP_Extension: php_zstd_context_init()
PHP_Extension->>PHP_Extension: php_zstd_context_create_compress/decompress()
PHP_Extension->>Zstd_Lib: Create CCtx/DCtx, load dictionary if needed
PHP_Extension->>PHP_Extension: Use streaming API with smart_string buffer
PHP_Extension->>Zstd_Lib: Compress/Decompress via ZSTD_compressStream2/ZSTD_decompressStream
PHP_Extension->>User: Return result
Possibly related PRs
Poem
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (1)
🧰 Additional context used🧠 Learnings (2)📓 Common learnings
zstd.c (1)
🧬 Code Graph Analysis (1)zstd.c (1)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (19)
🔇 Additional comments (19)
✨ Finishing Touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
@coderabbitai review |
✅ Actions performedReview triggered.
|
Summary by CodeRabbit
New Features
Improvements
Bug Fixes