Skip to content
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

Added support for psr/log v3 #577

Merged
merged 2 commits into from
Oct 27, 2022
Merged

Conversation

danielmorell
Copy link
Collaborator

Description of the change

This PR adds support for psr/log version 3. This has been a long-standing issue but could not be fixed without causing breaking changes. See #536 for a discussion.

I renamed the log() method in both Rollbar and RollbarLogger classes to report(). New log() methods were then created that were compliant with Psr\Log\LoggerInterface. Since the report() methods are not defined in the psr/log interface we can return the Response object. This is very important for testing purposes.

Almost all unit tests that used Rollbar::log() or RollbarLogger::log() were updated to use Rollbar::report() or RollbarLogger::report(). There are a few exceptions where the log() method was still tested. To validate that log() was working correctly a test helper class ArrayLogger was created that collects all verbose logs into an array in memory. Those logs can then be checked as a side effect of calling log() since it no longer returns anything.

It is worth noting that there is still one outstanding behavior defined by psr/log that has not been implemented. #461 explains this. I will resolve that issue in a separate PR.

Type of change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Maintenance
  • New release

Related issues

Checklists

Development

  • Lint rules pass locally
  • The code changed/added as part of this pull request has been covered with tests
  • All tests related to the changed code pass in development

Code review

  • This pull request has a descriptive title and information useful to a reviewer. There may be a screenshot or screencast attached
  • "Ready for review" label attached to the PR and reviewers assigned
  • Issue from task tracker has a link to this pull request
  • Changes have been reviewed by at least one other engineer

Copy link

@anler anler left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only minor comments, good work!

src/Rollbar.php Show resolved Hide resolved
src/Rollbar.php Outdated Show resolved Hide resolved
src/Rollbar.php Show resolved Hide resolved
tests/TestHelpers/ArrayLogger.php Show resolved Hide resolved
@danielmorell danielmorell merged commit e359f77 into next/4.0/main Oct 27, 2022
@danielmorell danielmorell deleted the next/4.0/fixed-psr-log branch October 27, 2022 12:58
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.

None yet

2 participants