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

Fix tracer compatibility with inheritance #4487

Merged
merged 2 commits into from
May 25, 2023
Merged

Conversation

rmosolgo
Copy link
Owner

@rmosolgo rmosolgo commented May 24, 2023

Previously, using a legacy tracer ... would silently attach a new trace_class called LegacyTrace whose only job was to call legacy tracers. However, if the parent class has new-style trace_with modules attached, LegacyTrace wouldn't call them because those modules weren't in LegacyTrace's inheritace.

This branch takes the behavior of calling legacy tracers and puts it in a module instead, so that it can be added to an intact inheritance chain when it's needed, without disrupting trace_with setups from the parent class. (The old LegacyTrace class is left in place for compatibility, but error messages point to this new module now.)

Fixes #4486

@rmosolgo rmosolgo added this to the 2.0.23 milestone May 25, 2023
@rmosolgo rmosolgo merged commit 4c297b0 into master May 25, 2023
11 of 13 checks passed
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.

Tracers not working with Schema::Timeout
1 participant