-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Parse expressions where possible to avoid penalties for .Compile() #4712
Parse expressions where possible to avoid penalties for .Compile() #4712
Conversation
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.
LGTM, but need to approve API specs here since ExpressionExtensions
is public @to11mtm
API approvals are still failing for some reason.... |
When I am running this locally, I can see that for all approval specs this line is removed in
But seems like there is also some problem with reporting - this is what I get locally, and AzDo says the same: System.NullReferenceException
Object reference not set to an instance of an object.
at ApprovalTests.Reporters.MultiReporter.Report(String approved, String received)
at ApprovalTests.Approvers.FileApprover.ReportFailure(IApprovalFailureReporter reporter)
at ApprovalTests.Core.Approver.Verify(IApprovalApprover approver, IApprovalFailureReporter reporter)
at ApprovalTests.Approvals.Verify(IApprovalApprover approver, IApprovalFailureReporter reporter)
at ApprovalTests.Approvals.Verify(IApprovalWriter writer, IApprovalNamer namer, IApprovalFailureReporter reporter)
at ApprovalTests.Approvals.Verify(IApprovalWriter writer)
at ApprovalTests.Approvals.Verify(String text, Func`2 scrubber)
at Akka.API.Tests.CoreAPISpec.ApproveCore() This |
Err, sorry, seems like this was something related to my local installations. After installing .NET 5 I do get @to11mtm You just need to update
since you have added new public exception class. Just run And I will try to fix the problem why our approval spec is failing with NRE instead of reporting the real problem. |
Seems like only racy specs are failing here now... |
This PR changes
ExpressionExtensions.GetArguments()
to parse expressions manually and avoid.Compile()
wherever possible. This improves the speed of Expression based Props by 8-10%.