Skip to content

🚀 PivotPHP Core v1.2.0 - Simplicity Edition

Latest
Compare
Choose a tag to compare
@CAFernandes CAFernandes released this 21 Jul 20:51
· 1 commit to main since this release

"Simplicidade sobre Otimização Prematura"

Data de Lançamento: 21 de Julho de 2025
Versão: 1.2.0 (Simplicity Edition)
Compatibilidade: PHP 8.1+ | 100% Backward Compatible
Status: Estável para uso em produção


🎯 Visão Geral da Release

A versão 1.2.0 "Simplicity Edition" representa uma evolução filosófica do PivotPHP Core, abraçando o princípio "Simplicidade sobre Otimização Prematura". Esta release mantém toda a performance conquistada nas versões anteriores (44,092 ops/sec) enquanto entrega uma arquitetura mais limpa, código mais legível e uma experiência de desenvolvimento significativamente melhorada.

🏗️ Filosofia da Simplicity Edition

"A complexidade desnecessária é o inimigo da produtividade. Simplificar sem sacrificar poder é a verdadeira arte da engenharia de software."

  • ✅ Código Limpo: Classes simples promovidas a padrão do framework
  • ✅ Manutenibilidade: Zero avisos de IDE, código mais legível
  • ✅ Compatibilidade Total: 15+ aliases mantêm 100% de compatibilidade
  • ✅ Documentação Automática: OpenAPI/Swagger integrado nativamente
  • ✅ Performance Preservada: Todos os ganhos de performance da v1.1.4 mantidos

🌟 Principais Funcionalidades

📖 Documentação Automática OpenAPI/Swagger

A funcionalidade mais aguardada pelos desenvolvedores PHP:

use PivotPHP\Core\Middleware\Http\ApiDocumentationMiddleware;

// Ativar documentação automática em 3 linhas
$app->use(new ApiDocumentationMiddleware([
    'docs_path' => '/docs',        // JSON OpenAPI 3.0.0
    'swagger_path' => '/swagger',  // Interface Swagger UI  
    'base_url' => 'http://localhost:8080'
]));

// Suas rotas automaticamente documentadas
$app->get('/users', function($req, $res) {
    /**
     * @summary Lista todos os usuários
     * @description Retorna lista completa de usuários no sistema
     * @tags Users
     * @response 200 array Lista de usuários
     */
    return $res->json(['users' => User::all()]);
});

// Acesse: http://localhost:8080/swagger (Interface interativa)
// Acesse: http://localhost:8080/docs (Especificação JSON)

Benefícios:

  • Zero Configuração: Funciona imediatamente após ativação
  • PHPDoc Integration: Extrai metadata de comentários PHPDoc
  • OpenAPI 3.0.0: Especificação moderna e completa
  • Swagger UI: Interface visual interativa para testing
  • Performance Otimizada: Documentação gerada uma vez, cached automaticamente

🏗️ Arquitetura Simplificada

Classes complexas movidas para src/Legacy/, classes simples promovidas ao core:

Antes (v1.1.4):

use PivotPHP\Core\Performance\SimplePerformanceMode;  // Classe "secondary"
use PivotPHP\Core\Performance\HighPerformanceMode;    // Classe "primary" complexa

Agora (v1.2.0):

use PivotPHP\Core\Performance\PerformanceMode;       // Classe simples é o padrão
use PivotPHP\Core\Legacy\HighPerformanceMode;        // Classe complexa em Legacy

Classes Simplificadas:

  • PerformanceMode (antes SimplePerformanceMode)
  • LoadShedder (antes SimpleLoadShedder)
  • MemoryManager (antes SimpleMemoryManager)
  • PoolManager (antes SimplePoolManager)

🔄 Compatibilidade Total

15+ aliases automáticos garantem que código existente continua funcionando:

// TODOS estes imports continuam funcionando automaticamente:
use PivotPHP\Core\Support\Arr;                       // ✅ Funciona
use PivotPHP\Core\Performance\SimplePerformanceMode; // ✅ Funciona
use PivotPHP\Core\Http\Psr15\Middleware\CsrfMiddleware; // ✅ Funciona

