-
Notifications
You must be signed in to change notification settings - Fork 434
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Add support for Monolog 3.x #5334
Conversation
I caved so that there's one less failing job 🤷😅 |
The reflection handlers should probably be refactored to avoid much-duplicated code, I will get to that once I'm back at my desk in a few hours |
4678789
to
c15a529
Compare
Alright, this is a rabbit hole - when I fix one problem, another one pops up, that's why I'm gradually working my way through the classes and force pushing all the time. The good news is that we'll probably have PHP 8.1 compatibility when we're through (if that's even possible) |
3111268
to
04033a9
Compare
Update: Sorry for all the force pushes - I needed to make a bunch of preparations in order to be able to run the tests without throwing errors with PHP 8.1 before adding Monolog 3 to the mix. There's currently a blocker with a This has already been addressed and a fix is on its way with protocolbuffers/protobuf#10041 Until then I think this PR is on hold, but I'm watching the protobuf repo and will continue as soon as it's through... perhaps google/gax und phpdocumentor/reflection will have released new versions as well by then 🤞 |
52288ec
to
5c79326
Compare
53902be
to
38c5eae
Compare
dd7f897
to
bf29fc7
Compare
bf29fc7
to
a81f106
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My comments are mostly housekeeping related, structurally this looks great! Thanks @jeromegamez! 👍
Some tests explicitly set the message to `null` which breaks the creation of parent exceptions with newer PHP versions. Setting a default `$message = ''` does not prevent the problem, so we declare it with `null` being allowed, and check and replace it in the `ServiceException` constructor. The change is made in the `ServiceException` instead of the tests calling it incorrectly to reduce the scope of updated files in the context of the PR that handles the problem.
`phpdocumentor/reflection` started supporting `"psr/log": "^2.0|^3.0"` with v5.3. See phpDocumentor/Reflection#247
`psr/log` v1 included a TestLogger that was removed starting with v2. `fig/log-test` support all current versions of `psr/log`.
79ee85c
to
4e3b274
Compare
4e3b274
to
1e3d64a
Compare
We missed |
We are going to wait until after the new year to release this, as our team is currently in a release freeze for the holidays! |
Super glad to see it released now! I enjoyed the process! We'll meet again at latest when Monolog 4 is released 😄 |
Hey everyone 👋,
this is a follow-up to #2302 and aims to add support for all currently available monolog/monolog versions.
AppEngineFlexHandlerV3
andAppEngineFlexFormatterV3
are the new implementations for Monolog 3.x.formatPayload
method in theFormatterTrait
should support arrays and the newLogRecord
classPrerequisites for this PR to be mergeable
Remove unusedpsr/log
dependency phpDocumentor/Reflection#247 is merged but not released (this PR uses ^5.x-dev for now)feat: Ensure support for PHP >= 7.4 gax-php#389 is not reviewed/merged/released (this PR uses my PR branch from over there for now)Correspondence due to change of serializable interface of PHP8.1 GoogleCloudPlatform/grpc-gcp-php#45 is not (yet) merged - if it's just because of the CLA, I can create a new PR thereThings to look into
Notes
opis/closure