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 & 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="<?php
use PivotPHP\Core\Core\Application;
use PivotPHP\CycleORM\CycleServiceProvider;
use PivotPHP\CycleORM\Middleware\CycleMiddleware;
$app = new Application();
// Register Cycle ORM
$app->register(new CycleServiceProvider($app));
$app->use(new CycleMiddleware($app));
// Use in routes
$app->get('/users', function($req, $res) {
$users = $req->orm->getRepository(User::class)->findAll();
$res->json($users);
});
$app->run();"><pre><span class="pl-ent"><?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>-><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>-><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>-><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>-><span class="pl-c1">orm</span>-><span class="pl-en">getRepository</span>(User::class)-><span class="pl-en">findAll</span>();
<span class="pl-s1"><span class="pl-c1">$</span>res</span>-><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>-><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