-
Notifications
You must be signed in to change notification settings - Fork 274
Switch Glucose download source to GitHub #6539
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
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.
Just one question.
src/solvers/CMakeLists.txt
Outdated
PATCH_COMMAND patch -p1 -i ${CBMC_SOURCE_DIR}/../scripts/glucose-syrup-patch | ||
COMMAND cmake -E copy ${CBMC_SOURCE_DIR}/../scripts/glucose_CMakeLists.txt CMakeLists.txt | ||
URL_MD5 b6f040a6c28f011f3be994663338f548 | ||
URL_MD5 89a5183dd9b9eb5296fd9fab2c968a50 |
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.
As far as I understand we are downloading the main
branch, which seems to be something like a master
branch of sorts.
How often is this being updated, and could random updates cause CI to fail by essence of this hash check failing?
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.
The repo only has total of 12 commits, and the most recent commit was July 2021. I would expect the rate of updates to be very low, if any at all. So, yes, CI could fail, but when it does, it is right to do so: it would be a change that we should manually review to make sure it doesn't conflict with any of our expectations on this third-party component.
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.
I am not entirely convinced that we should be following the main branch on someone else's fork. Depending on the development workflow they are using, we could be fetching untested or even non-compiling commits. Is there a way we can pin this to a release version?
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.
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.
Is it worth stepping back a pace or two and consider whether using a submodule or subtree is appropriate? Also other fleeting thoughts... should we contribute our local patches back to Bruno to avoid maintaining them ourselves (and maintaining our local patch management)? Should we fork Bruno's repo, apply our patches there, and download from our fork? No major preferences from my side, but just feels worth a thought and explicit decisions.
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.
I have now added a comment that indicates the exact revision and also states that our CI jobs will fail if "main" ever moves.
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.
As we're in this situation once again (see #6986): pinging @NlightNFotis @thomasspriggs @peterschrammel for an update.
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.
I am against merging this as-is, because I think that as a minimum we should be pinning the download to a fixed commit hash as suggested by @kroening rather than just taking the latest version of the main branch. @tautschnig Are you happy to make this update before we approve/merge this or would you like myself and @NlightNFotis to copy your branch and manage the change ourselves?
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.
I've now changed download URL to use the specific commit hash rather than a branch.
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.
Looks like the right solution for now. Thanks.
b196bdd
to
549e079
Compare
Codecov Report
@@ Coverage Diff @@
## develop #6539 +/- ##
===========================================
- Coverage 77.84% 77.81% -0.04%
===========================================
Files 1570 1570
Lines 180439 180679 +240
===========================================
+ Hits 140468 140598 +130
- Misses 39971 40081 +110
Continue to review full report at Codecov.
|
549e079
to
d143452
Compare
www.labri.fr appears to be (temporarily?) offline, which already happened several weeks ago, when it was offline for about one day. To avoid spurious CI failures, switch to a GitHub source that hosts to Glucose source. The use of Bruno Dutertre's fork also reduces the number of patches that need to be applied, mostly leaving just Windows-specific bits to be patched.
d143452
to
151c8fe
Compare
www.labri.fr appears to be (temporarily?) offline, which already
happened several weeks ago, when it was offline for about one day. To
avoid spurious CI failures, switch to a GitHub source that hosts to
Glucose source. The use of Bruno Dutertre's fork also reduces the number
of patches that need to be applied, mostly leaving just Windows-specific
bits to be patched.