Releases: logtide-dev/logtide-php
Releases · logtide-dev/logtide-php
v0.7.2
Bug Fixes
- Fixed
ErrorListenerIntegrationclosure return type — kept: boolto satisfyset_error_handlercontract, and cast previous handler result with(bool)to safely handlenullreturns from chained handlers. Closes #6. - Fixed
beforeSendPHPDoc callable shape: second parameter corrected fromarray<string, mixed>toEventHint|nullto match actual call site. - Added typed callable shapes via PHPDoc to
Options::$beforeSend,Options::$beforeBreadcrumb, andOptions::$integrationsfor PHPStan validation. - Tightened
Scopeevent processor arrays fromcallable[]toarray<callable(Event): ?Event>.
v0.7.1
v0.7.0
Added
Monorepo Structure
- Restructured as Composer monorepo with 5 packages under
packages/* - Unified test suite with PHPUnit 10.5 (265 tests, 570 assertions)
- PHPStan level 8 static analysis across all packages
- PSR-12 code style enforcement with PHP_CodeSniffer
Core (logtide/logtide)
LogtideSdk- static entry point for SDK initializationClientBuilder- fluent client construction with sensible defaultsClient- capture logs, errors, breadcrumbs, and spansHub- global singleton for convenient access across your appScope- per-request context isolation with tags, extras, and breadcrumbsBatchTransport- automatic batching with retry logic and circuit breakerHttpTransportandOtlpHttpTransportfor log and span deliveryCurlHttpClientandGuzzleHttpClientHTTP client implementations- DSN parsing, error serialization, trace ID generation
- W3C Trace Context (
traceparent) propagation - Breadcrumb buffer with configurable max size
- Monolog handlers:
LogtideHandlerandBreadcrumbHandler - PSR-15 middleware for generic HTTP request tracing
- Global helper functions (
\LogTide\init(),\LogTide\captureException(), etc.) - Built-in integrations: Request, Environment, ExceptionListener, ErrorListener, FatalErrorListener
Laravel (logtide/logtide-laravel)
LogtideServiceProviderwith auto-discovery and publishable configLogtideMiddlewarefor automatic request tracingLogChannelfor Laravel logging integrationLogtideFacadefor static access- Breadcrumb integrations: DB queries, cache operations, queue jobs
Symfony (logtide/logtide-symfony)
LogtideBundlewith DI extension and semantic configurationRequestSubscriberfor automatic HTTP request tracingConsoleSubscriberfor CLI command tracingSymfonyIntegrationandDoctrineIntegrationfor breadcrumbs
Slim (logtide/logtide-slim)
LogtideMiddleware- PSR-15 middleware for request tracingLogtideErrorMiddleware- error capture with full request context- Automatic route pattern resolution from Slim routing
WordPress (logtide/logtide-wordpress)
LogtideWordPress- static initializer with WordPress hook registration- Lifecycle hooks:
wp_loaded,shutdown,wp_die_handler,wp_redirect,wp_mail WordPressIntegration- PHP error handler integrationDatabaseIntegration- slow query breadcrumbs via$wpdbHttpApiIntegration- outgoing HTTP request breadcrumbs- Multisite support (blog switch tracking, plugin activation/deactivation)
CI/CD
- GitHub Actions CI: PHPUnit tests, PHPStan, PHPCS on push/PR to
main/develop - GitHub Actions publish: Packagist publish on tag
v*.*.*or manual dispatch - PHP version matrix: 8.1, 8.2, 8.3, 8.4
- Branch model:
develop→main, hotfix directly tomain
Documentation
- README for every package with badges, quick start, API reference
- Root README with package table, architecture diagram, development guide
- Contributing guide, Code of Conduct, Changelog
- Branch protection documentation (
.github/BRANCH_PROTECTION.md)