-
-
Notifications
You must be signed in to change notification settings - Fork 487
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
Support for tachyon >= 0.99.2 #34995
Conversation
Codecov ReportBase: 88.59% // Head: 88.58% // Decreases project coverage by
Additional details and impacted files@@ Coverage Diff @@
## develop #34995 +/- ##
===========================================
- Coverage 88.59% 88.58% -0.01%
===========================================
Files 2136 2136
Lines 396142 396152 +10
===========================================
- Hits 350948 350945 -3
- Misses 45194 45207 +13
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
I think Debian installs the "no X" version of tachyon by default (https://packages.debian.org/sid/tachyon-bin-nox). Maybe that has a different output format and the regexp fails to find the version? The line containing the version string seems to be printed by demosrc/main.c, a file which includes X libraries.
|
Indeed 🤦 |
In tachyon 0.99.2 the keyword `focallength` was changed to `focaldist`. To support it, when running on version >= 0.99.2 we "patch" the model as constructed by class `sage.plot.plot3d.tachyon.Tachyon`. In the future (possibly when tachyon in sage gets upgraded), all the focallength occurences in sage.plot.plot3d.tachyon can be replaced by focaldist for consistency with new tachyon, and the logic here can be reversed (i.e. patch the model when self.version() < '0.99.2') or just drop support for old versions.
Debian patches tachyon so it won't report the version. We hardcode '0.99' since that's the version they ship.
The issue was that debian patches tachyon binary, and it won't print its version in the same place as upstream tachyon. Now when there is no version we default to In summary, this PR will have zero effect for tachyon binaries that either report a version Thanks @collares for spotting this. I didn't realize tachyon was used so much in the testsuite so I was confused by the number of failures. Let's hope now everything passes. |
This is just bad luck (see #32773)
This occasional test failure is annoying, maybe it should be marked as How do I restart the test? |
Debian patches tachyon so it won't report the version. We hardcode '0.99' since that's the version they ship.
I force-pushed without any changes so the tests run again. |
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.
NixOS has been shipping tachyon 0.99.5 for a while, and this patch is cleaner than the one we're using. I've tested it and it works great.
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
Taken from #23712.
This is necessary to support tachyon >= 0.99.2, without losing support for older versions of tachyon.
In case #23712 gets delayed, it'd be nice to include this so nothing breaks if system tachyon is updated. This is the first commit from the branch there which already had positive review (the actual update of tachyon has an issue mentioned in #23712 (comment).)
From the commit log:
In tachyon 0.99.2 the keyword
focallength
was changed tofocaldist
. To support it, when running on version >= 0.99.2 we "patch" the model as constructed by classsage.plot.plot3d.tachyon.Tachyon
.In the future (possibly when tachyon in sage gets upgraded), all the focallength occurences in sage.plot.plot3d.tachyon can be replaced by focaldist for consistency with new tachyon, and the logic here can be reversed (i.e. patch the model when self.version() < '0.99.2') or just drop support for old versions.