-
Notifications
You must be signed in to change notification settings - Fork 701
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
travis-script.sh: test bootstrapping #3349
Conversation
Works as expected, meaning fails right now (see #3344). |
I'm a bit worried about how this will affect compile times on Travis. |
@Tuncer Can you rebase this against master and do |
@23Skidoo If we replace the code which uses cabal-install to build cabal-install, with code that uses the bootstrap script, I think that the time to build should be comparable. |
Rebased, which also incorporates the fixed bootstrap.sh, so it should work now. |
@ezyang, I've thought about replacing bits in there as well, but I wasn't sure which parts are okay to remove. Is it a better idea for you to make those changes in a follow-up commit? |
Yes, assuming @23Skidoo is OK with the Travis time we can defer it. |
Extra commit that moves |
This is now blocked by #3345. |
It looks like #3356 needs to be merged to make the build bot error go away. |
So the bootstrap script also needs to check that a recent version of |
Added bytestring, and while at it, fixed a tiny whitespace issue separately. |
Still fails, |
Fixed order. |
Adjusted bytestring regex to require >=0.10.2. |
Changed bytestring version that gets fetched to 0.10.6.0, in order to relax its base vsn bound. The previous error was that bytestring >=0.10.2.0 is needed, and 0.10.6.0 is the last bytestring release before the lower bound is bumped. |
First, binary-0.8.3.0 complained that it needs bytestring >=0.10.2:
To fix that, I've tried giving it 0.10.8.0, but that failed because GHC 7.6.3's base is too old. Therefore, I've changed it to 0.10.6.0, since that's the last version before the base lower bound was bumped, and we cannot go older than 0.10.2.0 anyway. Now we have a new error:
What should we do? |
@Tuncer fwiw, |
I think what we can try doing to fix the error is check the version of bytestring installed and then install an older version of binary if bytestring is < 0.10.2 (binary-0.8.2.1 should work). |
@hvr, now fetching bytestring 0.10.8.1. |
@23Skidoo, can you file a ticket to remove the extra packages once the new hackage-security release can be integrated in bootstrap.sh? |
I'm probably missing something. The failure on 7.6 and 7.4 is due to us having installed two versions of |
Some of the deps were meant to be intermittent until the new hackage-security package is out, so assuming we have a new hackage-security, I'd prefer to first trim deps and then fix any issues left. |
Which ones? If you're referring to the dependency on |
That explains why I haven't been able to find it. |
I'll modify bootstrap.sh accordingly. |
BYTESTRING_VER="0.10.8.1"; BYTESTRING_VER_REGEXP="0\.10\.[2-9]" | ||
# >=0.10.2 | ||
|
||
case "$GHC_VER" in |
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 think we can remove all mentions of bytestring
from the bootstrap script if we add a similar conditional for binary
instead. So GHC <= 7.6 will use binary-0.8.2.1
(which depends on bytestring >= 0.9
and therefore should work with the versions of bytestring
that come with GHC 7.6 and 7.4) and GHC > 7.6 will use binary-0.8.3.0
.
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.
Added a commit, please let me know if that's what you had in mind.
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.
If you remove this conditional and all mentions of bytestring
from the script, I think that just conditionally defining BINARY_VER
and BINARY_VER_REGEXP
(like you do here for bytestring
) will work.
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.
Ah, right, now I got what you're saying.
And now it fails because |
Okay, added another commit. |
Merged: 2645970. |
@Tuncer Thanks for your patience! |
One other thing we can do is to patch |
No description provided.