Patch 1245 support GHC 7.10/base 4.8

Title support GHC 7.10/base 4.8
Superseder Nosy List ganesh, gh
Related Issues
Status accepted Assigned To
Milestone 2.10.0

Created on 2014-12-31.19:23:04 by ganesh, last changed 2015-04-18.15:00:50 by gh.

File name Status Uploaded Type Edit Remove
patch-preview.txt ganesh, 2014-12-31.19:23:03 text/x-darcs-patch
patch-preview.txt gh, 2015-03-31.04:30:03 text/x-darcs-patch
port-test-harness-to-cmdargs-and-shelly.dpatch gh, 2015-03-31.04:30:04 application/x-darcs-patch
support-ghc-7_10_base-4_8.dpatch ganesh, 2014-12-31.19:23:03 application/x-darcs-patch
unnamed ganesh, 2014-12-31.19:23:03
unnamed gh, 2015-03-31.04:30:04
See mailing list archives for discussion on individual patches.
msg17924 (view) Author: ganesh Date: 2014-12-31.19:23:03
Builds and passes tests with GHC 7.10.1-rc1.

A few dependent packages need minor fixes for GHC 7.10 so it
won't cabal install out of the box - I'll try to get those fixes

I've also checked it builds with GHC 7.4,7.6,7.8.

1 patch for repository darcs-unstable@darcs.net:screened:

Wed Dec 31 17:08:41 GMT 2014  Ganesh Sittampalam <ganesh@earth.li>
  * support GHC 7.10/base 4.8
msg17988 (view) Author: bf Date: 2015-02-02.22:58:46
What is the status of this? Have the upstream fixes been released to
hackage by now?
msg17992 (view) Author: ganesh Date: 2015-02-03.06:13:07
At least one has been released. Unfortunately I forgot about sending 
all the fixes upstream.

I'll check the situation again with GHC 7.10RC2, but given that the 
Prelude changes for 7.10 are now being reconsidered (see 
January/024777.html), it may be best to hold off a bit for now 
anyway. Probably simplest to leave this under review for now given 
it's already in screened.
msg18225 (view) Author: ganesh Date: 2015-02-26.07:13:23
Rather than try to update a package that hasn't been uploaded since 2011 and has 
a dead github repository URL, I've submitted patch1299 to drop the dependency on 

That leaves shellish and cmdlib, for which I sent patches to the maintainer 

Guillaume, I think this should go into 2.10 as we always find ourselves wanting 
to support recent GHCs on the stable branch so we might as well do this now.
msg18228 (view) Author: gh Date: 2015-02-26.18:22:35
Agreed. The patch is in branch 2.10 now.
msg18313 (view) Author: ganesh Date: 2015-03-17.07:19:15
Just a general update on the GHC 7.10 support:

GHC 7.10rc3 also requires a patch to ansi-wl-pprint which others are 
already chasing: https://github.com/batterseapower/ansi-wl-

Still not heard anything about shellish/cmdlib.
msg18314 (view) Author: gh Date: 2015-03-17.15:53:52
So it's probably a good idea to wait for the final release of GHC 7.10
before releasing darcs 2.10.
msg18318 (view) Author: gh Date: 2015-03-18.18:57:16
Would it make sense to get rid of the shellish and cmdlib dependencies?
They are used in the test harness only.

shellish could be replaced by either shell-conduit or turtle; cmdlib by
cmdargs, or the standard flag parsing modules.
msg18319 (view) Author: ganesh Date: 2015-03-18.19:44:11
Might make sense. There's also shelly which was forked from shellish.
msg18337 (view) Author: gh Date: 2015-03-31.04:30:04
Here's a patch that switches the test harness from cmdlib/shellish
to cmdargs/shelly.
The code is full of Shellish.FilePath <-> Text <-> String
conversions and could be enhanced in some places. But everything
seems to work (so far only tested with ghc 7.6 under Linux).

hashed-storage's test script only depends on test-framework so
it does not require any change.

1 patch for repository http://darcs.net:

patch a916f4d2e44706ac6252d6d1f01b23ba588d8057
Author: Guillaume Hoffmann <guillaumh@gmail.com>
Date:   Tue Mar 31 01:25:34 ART 2015
  * port test harness to cmdargs and shelly
msg18338 (view) Author: ganesh Date: 2015-03-31.05:38:46
With the cmdargs/shelly patch, the shell tests don't seem to print out 
the output of failing tests any more. I haven't investigated in any 
more detail yet.
msg18347 (view) Author: gh Date: 2015-04-05.21:21:47
I've tested it also with GHC 7.10 and failing tests are properly reported.
msg18359 (view) Author: ganesh Date: 2015-04-08.06:14:11
I've looked into the problem some more now.

In general failing tests are properly reported, but two tests in particular start failing silently 
(whereas they were passing before the switch). The two tests are emailformat.sh and latin9-input.sh 
and it turns out that the test harness itself is throwing something like "fd:25: hGetLine: invalid 
argument (invalid byte sequence)", which explains the lack of output.

These two tests have funnily encoded characters in them so I assume that some handle somewhere isn't 
in the right mode. I'll do some more digging.
msg18362 (view) Author: ganesh Date: 2015-04-11.07:57:31
OK, I understand the details better now: 

Hopefully it shouldn't be too hard to fix or workaround.
msg18363 (view) Author: gh Date: 2015-04-13.18:35:54
I see. Thanks for looking into this bug! Doing this we also contribute
to enhancing Shelly.
msg18373 (view) Author: gh Date: 2015-04-18.14:58:07
I'm going to self-accept the shelly/cmdargs patch into branch 2.10 to
prepare the release, and open a separate bug for shelly.
Date User Action Args
2014-12-31 19:23:04ganeshcreate
2015-01-06 19:13:48ganeshsetstatus: needs-screening -> needs-review
2015-02-02 22:58:46bfsetmessages: + msg17988
2015-02-03 06:13:08ganeshsetmessages: + msg17992
2015-02-26 07:13:23ganeshsetnosy: + gh
messages: + msg18225
milestone: 2.10.0
2015-02-26 18:22:36ghsetstatus: needs-review -> accepted
messages: + msg18228
2015-03-17 07:19:15ganeshsetmessages: + msg18313
2015-03-17 15:53:52ghsetmessages: + msg18314
2015-03-18 18:57:17ghsetmessages: + msg18318
2015-03-18 19:44:11ganeshsetmessages: + msg18319
2015-03-31 04:30:04ghsetfiles: + patch-preview.txt, port-test-harness-to-cmdargs-and-shelly.dpatch, unnamed
messages: + msg18337
2015-03-31 05:38:47ganeshsetmessages: + msg18338
2015-04-05 21:21:12ghsetstatus: accepted -> accepted-pending-tests
2015-04-05 21:21:47ghsetmessages: + msg18347
2015-04-08 06:14:12ganeshsetmessages: + msg18359
2015-04-11 07:57:31ganeshsetmessages: + msg18362
2015-04-13 18:35:54ghsetmessages: + msg18363
2015-04-18 14:58:09ghsetmessages: + msg18373
2015-04-18 15:00:50ghsetstatus: accepted-pending-tests -> accepted