-
-
Notifications
You must be signed in to change notification settings - Fork 851
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
Investigate skipped tests in PackedPixelTests #594
Comments
Yeah those tests need rewriting. The initial tests were copied from monogame. I keep planning on cleaning them up but it’s a time consuming job. |
…s to cause problems on linux in release mode: SixLabors#594
Hi Anton and James, i have tried to figure out this issue and it seems similar to #576, because it fails also only in Release build not on debug. One difference between Debug and Release is AggressiveInlining, so i thought i might give it a try and disable it and indeed disabling it in NormalizedShort4, Short4, NormalizedByte4 on the method ToByteScaledVector4 seems to fix this issue. I can not completely explain yet why this AggressiveInlining at that specific method is causing it. I found some similar issue: dotnet/roslyn#21323 I could provide an PR, if you think disabling AggressiveInlining on this specific method is a viable workaround for this. |
i have started working on refactoring the PackedPixelTests. Hopefully this will help to find the real cause of this strange issue. |
…le to be able to reproduce SixLabors#594. Note: the refactored better isolated tests do not produce the error
…le to be able to reproduce SixLabors#594. Note: the refactored better isolated tests do not produce the error
i have good news and bad news. The good news is, i think i am done with the refactoring: #603 the bad news: Splitting up the tests in smaller chunks, makes the issue go away. I could not find the real issue of this and i am of out of ideas here. I hope the refactoring is still helpful |
@brianpopow good news, thanks, the code looks much better now! This issue is totally crazy. |
CLosing these as I don't think we have any more skipped tests and all the pixel formats have been rewritten anyway. |
We still have the old test code.
We probably need to check what happens on travis by re-enabling them. Or maybe we should just delete them. |
I will test this in docker and see what happens, maybe we can re-enable them. |
I have tested Issue594 with the following docker image In the
Im not 100% sure if the assert assumptions are correct or if this is some kind of floating point inacurracy. All other parts wich are not uncommented work with windows and linux. If the above mentioned assert would not fail, i would advise to delete the Issue594.cs, |
It's been nearly 4 years.... But. I believe the initial problem was caused by a combination of early compiler bug, our aggressive inlining, and us passing
This test is actually junk. The expected RGBA values are incorrect. That would have been due to misunderstanding on my part when implementing the formats. I'm working on a complete rewrite of our pixel formats to use static interface methods and can confirm that the new implementation builds and passes all tests on all of our CI platforms. |
Prerequisites
DEBUG
andRELEASE
modeDescription
Issue opened for a reason similar to #576:
Had to skip some (less valuable) tests on travis/linux to finish the work on #585:
NormalizedShort4
,Short4
,NormalizedByte4
all inPackedPixelTests
. Previously had to skipPackedPixelTests.Rgba64
for a similar reason.I have a feeling that this time it's not the CLR, these tests seem to depend on implementation specific details for me. They are also poorly isolated (not AAA), that makes them harder to troubleshoot.
Steps to Reproduce
Unskip tests & run travis build. (It might be enough to do a local execution on Linux).
See: failing build log
The text was updated successfully, but these errors were encountered: