| Time |
S |
Nick |
Message |
| 00:09 |
|
|
beschmi left #darcs |
| 00:29 |
|
|
sm joined #darcs |
| 00:43 |
|
dons |
cabal install darcs, woo |
| 00:46 |
|
dons |
http://galois.com/~dons/images/darcs.svg |
| 00:51 |
|
|
kpreid_ joined #darcs |
| 00:54 |
|
|
nwf joined #darcs |
| 02:08 |
|
|
twb joined #darcs |
| 02:46 |
|
|
dcoutts joined #darcs |
| 02:46 |
|
dcoutts |
@arr! |
| 02:46 |
|
lambdabot |
Arrr! |
| 02:49 |
|
lispy |
dcoutts: hey |
| 02:49 |
|
lispy |
did you see what I just wrote in #haskell? |
| 02:49 |
|
* dcoutts |
looks |
| 02:50 |
|
lispy |
dcoutts: I made it to link errors |
| 02:50 |
|
lispy |
dcoutts: yeah on windows |
| 02:50 |
|
dcoutts |
hmm |
| 02:50 |
|
dcoutts |
lispy: what was the problem with autogeneration? |
| 02:50 |
|
dcoutts |
which autogeneration in particular? |
| 02:51 |
|
lispy |
I don't have 'darcs' |
| 02:51 |
|
lispy |
so auto generation fails |
| 02:51 |
|
lispy |
anything that needs to call darcs |
| 02:51 |
|
lispy |
because I don't have it installed! |
| 02:51 |
|
lispy |
So I just commented out that autogen stuff...it's like ThisVersion and Context |
| 02:51 |
|
lispy |
who cares |
| 02:51 |
|
dcoutts |
ohhh |
| 02:52 |
|
dcoutts |
right, my bad |
| 02:52 |
|
lispy |
dcoutts: http://hpaste.org/11499 |
| 02:52 |
|
dcoutts |
yeah, so it should be catching those |
| 02:52 |
|
lispy |
dcoutts: right it should catch those and do whatever autoconf does when darcs isn't built yet |
| 02:52 |
|
dcoutts |
yep |
| 02:53 |
|
dcoutts |
ok, so the first link error is related to hslibwww.c I presume |
| 02:53 |
|
lispy |
right |
| 02:53 |
|
lispy |
let's focus on the other one |
| 02:53 |
|
lispy |
zlib |
| 02:53 |
|
dcoutts |
aye, so are you building with external-zlib true or false? |
| 02:53 |
|
lispy |
let me check |
| 02:54 |
|
lispy |
hmm...I didn't change it, I'll re-run config with verbose |
| 02:54 |
|
lispy |
False |
| 02:54 |
|
dcoutts |
hmm it should fail by not finding -lz |
| 02:54 |
|
dcoutts |
run with build -v and check if it's passing -lz |
| 02:55 |
|
lispy |
dcoutts: I don't see a -lz |
| 02:56 |
|
lispy |
I haven't installed much on this machine |
| 02:56 |
|
dcoutts |
lispy: and you've got the recent patch to use extra-libraries: z when flag external-zlib is false? |
| 02:56 |
|
dcoutts |
if flag(external-zlib) |
| 02:56 |
|
dcoutts |
build-depends: zlib == 0.5.* |
| 02:56 |
|
dcoutts |
cpp-options: -DHAVE_HASKELL_ZLIB |
| 02:56 |
|
dcoutts |
else |
| 02:56 |
|
dcoutts |
extra-libraries: z |
| 02:56 |
|
lispy |
oh, I missed that one |
| 02:57 |
|
dcoutts |
ok, with that patch I expect it'll fail by not finding -lz |
| 02:57 |
|
dcoutts |
which is good |
| 02:57 |
|
lispy |
you're correct |
| 02:57 |
|
dcoutts |
you then need the external C zlib |
| 02:57 |
|
dcoutts |
or the zlib binding package |
| 02:57 |
|
lispy |
I have zlib package because I needed it for cabal-install |
| 02:58 |
|
dcoutts |
hmm, I wonder why it did not select it automatically |
| 02:58 |
|
dcoutts |
oh, I know, because you've got 0.4.0.4 |
| 02:58 |
|
lispy |
maybe because I tweaked the .cabal file |
| 02:58 |
|
dcoutts |
and darcs now needs 0.5.x |
| 02:58 |
|
lispy |
I upgraded cabal |
| 02:58 |
|
dcoutts |
you'll need the darcs version of zlib |
| 02:58 |
|
lispy |
oooh |
| 02:58 |
|
lispy |
hmm |
| 02:58 |
|
lispy |
how do we get that? |
| 03:02 |
|
lispy |
one thing I can do is grab zlib dll from zlib.net |
| 03:02 |
|
lispy |
but I'm not sure how I make the build use it |
| 03:03 |
|
dcoutts |
lispy: I've no idea about making it use an external zlib.dll |
| 03:03 |
|
dcoutts |
lispy: but the darcs version of my zlib binding is pretty easy |
| 03:03 |
|
dcoutts |
darcs get http://code.haskell.org/zlib/ |
| 03:03 |
|
lambdabot |
Title: Index of /zlib |
| 03:03 |
|
dcoutts |
cd zlib && cabal install |
| 03:04 |
|
lispy |
I don't have darcs :( |
| 03:04 |
|
lispy |
I need a zip file |
| 03:04 |
|
sm |
the sprint continues! |
| 03:05 |
|
sm |
go, portland, go! |
| 03:05 |
|
dcoutts |
lispy: well you can always get an old darcs binary |
| 03:06 |
|
dcoutts |
sm: heh |
| 03:06 |
|
|
Jerri joined #darcs |
| 03:06 |
|
* sm |
got the cold shoulder from gf tonight, BACK TO WORK... |
| 03:07 |
|
sm |
lispy: yeah. and since I have strangely become windows binary emissary, here's http://wiki.darcs.net/index.html/CategoryBinaries |
| 03:07 |
|
lambdabot |
Title: CategoryBinaries - DarcsWiki |
| 03:07 |
|
sm |
I mean http://wiki.darcs.net/index.ht[…]cb62712589b392074 |
| 03:07 |
|
lambdabot |
Title: CategoryBinaries - DarcsWiki, http://tinyurl.com/4wlxe2 |
| 03:08 |
|
lispy |
dcoutts: nah, I tar'd it on another machine |
| 03:10 |
|
|
adu joined #darcs |
| 03:10 |
|
lispy |
dcoutts: weird. I have that copy of zlib, 0.5, I run configure then I try to build and build tells me .\zlib.cabal has been changed, please re-configure. |
| 03:11 |
|
dcoutts |
hmm |
| 03:11 |
|
lispy |
my system clock is wrong, hang on |
| 03:11 |
|
dcoutts |
lispy: right I was going to ask about timestamps |
| 03:11 |
|
lispy |
yup, that fixed it |
| 03:12 |
|
lispy |
dcoutts: okay, just need libwww now |
| 03:13 |
|
lispy |
actually, I want libcurl |
| 03:23 |
|
lispy |
building libcurl is going to be hard |
| 03:23 |
|
lispy |
using curl.exe would be easy though |
| 03:23 |
|
lispy |
well, if darcs supports that I mean |
| 03:24 |
|
dcoutts |
lispy: it does doesn't it? |
| 03:24 |
|
dcoutts |
lispy: curl or wget |
| 03:25 |
|
lispy |
maybe, I'm trying to figure out how that's hooked up so I can change the build to not care about linking in libwww |
| 03:26 |
|
lispy |
maybe I should use HTTP |
| 03:34 |
|
dcoutts |
lispy: use configure -f-libwww |
| 03:34 |
|
dcoutts |
configure -f-libwww -fhttp |
| 03:34 |
|
lispy |
right, and then I added, build-depends: network, after build-depends: HTTP |
| 03:35 |
|
lispy |
now I need to fix some sort of autogeneration issue |
| 03:35 |
|
dcoutts |
lispy: oh does it need network in addition to HTTP? |
| 03:35 |
|
* dcoutts |
tries |
| 03:35 |
|
lispy |
I need to set PACKAGE_VERSION |
| 03:36 |
|
lispy |
in HTTP.hs |
| 03:36 |
|
dcoutts |
ohh |
| 03:36 |
|
dcoutts |
that should really be using a different method |
| 03:36 |
|
dcoutts |
like using ThisVersion.hs and passing the user agent in as a param |
| 03:38 |
|
lispy |
So we need to do a fair bit of cleanup before this "just works" on windows, but it's not tha far really |
| 03:39 |
|
dcoutts |
lispy: pushing a patch... |
| 03:39 |
|
lispy |
oof |
| 03:40 |
|
lispy |
darcs.exe get http://darcs.net/ |
| 03:40 |
|
lambdabot |
Title: darcs |
| 03:40 |
|
lispy |
darcs failed: handleToFd not supported! |
| 03:41 |
|
dcoutts |
lispy: pushed the package version and network thing |
| 03:41 |
|
lispy |
whoa |
| 03:41 |
|
dcoutts |
I've no idea about the handleToFd thing |
| 03:41 |
|
dcoutts |
src/win32/System/Posix.hs:handleToFd _ = fail "handleToFd not supported!" |
| 03:42 |
|
lispy |
dcoutts: http://hpaste.org/11499#a1 |
| 03:43 |
|
dcoutts |
heh, looks like a utf16 decoding problem |
| 03:43 |
|
lispy |
it's totally hosed |
| 03:44 |
|
lispy |
dcoutts: I should stop here. I don't even know here to begin |
| 03:45 |
|
lispy |
using HTTP really should have worked |
| 03:45 |
|
lispy |
I should have just had problems with transparent proxies |
| 03:46 |
|
dcoutts |
aye |
| 03:46 |
|
dcoutts |
lispy: what does it normally use on windows ? |
| 03:50 |
|
lispy |
not sure |
| 03:51 |
|
lispy |
but, HTTP should work as far as I know |
| 03:51 |
|
|
clanehin joined #darcs |
| 03:51 |
|
lispy |
http://hpaste.org/11500 |
| 03:51 |
|
lispy |
those are my notes |
| 03:52 |
|
lispy |
but of course hpaste cut me off :( |
| 03:52 |
|
lispy |
stupid hpaste |
| 03:52 |
|
lispy |
with it's silly limit |
| 03:52 |
|
* lispy |
reboots |
| 03:58 |
|
lispy |
dcoutts: my hunch is that the way we detect windows doesn't like the lack of cygwin/mingw |
| 04:00 |
|
sm |
why don't we use ghc --make for darcs, would anyone know ? |
| 04:01 |
|
sm |
it seems to work, given all the extra flags |
| 04:03 |
|
dons |
sm: it can't pick packages very well |
| 04:03 |
|
dons |
of course, we could do it that way. cabal does that, after picking all the flags |
| 04:04 |
|
lispy |
dons: did you see that FastPackedStrings (now ByteStringUtil) is marked: Stability: experimental, all the more reason to remove it :) |
| 04:04 |
|
sm |
it's come up because I'm trying to rebuild automatically with sp.. something is breaking on the huge command line |
| 04:04 |
|
lispy |
sp? |
| 04:06 |
|
sm |
http://searchpath.org . It has the ability to watch all your app's modules and re-run ghc --make when anything changes. Optionally run your tests too. It's extremely useful when hacking |
| 04:06 |
|
lambdabot |
Title: SearchPath — Automatic import chasing across the Internet for Haskell modules |
| 04:07 |
|
lispy |
dcoutts: ah, the problem with that windows build was that use_mmap = True, and on windows it needs to get defined as False |
| 04:07 |
|
sm |
really shrinks the feedback loop from code change to ghc error |
| 04:08 |
|
lispy |
ah. I'm not found of those types of programs, eclipse is like that, but yeah some people really like that |
| 04:08 |
|
lispy |
sm: can it be taught to use cabal instead of ghc --make? |
| 04:09 |
|
dons |
searchpath is dead. long live cabal install! |
| 04:09 |
|
sm |
lispy, maybe |
| 04:09 |
|
sm |
I'm using searchpath strictly for this auto-recompile/run-on-change feature |
| 04:10 |
|
sm |
nothing else does that yet, afaik |
| 04:10 |
|
lispy |
dons: looks like what we need next on for windows support is industrial strength http that can be cabal-installed |
| 04:10 |
|
lispy |
dons: either, adding pipelining and transparent proxy support to HTTP or make a hackage package for libcurl |
| 04:11 |
|
dons |
or use the galois curl package |
| 04:11 |
|
dons |
http://hackage.haskell.org/cgi[…]ipts/package/curl |
| 04:11 |
|
lambdabot |
Title: HackageDB: curl-1.3.2.1 |
| 04:14 |
|
lispy |
dons: excellent, any idea if that builds on windows yet? |
| 04:15 |
|
lispy |
dons: also, does that API support pipelining? |
| 04:15 |
|
dons |
a) yes, b) not sure. |
| 04:15 |
|
dons |
but it is a full binding |
| 04:15 |
|
dons |
we originally wrote it so we could get windows support |
| 04:15 |
|
dons |
its just a binding to the underlying api, and the code is online, so we could merge in the darcs stuff to it |
| 04:16 |
|
dons |
http://code.galois.com/cgi-bin[…]url.git;a=summary |
| 04:16 |
|
lambdabot |
Title: code.galois.com Git - curl.git/summary |
| 04:17 |
|
lispy |
okay |
| 04:17 |
|
lispy |
modulo the licensing |
| 04:17 |
|
dons |
bsd? |
| 04:17 |
|
dons |
oh, darcs. |
| 04:17 |
|
lispy |
yeah, gpl :( |
| 04:18 |
|
dcoutts |
lispy: hmm, that's pretty odd, take a look at Setup.hs, it's using: |
| 04:18 |
|
dcoutts |
subst "USE_MMAP" |
| 04:18 |
|
dcoutts |
| isWindows = show False |
| 04:18 |
|
dcoutts |
| otherwise = show True |
| 04:19 |
|
lispy |
dcoutts: I had to kill Setup.hs |
| 04:19 |
|
lispy |
and I likely killed too much of it |
| 04:19 |
|
dcoutts |
lispy: heh |
| 04:19 |
|
lispy |
(i've since rebooted so hard to test) |
| 04:19 |
|
dcoutts |
lispy: so how did you generate Autoconf.lhs ? |
| 04:19 |
|
dcoutts |
by hand? |
| 04:20 |
|
dcoutts |
lispy: and why did you need to kill it? what was not working? |
| 04:20 |
|
lispy |
I forgot that it needed to be generated so it was the one from osx |
| 04:20 |
|
dcoutts |
ah |
| 04:20 |
|
lispy |
I didn't have a darcs.exe |
| 04:20 |
|
lispy |
So I kept getting that error from runInteractiveProcess |
| 04:20 |
|
dcoutts |
ah |
| 04:20 |
|
lispy |
and I started commenting out anything that looked like autogeneration |
| 04:20 |
|
lispy |
I just wanted to see what would work |
| 04:21 |
|
dcoutts |
hmm, it should have been ok |
| 04:21 |
|
dcoutts |
oh, no, ok |
| 04:22 |
|
lispy |
where did you push your patches to? |
| 04:22 |
|
dcoutts |
lispy: it's the two uses of rawSystemStdout |
| 04:22 |
|
lispy |
ah |
| 04:22 |
|
dcoutts |
I changed it from using exceptions to using exit codes |
| 04:23 |
|
dcoutts |
but of course if darcs does not exist it still throws exceptions |
| 04:23 |
|
dcoutts |
so we should have been using that all along |
| 04:23 |
|
dcoutts |
though it'll be harder to make that work with 6.10 |
| 04:23 |
|
lispy |
that sucks |
| 04:30 |
|
lispy |
dons: if we could modify that curl library to package libcurl the way the zlib package does, then it could become usable for what I want. |
| 04:31 |
|
lispy |
dons: but as is, the package needs autotools and it doesn't come with the curl source |
| 04:37 |
|
dcoutts |
lispy: pushing another patch to your repo |
| 04:37 |
|
dcoutts |
lispy: should make it work on windows without darcs installed |
| 04:44 |
|
lispy |
dcoutts: cool, thanks |
| 04:49 |
|
dons |
mm. |
| 05:31 |
|
* Heffalump |
appears |
| 05:34 |
|
twb |
Phew, I finally finished the basic translation of .tex to reST .txt |
| 05:34 |
|
twb |
I still haven't even STARTED doing copy editing |
| 05:50 |
|
* sm |
hacks, hacks through the jungle that is sp |
| 05:50 |
|
sm |
go twb |
| 05:50 |
|
sm |
how are you liking reST ? used it much before ? |
| 05:51 |
|
twb |
Yes, I've used reST a lot |
| 05:51 |
|
twb |
To me, it acts the way word processors claim to |
| 05:51 |
|
sm |
me too. I can't say I love it. I can't think of anything much better either |
| 05:51 |
|
twb |
i.e. it gets most the syntax out of my face, but still has a straightforward mapping to syntactic objects |
| 05:52 |
|
twb |
Compared to everything else I've used, reST is definitely less painful. |
| 05:52 |
|
sm |
have you got a repo to look at ? |
| 05:53 |
|
twb |
Yes, but I don't have push access yet :P |
| 05:54 |
|
sm |
that's ok, I'm just looking forward to seeing a big darcs doc in reST, to compare |
| 05:55 |
|
twb |
I can send you the patches in just a moment. |
| 05:55 |
|
sm |
darn.. just retired my darcs-sm repo, which would have been the place I could have pushed them to see on the web |
| 05:57 |
|
twb |
I just sent output examples to darcs-users |
| 06:03 |
|
sm |
there it is.. thx |
| 06:04 |
|
twb |
sm: what's yer address? I'll bounce you the patch bundle |
| 06:04 |
|
sm |
simon joyful.com |
| 06:04 |
|
twb |
sm: just don't apply it to a repo you care about, because it'll fuck it up |
| 06:04 |
|
sm |
ok.. don't send it to me please :) |
| 06:05 |
|
twb |
sent |
| 06:05 |
|
sm |
aieeee |
| 06:05 |
|
twb |
Oh. |
| 06:05 |
|
twb |
When I say "fuck it up" I mean "make pdf will fail, and probably you'll get lots of merge conflicts." |
| 06:05 |
|
sm |
AIEEEEE |
| 06:06 |
|
* twb |
is embarrassed. |
| 06:06 |
|
lispy |
twb: hmm...I prefer single column |
| 06:06 |
|
sm |
don't worry.. I'm just trying to avoid more pain |
| 06:06 |
|
twb |
sm: if it's any help, From: doesn't match your address. |
| 06:06 |
|
twb |
lispy: that's easy to do |
| 06:06 |
|
lispy |
twb: overall, I think the latex pdf is prettier, like the same color bg in the commands and whatnot instead of a yellow bg |
| 06:06 |
|
twb |
lispy: I actually jumped through some hoops to get two-column, because I prefer it to having huge margins or really wide body text |
| 06:07 |
|
twb |
lispy: the good news is that both work, so it doesn't matter which we prefer |
| 06:08 |
|
sm |
actually that two column is neat.. I haven't seen that from rst before |
| 06:09 |
|
sm |
do stylesheets for rst also control the style of the pdf ? I guess not |
| 06:10 |
|
twb |
sm: you have json stylesheets for rst2pdf |
| 06:10 |
|
sm |
I see |
| 06:10 |
|
twb |
e.g. {"styles": [["base", {"fontSize": 12}]]} |
| 06:11 |
|
twb |
Ugly, but the presentation is certainly separate from the source file's markup. |
| 06:11 |
|
sm |
and for all those file includes, you'll use sphinx ? |
| 06:12 |
|
twb |
Personalyl I'm not sold about using sphinx |
| 06:12 |
|
twb |
Partly because that'll break rst2pdf and rst2odt. |
| 06:12 |
|
sm |
I see |
| 06:13 |
|
twb |
I'd rather just have .. include:: command-apply.txt |
| 06:13 |
|
twb |
And then command-%.txt: src/Darcs/Commands/% preproc |
| 06:13 |
|
twb |
\t./preproc $< >$@ |
| 06:13 |
|
sm |
oh yes.. I forgot rst can do that |
| 06:13 |
|
twb |
So preproc would just generate reST instead of TeX, and the static reST files would include the generated files |
| 06:14 |
|
sm |
and how do you fit the included files within the section hierarchy ? or did you just say that ? |
| 06:15 |
|
sm |
I guess they can just all follow a consistent heading style and it will work |
| 06:15 |
|
twb |
Yep |
| 06:24 |
|
|
nwf joined #darcs |
| 06:26 |
|
sm |
twb: I can see this is a big job |
| 06:26 |
|
sm |
a question, why move the .tex files to .txt, rather than just leaving them where they are ? |
| 06:30 |
|
sm |
yesss.. sp rebuilding darcs when I edit any module |
| 06:31 |
|
sm |
now, how to deploy.. |
| 06:32 |
|
|
clanehin joined #darcs |
| 06:33 |
|
sm |
yessss.. works in emacs compilation mode |
| 06:33 |
|
sm |
mine, anyway |
| 06:57 |
|
sm |
argh.. 3 minutes of sprint left here |
| 06:58 |
|
|
balor joined #darcs |
| 07:10 |
|
sm |
patch sent. What's a few minutes between friends, clocks are so imprecise |
| 07:12 |
|
sm |
end of sprint, here. I don't know if we have anyone further west.. |
| 07:18 |
|
sm |
night all |
| 07:19 |
|
* sm |
dims the lights and tiptoes out |
| 07:26 |
|
mornfall |
Hm. |
| 07:26 |
|
mornfall |
lispy: I think you want cabalised-2, not cabalised-morn. |
| 07:26 |
|
mornfall |
Gotta go anyway... see ya. |
| 07:29 |
|
|
kowey joined #darcs |
| 07:32 |
|
kowey |
morning |
| 07:33 |
|
|
mmorrow joined #darcs |
| 07:42 |
|
kowey |
twb: nice work on the manual |
| 07:42 |
|
kowey |
not there :-) |
| 08:01 |
|
|
njbartlett joined #darcs |
| 08:03 |
|
sm |
morning eric |
| 08:03 |
|
sm |
oops, typo - "this change will be bring" |
| 08:03 |
|
sm |
envigorating -> invigorating |
| 08:04 |
|
sm |
vigorous |
| 08:05 |
|
sm |
long-term |
| 08:05 |
|
|
gh_ joined #darcs |
| 08:06 |
|
sm |
"by the default" -> by default |
| 08:06 |
|
gh_ |
hi |
| 08:07 |
|
kowey |
sm: thanks! |
| 08:08 |
|
sm |
thanks |
| 08:09 |
|
|
njbartlett_ joined #darcs |
| 08:14 |
|
lispy |
mornfall: ah |
| 08:14 |
|
lispy |
kowey: good morning |
| 08:14 |
|
lispy |
kowey: feeling chipper? |
| 08:15 |
|
kowey |
pleased to see all that work done :-) |
| 08:15 |
|
C-Keen |
good morning |
| 08:15 |
|
lispy |
kowey: yeah, now the hard work for you (us?) starts |
| 08:15 |
|
kowey |
lots of things to set into motion |
| 08:15 |
|
lispy |
yeah |
| 08:16 |
|
lispy |
we may have to change the pace, but we need to maintain the momentum |
| 08:16 |
|
kowey |
some of the work is scattered across different branches |
| 08:16 |
|
lispy |
I've been assuming you'll stream patches to darcs-users at a rate you deem appropriate and then delegate to authors as feedback comes in? |
| 08:16 |
|
kowey |
so need to get that polished off and also merged in |
| 08:17 |
|
lispy |
so, one thing that needs to happen is that we need to fix ghc6.6 support in the stuff we did |
| 08:17 |
|
kowey |
yep |
| 08:17 |
|
lispy |
so what are the logistics on that? |
| 08:17 |
|
lispy |
We need to be careful about diverging |
| 08:17 |
|
kowey |
right now I'm waiting for droundy to respond to the first salvo of patches |
| 08:17 |
|
lispy |
and it's going to be painful to amend or recreate all the patches |
| 08:17 |
|
kowey |
I'm thinking of fast-tracking twb's work |
| 08:18 |
|
kowey |
which may have conflicts with the sprint branch, will have to see |
| 08:18 |
|
kowey |
what needs to be done for fixing GHC 6.6? |
| 08:19 |
|
lispy |
two things, near as I can tell |
| 08:19 |
|
lispy |
1) Adjusting the LANGUAGE pragmas so that 6.6 stops throwing errors |
| 08:19 |
|
kowey |
(salut, gh_!) |
| 08:20 |
|
lispy |
2) Doing *something* about the possible Data.ByteString incompatibility on ghc6.6 (this may be fixed now due to cleaning up the api usages) |
| 08:20 |
|
lispy |
we have to fix (1) before we can check (2) |
| 08:20 |
|
gh_ |
salut kowey :) |
| 08:20 |
|
kowey |
is this what you personally are working on? |
| 08:21 |
|
lispy |
I started on that, but it was a bad task |
| 08:21 |
|
lispy |
I could pick it up again |
| 08:21 |
|
kowey |
a bad task? |
| 08:21 |
|
kowey |
as in boring? |
| 08:21 |
|
kowey |
or not appropriate to the sprint |
| 08:21 |
|
lispy |
as in, it was wasting valuable sprint time |
| 08:21 |
|
kowey |
right |
| 08:21 |
|
gh_ |
kowey: I have requested an account on code.haskell.org , but i'm interested in that darcshub project also |
| 08:22 |
|
kowey |
gh_: you mean as a user? |
| 08:22 |
|
gh_ |
is there anything I could do to help ? |
| 08:22 |
|
lispy |
kowey: the other thing I looked at was using duncan's cabal file to build on windows (it works if you use HTTP) |
| 08:22 |
|
lispy |
kowey: but it's not polished and ready for general consumption |
| 08:22 |
|
gh_ |
yes as an user, but also if I could help (a little) |
| 08:22 |
|
gh_ |
i have tried github this weekend, and it's so simple... |
| 08:22 |
|
kowey |
gh_: do you think you would be willing to become an administrator? |
| 08:23 |
|
lispy |
kowey: no autoconf/make required with his cabal file :) |
| 08:23 |
|
gh_ |
freehg.org (for mercurial) is better , because simpler |
| 08:23 |
|
gh_ |
but also very slow |
| 08:23 |
|
kowey |
lispy: :-) |
| 08:23 |
|
kowey |
there is also bitbucket for hg |
| 08:23 |
|
gh_ |
kowey: frankly, i'm not sure i will have time |
| 08:24 |
|
gh_ |
yes, it's good also, much faster, but a little too complicated for my needs |
| 08:24 |
|
* kowey |
wonders if we need a darcs-hosting mailing list |
| 08:24 |
|
kowey |
because there are a lot of folks interested in this problem! |
| 08:24 |
|
gh_ |
i really liked hreehg in fact |
| 08:24 |
|
gh_ |
and if i remember well, the code of this website is available |
| 08:25 |
|
gh_ |
*freehg |
| 08:25 |
|
kowey |
gh_ : one big missing piece of the puzzle is automatic account creation |
| 08:25 |
|
gh_ |
http://www.selenic.com/mercuri[…]/HowToSetupFreeHg |
| 08:25 |
|
gh_ |
kowey: on darcshub ? |
| 08:25 |
|
lambdabot |
Title: HowToSetupFreeHg - Mercurial |
| 08:26 |
|
kowey |
gh_: yes, we don't have any code for that... actually we have no code right now |
| 08:26 |
|
kowey |
gh_: the second missing piece is a Leader |
| 08:26 |
|
kowey |
we need somebody to say "I am officially in charge of the darcs hosting project and my mission is to deliver free darcs hosting to the world" |
| 08:26 |
|
gh_ |
didn't you say last week that you had a front end ? |
| 08:27 |
|
gh_ |
yes.. |
| 08:27 |
|
kowey |
i had an offer to work on one |
| 08:27 |
|
kowey |
but we're waiting a bit to see how things turn out for that person |
| 08:27 |
|
gh_ |
ok |
| 08:27 |
|
kowey |
right now, the project is waiting on code.haskell.org to release their admin scripts |
| 08:27 |
|
kowey |
which I presume to be easier to wait for than recreate |
| 08:28 |
|
kowey |
now you've done some research into other sites, which is great |
| 08:28 |
|
kowey |
maybe one thing you could do is to summarise those results for us |
| 08:28 |
|
kowey |
and let us know what you think are the critical features we need |
| 08:28 |
|
* lispy |
hopes he's being useful and not just spamming kowey :) |
| 08:28 |
|
gh_ |
kowey: yes why not |
| 08:33 |
|
lispy |
kowey: we should try video conferencing next time at the sprint. But with the timezones maybe it's not worthwhile.. |
| 08:33 |
|
kowey |
lispy: actually, I was kinda hoping we could do that |
| 08:33 |
|
kowey |
then I forgot about it |
| 08:33 |
|
kowey |
we both use macs, so we could iChat over jabber eg |
| 08:34 |
|
lispy |
aaah |
| 08:34 |
|
lispy |
I use xmeeting with David, ekiga is the linux version |
| 08:49 |
|
C-Keen |
kowey: what's the problem you see with using head/tail? |
| 08:50 |
|
kowey |
C-Keen: empty lists |
| 08:50 |
|
lispy |
> head [] |
| 08:51 |
|
lambdabot |
* Exception: Prelude.head: empty list |
| 08:51 |
|
lispy |
> tail [] |
| 08:51 |
|
lambdabot |
* Exception: Prelude.tail: empty list |
| 08:51 |
|
C-Keen |
ah I see |
| 08:51 |
|
kowey |
i mean, in many cases |
| 08:51 |
|
C-Keen |
(also I see a bug in my code) |
| 08:51 |
|
kowey |
you could (a) have code that checks if the list is non-empty and then uses head/tail |
| 08:51 |
|
kowey |
or (b) pattern match |
| 08:51 |
|
kowey |
and most of the time, (b) is more elegant |
| 08:51 |
|
lispy |
if you want to use head/tail it's almost always better to pattern match |
| 08:52 |
|
lispy |
kowey: good discussions, but it's almost 2am, so I will crash |
| 08:52 |
|
kowey |
good night! |
| 08:52 |
|
lispy |
maybe we should plan on having bi-monthly video chats though |
| 08:52 |
|
lispy |
just something like an hour where we brainstorm |
| 08:53 |
|
kowey |
yeah, it would be good |
| 08:53 |
|
kowey |
faces are useful :-) |
| 08:53 |
|
kowey |
and voices |
| 08:53 |
|
lispy |
if we could get #darcs in on it, at the same time that would be really cool |
| 08:53 |
|
lispy |
actually, some projects do regular irc meetings |
| 08:53 |
|
lispy |
but that can be hard with our timezones |
| 08:54 |
|
lispy |
anyway, g'night, have fun at work |
| 08:54 |
|
lispy |
C-Keen: right some good code :) |
| 08:54 |
|
lispy |
er write |
| 08:54 |
|
C-Keen |
lispy: will do! |
| 08:54 |
|
lispy |
happy hacking and all that |
| 08:54 |
|
C-Keen |
lispy: good night! |
| 08:55 |
|
C-Keen |
kowey: ah I see the issue, thanks for explaining. Also I think pattern matching will make it more readable |
| 08:55 |
|
kowey |
see why I think hacking on darcs is a great way to learn Haskell? |
| 08:56 |
|
kowey |
actually, hacking on any project, but darcs is a treasure trove of things to do :-D |
| 08:56 |
|
C-Keen |
without a real project you never learn any language imho |
| 08:57 |
|
C-Keen |
and this is my first approach to funcitonal programming so it feels a bit awkward at times |
| 08:57 |
|
kowey |
watch the changes coming in from the sprint by the way |
| 08:57 |
|
kowey |
when darcs was first written, David was still learning Haskell too |
| 08:58 |
|
kowey |
so looking at these new patches is a very good way to compare |
| 08:58 |
|
kowey |
how a smart person learning Haskell might write something |
| 08:58 |
|
kowey |
with how a smart person experienced in Haskell would write it |
| 08:58 |
|
kowey |
so we all grow together |
| 09:01 |
|
C-Keen |
:) |
| 09:02 |
|
C-Keen |
this is all really valuable advice |
| 09:50 |
|
|
kowey joined #darcs |
| 09:51 |
|
|
RaceCondition joined #darcs |
| 10:14 |
|
C-Keen |
@tell kowey which skripts do you want to get rewritten? |
| 10:14 |
|
lambdabot |
Consider it noted. |
| 10:31 |
|
|
kowey joined #darcs |
| 10:33 |
|
|
balor joined #darcs |
| 10:44 |
|
|
kowey joined #darcs |
| 10:54 |
|
kowey |
C-Keen have a look at tests/shell_harness |
| 10:55 |
|
C-Keen |
alright |
| 11:05 |
|
|
njbartlett joined #darcs |
| 11:15 |
|
|
njbartlett_ joined #darcs |
| 11:20 |
|
|
kowey joined #darcs |
| 11:23 |
|
|
malcolmw joined #darcs |
| 11:33 |
|
|
njbartlett__ joined #darcs |
| 11:48 |
|
|
njbartlett joined #darcs |
| 12:34 |
|
|
njbartlett joined #darcs |
| 12:54 |
|
|
lelit joined #darcs |
| 13:00 |
|
|
RaceCondition joined #darcs |
| 16:12 |
|
|
thorkilnaur_ joined #darcs |
| 17:29 |
|
|
arjanb joined #darcs |
| 17:32 |
|
kowey |
arjanb: thanks for checking that windows binary last night, btw |
| 17:32 |
|
kowey |
i think those are openssl libs, and I would have to work out a way to link something statically :-) |
| 17:32 |
|
kowey |
(which is why I would have really preferred somebody else, i.e. who actually uses Windows, build this binary) |
| 17:38 |
|
|
sm joined #darcs |
| 17:40 |
|
|
MarcWebe3 joined #darcs |
| 17:49 |
|
|
sm joined #darcs |
| 17:58 |
|
arjanb |
kowey: btw the binary works after gathering all the missing dll's |
| 18:01 |
|
kowey |
cool! |
| 18:01 |
|
kowey |
are there a lot? |
| 18:02 |
|
|
beschmi joined #darcs |
| 18:02 |
|
* beschmi |
waves |
| 18:04 |
|
kowey |
hiya beschmi! exciting news on the filecache :-) |
| 18:05 |
|
kowey |
ok, first 4 patches from the sprint now applied in droundy's branch |
| 18:05 |
|
beschmi |
i was actually a bit disappointed because it's still too slow on really large repos like ghc |
| 18:05 |
|
beschmi |
because you still have to apply a large number number of patches |
| 18:05 |
|
kowey |
faster, but not fast enough? |
| 18:05 |
|
beschmi |
but otoh, chunky patches should speed that up too ;) |
| 18:06 |
|
kowey |
do you think there is anything useful for you in http://code.haskell.org/darcs/zoo ? |
| 18:06 |
|
lambdabot |
Title: Index of /darcs/zoo |
| 18:06 |
|
kowey |
for benchmarking that is |
| 18:06 |
|
arjanb |
kowey: 2 of ssl and a ms c runtime one |
| 18:06 |
|
kowey |
there is zero visualisation right now, but I hope we can follow Igloo's advice to make a shootout-like graph |
| 18:06 |
|
kowey |
thanks |
| 18:07 |
|
kowey |
maybe I can tell libcurl on windows to link statically with openssl |
| 18:07 |
|
kowey |
and that in turn would remove the need for that dll |
| 18:07 |
|
Igloo |
I think it's probably easy to do once you've picked the best tool, but I have no idea what that tool is |
| 18:08 |
|
kowey |
(on the other hand, there is also that whole illegal-to-distribute thing with openssl) |
| 18:10 |
|
Igloo |
Can you use gnutls instead? (I assume that's (L)GPL, but I don't actually know) |
| 18:10 |
|
beschmi |
kowey: yeah, looks nice. For now I'm doing mainly manual tests and I should work on having a well defined set of benchmarks. |
| 18:10 |
|
kowey |
it's really super-primitive, but if you could try using it and improving it, great! |
| 18:10 |
|
kowey |
basically we need to make this testing less ad-hoc and more reproducible |
| 18:11 |
|
kowey |
(not necessarily the numbers, just the process) |
| 18:11 |
|
kowey |
note that the small tests currently use the darcs version of maybench |
| 18:12 |
|
|
gh_ joined #darcs |
| 18:13 |
|
|
Nasenbaer joined #darcs |
| 18:13 |
|
|
Nasenbaer left #darcs |
| 18:20 |
|
sm |
morning all |
| 18:20 |
|
sm |
great kowey, thanks for working on that stuff |
| 18:21 |
|
kowey |
all that stuff?! I just spent the sprint making tea and being scatter-brained :-) |
| 18:22 |
|
sm |
ha, not true |
| 18:22 |
|
kowey |
good thing the rest of us rolled up sleeves and got productive |
| 18:22 |
|
dons |
kowey: so droundy's branch is the head branch? |
| 18:22 |
|
kowey |
i meant his local darcs repository on his machine, before he pushes it to his staging branch on his fast machine (which then automatically pushes to unstable) |
| 18:22 |
|
sm |
somebody recommended HaskellCharts to me this morning, but otherwise gnuplot seems to be the standard tool for automated chart generation. Bit of a learning curve though |
| 18:22 |
|
kowey |
i.e. "soon-to-be-unstable" |
| 18:23 |
|
* sm |
votes HaskellCharts for more haskell community-darcs synergy |
| 18:23 |
|
kowey |
dons: so, was just speaking very loosely |
| 18:23 |
|
dons |
sm, there's also a haskell gnuplot binding, and a haskell googlecharts binding |
| 18:23 |
|
sm |
aha! |
| 18:23 |
|
kowey |
and now they're in unstable |
| 18:23 |
|
dons |
http://hackage.haskell.org/cgi[…]pts/package/Chart |
| 18:23 |
|
sm |
very nice to have choices |
| 18:24 |
|
lambdabot |
Title: HackageDB: Chart-0.8 |
| 18:24 |
|
dons |
http://hackage.haskell.org/cgi[…]/package/diagrams |
| 18:24 |
|
lambdabot |
Title: HackageDB: diagrams-0.1, http://tinyurl.com/6omkcp |
| 18:24 |
|
dons |
http://hackage.haskell.org/cgi[…]s/package/gnuplot |
| 18:24 |
|
lambdabot |
Title: HackageDB: gnuplot-0.2, http://tinyurl.com/5srmed |
| 18:24 |
|
dons |
http://hackage.haskell.org/cgi[…]ckage/GoogleChart |
| 18:24 |
|
lambdabot |
Title: HackageDB: GoogleChart-0.2, http://tinyurl.com/68okj9 |
| 18:25 |
|
sm |
and not forgetting hsparklines |
| 18:25 |
|
dons |
mm. yes. |
| 18:25 |
|
dons |
that might also work |
| 18:26 |
|
kowey |
would serve as a good preview if there are a lot of tests |
| 18:26 |
|
kowey |
"whoah lots of ups and not a lot of downs there!" |
| 18:52 |
|
beschmi |
kowey: i debugged it some more ans the bottleneck doesn't seem to be applying the patches anymore, it's reading the inventory |
| 18:54 |
|
beschmi |
no, it's reading the pristine |
| 19:08 |
|
dons |
lispy: photos for your portland post, http://galois.com/~dons/images/darcs-oct-08/ |
| 19:08 |
|
lambdabot |
Title: Index of /~dons/images/darcs-oct-08 |
| 19:16 |
|
|
RaceCondition joined #darcs |
| 19:26 |
|
lispy |
kowey: we sent in some of the sprint patches right? |
| 19:27 |
|
kowey |
lispy: hmm? |
| 19:27 |
|
kowey |
yeah, four salvos (although salvos 1 and 2 overlapping) |
| 19:28 |
|
kowey |
salvo 1 has been 2/3rds applied (the other third awaiting a brief explanation) |
| 19:28 |
|
kowey |
also sm's patches have been applied |
| 19:28 |
|
kowey |
but not yet pushed |
| 19:28 |
|
lispy |
hmm |
| 19:28 |
|
lispy |
I'm confused |
| 19:28 |
|
lispy |
Has david commented on any of the sprint stuff? |
| 19:29 |
|
Igloo |
Yes |
| 19:29 |
|
kowey |
just on the first salvo - http://lists.osuosl.org/piperm[…]tober/015112.html |
| 19:29 |
|
lambdabot |
Title: [darcs-users] darcs patch: resolve issue395: warn the user when the... (and 5 mo ..., http://tinyurl.com/6hjq63 |
| 19:29 |
|
lispy |
okay. so that's in our count? |
| 19:29 |
|
lispy |
court* |
| 19:30 |
|
lispy |
why wasn't issue1017 fixed |
| 19:30 |
|
* Heffalump |
appears |
| 19:30 |
|
kowey |
ah just the right person |
| 19:30 |
|
dons |
how many patches were produced during the sprint? |
| 19:30 |
|
Heffalump |
I'll reply to that email |
| 19:31 |
|
kowey |
just on the official sprint branch, 99, I think (darcs send --dry-run | grep @ | wc -l) |
| 19:31 |
|
dons |
lispy: will you stick the summary of what you did on a blog post, and maybe attach the photos? |
| 19:31 |
|
kowey |
but there's more patches in sprint-slurpy and in beschmi's branch |
| 19:31 |
|
dons |
or maybe there should be a single sprint summary |
| 19:31 |
|
dons |
with all photos and details |
| 19:32 |
|
kowey |
not to mention the documentation team and kirby81's Windows fixes |
| 19:32 |
|
dons |
kowey: cool. |
| 19:32 |
|
lispy |
dons: okay, I'll try to do something or coordinate with kowey |
| 19:32 |
|
sm |
need a sprint darcswatch or two eh |
| 19:33 |
|
lispy |
a good patch tracking system would be nice yeah |
| 19:33 |
|
|
b4taylor left #darcs |
| 19:34 |
|
lispy |
kowey: of the sent sprint patches, 1 bundle has been reviewed (some rejected), 1 bundle is unreviewed, and 2 bundles are unsent? |
| 19:34 |
|
lispy |
dons: I was reading the xmonad archives last night, good stuff |
| 19:34 |
|
dons |
nomeata wrote a darcs patch tracker for mailing lists. |
| 19:34 |
|
dons |
it tells us what was sent to the xmonad mailing list, but not applied yet |
| 19:35 |
|
dons |
he's published it, afaik |
| 19:36 |
|
lispy |
yeah, I don't think it's all that useful yet though |
| 19:36 |
|
kowey |
lispy: 1 reviewed (some pending inquiry), 3 unreviewed, and many patches not yet sent |
| 19:36 |
|
lispy |
kowey: ah |
| 19:37 |
|
dons |
yes, i wonder if direct pushes to branches, in a tree-like structure are more effective |
| 19:37 |
|
dons |
so things don't get lost |
| 19:37 |
|
kowey |
lispy: only 95/99 patches to go! |
| 19:37 |
|
kowey |
:-) |
| 19:37 |
|
lispy |
haha |
| 19:37 |
|
dons |
N people push to lispys branch, M to kowey's branch, they review, then merge up |
| 19:38 |
|
kowey |
(there's also 80 patches in the documentation branch to go) |
| 19:38 |
|
Heffalump |
it would be good to raise the bytestring question asap |
| 19:38 |
|
lispy |
dons: my thoughts on nometa's is just that it doesn't track discussion or status of patches, only whether they were accepted or in limbo |
| 19:38 |
|
dons |
note the increase in mailing list activity, guys, http://lists.osuosl.org/pipermail/darcs-users/ |
| 19:38 |
|
lambdabot |
Title: The darcs-users Archives |
| 19:38 |
|
dons |
as active as it has been since 2003... |
| 19:39 |
|
dons |
2005. |
| 19:39 |
|
lispy |
yeah |
| 19:39 |
|
lispy |
as active as ever really |
| 19:39 |
|
dons |
worth mentioning. |
| 19:39 |
|
lispy |
true |
| 19:39 |
|
kowey |
although to be fair, this is with merged lists |
| 19:39 |
|
dons |
ah good point. |
| 19:40 |
|
lispy |
not much non-devel discussion going on though |
| 19:40 |
|
lispy |
just an email here and there |
| 19:40 |
|
kowey |
like the darcsweb question just now |
| 19:40 |
|
dons |
that's fine. works for xmonad. |
| 19:40 |
|
dons |
merged lists == more users become devs |
| 19:40 |
|
Igloo |
Size of patches and patch context is also a factor, if you're looking at mailbox size |
| 19:40 |
|
dons |
ah good piont |
| 19:40 |
|
lispy |
and compression ratio :) |
| 19:41 |
|
kowey |
i have some numbers on the number of messages in the past few months |
| 19:41 |
|
lispy |
But! it is true that darcs-users is very active |
| 19:41 |
|
lispy |
and that the development rate hasn't been this high for a long time |
| 19:41 |
|
Igloo |
Number of messages and number of unique authors would be interesting |
| 19:41 |
|
dons |
messages and unique contributors would be useful numbers |
| 19:41 |
|
dons |
also irc stats.. |
| 19:41 |
|
* kowey |
digs around in his mail |
| 19:41 |
|
dons |
http://xmonad.org/statistics.html |
| 19:41 |
|
lambdabot |
Title: xmonad : project statistics |
| 19:43 |
|
lispy |
dons: can you make the scripts/instructions for generating that stuff available? |
| 19:43 |
|
kowey |
http://hpaste.org/11520 |
| 19:43 |
|
C-Keen |
hm, how can I _set_ environment variables within haskell? |
| 19:43 |
|
dons |
:hoogle setEnv |
| 19:43 |
|
dons |
?hoogle setEnv |
| 19:43 |
|
lambdabot |
No results found |
| 19:43 |
|
dons |
mm |
| 19:43 |
|
C-Keen |
I tried that |
| 19:43 |
|
C-Keen |
and google |
| 19:44 |
|
C-Keen |
but I always get referred to System.Environment but that is for reading only |
| 19:44 |
|
dons |
oh, silly hoogle |
| 19:44 |
|
dons |
doesn't know about the unix package |
| 19:44 |
|
dons |
for political reasons |
| 19:44 |
|
dons |
:t System.Posix.Env.setEnv |
| 19:44 |
|
lambdabot |
String -> String -> Bool -> IO () |
| 19:44 |
|
kowey |
note that 'patch' refers to messages that have 'darcs patch:' in their title |
| 19:44 |
|
C-Keen |
thanks dons |
| 19:44 |
|
lispy |
C-Keen: I already asked these questions (I assume your trying to convert shell_harness) |
| 19:45 |
|
lispy |
C-Keen: the way to di it is on the mailing list :) |
| 19:45 |
|
lispy |
C-Keen: you'l want to avoid Posix so that the harness can work on windows |
| 19:45 |
|
C-Keen |
lispy: alright. Any particular reason why you did not succeed other than lack of time? |
| 19:45 |
|
kowey |
although having it working on unix is already a very good start |
| 19:46 |
|
lispy |
C-Keen: http://lists.osuosl.org/piperm[…]tober/014881.html |
| 19:46 |
|
lambdabot |
Title: [darcs-users] Help converting Perl to Haskell, http://tinyurl.com/5z2fgl |
| 19:46 |
|
lispy |
C-Keen: lack of time yeah |
| 19:47 |
|
C-Keen |
lispy: I will have a try |
| 19:47 |
|
lispy |
C-Keen: on windows you fetch the env via getEnv in System.Environment |
| 19:48 |
|
lispy |
C-Keen: then you append the env you want to use to that and pass the whole thing on to runProcess |
| 19:49 |
|
C-Keen |
lispy: ok, I will do a unix version first, as I don't have a windows system to test on |
| 19:49 |
|
beschmi |
kowey: I did some test related to http://bugs.darcs.net/issue1068 |
| 19:49 |
|
lambdabot |
Title: Issue 1068: annotate stack overflow - Darcs bug tracker |
| 19:49 |
|
beschmi |
http://hpaste.org/11523 |
| 19:50 |
|
* sm |
notes that gmane's stats http://dir.gmane.org/gmane.com[…]ontrol.darcs.user are stale, someone should bug them |
| 19:50 |
|
lambdabot |
Title: Gmane -- Mail To News And Back Again |
| 19:51 |
|
kowey |
beschmi: are those two links related? (i do like the idea of being able to do darcs changes in 5 seconds, and not 2 minutes, though) |
| 19:52 |
|
lispy |
C-Keen: well, the functions you'll want to use on windows will work on unix too. So even if you can't test it, you can write it in an anticipating way (you only have to write 1 new function that is pretty simple) |
| 19:52 |
|
kowey |
beschmi: any idea why a stack overflow in particular? |
| 19:52 |
|
C-Keen |
ok |
| 19:53 |
|
beschmi |
it's the same file, Annotate shouldn't take much more time but I haven't changed it yet. |
| 19:54 |
|
beschmi |
kowey: the code will change a lot, so I wont spend much time changing stack overflows in old code |
| 19:54 |
|
kowey |
ok! |
| 19:54 |
|
kowey |
:-) |
| 19:55 |
|
kowey |
Heffalump: did you say you fixed your sprint-slurpy bugs? |
| 19:55 |
|
beschmi |
when I filtered the patchset for annotate, annotate also finished in 8M for me |
| 19:55 |
|
kowey |
compared to... never? |
| 19:56 |
|
* kowey |
thinks 8 minutes is a terrific alternative to never |
| 19:56 |
|
kowey |
he says vapidly |
| 19:56 |
|
beschmi |
I meant with stack set to 8 Megabyte |
| 19:56 |
|
kowey |
hehe |
| 19:56 |
|
* sm |
pokes gmane.discuss |
| 19:57 |
|
kowey |
oh, I see now, rereading the bugtracker |
| 19:58 |
|
|
sm left #darcs |
| 19:58 |
|
|
sm joined #darcs |
| 20:04 |
|
lispy |
and so what is left wrt to bytestring? We need to see if our bytestring can work on 6.6? |
| 20:05 |
|
dons |
yes, tidy things up so the parts of bytestring we use are also usable with 6.6's bytestring |
| 20:05 |
|
dons |
api should be much the same, modulo the move of two modules (Internal/Unsafe from Base) |
| 20:05 |
|
lispy |
so the first hurdle there is our LANGUAGE usage |
| 20:05 |
|
dons |
and finishing off that. |
| 20:05 |
|
lispy |
dons: iirc we fixed that |
| 20:05 |
|
lispy |
we removed the unsafe/internal |
| 20:05 |
|
lispy |
I thought |
| 20:06 |
|
dons |
all uses? |
| 20:06 |
|
dons |
we removed some. i'm not sure we removed all. |
| 20:06 |
|
lispy |
I think so |
| 20:06 |
|
dons |
that'd be nifty |
| 20:06 |
|
dons |
there's not that much of bytestring actually used |
| 20:06 |
|
dons |
so it seems doable |
| 20:07 |
|
beschmi |
anyone here familiar with Repository.Internal? |
| 20:09 |
|
Heffalump |
beschmi: not familiar, but I've looked at it a bit |
| 20:10 |
|
beschmi |
darcs changes file spends a lot of time checking if file has been renamed in unrecorded patches |
| 20:11 |
|
beschmi |
it calls "get_unrecorded_unsorted repository", but I think it should suffice to look into pending instead of checking the complete working directory |
| 20:12 |
|
|
InkBottle joined #darcs |
| 20:12 |
|
Heffalump |
renames need to be explicitly signalled, right? So that sounds right to me. |
| 20:14 |
|
beschmi |
yes, I'll have to look at apply_to_filepaths which is used like "files' = apply_to_filepaths (invert unrec) files" to be sure |
| 20:14 |
|
|
mcxx joined #darcs |
| 20:15 |
|
beschmi |
I'm wondering if there is a comparable function to get_unrecorded_unsorted that just returns the patches in pending |
| 20:17 |
|
|
dcoutts joined #darcs |
| 20:17 |
|
beschmi |
read_pending seems to be right |
| 20:18 |
|
C-Keen |
beschmi: there is |
| 20:19 |
|
C-Keen |
beschmi: yes read_pending it is |
| 20:19 |
|
* C-Keen |
has already spend a while on Repository.Internal today |
| 20:19 |
|
beschmi |
ok, so I just have to handle the Sealed and I'll be fine. Thanks. |
| 20:21 |
|
beschmi |
C-Keen: ah, what have you been looking at? |
| 20:21 |
|
C-Keen |
beschmi: maybe you want to use slurp_pending? |
| 20:21 |
|
C-Keen |
beschmi: just printing a warning when you did darcs whatsnew on nonexistant or nonrecorded files |
| 20:22 |
|
C-Keen |
beschmi: but I needed a way to tell whether I know that FilePath already |
| 20:22 |
|
beschmi |
i see. |
| 20:23 |
|
C-Keen |
(nothing that interesting) |
| 20:25 |
|
beschmi |
C-Keen: unsafeUnseal `fmap` read_pending seems to fit the bill here. |
| 20:25 |
|
C-Keen |
beschmi: unsafeUnseal? |
| 20:25 |
|
C-Keen |
beschmi: and here: in your case? |
| 20:27 |
|
beschmi |
yes, in my case. fits the bill as in: it compiles and passes simple tests. |
| 20:30 |
|
C-Keen |
:) |
| 20:30 |
|
C-Keen |
good night |
| 20:34 |
|
|
InkBottle joined #darcs |
| 20:40 |
|
dons |
anyone looked at haskeline? |
| 20:40 |
|
dons |
i can't build it, and it seems to require lots of things |
| 20:40 |
|
dons |
surely something like editline would be a simpler alternative? (bundled with ghc , across platforms) |
| 20:40 |
|
dons |
Igloo: esp. if editline ends up on hackage... |
| 20:41 |
|
kowey |
maybe Judah hangs out on IRC and can comment? |
| 20:41 |
|
Heffalump |
would someone else mind testing out issue1017 on latest darcs? |
| 20:41 |
|
Heffalump |
latest unstable that is |
| 20:42 |
|
kowey |
just pulling the two patches, right? |
| 20:43 |
|
Igloo |
Just one patch |
| 20:43 |
|
Heffalump |
it should be fixed with whatever is currently in the unstable tree |
| 20:43 |
|
Igloo |
Not the 20char one |
| 20:43 |
|
kowey |
oh |
| 20:43 |
|
kowey |
ok, I'll just pull the mv patch and not the 20char one |
| 20:44 |
|
Igloo |
I wonder if David test the issue in a compiler without the other patches he was pulling |
| 20:44 |
|
Igloo |
What did the actual issue closing patch do? Just add something to a changelog or something? |
| 20:44 |
|
Heffalump |
move the test over from bugs to tests |
| 20:45 |
|
Igloo |
OK, so he might have tested in his current compiler as he was deciding which patches from teh bundle to pull |
| 20:45 |
|
Heffalump |
ah, right |
| 20:46 |
|
Heffalump |
annoyingly, my slurpy stuff depends on don's LANGUAGE pragmas |
| 20:46 |
|
Heffalump |
if David rejects stuff low down the dependency tree of the sprint work, we're going to have a problem. |
| 20:46 |
|
Igloo |
No, you just have to implement darcs transplant :-) |
| 20:47 |
|
Heffalump |
that's a hack that still causes dependency problems |
| 20:47 |
|
dons |
i think it is unhealthy for all the hackathon workers to be worrying about whether the president will veto our work |
| 20:47 |
|
Heffalump |
well, not dependency problems, problems with different people having different patches |
| 20:47 |
|
Igloo |
It doesn't cause dependency problems if it does what I think it does |
| 20:47 |
|
dons |
it makes it scary/hard to contribute |
| 20:47 |
|
Igloo |
Right, agreed, but people who have patches from non-official repos need to expect that sort of problem |
| 20:47 |
|
dons |
and not how open source should be. so we either need to ignore this stressor, or do somehting else. |
| 20:47 |
|
Heffalump |
dons: s/David rejects stuff/there's a problem with stuff/ if you like |
| 20:48 |
|
C-Keen |
I wonder whether we should use one of the available haskel shells for scripting... I feel like reinventing the wheel with writing a backtick and "which" replacement |
| 20:48 |
|
dons |
i just had to put out of my mind the idea that things would be rejected, otherwise i could do no work |
| 20:48 |
|
dons |
makes me feel sick about the project, if hours and hours of new contributor work would be rejected. |
| 20:48 |
|
dons |
so... sigh. |
| 20:49 |
|
Igloo |
Rejecting things isn't necessarily bad. It's just particularly painful at something like a sprint, when lots of entangled patches are generated before early ones have a chance to be rejected |
| 20:49 |
|
Heffalump |
Igloo: right. |
| 20:49 |
|
kowey |
folks, please give us a week or so to let the dust settle |
| 20:49 |
|
dons |
biggest challenge facing darcs => working out how to make decisions when the key veto power is held by someone not involved in those decisoins |
| 20:49 |
|
kowey |
Heffalump: passes |
| 20:49 |
|
Heffalump |
kowey: ok, thanks |
| 20:49 |
|
Heffalump |
let's hope Igloo's explanation is right |
| 20:50 |
|
kowey |
well one thing is that we need to increase david's involvement in key decisions |
| 20:50 |
|
kowey |
by doing a better job reporting back to him |
| 20:50 |
|
Heffalump |
dons: I have to say, that while that kind of attitude is great for getting stuff done, it's also the kind of thing that causes the kind of package dependency mess we now have with GHC |
| 20:51 |
|
kowey |
or by working on increasing the amount of delegation of responsibility |
| 20:51 |
|
Heffalump |
kowey: except that with sprints, unless he's around, we're stuffed, for the reason Igloo says |
| 20:51 |
|
kowey |
ok, sprints is a technical problem (a nice one to have) |
| 20:52 |
|
kowey |
and we do need to find a way to get these patches in, I agree! |
| 20:52 |
|
Heffalump |
I think we just have to insist that David accepts a slightly messy patch history (i.e. a manual rollback of the ones he doesn't want, if ones he does want depend on them) |
| 20:52 |
|
dons |
its a broken project management model currently, we must admit. either david reduces his influence (to be just patch theory reviewer) , or he participates in the decisions |
| 20:52 |
|
kowey |
Heffalump, yes |
| 20:52 |
|
Heffalump |
He does participate in the decisions. |
| 20:52 |
|
dons |
after the fact. |
| 20:52 |
|
kowey |
no amending of sprint patches, too difficult |
| 20:53 |
|
Heffalump |
so your complaint is that he wasn't available over the weekend. |
| 20:53 |
|
dons |
someone will have to explain, e.g. why bytestring support was added, or cabal support |
| 20:53 |
|
Igloo |
You could have had a discussion before the sprint to get an agreement in principle |
| 20:53 |
|
Heffalump |
dons: yes, that needs to be explained in any case. |
| 20:53 |
|
Igloo |
The details may still need to be amended, which makes reviewing a pain as you can't amend the patches, but it would be better than having things rejected afterwards (if that's what happens) |
| 20:54 |
|
dons |
we burn a lot of cycles trying to massage things through david's filter. |
| 20:54 |
|
Heffalump |
Because his goals differ from your cavalier "just do it" approach. |
| 20:54 |
|
Heffalump |
Igloo: I don't understand your last point. |
| 20:54 |
|
dons |
sure. and you can see it in the code base. |
| 20:54 |
|
* kowey |
likes the very agile approach, but would like to have David's conservatism around as a countervailing force :-) |
| 20:55 |
|
Igloo |
dons: But taking things slowly can have advantages, e.g. darcs' move to bytestring would have been easier if bytestring hadn't been put into base too early |
| 20:55 |
|
kowey |
but we just have to find a way to keep things healthy |
| 20:55 |
|
dons |
its very old-feeling. and effort is spent on weird projects, like franchise |
| 20:55 |
|
Heffalump |
Nobody who doesn't want to is spending effort on franchise. |
| 20:55 |
|
Igloo |
Heffalump: Not important |
| 20:55 |
|
mornfall |
Heffalump: You are wrong here. |
| 20:55 |
|
dons |
conservatism is key. xmonad has the same requirements. |
| 20:56 |
|
Heffalump |
xmonad is much newer and smaller |
| 20:56 |
|
dons |
but we still encourage refactoring, documentation and clean up patches. and the decision authortiy people participate in dicussions. |
| 20:56 |
|
dons |
Heffalump: not much smaller now. about 10k loc |
| 20:56 |
|
Heffalump |
and the maintainers happen to be much more available than David is |
| 20:56 |
|
Heffalump |
that's a factor of 3 or so |
| 20:56 |
|
dons |
but unlike darcs, the 'extensions' are not in the core. |
| 20:56 |
|
dons |
so its easier to review thiiiings |
| 20:56 |
|
|
balor joined #darcs |
| 20:57 |
|
kowey |
darcs really does need to move towards being more modular |
| 20:57 |
|
Heffalump |
and it happens to be much easier to test, and much less intricate in what it actually does |
| 20:57 |
|
kowey |
we all accept this (david too) |
| 20:57 |
|
dons |
no experiments in the core. (while things like oh, libwww or sha256 v sha1, are in the core here, making it hard to clean up) |
| 20:57 |
|
dons |
well, i hope the bytestring stuff makes it in, since then i'd be inspired to clean up more things. |
| 20:57 |
|
Heffalump |
darcs started many years before xmonad |
| 20:57 |
|
mornfall |
kowey: Right, but he makes it hard to get through patches making things more modular. |
| 20:57 |
|
dons |
there's photos of all the modernisation that we thought was needed on the whiteboards |
| 20:57 |
|
Heffalump |
We'd all like to see the bytestring stuff in, I think. |
| 20:57 |
|
Igloo |
I think a rewrite is the best way forward, which is partly why camp exists |
| 20:58 |
|
Heffalump |
But your attitude that David is a roadblock is extremely counterproductive, IMO. |
| 20:58 |
|
dons |
i think more of the problem is not that he'd reject things, just that he's not around |
| 20:58 |
|
dons |
so we spin our wheels wondering if this work is useful or not |
| 20:58 |
|
Heffalump |
We should fit our processes around the fact that people have lives outside Haskell. |
| 20:58 |
|
dons |
Heffalump: i'm not sure he is a roadblock. just the position of a) holding veto power, and b) not being around, means we do all this work under fear of rejection |
| 20:58 |
|
Igloo |
dons: Did you send him an e-mail that he didn't reply to? |
| 20:58 |
|
dons |
which is the counterproductive thing |
| 20:59 |
|
mornfall |
Heffalump: Exactly, and that's why having a single bottleneck like we do is making the project uninteresting to contribute to. |
| 20:59 |
|
kowey |
well the issue according to david |
| 20:59 |
|
dons |
Igloo: no, so he might well have replied to stuff. |
| 20:59 |
|
mornfall |
Heffalump: Because we don't have 8 hours a day to sink in it... |
| 20:59 |
|
|
RaceCondition joined #darcs |
| 20:59 |
|
Heffalump |
The cost of having multiple people pulling the project in different directions would also be high. |
| 20:59 |
|
dons |
*uncertainty* is what worries me. |
| 20:59 |
|
kowey |
is that darcs is still easy enough to break and there still are not enough people who understand darcs well enough for him to give up the veto power |
| 21:00 |
|
kowey |
(again, this is the conservatism) |
| 21:00 |
|
kowey |
I agree that david's using the veto on non-core issues (build systems, versions of GHC to support, etc) is not very productive |
| 21:00 |
|
mornfall |
kowey: The fear of breaking it makes things worse. |
| 21:00 |
|
Heffalump |
from some points of view, that is a core issue |
| 21:00 |
|
dons |
and there's a lot of uncertainty left over from the darcs 2.0 release, and other comments about not reading mailing lists and so on. so that's casts a pall over contributions for new people. |
| 21:00 |
|
mornfall |
kowey: If someones breaks it in a way that goes through the suite, we at least know that suite needs to be improved, and how. |
| 21:01 |
|
mornfall |
kowey: If we keep not doing things because they might break something and there's noone who knows whether they are fine or not, we won't help anything. |
| 21:01 |
|
kowey |
mornfall: subtle breakage, like the pending patch bug that bit darcs 1.0.9 |
| 21:01 |
|
kowey |
and that we only found out about after darcs 2.0 |
| 21:01 |
|
mornfall |
kowey: The core is crufty, opaque and bitrotting. |
| 21:01 |
|
dons |
the expected standards for contributions are also a bit ill-defined , imo. (purely a process thing) |
| 21:01 |
|
dons |
we could start requiring all code to be commented... |
| 21:01 |
|
Heffalump |
I don't find the code that opaque. |
| 21:01 |
|
mornfall |
kowey: And because we don't want to change it due to breakage-fear, that's not going to change. |
| 21:01 |
|
Heffalump |
It's somewhat crufty, but not that bad. |
| 21:01 |
|
mornfall |
Catch 22, congrats. |
| 21:02 |
|
Heffalump |
Actually I think it's perfectly possible to clean up the cruft, carefully. |
| 21:02 |
|
mornfall |
Heffalump: Then where all those difficult, elusive bugs come from? |
| 21:02 |
|
Heffalump |
the fact that darcs is solving a difficult problem |
| 21:02 |
|
kowey |
those aren't code issues |
| 21:02 |
|
mornfall |
Heffalump: Well, not really. |
| 21:02 |
|
dons |
Heffalump: the number of times duncan and i asked lispy "what the hell is this?" was funny. :) mostly from lack of comments, or lack of standard idioms. so i'd hope we could get some style gudies |
| 21:02 |
|
dons |
basic contribution standards |
| 21:02 |
|
mornfall |
Heffalump: Darcs is *making* it a difficult problem. |
| 21:02 |
|
mornfall |
That's the issue. |
| 21:03 |
|
kowey |
ok, dons, can we sum up what you're saying so far? |
| 21:03 |
|
dons |
http://code.haskell.org/xmonad/STYLE |
| 21:03 |
|
kowey |
(1) we need more documentation about our processes |
| 21:03 |
|
dons |
a style guide that was required, and applied to the existing code, would help contributions |
| 21:03 |
|
Heffalump |
I'm not yet all that familiar with the code, but I haven't found it that hard to understand. Invariants certainly need better documentation. |
| 21:03 |
|
kowey |
e.g. coding sytle |
| 21:03 |
|
Heffalump |
But that's true of most codebases. |
| 21:04 |
|
kowey |
(2) we need David to either be around more for decision making or to leave more decisions up to the community |
| 21:04 |
|
Heffalump |
Does David tend to reject patches on style grounds? |
| 21:04 |
|
dons |
kowey: 2) the contribution process , in its current form, needs to be documented. |
| 21:04 |
|
kowey |
did I miss or mischaracterise anything? |
| 21:04 |
|
kowey |
dons: so "How to submit a patch to darcs, and what to expect when you do so?" |
| 21:04 |
|
dons |
yes. |
| 21:04 |
|
dons |
http://haskell.org/haskellwiki[…]elopment_tutorial |
| 21:05 |
|
lambdabot |
Title: Xmonad/xmonad development tutorial - HaskellWiki |
| 21:05 |
|
dons |
how to contribute to xmonad. |
| 21:05 |
|
dons |
coding style requirements, http://xmonad.org/xmonad-docs/[…]Developing.html#8 |
| 21:05 |
|
kowey |
ok, that sounds like something concrete we can do |
| 21:05 |
|
lambdabot |
Title: XMonad.Doc.Developing, http://tinyurl.com/58mu8n |
| 21:05 |
|
dons |
we're getting there. |
| 21:05 |
|
dons |
the sprint group is definitely modernising. |
| 21:05 |
|
kowey |
mornfall, dons, I really really really appreciate this sort of discussion |
| 21:05 |
|
dons |
so if those patches make it in, a lot of the uncertainty of the current political structure will be removed |
| 21:06 |
|
kowey |
but I hope you can understand that change can be a slow process that requires a lot of patient work |
| 21:06 |
|
dons |
yes. |
| 21:06 |
|
dons |
more than any project i've ever been involved in :) |
| 21:06 |
|
mornfall |
Well, let me know when things change, I'm too busy in the meantime. : - \ |
| 21:06 |
|
kowey |
and the reason it's important that we have these discussions is to have a clear picture what we want to change INTO |
| 21:06 |
|
kowey |
just know that it won't happen overnight |
| 21:07 |
|
dons |
i'm fine for the troika (well, what's a 2-headed troika called?) of kowey and lispy driving things. makes it so so much easier |
| 21:07 |
|
mornfall |
(I will still consider contributing to darcs, as opposed to spinning off, although at some point I have been sort of decided to do the latter...) |
| 21:07 |
|
kowey |
mornfall: well you should work on Camp so we have 2 projects and not 3 :-) |
| 21:08 |
|
mornfall |
dons: Двойка maybe? : - ) |
| 21:08 |
|
mornfall |
(That would be dvoika, transliterated.) |
| 21:09 |
|
dons |
i think we're on the verge here of opening up darcs a lot. |
| 21:09 |
|
mornfall |
kowey: As I have said before, there are fundamental disagreements on the theory, or so I think at least. |
| 21:09 |
|
dons |
one or two more sprints, a few more announcements, a more accessible code base (i.e. haddockised on hackage!) |
| 21:09 |
|
dons |
would help a lot |
| 21:09 |
|
kowey |
the kowey agenda is one of consensus building and gradual reform |
| 21:09 |
|
kowey |
and also building momentum by fixing technical issues |
| 21:09 |
|
dons |
and this thing could be revived. so i'm keen to see this happen |
| 21:09 |
|
kowey |
like the lack of a contributor's guide and darcs transplant |
| 21:09 |
|
Heffalump |
dons: hackage/cabal is not the be-all and end-all of a project |
| 21:10 |
|
mornfall |
kowey: I think darcs transplant is more of a problem than a solution. |
| 21:10 |
|
kowey |
ok so I'm relieved we agree that there is progress at least |
| 21:10 |
|
dons |
Heffalump: not suggesting it is, but it helps a lot attracting new devs. |
| 21:10 |
|
mornfall |
kowey: Given that darcs will break horribly when transplanted and original repos get mixed... |
| 21:10 |
|
dons |
and we're trying to do that aren't we? |
| 21:10 |
|
Heffalump |
I'm not convinced about that. |
| 21:10 |
|
Heffalump |
autoconf is hardly scary for a developer |
| 21:11 |
|
dons |
? |
| 21:11 |
|
mornfall |
Heffalump: Is it? |
| 21:11 |
|
kowey |
ah, I still think of transplant as a disposable operation |
| 21:11 |
|
kowey |
but mornfall, let's leave that discussion out |
| 21:11 |
|
Heffalump |
mornfall: it's painful to change, not to use |
| 21:11 |
|
kowey |
the point is that there is a *LOT* of work to do |
| 21:11 |
|
dons |
autoconf is fine. autoconf + cabal is fine. documentation is better. online source docs are great! |
| 21:11 |
|
mornfall |
Heffalump: It's painful to use when it disagrees with you. |
| 21:11 |
|
kowey |
and only some of the work is controversial |
| 21:11 |
|
Heffalump |
and cabal is still a crappy build tool |
| 21:11 |
|
dons |
kowey: and people are keen to do it, as long as things get in. |
| 21:11 |
|
kowey |
there is so much stuff we can do that everybody can agree on |
| 21:11 |
|
kowey |
stuff we can do that is easy to get in |
| 21:12 |
|
kowey |
and what my aim is for us to do as much of that stuff as possible first |
| 21:12 |
|
dons |
Heffalump: did you see the cabal stuff doesn't require autoconf now? :) |
| 21:12 |
|
kowey |
one reason being that this allows david to be exposed to newcomers more |
| 21:12 |
|
kowey |
and also to build up trust in the community |
| 21:12 |
|
dons |
so, say i wanted to write some patches today, where do they go? |
| 21:12 |
|
Heffalump |
dons: so? It does that at the cost of being less portable (Windows excepted). Which is great for building distributions etc, but we should be aware of its limitations. |
| 21:12 |
|
dons |
the sprint repo is now read only? |
| 21:12 |
|
kowey |
still open |
| 21:12 |
|
dons |
or how do we keep working on that branch? |
| 21:13 |
|
Heffalump |
I would think briefly about the most appropriate branch to work on, then work on it. |
| 21:13 |
|
Heffalump |
If it's a follow-on to bytestring, do it on sprint. |
| 21:13 |
|
dons |
ok. |
| 21:13 |
|
Heffalump |
If not, and it won't conflict, then do it on a fresh unstable. |
| 21:13 |
|
dons |
and then push to sprint, which really means 'push to kowey's branch' ? |
| 21:13 |
|
dons |
which will then flow through to the head ? |
| 21:13 |
|
kowey |
that's one way to look at it |
| 21:13 |
|
Heffalump |
I think you have to take charge of getting your patches accepted. |
| 21:14 |
|
Heffalump |
Rather than dumping it all on kowey indefinitely. |
| 21:14 |
|
dons |
i just don't know where they go though. |
| 21:14 |
|
dons |
i'd like to build on the weekend work. |
| 21:14 |
|
dons |
ah well. either unstable or sprint. |
| 21:14 |
|
kowey |
dons: easy answer: please keeping pushing to the sprint branch |
| 21:14 |
|
Heffalump |
Has someone sent an email to David about that work yet? |
| 21:14 |
|
kowey |
no |
| 21:14 |
|
dons |
lispy summarised portland's stuff on the list. |
| 21:14 |
|
Heffalump |
It was a rhetorical question :-) |
| 21:14 |
|
dons |
but it's kowey's job, iirc? |
| 21:14 |
|
Heffalump |
we need to get his buy in for it, and explain the 6.6 strategy. |
| 21:15 |
|
dons |
right. so revisit those discussions. |
| 21:15 |
|
kowey |
i was waiting for him to polish off his current backlog, for what it's worth |
| 21:15 |
|
Heffalump |
I think kowey might have kindly volunteered to help out. It's not his "job" per se. |
| 21:15 |
|
kowey |
but in the meantime we should be drafting |
| 21:16 |
|
dons |
whats the 6.6 strategy to be? |
| 21:16 |
|
dons |
we /must/ continue supporting 6.6? or do we hope for the sprint code not to be released until support for 6.6 is dropped? |
| 21:16 |
|
dons |
if the former, then i'll install 6.6 and make the bytestring stuff work with it. |
| 21:16 |
|
dons |
if the latter, we continue as is. |
| 21:16 |
|
kowey |
the *easiest* thing we can do, imho is just to support 6.6 |
| 21:16 |
|
Heffalump |
well, easiest from the point of view of acceptance |
| 21:17 |
|
dons |
i hope not too many people use 6.6-compiled darcs |
| 21:17 |
|
Heffalump |
harder from the point of view of extra work |
| 21:17 |
|
kowey |
because this allows us to separate the question of accepting these patches from that of dropping 6.6 |
| 21:17 |
|
kowey |
both things we want to achieve |
| 21:17 |
|
Heffalump |
how easy would just importing bytestring into the sources conditionally be? |
| 21:17 |
|
dons |
Heffalump: i think we can avoid that. |
| 21:17 |
|
dons |
Heffalump: since 6.6 comes with bytestring 0.9 |
| 21:17 |
|
dons |
and we use very little of the api |
| 21:17 |
|
Heffalump |
what about withForeignPtr? |
| 21:17 |
|
dons |
and you happen to have a bytestring author here, who can make it work. |
| 21:18 |
|
Heffalump |
with how much effort? |
| 21:18 |
|
dons |
that's fine. we could just CPP our own. |
| 21:18 |
|
dons |
its a one liner. |
| 21:18 |
|
kowey |
ok, I'm not married to the idea of absolutely making sure it works on 6.6, but we should at the very least see if it is feasible to support 6.6 without much effort |
| 21:18 |
|
dons |
i think it is not too much work. |
| 21:18 |
|
Heffalump |
In that case I think you should do it. |
| 21:18 |
|
dons |
by doing all the refactoring, we reduced the code surface area |
| 21:18 |
|
dons |
making it easier to support 6.6 |
| 21:18 |
|
dons |
but until we decided to toss things out, it was intractable |
| 21:18 |
|
dons |
too much old code to support |
| 21:18 |
|
Heffalump |
great, then |
| 21:18 |
|
dons |
so yay, remove more code and 6.6 will continue to be easier. |
| 21:19 |
|
dons |
get rid of some of the alternative crypto and http thingies, and we'll have even easier code |
| 21:19 |
|
kowey |
where's our Fitness Guru? gwern would be happy to hear this |
| 21:19 |
|
Heffalump |
which http thingies do you want to throw away? |
| 21:19 |
|
dons |
smaller code helps accessibility and reduces the chance for people duplicating existing functions, too |
| 21:19 |
|
kowey |
dons: do you know about http://wiki.darcs.net/index.html/DarcsLibraries ? |
| 21:19 |
|
lambdabot |
Title: DarcsLibraries - DarcsWiki |
| 21:20 |
|
dons |
there's a lot of similar functions quite alike, sprinked around for various purposes |
| 21:20 |
|
kowey |
this was one of the first pages created after the GHC move |
| 21:20 |
|
dons |
Heffalump: perhaps we could just keep libcurl support? |
| 21:20 |
|
dons |
just choose one method. |
| 21:20 |
|
Heffalump |
and how do we ensure it's available everywhere? |
| 21:20 |
|
mornfall |
Well, I'd actually vote for the bytestring mini-http package. But libcurl is apparently much more real-world friendly, so that probably makes more sense. |
| 21:21 |
|
dons |
and mini-http doesn't exist. |
| 21:21 |
|
mornfall |
network-minihttp |
| 21:21 |
|
dons |
removing old experiments from the source seems like a profitable , simple task, anyway |
| 21:21 |
|
dons |
mornfall: where's that live? |
| 21:22 |
|
Heffalump |
what old experiments? |
| 21:22 |
|
mornfall |
At least I have a tar of that under my .cabal/packages... |
| 21:22 |
|
Heffalump |
You both seem to be ignoring the fact that the current HTTP choices are an aid to portability. How will you replace that if you just pick one? |
| 21:22 |
|
kowey |
dons: http://bugs.darcs.net/issue1178 |
| 21:22 |
|
lambdabot |
Title: Issue 1178: task: write up tutorial on how to contribute to darcs - Darcs bug tr ... |
| 21:22 |
|
dons |
Heffalump: we seem to have what, 3 network interfaces? 2 sha implementations? |
| 21:23 |
|
dons |
how many other conditionally compiled things? |
| 21:23 |
|
Heffalump |
yes, because of the performance/portability tradeoff |
| 21:23 |
|
dons |
but which ones are used in practice? since most people use the distro packages, which just compile with the defaults? |
| 21:23 |
|
dons |
are we supporting code used by only a handful of people? |
| 21:23 |
|
Heffalump |
what about on Windows? |
| 21:23 |
|
mornfall |
Heffalump: CURL is used on windows. |
| 21:23 |
|
mornfall |
Heffalump: And CURL is used also everywhere else. |
| 21:23 |
|
Heffalump |
with pain, yes |
| 21:24 |
|
mornfall |
Heffalump: Maybe. But still, noone seems to be really using the alternatives. |
| 21:24 |
|
dons |
the darcs.cabal file is good for seeing all the conditionally compiled variants of darcs |
| 21:24 |
|
dons |
who's using haskeline? |
| 21:24 |
|
mornfall |
Heffalump: So it probably makes sense to have one with less pain than 3 that noone uses and one painful. |
| 21:24 |
|
Heffalump |
how do you know that noone uses them? |
| 21:24 |
|
kowey |
haskeline addresses some requests for readline type features, I thought |
| 21:25 |
|
dons |
we can support N variants of darcs, but it is a drain on developers, and makes the code more complex. the project devs know which variants are best, so we should just pick one. |
| 21:25 |
|
mornfall |
dons: Fully agreed. |
| 21:25 |
|
Heffalump |
You seem to know which one is best. I say there is no one best choice. |
| 21:26 |
|
mornfall |
Heffalump: Because all HTTP options are inferior to cURL? |
| 21:26 |
|
dons |
color/type-witnesses/curses/terminfo/haskeline/external-zlib/external-bytestring/http/libwww/curl-pipelining/curl |
| 21:26 |
|
dons |
Heffalump: so are there N variants? or is there only 2? one for unix (curl) and one for windows (?) |
| 21:26 |
|
dons |
in practice, what binary of darcs do people use? |
| 21:26 |
|
dons |
just the default? |
| 21:26 |
|
Heffalump |
I don't know. |
| 21:26 |
|
kowey |
strike type-witnesses and curl-pipelining from that list |
| 21:26 |
|
mornfall |
dons: There's at least HTTP, cURL and libwww. |
| 21:26 |
|
Heffalump |
For Windows, there is no good default now. |
| 21:27 |
|
Heffalump |
Mainly because it's hard to build curl, for example. |
| 21:27 |
|
dons |
fwiw, galois wrote their curl binding becaues it was good for windows. |
| 21:27 |
|
mornfall |
Heffalump: But having 3 bad choices is about the same as having one bad choice. |
| 21:27 |
|
Heffalump |
It's a trade off |
| 21:27 |
|
Heffalump |
they are bad in different ways. |
| 21:27 |
|
mornfall |
Heffalump: It's not. |
| 21:27 |
|
Heffalump |
easy installation versus performance |
| 21:28 |
|
dons |
there's an interesting tradeoff: the majority (by far) use the defaults , since they use their distro packages |
| 21:28 |
|
Heffalump |
What do Windows users use? |
| 21:28 |
|
mornfall |
Heffalump: Binaries, if they can. |
| 21:28 |
|
dons |
but we support funky variants for a handful of people who compile by hand (and who then also tweak settings) |
| 21:28 |
|
mornfall |
If not, usually nothing. |
| 21:28 |
|
Heffalump |
There's no reliable Windows build yet, because of the pain on building on Windows. |
| 21:28 |
|
mornfall |
Only a handful will install GHC, (and msys in the past) to compile their own darcs. |
| 21:28 |
|
mornfall |
You say curl is difficult, but so is darcs itself. |
| 21:29 |
|
mornfall |
Heffalump: Which could have been solved by now, but it's everything entrenched on the anti-cabal sentiments, so we don't really make that much progress as we could. |
| 21:29 |
|
dons |
no more tax on development! |
| 21:29 |
|
mornfall |
And the fact that we are so afraid of cutting down on choices. |
| 21:30 |
|
* dons |
isn't afraid. toss the garbage. toss anything that adds tricky dependencies. just keep one of each thing. make it the default. |
| 21:30 |
|
mornfall |
All those options just show that we deal with bikeshedding by including all the choices. That doesn't scale and we suffer from that. |
| 21:31 |
|
Heffalump |
Toss portability. Toss out all the users that don't do things the dons way. |
| 21:31 |
|
dons |
e.g. haskeline support shoudl go, since haskeline adds about 10 new dependencies |
| 21:31 |
|
dons |
Heffalump: no. choose one portable solution (probably curl) |
| 21:31 |
|
mornfall |
dons: Right, but unfortunately, you still apparently can't overturn the rest. |
| 21:31 |
|
dons |
and support that well. |
| 21:31 |
|
dons |
rather than doing half-arsed efforts 3 or 4 ways |
| 21:31 |
|
Heffalump |
no, support it well, then remove the others as properly redundant. |
| 21:31 |
|
dons |
sure. |
| 21:31 |
|
Heffalump |
If you think we should pick one, you should make that one obviously the best, *then* drop the others. |
| 21:31 |
|
dons |
either way, a decision is made to just pick one. |
| 21:32 |
|
Heffalump |
Not just claim that they don't matter. |
| 21:32 |
|
mornfall |
dons: Or the other option is to require haskeline, if cabal-install can get it right on all platforms. But we just need to pick *one*. (I'm fine with either.) |
| 21:32 |
|
* dons |
isn't sure Heffalump isn't in fervent agreement |
| 21:32 |
|
Heffalump |
You sound like you would be happy to drop the others first and then clean up the mess later. I wouldn't. |
| 21:32 |
|
mornfall |
Heffalump: Well, that's how development is done. |
| 21:32 |
|
dons |
Heffalump: its an atomic process :) as long as before mess >>= after clean |
| 21:33 |
|
Heffalump |
mornfall: rubbish. |
| 21:33 |
|
dons |
we just need to agree that afterwards the result should be clean. |
| 21:33 |
|
dons |
no one is suggesting *releasing* without support |
| 21:33 |
|
Heffalump |
Good software engineering involves treading carefully and not taking unnecessary risks. |
| 21:33 |
|
mornfall |
Heffalump: You need to break some eggs to make an omelette. |
| 21:33 |
|
dons |
and releases are the atomic transactions |
| 21:33 |
|
mornfall |
Heffalump: Oh, untrue. |
| 21:33 |
|
mornfall |
So very untrue. |
| 21:34 |
|
dons |
so everyone agrees that it isn't a useful use of our time to support N variants for M features? |
| 21:34 |
|
dons |
that where possible, one should be chosen and made the default? |
| 21:34 |
|
mornfall |
Of course, you have to tread carefully when you are dealing with a stable line. But if you have done your homework, you can make radical changes. If you haven't, you have to do radical changes, then do your homework and then start to feel safe again. |
| 21:34 |
|
Heffalump |
No, you'd just like it to be untrue, because it would save you having to actually think about people that don't do things your way. |
| 21:34 |
|
dons |
with long term benefits of a smaller, simpler code base, simpler build system, simpler dependencies and simpler deployment? |
| 21:34 |
|
* kowey |
goes home |
| 21:35 |
|
Heffalump |
dons: I agree that it comes at a cost. |
| 21:35 |
|
dons |
yep. we'd be removing support for things. |
| 21:35 |
|
mornfall |
Heffalump: Cost that for one I won't pay. It's easier to use git than to fight with darcs development model just to make darcs good enough to use. |
| 21:36 |
|
dons |
yes, there's bigger movements afoot that all this is for. |
| 21:36 |
|
Heffalump |
dons: the simpler deployment is only in situations that fit in with your world |
| 21:36 |
|
dons |
like xmonad's fight against awesome and dwm, we have to compete on several fronts, while paying a tax for not using gcc |
| 21:37 |
|
dons |
projects cannibalise each others features. the one that is hardest to install loses, without a very compelling use case. |
| 21:37 |
|
Heffalump |
if someone would cannibalise patch theory, that'd be great. |
| 21:37 |
|
dons |
users don't care about the theory :/ |
| 21:38 |
|
mornfall |
Yeah, that's why they just use git. |
| 21:38 |
|
dons |
worse is better, and all that. |
| 21:38 |
|
Heffalump |
I mean the UI properties that the theory provides. |
| 21:38 |
|
mornfall |
Heffalump: There aren't many. |
| 21:38 |
|
dons |
and git offers branches and rebase |
| 21:38 |
|
mornfall |
Right. And the interactive commit is better than darcs', these days, I hear. |
| 21:39 |
|
Heffalump |
Well, they're important to me. If you don't need them, why aren't you using git? |
| 21:39 |
|
dons |
deep cherrypicking doesn't seem compelling, sadly |
| 21:39 |
|
mornfall |
And they have a GUI browser. |
| 21:39 |
|
mornfall |
Etc. |
| 21:39 |
|
dons |
Heffalump: "If you don't need them, why aren't you using git?" mmm. are we actually interested in competing with git? |
| 21:39 |
|
dons |
or is it game over? |
| 21:39 |
|
dons |
what's the compelling case we're making to the world for darcs over git? |
| 21:39 |
|
mornfall |
dons: If attitude doesn't change, I'd call it a game over. |
| 21:39 |
|
dons |
now that git cannibalised most of our good stuff? |
| 21:39 |
|
Heffalump |
Why is it a competition? |
| 21:40 |
|
mornfall |
Heffalump: Because there's only a finite pool of developers. |
| 21:40 |
|
Heffalump |
Aren't we just trying to improve the world? |
| 21:40 |
|
dons |
i'd be happy to see darcs released and frozen, perfectly formed. |
| 21:40 |
|
mornfall |
If you lose enough of them, it's game over. |
| 21:40 |
|
dons |
i think kowey's doing a great job helping keep the big vision out there, fwiw. |
| 21:40 |
|
mornfall |
dons: No such thing as a perfect piece of software. |
| 21:40 |
|
dons |
but we can do a lot more to state the case for darcs. |
| 21:41 |
|
dons |
the only simple vcs. |
| 21:41 |
|
mornfall |
I wish the core was simple, too. |
| 21:41 |
|
dons |
"don't get git rebase? here, my grandma gets darcs" |
| 21:41 |
|
mornfall |
The conflictor theory makes me feel uneasy. |
| 21:41 |
|
lispy |
mornfall: yeah |
| 21:42 |
|
lispy |
we can't argue robustness even |
| 21:42 |
|
lispy |
and we're using Haskell |
| 21:42 |
|
mornfall |
Right. That's sad. |
| 21:42 |
|
Heffalump |
until Igloo proves it, anyway. |
| 21:42 |
|
mornfall |
Heffalump: That won't make it any less complex and error-prone. |
| 21:42 |
|
lispy |
Heffalump: right |
| 21:42 |
|
lispy |
Heffalump: we need more research |
| 21:42 |
|
Heffalump |
someone could write it in Coq/Agda, perhaps. |
| 21:43 |
|
lispy |
Heffalump: While I think that would be helpful, I think we need more chalkboard proofs |
| 21:43 |
|
Heffalump |
there's stuff to do. And yes, to some extent there's a race for mindshare. |
| 21:43 |
|
Heffalump |
But we can't throw everything else out to compete in that race. |
| 21:44 |
|
Heffalump |
lispy: that's what Igloo is doing now |
| 21:44 |
|
lispy |
dons: with window managers you don't get pressure from other people to use their WM in order to collaborate with them |
| 21:44 |
|
Igloo |
mornfall: I don't think camp's theory is complex |
| 21:45 |
|
mornfall |
Igloo: Maybe you don't, because you are very familiar with it. |
| 21:45 |
|
Igloo |
And if it's proven correct then it's not error prone |
| 21:45 |
|
lispy |
dons: so I think the point about "which is easier to install" is different for vcs. It more about, which projects use it |
| 21:45 |
|
dons |
yes. again, something we've not addressed in a long time. |
| 21:45 |
|
mornfall |
Igloo: If it's complex, it is hard to implement right. No matter how many proofs you have for it. |
| 21:45 |
|
Heffalump |
Igloo: if it's proven correct and that proof corresponds to the source. |
| 21:46 |
|
Heffalump |
hence Coq/Agda. |
| 21:46 |
|
lispy |
if the darcs project itself uses darcs but seems unhealthy, then why would anyone pick darcs? |
| 21:46 |
|
mornfall |
lispy: Historical reasons, habit. |
| 21:46 |
|
mornfall |
I use darcs out of habit, really. |
| 21:46 |
|
mornfall |
I don't have any arguments left, and there's pressure to drop it, for a good measure. |
| 21:47 |
|
lispy |
Heffalump: it's also not clear that we could end up with an implementation that is also high performance if we extract it from Coq/Agda |
| 21:47 |
|
Heffalump |
if you really don't see the benefits of the darcs UI, or believe in patch theory at some level, you probably should do that |
| 21:47 |
|
Heffalump |
lispy: hmm, true |
| 21:47 |
|
mornfall |
It's a very hard argument to fight that you need the "nice" properties when it makes everyone's everyday life harder. |
| 21:48 |
|
dons |
Heffalump: so what do you think the goal for darcs now is? just to provide an implementation for the patch theory true believers? or ? |
| 21:48 |
|
Heffalump |
I'd like to see it take over the world. But only on its own terms. |
| 21:48 |
|
Igloo |
mornfall: The conflictor implementation is not complex |
| 21:49 |
|
mornfall |
For me, the goal is to provide a practical, robust and elegant VCS. Git fails on the elegant and partially on robust (due to flaky merge). |
| 21:49 |
|
mornfall |
Igloo: So why does darcs get it wrong? |
| 21:49 |
|
lispy |
People seem more tolerant to incorrect merges than they do to corrupted repositories |
| 21:49 |
|
Igloo |
mornfall: I'm talking about camp's conflictors here, darcs's are more complicated |
| 21:49 |
|
mornfall |
lispy: That's why I say partially. |
| 21:50 |
|
Heffalump |
An important thing is that git actually deliberately has a different philosophical standpoint: git thinks it's better to decide on the merge algorithm late, darcs thinks it's better to decide on it early. |
| 21:50 |
|
Igloo |
darcs currently gets it wrong becuase it doesn't have a complete implementation of the darcs2 theory, and the darcs1 theory is incorrect |
| 21:50 |
|
mornfall |
Igloo: But you aren't implementing darcs2 theory either. |
| 21:50 |
|
Igloo |
The thing that is hard is getting a correct theory, not implementing it |
| 21:51 |
|
Igloo |
No, because darcs2 theory is more complicated than is necessary |
| 21:51 |
|
Igloo |
And counterintuitive, IMO |
| 21:51 |
|
mornfall |
Igloo: But the part of the theory that deals with changes that don't conflit is extremely simple, right? |
| 21:51 |
|
Igloo |
Yes (simple, but large, as it's quadratic in the number of patch types) |
| 21:52 |
|
mornfall |
Igloo: Yours is counterintuitive on the identical change conflict again, one that was one of the worst bits of darcs1... |
| 21:52 |
|
dons |
Heffalump: and git doesn't care about theory. theory is like 5% of their effort. |
| 21:52 |
|
Igloo |
mornfall: Are you saying darcs handles non-conflicting changes incorrectly? |
| 21:52 |
|
mornfall |
dons: That's probably why they get so many users. : - ) |
| 21:52 |
|
Heffalump |
mornfall: you're confusing intuition about the theory with intuition about the effects of the theory, I think |
| 21:53 |
|
mornfall |
Heffalump: Possibly. But that's why I don't think I want to practically use that version. |
| 21:53 |
|
mornfall |
Igloo: No, I'm not. |
| 21:53 |
|
Heffalump |
AFAIK camp's theory is agnostic to whether identical changes are conflicts or not. |
| 21:54 |
|
Igloo |
It's not agnostic, but I believe that it can be extended to make them not conflict |
| 21:54 |
|
Igloo |
But making them not conflict makes the theory more complex, which is why I'm not doing that at the moment |
| 21:54 |
|
mornfall |
Well, I don't think the "megapatch" approach is really compatible with non-conflicting prims. (And that's also where I disagree with the darcs2 stance on identical changes...) |
| 21:55 |
|
Igloo |
I think the megapatch approach is very important for an intuitive UI |
| 21:55 |
|
Heffalump |
mornfall's idea of an intuitive UI is nothing like everyone else's idea, IIRC :-) |
| 21:56 |
|
Heffalump |
btw, the philosophy of supporting multiple ways of doing things is also an advantage if you want to replace something, because you can introduce the new way first then obsolete the old way once it beds down. |
| 21:56 |
|
mornfall |
Could be, apparently there are complaints about my UI design. Although there are quite some people who like it. (So it's, I guess, love/hate sort of design.) |
| 21:57 |
|
Heffalump |
I think to do the stuff you were talking about a while back, you'd need to start a project yourself. It just wouldn't fit into darcs at all. |
| 21:58 |
|
mornfall |
Yeah, I know. |
| 22:00 |
|
mornfall |
But since I have too many projects on my hands, I probably won't. Getting to conservatory is more important now. And I think that's where 24 hours set in to limit practicality of dealing with version control development. |
| 22:00 |
|
Igloo |
conservatory? |
| 22:01 |
|
|
kowey joined #darcs |
| 22:02 |
|
mornfall |
Learning to play bassoon. |
| 22:04 |
|
|
nomeata joined #darcs |
| 22:06 |
|
Heffalump |
lispy: how do I tweak my darcs settings? |
| 22:09 |
|
Heffalump |
there is context in the patches, AFAICT, is it just the email body that needs it? |
| 22:15 |
|
Heffalump |
hmm, do we have any patches to fix the LANGUAGE pragmas not working on 6.6 issue yet? |
| 22:22 |
|
lispy |
Heffalump: not darcs context, I mean diff context |
| 22:22 |
|
lispy |
Heffalump: I'll try to look at my settings |
| 22:22 |
|
|
cytzol joined #darcs |
| 22:23 |
|
kowey |
Sprint #2 to be held in conjunction with Hac5, March 2009, I hope |
| 22:23 |
|
kowey |
and the new thinking is two sprints a year |
| 22:23 |
|
lispy |
Heffalump: turns out I'm not sure what to tweak. Eric's advice is better, upgrade your darcs |
| 22:24 |
|
kowey |
one with Hac, so we get to mingle with Haskellers and one by ourselves so we get quality darcs time :-) |
| 22:24 |
|
kowey |
send --unified |
| 22:24 |
|
lispy |
kowey: I think dons suggested to me that those of us in Portland should have more requent hack-events not necessarily darcs related |
| 22:24 |
|
kowey |
fun! |
| 22:24 |
|
kowey |
hmm, maybe something for LondonHug to consider |
| 22:24 |
|
lispy |
What is Hac? |
| 22:25 |
|
kowey |
Haskell Hackathon |
| 22:25 |
|
lispy |
ah |
| 22:25 |
|
lispy |
Heffalump: I was going to tackle the LANGUAGE problem, I just can't get to it today |
| 22:25 |
|
Heffalump |
ok |
| 22:25 |
|
lispy |
maybe tomorrow I can start |
| 22:25 |
|
lispy |
it's only about an hour of work I think |
| 22:25 |
|
Heffalump |
is --unified new? |
| 22:26 |
|
lispy |
I don't think so |
| 22:26 |
|
lispy |
I've had --unified for a while I think |
| 22:26 |
|
Heffalump |
ganesh defoe:~/darcs-slurpy$ darcs -v |
| 22:26 |
|
Heffalump |
2.0.2 (+ 62 patches) |
| 22:26 |
|
kowey |
it's old and now you no longer have a choice |
| 22:26 |
|
lispy |
Ijust didn't realize --unified gave the context |
| 22:26 |
|
Heffalump |
ganesh defoe:~/darcs-slurpy$ darcs send --unified --edit |
| 22:26 |
|
Heffalump |
darcs failed: unrecognized option `--unified' |
| 22:27 |
|
|
int-e joined #darcs |
| 22:28 |
|
Heffalump |
I'm just building latest stable, anyway. |
| 22:33 |
|
Heffalump |
ok, so now I have the recent one, and it still doesn't like --unified. Should I just assume it'll do it automatically? |
| 22:33 |
|
lispy |
Heffalump: at some point it was removed, so yeah |
| 22:34 |
|
|
int-e left #darcs |
| 22:34 |
|
Heffalump |
but then why was my old one not doing it? It didn't accept the option either. |
| 22:35 |
|
mornfall |
Heffalump: I had the same issue. |
| 22:39 |
|
Heffalump |
ok, I see some context in a test patch I just sent myself |
| 22:39 |
|
lispy |
Heffalump: the context is addicting |
| 22:42 |
|
Heffalump |
gah, darcs sends even when I abort the editor :-( |
| 22:54 |
|
|
beschmi left #darcs |
| 22:56 |
|
Igloo |
lispy: Can you remind me, do you think darcs should be buildable without msys? |
| 23:16 |
|
|
Jerri_ joined #darcs |
| 23:31 |
|
|
felipe joined #darcs |
| 23:39 |
|
|
tux_rocker joined #darcs |
| 23:53 |
|
|
mmorrow joined #darcs |
| 23:54 |
|
|
adu joined #darcs |