// Equivalem automaticamente aos novos namespaces:
use PivotPHP\Core\Utils\Arr;                         // Novo local
use PivotPHP\Core\Performance\PerformanceMode;       // Classe simplificada
use PivotPHP\Core\Middleware\Security\CsrfMiddleware; // Organização lógica

📊 Métricas de Qualidade

Excelência Técnica Mantida

  • PHPStan Level 9: 100% sem erros (zero tolerance policy)
  • PSR-12 Compliance: 100% conformidade de código
  • Test Coverage: 1259 testes, 4709 assertions (100% success rate)
  • Zero IDE Warnings: Todos os avisos de IDE resolvidos
  • Performance: 44,092 ops/sec mantido da v1.1.4

📈 Melhorias de Qualidade v1.2.0

  • 🧹 Código Mais Limpo: Formatação padronizada, linhas longas organizadas
  • 📝 Mensagens Melhores: Assertions de teste com descrições mais claras
  • 🎯 Testes Mais Legíveis: Parâmetros não utilizados simplificados ($_)
  • 🔧 Manutenibilidade: Estrutura de código mais organizada e intuitiva
  • ⚡ Developer Experience: Zero fricção para novos desenvolvedores

🔧 Mudanças Técnicas Detalhadas

Added (Novo)

  • ApiDocumentationMiddleware: Middleware para documentação automática OpenAPI/Swagger
  • Swagger UI Integration: Interface visual interativa em /swagger
  • OpenAPI 3.0.0 Support: Geração completa de especificação
  • PHPDoc Route Parsing: Extração automática de metadata de rotas
  • Example Application: api_documentation_example.php demonstrando recursos
  • Legacy Namespace: Namespace src/Legacy/ para implementações complexas
  • Simplified Core Classes: Implementações limpas como padrão

Changed (Modificado)

  • Architecture Simplification: Classes simples promovidas ao core
  • Core Classes Renamed: SimplePerformanceModePerformanceMode, etc.
  • Legacy Namespace: Classes complexas movidas para src/Legacy/
  • Documentation Focus: Ênfase na geração automática de documentação
  • Middleware Organization: ApiDocumentationMiddleware em src/Middleware/Http/
  • Code Formatting: Formatação padronizada para melhor manutenibilidade
  • Test Messages: Maior clareza nas assertions e mensagens de erro

Deprecated (Descontinuado)

  • Complex Classes: Classes como HighPerformanceMode, ExtensionManager movidas para src/Legacy/
  • Manual Documentation: Supersedido pela abordagem via middleware
  • Over-engineered Components: Implementações complexas depreciadas

Fixed (Corrigido)

  • OpenAPI Documentation: Funcionalidade de documentação automática restaurada
  • Middleware Organization: Estrutura de namespace adequada para middleware HTTP
  • JsonBufferPool Compatibility: Compatibilidade com classes renomeadas
  • Alias System: Conflitos de autoloader resolvidos
  • IDE Diagnostics: Todos os avisos de IDE resolvidos
  • Test Reliability: Estabilidade melhorada em diferentes ambientes

Performance

🚀 Performance Mantida da v1.1.4

A Simplicity Edition mantém integralmente todos os ganhos de performance:

Framework Performance:
├── Request Pool Reuse: 100% (mantido)
├── Response Pool Reuse: 99.9% (mantido)
├── Framework Throughput: 44,092 ops/sec (mantido)
├── Memory Footprint: 1.61MB (mantido)
└── Object Pool Efficiency: +116% improvement (preservado)

📈 Ganhos Adicionais

  • Zero Performance Impact: Simplificação arquitetural não afetou velocidade
  • Cleaner Code Execution: Menos complexidade = menos overhead
  • Improved Maintainability: Código mais simples = menos bugs futuros

🛠️ Guia de Migração

Migração Zero-Downtime

Não é necessária nenhuma mudança no código existente. Todos os imports continuam funcionando:

// ✅ Código da v1.1.4 funciona inalterado na v1.2.0
use PivotPHP\Core\Support\Arr;
use PivotPHP\Core\Performance\SimplePerformanceMode;
use PivotPHP\Core\Http\Psr15\Middleware\CsrfMiddleware;

$app = new Application();
$app->use(new CsrfMiddleware());
// Tudo funciona exatamente igual

🔄 Migração Opcional (Recomendada)

Para aproveitar a nova arquitetura simplificada:

// Migração opcional - antes:
use PivotPHP\Core\Support\Arr;
use PivotPHP\Core\Performance\SimplePerformanceMode;

// Migração opcional - depois:
use PivotPHP\Core\Utils\Arr;                    // Local organizado
use PivotPHP\Core\Performance\PerformanceMode; // Classe simplificada

// Benefícios: código mais limpo, melhor organização, menos complexidade

📖 Adotar Documentação Automática

// Adicionar ao seu app existente:
use PivotPHP\Core\Middleware\Http\ApiDocumentationMiddleware;

$app->use(new ApiDocumentationMiddleware([
    'docs_path' => '/docs',
    'swagger_path' => '/swagger'
]));

// Resultado: Documentação automática da sua API existente!

🎯 Impacto para Desenvolvedores

🚀 Para Novos Projetos

  • Setup Mais Rápido: Classes simples por padrão, menos configuração
  • Documentação Automática: API documentada automaticamente desde o primeiro endpoint
  • Código Mais Limpo: Arquitetura simplificada, menos boilerplate
  • Zero Learning Curve: Se você conhece Express.js, já conhece PivotPHP

🔧 Para Projetos Existentes

  • Zero Breaking Changes: Upgrade transparente, código existente inalterado
  • Melhorias Gratuitas: Ganhos de qualidade sem mudanças no código
  • Documentação Instantânea: Adicionar um middleware = API totalmente documentada
  • Future-Proof: Base sólida para evoluções futuras

👥 Para Times de Desenvolvimento

  • Onboarding Mais Rápido: Código mais simples = ramp-up mais rápido
  • Manutenção Reduzida: Menos complexidade = menos bugs
  • Produtividade Maior: Documentação automática libera tempo para desenvolvimento
  • Qualidade Consistente: Padrões simplificados facilitam code reviews

📦 Instalação e Upgrade

🆕 Nova Instalação

composer require pivotphp/core:^1.2.0

⬆️ Upgrade de Versão Anterior

composer update pivotphp/core
# Pronto! Zero mudanças necessárias no código

🧪 Verificar Instalação

# Executar testes para confirmar funcionamento
composer test:ci

# Verificar qualidade de código
composer quality:check

# Testar documentação automática
composer examples:basic
# Acesse: http://localhost:8000/swagger

🎉 Conclusão

A versão 1.2.0 "Simplicity Edition" marca um momento de maturidade do PivotPHP Core. Ao abraçar o princípio "Simplicidade sobre Otimização Prematura", entregamos:

O Melhor dos Dois Mundos

  • Performance Enterprise: 44,092 ops/sec, Object Pooling, JSON Optimization
  • Simplicidade Startup: Código limpo, setup rápido, zero configuração

🎯 Valor Único no Mercado

  • Único framework PHP: Com documentação OpenAPI/Swagger automática nativa
  • Express.js do PHP: API familiar, produtividade máxima
  • Zero Configuration: Funciona out-of-the-box para 80% dos casos de uso

🚀 Pronto para o Futuro

  • Base Sólida: Arquitetura limpa permite evoluções rápidas
  • Ecosystem Ready: Fundação preparada para extensões avançadas
  • Community Friendly: Código simples facilita contribuições

📞 Suporte e Comunidade


PivotPHP v1.2.0 - Onde simplicidade encontra performance. Onde produtividade encontra qualidade. Onde desenvolvedores encontram felicidade.

🚀 Happy Coding!

Full Changelog: v1.1.4...v1.2.0