docs: pre-release documentation update for v2.4.0#63
Conversation
- Add API.md with complete API reference for all 10 types and 49 methods - Update README.md: document all 10 types (4 new: Hash, Adaptive, Packed), replace stale Todo section with concise Roadmap, add Expanded API section - Update BENCHMARK.md: version 2.4.0, add Hash/Adaptive types to decision guide and memoryUsage table - Remove OPTIMIZATION_PROPOSAL.md (internal planning doc, not release material) - Update package.xml: add API.md, remove OPTIMIZATION_PROPOSAL.md, fix 11 stale md5sum values
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request focuses on a pre-release documentation refresh for version 2.4.0 of the PHP Judy extension. It introduces a new, detailed API reference, updates existing user-facing documentation to reflect recent feature additions like new Judy array types, and cleans up internal-only documents from the public release. The changes aim to provide clearer and more complete information for users of the extension. Highlights
Changelog
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
Test Results
Benchmark Results
Run Status
Memory Efficiency (Linux, PHP 8.5)
API Speedups (Linux, PHP 8.5)Speedup = PHP time / Judy time. Bold = Judy faster.
Core Types (Linux, PHP 8.5)Speedup = PHP time / Judy time. Bold = Judy faster.
All types detailCore Types (Linux, PHP 8.5) — AllSpeedup = PHP time / Judy time. Bold = Judy faster.
Cross-version detail (Linux)Core Types — LinuxEach cell: Judy ms (speedup vs PHP array).
API — Linux
Cross-version detail (Windows)Core Types — WindowsEach cell: Judy ms (speedup vs PHP array).
API — Windows
Windows results (PHP 8.5)Memory Efficiency (Windows, PHP 8.5)
API Speedups (Windows, PHP 8.5)Speedup = PHP time / Judy time. Bold = Judy faster.
Core Types (Windows, PHP 8.5)Speedup = PHP time / Judy time. Bold = Judy faster.
All types detailCore Types (Windows, PHP 8.5) — AllSpeedup = PHP time / Judy time. Bold = Judy faster.
Release Comparison (2.3.0 → 2.4.0)
Summary: 5 faster,
Memory ComparisonMemory:
50 new benchmarks (not in baseline)
Full benchmark outputLinux — PHP 8.5Windows — PHP 8.5 |
There was a problem hiding this comment.
Code Review
This pull request provides a comprehensive documentation update for the v2.4.0 release. It introduces a new API.md file, updates the README.md and BENCHMARK.md to reflect the new Judy types, and prepares the package.xml for the release. The documentation changes are thorough and greatly improve clarity for developers. I have one suggestion to enhance the consistency of a table in API.md.
Address Gemini Code Assist review: use STR_INT and STR_MIXED column headers consistently with the other abbreviated string-keyed types.
Summary
Pre-release documentation refresh before tagging v2.4.0.
API.md— Complete API reference for all 10 Judy types and 49 public methods, including type compatibility matrixREADME.md— Document all 10 types (adding Hash, Adaptive, Packed), replace stale Todo section with concise Roadmap, add Expanded API section with link to API.mdBENCHMARK.md— Version bump to 2.4.0, add Hash/Adaptive types to Quick Decision Guide andmemoryUsage()tableOPTIMIZATION_PROPOSAL.md— Internal planning document, not end-user release materialpackage.xml— Add API.md to file list, remove OPTIMIZATION_PROPOSAL.md, fix 11 stale md5sum valuesValidation
pecl package→pecl install Judy-2.4.0.tgz→ extension loads → 176/176 tests passphp_judy.h,package.xml,tests/001.phptTest plan