tag:github.com,2008:https://github.com/PivotPHP/pivotphp-cycle-orm/releases Release notes from pivotphp-cycle-orm 2025-07-09T14:51:10Z tag:github.com,2008:Repository/1014935711/v1.0.1 2025-07-09T14:51:40Z ๐Ÿš€ PivotPHP Cycle ORM v1.0.1 - Release Notes <h3>๐Ÿš€ <strong>Performance &amp; Compatibility Update</strong></h3> <p>This release focuses on performance optimizations, cross-platform compatibility, and code quality improvements following the PivotPHP Core v1.1.0 upgrade.</p> <h4>๐Ÿ”„ <strong>Updated</strong></h4> <ul> <li><strong>PivotPHP Core</strong>: Updated to v1.1.0 with performance improvements for auto stress scenarios</li> <li><strong>Environment Detection</strong>: Centralized environment detection using <code>EnvironmentHelper</code> to reduce code duplication</li> <li><strong>Caching System</strong>: Implemented static caching for environment methods with 7x performance improvement</li> <li><strong>Testing Infrastructure</strong>: Clean PHPUnit exit codes (0) for better CI/CD integration</li> </ul> <h4>๐ŸŒ <strong>Added</strong></h4> <ul> <li><strong>Cross-Platform Support</strong>: Added platform-specific scripts for test coverage <ul> <li><code>scripts/test-coverage.sh</code> for Unix/Linux/macOS</li> <li><code>scripts/test-coverage.bat</code> for Windows CMD</li> <li><code>scripts/test-coverage.ps1</code> for PowerShell</li> <li><code>scripts/test-coverage.php</code> for universal PHP-based execution</li> </ul> </li> <li><strong>Cache Management</strong>: Added <code>EnvironmentHelper::clearCache()</code> method for testing scenarios</li> <li><strong>Performance Benchmarks</strong>: Added benchmark scripts to demonstrate caching benefits</li> </ul> <h4>๐Ÿ”ง <strong>Fixed</strong></h4> <ul> <li><strong>CI/CD Compatibility</strong>: Fixed PHPUnit exit codes that were causing CI failures</li> <li><strong>Log Pollution</strong>: Suppressed test-specific error logs in testing environment</li> <li><strong>PSR-12 Compliance</strong>: Fixed all code style violations</li> <li><strong>Cross-Platform Issues</strong>: Resolved Windows compatibility issues with inline environment variables</li> </ul> <h4>๐Ÿ—๏ธ <strong>Refactored</strong></h4> <ul> <li><strong>Environment Helper</strong>: Centralized cache system using single static array</li> <li><strong>Metrics Collector</strong>: Simplified environment detection using <code>EnvironmentHelper::isTesting()</code></li> <li><strong>Test Configuration</strong>: Optimized PHPUnit configuration for better performance and compatibility</li> <li><strong>Code Organization</strong>: Removed duplicate composer files and obsolete scripts</li> </ul> <h4>๐Ÿ“Š <strong>Performance Improvements</strong></h4> <ul> <li><strong>Environment Detection</strong>: 7x faster performance on subsequent calls with static caching</li> <li><strong>Test Execution</strong>: Reduced test execution time by eliminating unnecessary coverage overhead</li> <li><strong>Memory Usage</strong>: Optimized memory usage by reducing redundant environment checks</li> </ul> <h4>๐Ÿงช <strong>Testing Enhancements</strong></h4> <ul> <li><strong>Clean Exit Codes</strong>: PHPUnit now returns proper exit code 0 for successful test runs</li> <li><strong>CI-Friendly</strong>: Removed confusing error logs from test output</li> <li><strong>Coverage Separation</strong>: Coverage generation is now optional and platform-independent</li> </ul> <h4>๐Ÿ“š <strong>Documentation</strong></h4> <ul> <li><strong>Cross-Platform Guide</strong>: Updated documentation with platform-specific instructions</li> <li><strong>Performance Notes</strong>: Added performance improvement documentation</li> <li><strong>CLI Usage</strong>: Enhanced CLAUDE.md with better development workflow guidance</li> </ul> <h4>๐Ÿ” <strong>Technical Details</strong></h4> <ul> <li><strong>Compatibility</strong>: Maintains full backward compatibility with existing APIs</li> <li><strong>Dependencies</strong>: Updated to PivotPHP Core v1.1.0 from Packagist</li> <li><strong>Testing</strong>: 67 tests passing with 242 assertions</li> <li><strong>Static Analysis</strong>: PHPStan Level 8 compliance maintained</li> <li><strong>Code Style</strong>: 100% PSR-12 compliant</li> </ul> <h4>๐ŸŽฏ <strong>Benefits</strong></h4> <ul> <li><strong>Faster Development</strong>: Improved environment detection performance</li> <li><strong>Better CI/CD</strong>: Clean test outputs and exit codes</li> <li><strong>Cross-Platform</strong>: Works seamlessly on Windows, macOS, and Linux</li> <li><strong>Production Ready</strong>: Optimized for high-performance production environments</li> </ul> <h2>What's Changed</h2> <ul> <li>Compatibility new release core by <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/CAFernandes/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/CAFernandes">@CAFernandes</a> in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3216145130" data-permission-text="Title is private" data-url="https://github.com/PivotPHP/pivotphp-cycle-orm/issues/2" data-hovercard-type="pull_request" data-hovercard-url="/PivotPHP/pivotphp-cycle-orm/pull/2/hovercard" href="https://github.com/PivotPHP/pivotphp-cycle-orm/pull/2">#2</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/CAFernandes/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/CAFernandes">@CAFernandes</a> made their first contribution in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3216145130" data-permission-text="Title is private" data-url="https://github.com/PivotPHP/pivotphp-cycle-orm/issues/2" data-hovercard-type="pull_request" data-hovercard-url="/PivotPHP/pivotphp-cycle-orm/pull/2/hovercard" href="https://github.com/PivotPHP/pivotphp-cycle-orm/pull/2">#2</a></li> </ul> <p><strong>Full Changelog</strong>: <a class="commit-link" href="https://github.com/PivotPHP/pivotphp-cycle-orm/compare/v1.0.0...v1.0.1"><tt>v1.0.0...v1.0.1</tt></a></p> CAFernandes tag:github.com,2008:Repository/1014935711/v1.0.0 2025-07-07T20:31:56Z PivotPHP Cycle ORM v1.0.0 Release Notes <h2>๐Ÿ—„๏ธ PivotPHP Cycle ORM v1.0.0</h2> <h3>Overview</h3> <p>First stable release of PivotPHP Cycle ORM integration - a robust, type-safe ORM extension for PivotPHP Core.</p> <h3>Key Features</h3> <ul> <li><strong>Seamless Integration</strong>: Works perfectly with PivotPHP Core</li> <li><strong>Type Safety</strong>: Full PHPStan Level 9 compliance</li> <li><strong>Repository Pattern</strong>: Built-in repository pattern support</li> <li><strong>Migration Support</strong>: Database migrations out of the box</li> <li><strong>Performance Monitoring</strong>: Query logging and profiling</li> <li><strong>Middleware Integration</strong>: Transaction and health check middleware</li> </ul> <h3>Installation</h3> <div class="highlight highlight-source-shell notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="composer require pivotphp/cycle-orm"><pre>composer require pivotphp/cycle-orm</pre></div> <h3>Quick Start</h3> <div class="highlight highlight-text-html-php notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="&lt;?php use PivotPHP\Core\Core\Application; use PivotPHP\CycleORM\CycleServiceProvider; use PivotPHP\CycleORM\Middleware\CycleMiddleware; $app = new Application(); // Register Cycle ORM $app-&gt;register(new CycleServiceProvider($app)); $app-&gt;use(new CycleMiddleware($app)); // Use in routes $app-&gt;get('/users', function($req, $res) { $users = $req-&gt;orm-&gt;getRepository(User::class)-&gt;findAll(); $res-&gt;json($users); }); $app-&gt;run();"><pre><span class="pl-ent">&lt;?php</span> <span class="pl-k">use</span> <span class="pl-v">PivotPHP</span>\<span class="pl-v">Core</span>\<span class="pl-v">Core</span>\<span class="pl-smi">Application</span>; <span class="pl-k">use</span> <span class="pl-v">PivotPHP</span>\<span class="pl-v">CycleORM</span>\<span class="pl-smi">CycleServiceProvider</span>; <span class="pl-k">use</span> <span class="pl-v">PivotPHP</span>\<span class="pl-v">CycleORM</span>\<span class="pl-v">Middleware</span>\<span class="pl-smi">CycleMiddleware</span>; <span class="pl-s1"><span class="pl-c1">$</span>app</span> = <span class="pl-k">new</span> <span class="pl-v">Application</span>(); <span class="pl-c">// Register Cycle ORM</span> <span class="pl-s1"><span class="pl-c1">$</span>app</span>-&gt;<span class="pl-en">register</span>(<span class="pl-k">new</span> <span class="pl-v">CycleServiceProvider</span>(<span class="pl-s1"><span class="pl-c1">$</span>app</span>)); <span class="pl-s1"><span class="pl-c1">$</span>app</span>-&gt;<span class="pl-en">use</span>(<span class="pl-k">new</span> <span class="pl-v">CycleMiddleware</span>(<span class="pl-s1"><span class="pl-c1">$</span>app</span>)); <span class="pl-c">// Use in routes</span> <span class="pl-s1"><span class="pl-c1">$</span>app</span>-&gt;<span class="pl-en">get</span>(<span class="pl-s">'<span class="pl-s">/users</span>'</span>, <span class="pl-k">function</span>(<span class="pl-s1"><span class="pl-c1">$</span>req</span>, <span class="pl-s1"><span class="pl-c1">$</span>res</span>) { <span class="pl-s1"><span class="pl-c1">$</span>users</span> = <span class="pl-s1"><span class="pl-c1">$</span>req</span>-&gt;<span class="pl-c1">orm</span>-&gt;<span class="pl-en">getRepository</span>(User::class)-&gt;<span class="pl-en">findAll</span>(); <span class="pl-s1"><span class="pl-c1">$</span>res</span>-&gt;<span class="pl-en">json</span>(<span class="pl-s1"><span class="pl-c1">$</span>users</span>); }); <span class="pl-s1"><span class="pl-c1">$</span>app</span>-&gt;<span class="pl-en">run</span>();</pre></div> <hr> <h2>๐Ÿ“ฆ Package Information</h2> <h3>PivotPHP Core</h3> <ul> <li><strong>Package</strong>: pivotphp/core</li> <li><strong>Version</strong>: 1.0.0</li> <li><strong>License</strong>: MIT</li> <li><strong>PHP</strong>: ^8.1</li> <li><strong>Repository</strong>: <a href="https://github.com/CAFernandes/pivotphp-core">https://github.com/CAFernandes/pivotphp-core</a></li> </ul> <h3>PivotPHP Cycle ORM</h3> <ul> <li><strong>Package</strong>: pivotphp/cycle-orm</li> <li><strong>Version</strong>: 1.0.0</li> <li><strong>License</strong>: MIT</li> <li><strong>PHP</strong>: ^8.1</li> <li><strong>Repository</strong>: <a href="https://github.com/CAFernandes/pivotphp-cycle-orm">https://github.com/CAFernandes/pivotphp-cycle-orm</a></li> </ul> CAFernandes