[Hackage] #447: build multiple packages in parallel
Hackage
cvs-ghc at haskell.org
Sun Nov 6 00:19:31 CET 2011
#447: build multiple packages in parallel
---------------------------------+------------------------------------------
Reporter: duncan | Owner: refold
Type: enhancement | Status: assigned
Priority: normal | Milestone:
Component: cabal-install tool | Version:
Severity: normal | Keywords:
Difficulty: normal | Ghcversion: 6.8.3
Platform: |
---------------------------------+------------------------------------------
Comment(by refold):
Attached are my patches that [http://dissocial.st/blog/2011-08-22-GSoC-
Final parallelise cabal-install's 'install' command].
Sorry for sending them as a single large bundle - ideally I would like
to split the patch series, but `darcs send` makes it hard by ignoring
depended-upon patches. Additionally, it's hard to destructively edit
history in Darcs, so instead of obliterating two unnecessary patches
(changes to `README` and `cabal-install.cabal`) I undid those changes with
a "merge" patch.
The patch series logically consists of three parts (in chronological
order):
1) From the first patch up to the "Parallelise the `install` command"
patch
Implements the basic parallel framework as described
[http://dissocial.st/blog/2011-06-03-GSocIntroduction here]. Changes
are a bit more pervasive than expected because of Cabal's internal
assumption that the current working directory is the same as the directory
of the
package currently being built.
2) From the end of the previous part up to the "Implement output
serialisation (client bits)." patch
Implements output serialisation - since we don't want the console
output to be garbled, all printing should be done from a single
thread. This is done by changing all code called from
D.C.I.executeInstallPlan to use callbacks instead of standard output
functions (debug/info/...).
3) Bugfixes and polishing (remaining patches)
During this stage I was concentrated on testing and fixing bugs and
didn't add any new functionality.
My patches are also available in a [http://darcsden.com/23Skidoo/Cabal
separate Darcs repository].
--
Ticket URL: <http://hackage.haskell.org/trac/hackage/ticket/447#comment:5>
Hackage <http://haskell.org/cabal/>
Hackage: Cabal and related projects
More information about the cabal-devel
mailing list