Skip to content

v3.0.0 — PHP 8.1 + Monolog 3 modernization#132

Merged
maxbanton merged 6 commits into
masterfrom
release/v3
May 3, 2026
Merged

v3.0.0 — PHP 8.1 + Monolog 3 modernization#132
maxbanton merged 6 commits into
masterfrom
release/v3

Conversation

@maxbanton
Copy link
Copy Markdown
Owner

v3.0.0 major release. Breaking changes — see CHANGELOG and README "Migrating from 2.x to 3.x".

  • Drop PHP 7.x and 8.0; minimum is now PHP 8.1
  • Drop Monolog 2; minimum is now Monolog 3 (write() takes LogRecord, Logger::DEBUG constants → Level::Debug enum)
  • Constructor promotion + readonly for immutable state; full type coverage
  • New $createStream argument (10th, default true) — set false to skip DescribeLogStreams/CreateLogStream for pre-provisioned streams
  • Loosen aws/aws-sdk-php constraint from ^3.18 to ^3.0
  • Coding standard PSR-2 → PSR-12; phpstan level 8 added to CI
  • PHPUnit upgraded to ^10.5 || ^11.0
  • CI matrix extended with PHP 8.1 (now 8.1 / 8.2 / 8.3 / 8.4 / 8.5)

The 9 existing constructor parameters keep their order, names, and defaults — existing Symfony positional arguments: lists and Laravel with/handler_with configs continue to work after upgrading PHP and Monolog.

maxbanton added 6 commits May 3, 2026 20:39
- write() now takes Monolog\LogRecord (was array)
- Constructor promotion + readonly properties; full type coverage
- $level accepts int|string|Monolog\Level (default Level::Debug)
- New $createStream argument (10th, default true) — set false to skip
  DescribeLogStreams + CreateLogStream when the stream is provisioned
  out of band; lets users drop those IAM permissions
- PHPUnit config migrated to 10.x schema
@maxbanton maxbanton merged commit b0a60bb into master May 3, 2026
6 checks passed
@maxbanton maxbanton deleted the release/v3 branch May 3, 2026 18:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant