Thursday, October 30, 2008

darcs hacking sprint #1 report

So how did that darcs hacking sprint go? Well, we had a lot of fun and we got a lot of work done, so I think we can safely say that it was a great success!

What next? The sprint participants found themselves with a lot of good work started that we simply couldn't put down, so we have continued hacking into the week, turning many of our good starts into more concrete progress. There is still a lot of work to do so we want to make sure we keep that momentum going! The big challenge right now is to get all of the patches reviewed and merged back into Unfortunately, this is creating a delay in the usual patch review process as we clear our backlog. In the meantime, please continue sending your patches!

Thanks very much to David Roundy for his advice before the sprint and cheerful handling of this patch influx; Galois, the University of Brighton and Université de Paris 7 for graciously hosting our three venues; and especially to everybody who participated or joined #darcs to cheer us on :-)

The next sprint will be held in conjunction with the Haskell Hackathon, March 2009 in Utrecht, Netherlands. So see you in six months!


Issues resolved: 7

Total sprint patches : 234

Patches produced
  • during the sprint itself : 178
  • as follow-up work : 56
Patches sent and
  • accepted into : 43
  • awaiting review : 191

("during" defined as 25-27 October 2008 at 08:00 UTC)

Site reports

What we worked on

Warm up tasks


  • Solved stack overflow when doing whatsnew on very large lines
  • Smarter slurpies for faster directory lookups
  • Avoiding lstats in darcs whatsnew
  • Bytestring optimisations
    • Participants: Don Stewart (Team Portland)
    • Status: awaiting review
  • Filecache to improve darcs annotate and darcs changes performance
    • Participants: Benedikt Schmidt
    • Status: still hacking!
  • Packs
  • "Chunky" hunk representation
    • Participants: Ian Lynagh (Team Brighton)
    • Status: needs volunteer to start porting from camp to darcs
  • Global cache: enabled by default and more portable
  • Networking performance (Team Paris)
    • Used tcpdump to examine network performance problems
    • New issues filed:
    • Participants: Team Paris
    • Status: needs implementation!

Improved Windows support

Infrastructure and cleanups

  • Code cleanups
    • Added language pragmas in all files
    • Removed OldFastPackedString
    • Replaced FastPackedStrings api in favor of Data.ByteString api
    • Participants: Don Stewart and Jason Dagit (Team Portland)
    • Status: awaiting review
  • Documentation cleanups
    • Use .lhs only for truly literate files
    • Migrate .tex to reST in preparation for user manual overhaul
    • Participants: Trent Buck
    • Status: awaiting review
  • Cabalisation
    • Participants: Duncan Coutts (Team Portland) (that's Jason on the left and Duncan on the right)
  • Makefile simplifications and cleanups (for doc)
    • Participants: Trent Buck
  • Makefile improvements (make ci, make darcs_p)
    • Participants: Simon Michael, Eric Kow (Team Brighton)
    • Status: make ci is accepted! make darcs_p awaiting review
  • Benchmarking suite
    • Participants: Eric Kow (Team Brighton)
    • Status: usable as of Wednesday, needs visualisation


  • Progress...
    • developed "chunky" hunk representation and tests!
    • got libcurl working under Windows with Cabal
    • primitive interactive patch selection implemented
    • Repository type rather than FilePath for repos
  • Participants: Ian Lynagh (Team Brighton)

No comments: