Camelia, the Perl 6 bug

IRC log for #darcs, 2008-12-04

← Previous day | Index | Channel Index | Today | Next day → | Search | Google Search | Plain-Text | plain, newest first

All times shown according to UTC.

Time Nick Message
00:36 twb joined #darcs
01:02 lambdabot joined #darcs
01:40 mjrosenb joined #darcs
01:41 mjrosenb is there any way to reverse the actions of a patch in the working copy, without changing the repository?
02:19 twb There are no patches in the working tree.
02:19 I'm not sure I understand what you're trying to do.
02:20 Do you mean something like hg update, where the working tree reflects an "old" state of the repository, i.e. without some of the patches applied?
02:20 mjrosenb yes
02:20 but i don't want to revert to an old state
02:20 i just want to remove the effects of one patch
02:22 twb You can use "darcs rollback" to record a patch that does the opposite of another patch
02:23 Or you can "darcs get" the repo into another place, then delete that patch from that new repo
02:24 mjrosenb i don't want to change the repo, only the working copy
02:29 zooko The idiomatic darcs workflow is 'make another repo'.
02:30 90% of the answers to "How do I do X?" in darcs begin with "First, you make another repo".
02:30 So, the way I would do it (although this is certainly not the only way)
02:30 is make one repo to be "the one with all the patches"
02:30 and another to be "the one with that one patch undone"
02:31 mjrosenb this is slightly problematic
02:32 hrmm
02:32 zooko Okay, if that doesn't work for you there are plenty of other ways to go about it.
02:32 mjrosenb it might work
02:32 the main problem is
02:33 that i have a bunch of local changes in a darcs repo
02:33 zooko I suspect that you have an idea of "the repo" as a canonical, central, append-only thing that you change only rarely or carefully.
02:33 mjrosenb but i need to push back to an svn repo
02:33 zooko Which is fine, but probably the darcs repo which is integrated into the local directory that you are working on should not be *that* repo.
02:33 mjrosenb the svn repo has too many files to use darcs with
02:33 zooko Yeah, and you want to svn commit without the effects of "that patch" being involved.
02:34 mjrosenb indeed
02:34 zooko What I would do is "move that patch aside", then svn commit, then "put it back".
02:34 The way to "move that patch aside" is make a new darcs repo which has that patch, then "darcs obliterate" that patch from your currnet repo.
02:34 The way to "put it back" is darcs pull from the aside repo then /bin/rm -rf the aside repo.
02:35 This sort of workflow is so common to me that I almost wonder if future versions of darcs should somehow make it more apparent to users.
02:35 mjrosenb but darcs isn't managing all of the files that svn is
02:35 zooko So?
02:35 By the way, how many files are we talking about that are too many for darcs?
02:35 And is the SVN repo public so that I can run tailor on it to produce a darcs mirror of it?
02:35 mjrosenb so if i clone the darcs repo, then i will not be able to commit back due to lack of svn metadata
02:36 zooko You'll commit from the current darcs repo, not from the new one.
02:36 You'll svn commit, that is.
02:36 cd .. && darcs get $REPO aside-repo
02:36 mjrosenb oh
02:36 o read that backwards
02:36 zooko cd $REPO && darcs oblit -p"$THATPATCH"
02:36 svn commit
02:36 darcs pull ../aside-repo
02:36 /bin/rm -rf ../aside-prepo
02:36 /bin/rm -rf ../aside-repo
02:37 mjrosenb tailor?
02:37 531950 files
02:37 zooko Wow!
02:37 That's a lot of files.
02:37 Is it open source?
02:37 mjrosenb indeed
02:37 no
02:40 oh shi~
02:40 i need to use plan b in any cose
02:40 *case
02:42 zooko Ok.
02:42 mjrosenb yeah, so upstream, there are a bunch of conflicts
02:42 so i checked out a new repo
02:42 i'm going to darcs init + add all relevant files
02:43 then push individual patches over
02:43 zooko It will probably not work.
02:43 mjrosenb it may
02:43 due to the nature of the changes and the conflicts
02:44 and i consider it easier than the alternitive
02:44 zooko Are you using darcs-2?
02:44 mjrosenb 2.0.2 (release)
02:45 zooko Hm.
02:45 I don't think your plan can work.
02:45 You'll be creating,in the new repository, a patch that says "create this file named $FILE and add these complete contents to it".
02:45 Then you'll ask darcs to pull in a patch from the old repository which says "Make this change to this file".
02:46 Darcs will either lock up entirely or else just treat the whole thing as a merge conflict and ask you to sort out what the new contents of $FILE should be.
02:47 mjrosenb why would it lock up entirely?
02:48 twb 13:25 <mjrosenb> i don't want to change the repo, only the working copy
02:48 mjrosenb: unlike most other dVCSs, Darcs ties the working tree and the patch set together tightly
02:49 This means we don't have a lot of confusing commands to separate the two, and you can never get in a consuing (to new users, at least) state where you've downloaded patches into the repo, but the working tree is not updated
02:49 The downside is, of course, that you need to make temporary repos (branches) to do some stuff that other dVCSs can do in a single more complicated style of repo
02:49 mjrosenb fair enough
02:50 zooko It might lock up entirely because it can't figure out how to merge a patch which created a file named FOO with XYZ contents in this directory
02:50 I mean in this repo,
02:50 with a patch which created a file named FOO with XYZ, or possibly with XYQ contents in this other repo.
02:50 Or maybe it won't.  I haven't tried that in years.
02:51 It would definitely have locked up in, uuh, 2005 or so.
02:51 Maybe try it on just one file before putting a lot of time into it?
02:58 kpreid_ joined #darcs
03:06 Jerri joined #darcs
03:35 mjrosenb is there an easy way to view a single patch?
03:36 gwern darcs changes -i?
03:36 mjrosenb indeed.  thanks
03:41 semka joined #darcs
03:42 twb Darcs diff --patch foo also is nice
03:42 semka good morning!
03:42 by the way, is there gitk analog for darcs?
03:42 mjrosenb ha-hah, --reverse makes it run in a reasonable order
03:43 e_s_p joined #darcs
03:43 e_s_p Hi all
03:43 Question: I'm a bad person.
03:43 I've duplicated tags in a repo a couple of times
03:44 Like, I tag something version 0.3.2, but then I realize I didn't increment the version number in the main code, so I do that, then I tag it 0.3.2 again.
03:45 My question: how to get rid of the first tag?
03:50 twb semka: only in Emacs
03:50 semka twb: that's nice!
03:50 twb: where i can read more about this?
03:50 twb Ask fsbot about darcsum, dvc and vc-darcs.
03:50 They aren't very good
03:51 semka thanks
04:38 twb I'd just like to reiterate that hg's merging is FUCKING RIDICULOUS and I am IMMEASURABLY thankful that I don't have to deal with it at home.
05:06 semka joined #darcs
05:28 twb Igloo: congrats on the camp vs. git video.  The key point that I'd always missed was the a "visualize" equivalent for darcs/camp -- it makes it a lot clearer to the ignorant masses, I think.
05:31 semka video is impressive, yes
05:36 twb Actually that viz tool would be useful for me in darcs, but I suppose I'd need to use camp to get it :-(
06:00 lambdabot joined #darcs
06:31 gour joined #darcs
06:39 sjanssen joined #darcs
06:46 semka joined #darcs
07:22 _keturn joined #darcs
08:01 balor joined #darcs
08:26 C-Keen Repository: /Users/klm/Projects/DAB-TI/dmb-dec
08:26 Kind: hg
08:26 I have never seen this before
08:26 what does determine the 'Kind:'
08:33 twb _darcs/repository/format, I think
08:33 Or something like that
08:33 _darcs/format
08:38 semka is there any rss-feed or anything with recent "commits" to darcs.net repo?
08:38 lelit C-Keen: where are you seeing that? it's very similar to the first patch made by tailor... :)
08:40 C-Keen lelit: it is indeed a converted repo made by tailor
08:42 lelit then it's the original repo format
08:42 C-Keen ah ok
08:42 isn't this a bit confusing
08:44 lelit you're the very first person to raise the issue: the complete patch log seems clear enough to me... doesn't it says "this is the tailorized version of..."?
08:49 C-Keen it says what I pasted
08:51 semka: it's a bit hidden: http://allmydata.org/trac/darc[…]n_copy&format=rss (and out of date)
08:51 lambdabot http://tinyurl.com/5ouxj9
08:51 semka yep, i already found this (:
08:51 but anyway thanks
08:52 C-Keen semka: adding a darcs2rss would be nice indeed
08:53 lelit C-Keen: strange, the typical message is like this: http://pastebin.com/d76909376
08:55 C-Keen I have used tailor 0.9.35
09:06 gour how do you like darcs-fast-export?
09:06 lelit C-Keen: it's been so from the very beginning
09:06 mjc joined #darcs
09:06 gour lelit: have you helped miklos with it? he gives you some credit in docs
09:07 mjc left #darcs
09:08 lelit gour: no, I'm focused on completely different stuff, and trying to find a new job
09:09 whenever I get there, I'd like to think about integrating the functionality in tailor
09:09 I'm almost done with my latest toy: http://sol.arstecnica.it/ :-)
09:10 it managed its first Carrom tourney without a glitch last saturday!
09:10 kowey joined #darcs
09:10 kowey good morning!
09:13 gour lelit: heh, cool. new job will be web-stuff?
09:14 twb 19:39 <semka> is there any rss-feed or anything with recent "commits" to darcs.net repo?
09:14 gour btw, darcs-fast-export claims it's capable for 2-way sync now
09:14 twb semka: file a wishlist bug at bugs@darcs.net
09:14 C-Keen twb: there is the allmydata tracs but it is outdated
09:15 lelit gour: interesting
09:15 twb C-Keen: well, *I* don't care :-)
09:15 gnus' nnrss is crap
09:15 C-Keen true
09:15 gour lelit: there is darcs-fast-export & import available, with convenient d2x x2d scripts
09:17 lelit gour: let me say I have some doubt it works so simple, but I'm glad it's possible
09:18 that would also mean tailor's #1 ticket will never be closed :)
09:20 gour lelit: yeah, it looks simple...
09:22 * gour --> out. bbl
09:22 semka twb: ok
09:23 twb Has anyone actually used darcs-f-e and d-f-i on large "zoo" repos?
09:23 e.g. GHC
09:36 _keturn joined #darcs
09:42 kowey joined #darcs
09:49 nothingmuch joined #darcs
10:06 gal_bolle joined #darcs
10:42 malcolmw joined #darcs
11:34 mornfall_ joined #darcs
11:41 mornfall1 joined #darcs
12:11 zooko left #darcs
12:11 zooko joined #darcs
12:11 zooko hm, I should fix http://allmydata.org/trac/darcs-2/browser to get automatically updated...
12:11 lambdabot Title: / – darcs
12:12 semka zooko: reading my wishlist bugreport?
12:12 zooko No, reading C-Keen's comments in this channel.
12:12 What's your wish?
12:14 semka rss feed from darcs.net repo (:
12:14 kowey semka: would darcs weekly news on http://blog.darcs.net be enough?
12:14 lambdabot Title: darcs advanced revision control system
12:14 kowey oh wait, it doesn't actually list the patches :-)
12:15 semka hehe
12:17 kowey semka: maybe http://joyful.com/darcsweb/dar[…]-stable;a=summary
12:17 lambdabot Title: joyful.com darcsweb - darcs-stable
12:17 kpreid_ joined #darcs
12:17 kowey cool, sm has darcs-graph integrated with that
12:18 semka kowey: looks like it's what i need, thanks
13:09 kowey anybody here willing to moderate darcs-users?
13:09 the job is basically to check the spam-trap for legitimate messages on a daily basis
13:24 mib_dcmpfh joined #darcs
13:25 mib_dcmpfh darcs get http://code.haskell.org/~judah/ghci-haskeline/ results in Invalid repository:  http://code.haskell.org/~judah/ghci-haskeline  darcs failed:  Failed to download URL http://code.haskell.org/~judah[…]/_darcs/inventory : HTTP error (404?)
13:25 lambdabot Title: Index of /~judah/ghci-haskeline
13:25 mib_dcmpfh I defined http_proxy variables.
13:25 Or doesn't darcs use them?
13:28 kowey if darcs is using libcurl, it should use them
13:28 (i'm also behind a proxy)
13:28 darcs get of that repository works for me
13:29 mib_dcmpfh: any idea how you built darcs? or where your binary came from?
13:29 we use libcurl or libwww if they are available
13:59 zooko left #darcs
14:19 lisppaste2 joined #darcs
14:48 semka joined #darcs
15:18 kgoj joined #darcs
15:19 kgoj Hello!
15:19 I do darcs revert, and I see a big hunk
15:19 I want to revert only part of it
15:19 How can I achive this?
15:19 how do I break hunk into smaller pieces?
15:20 Igloo You can't, I'm afraid
15:20 But if you manually revert one line at the boundary then darcs revert should show you 2 hunks
15:21 kowey i wonder if the hunk splitting interface that people are requesting for darcs record could be used here
15:22 kgoj Igloo: thanks, I'll try it
15:22 kowey: Basically it's the same problem both when recording and reverting
15:23 Igloo kowey: Probably, but it doesn't exist  :-)
15:23 kgoj two changes I want to be separate get into one hunk
15:26 kowey kgoj: then you'll be interested in http://bugs.darcs.net/issue126 then
15:26 lambdabot Title: Issue 126: wish: ablity to split and otherwise record a hunk in record - Darcs b ...
15:27 * kowey forgets why he hasn't applied the utf8 patch yet
15:28 kgoj kowey: yes, it's exactly what I wished darcs had
15:28 Those 's' and 'e' from git commit -p
15:28 kowey great! well, we have C-Keen looking into it actually
15:29 C-Keen: still able to / interested in working on this problem?
15:40 C-Keen kowey: I need a better understanding of darcs' patches
15:42 kowey would you like to re-assign yourself to other issues?
15:42 or are you feeling tenacious :-) ?
15:43 (this could be a good way to acquire that understanding)
15:43 gwern: you around?
15:44 C-Keen by feeling tenacious?
15:45 kowey by working on this issue
15:45 I tend to find it easier to understand stuff if I have a concrete backdrop to frame them against
15:45 C-Keen I will keep at it, but please don't expect anything soon
15:46 maybe it might be easier if SelectChanges is refactored using a real zipper first, I don't know
15:46 kowey thanks!
15:46 work to make code cleaner before the work to actually do new stuff is always appreciated
15:47 C-Keen I have had trouble getting time for darcs
15:47 kowey i'm not in a hurry for this feature, btw... I see this as the C-Keen training programme
15:47 C-Keen :)
16:05 gbeshers joined #darcs
16:05 Igloo http://www.reddit.com/r/progra[…]ss_unique/c06nn3t - youtube got camp-dotted?
16:05 lambdabot Title: citizenterminal comments on What makes the camp and darcs VCSs unique, http://tinyurl.com/5vynrw
16:10 C-Keen Igloo: you might want to think of putting a coralized link of the video on the camp site
16:11 Igloo A what?
16:11 C-Keen coral is a content distribution network project where you prepend their server with your url
16:11 http://www.coralcdn.org/
16:11 lambdabot Title: The Coral Content Distribution Network
16:11 C-Keen so it gets cached the first time and then served via their network resources
16:12 Igloo Surely youtube does somethign similar itself?
16:13 C-Keen true, and the youtube video still works for me
16:14 Igloo Yeah, I suspect it was a transient problem. Or perhaps it was really the projects.h.o page that wasn't loading
16:16 C-Keen that one appears to be slow indeed
16:30 kowey hmm, applying for immigration works like using software... it's really a case of rtfm sometimes
16:30 Igloo Heh
16:30 kowey i do wish the Border Agency would put something like an FAQ up though
17:01 zooko joined #darcs
17:02 n6mod joined #darcs
17:02 zooko Dear people of #darcs: n6mod is the operations man for allmydata, and he has a darcs problem.
17:02 It has to do with reading gzipped patches, which I know was recently an issue.
17:02 n6mod I'm getting this:
17:02 amduser@thumper:~$ darcs get zandr@dev:/home/darcs/tahoe/server
17:02 Applying patch 1994 of 2853... Unapplicable patch:
17:02 Mon Jan 28 11:56:22 PST 2008  warner@allmydata.com
17:02 * display the Helper FURL and our connection status on the welcome page. Closes #285.
17:02 darcs failed:  problem gzreading file /home/amduser/server/_darcs/patches/20080128195622​-e01fd-a805b1db46503b277fe9dfdbb7978699240f65ec.gz
17:02 zooko darcs failed:  problem gzreading file
17:03 What version of darcs are you using?
17:03 n6mod this is reproducible on multiple hosts.
17:03 amduser@thumper:~$ darcs -v
17:03 1.0.9 (release)
17:03 zooko There is a recent build of darcs which...  I don't really know the details.
17:03 n6mod installed from the hardy repository
17:03 zooko Did kowey post a FAQ about this...
17:03 * zooko looks.
17:04 n6mod so, I have another copy of this tree that I believe is current in my home dir. let me see if I can 'get' that
17:04 nope, same error
17:05 is this a backward-compat problem?
17:06 Igloo If 1.0.9 is giving the error then it doesn't sound like the recent problem
17:06 Does that file exist?
17:07 n6mod Yes, 429 bytes long
17:07 * Igloo is a little confused; is that /home/amduser/server/... path in the repo that you are trying to create?
17:07 n6mod yes
17:07 zooko Ah, there it is
17:07 http://lists.osuosl.org/piperm[…]ember/016299.html
17:07 lambdabot Title: [darcs-users] workarounds for Codec.Compression.Zlib errors in darcs, http://tinyurl.com/69klal
17:08 Igloo OK, what happens if you zcat it?
17:08 zooko ^-- "[darcs-users] workarounds for Codec.Compression.Zlib errors in darcs"
17:08 n6mod Looks like a patch, but...
17:08 gzip: server_1/_darcs/patches/20080128195622-e01fd-​a805b1db46503b277fe9dfdbb7978699240f65ec.gz: invalid compressed data--crc error
17:08 at the end of the output
17:10 Igloo Oh, maybe 1.0.9 also checks the gz checksums correctly
17:10 Has darcs 2 been involved at all?
17:10 n6mod yes, most of use darcs 2.
17:10 most of us
17:11 Igloo OK, so it probably is the recent problem then, and the recompressing dance should fix it
17:11 n6mod I was hoping to be able to do a get using the darcs that comes in Hardy
17:11 Igloo But it'll happen again if you don't upgrade the buggy darcs2
17:11 n6mod got a pointer to the dance steps?
17:11 zooko Okay, so it sounds like the workarounds in that mail from Eric Kow are the way to go then.
17:11 n6mod: http://lists.osuosl.org/piperm[…]ember/016299.html
17:11 lambdabot Title: [darcs-users] workarounds for Codec.Compression.Zlib errors in darcs, http://tinyurl.com/69klal
17:11 zooko Eric Kow is the new leader of the darcs project, by the way.
17:12 Igloo You need to do something like "darcs optimize --uncompress; darcs optimize --compress" but I don't have a reference handy
17:12 * kowey is mostly a bureaucrat in the great darcs adhocracy
17:12 zooko Waitaminute
17:13 that link has nothing to help Zandr in it.
17:13 It is about building darcs somehow-or-other.
17:13 http://lists.osuosl.org/piperm[…]ember/016271.html
17:13 lambdabot Title: [darcs-users] workarounds for Codec.Compression.Zlib errors in darcs, http://tinyurl.com/6qeg2n
17:13 zooko I accidentally clicked on the wrong message.
17:14 kowey you're not building on Windows by any chance?
17:14 zooko Hm, does *that* link have anything to help Zandr, in it?
17:14 We're not building at all.
17:14 At least, we hope not.
17:14 kowey where are you getting darcs from?
17:14 building darcs *is* related to the problem
17:14 zooko Zandr wants to use the darcs-1.0.9 for linux/amd64 that came with the operating system (Ubuntu Hardy).
17:14 kowey oh
17:14 then maybe it's not :-)
17:14 zooko Surely it is possible for him to do so, right?
17:14 n6mod I think the problem was introduced by the darcs 2 running on Hanford.
17:15 2.0.2 (+ 1 patch)
17:15 kowey so nsmod: are you getting Codec.Compression.Zlib errors at all?
17:15 zooko n6mod: maybe try darcs optimize --uncompress
17:16 Igloo zooko: You need to replace the broken darcs on the server with a working one, I believe
17:16 n6mod so, trying to decompress on the repo in my home dir on hanford (our dev server)
17:16 Igloo (where "the server" is where the repo you are trying to get is)
17:16 zooko Um, what?  The darcs-2 on hanford is bad?
17:16 Confusion reigns.
17:16 n6mod kowey: just the error gzreading when it tries to apply all the patches after a get
17:17 Igloo Yes, it created a patch with a broken checksum, I believe
17:17 Although I have no experience of this problem, so someone please correct me if I'm wrong  :-)
17:17 mmorrow joined #darcs
17:17 zooko So, if anyone has pulled one of these broken patches, then what do they do?
17:17 They have to obliterate that patch and get a new one from me after I figure out how to produce fixed patches ?
17:18 kowey would this script help? http://lists.osuosl.org/piperm[…]09d/attachment.sh
17:18 lambdabot http://tinyurl.com/5oyq2t
17:18 n6mod so, I did darcs optimize --uncompress on the repo in my home dir.
17:18 Igloo Recompress with a working darcs
17:18 zooko What version of darcs should I run on our central server?
17:18 At the moment it is 2.0.2 (+ 1 patch)
17:18 Igloo: is the darcs-1.0.9 on Zandr's machine "A working darcs"?
17:19 What are the "non-working darcs's"?  Is my 2.0.1+1?
17:19 n6mod I was then able to get from the darcs 1.0.9 machine successfully.
17:19 zooko Yay!  Problem solved.
17:19 kowey zooko: this gzread problem is new to us actually
17:19 zooko Oh, okay, I was wondering why you weren't answering my questions.  :-)
17:19 I thought this was the same as the other problem.
17:19 Any recommendations about what version of darcs to run on allmydata.com's central server?
17:19 Igloo I don't understand why n6mod could uncompress the patch with optimize --uncompress, but not when trying to apply it
17:20 kowey I would recommend upgrading from 2.0.2 to 2.1.0 just as a general principle of the latter having fixed bugs in the former
17:21 but that's not related to your current issue
17:21 hmm
17:21 so it's darcs 1.0.9 that's having trouble reading patches that are produced by 2.0.2?
17:22 n6mod_ joined #darcs
17:22 zooko Apparently.
17:22 n6mod_ sigh... net issues here
17:22 zooko And apparently darcs optimize --uncompress made the problem stop happening.
17:22 kowey does darcs optimize --compress still allow darcs get to work?
17:23 zooko n6mod_: http://codepad.org/21wqufwU
17:23 ^-- IRC log that you might have missed
17:23 kowey i think it *should* (this time with the patches being compressed in one shot instead of incrementally)
17:24 my recommendation is to upgrade to darcs 2.1.0 and yell at us if we continue to produce problematic patches
17:24 (unless wiser people like Igloo have other suggestions)
17:25 n6mod_ OK, trying to optimize --compress the repo now, I'll try another get when that finishes
17:25 but I have a working tree, so I'm at least able to continue on my way. :)
17:26 kowey that's the most important thing, yes :-)
17:26 thanks for your patience with this!
17:26 n6mod_ Directory '/home/amduser/server' already exists, creating repository as '/home/amduser/server_3'
17:26 Applying patch 2 of 39... Unapplicable patch:
17:26 Fri Jul 25 15:13:00 PDT 2008  warner@allmydata.com
17:26 * test_system.py: create SystemTestMixin, with less cruft, for faster system-like tests
17:26 darcs: ./src/allmydata/test/test_system.py: openBinaryFile: does not exist (No such file or directory)
17:27 So, two things bug me here. One is that it's a different error, the other is '2 of 39'
17:27 As this repo had 2853 patches before the compress. :)
17:27 kowey so this is the result of optimize --compress?
17:27 n6mod_ yes
17:28 I did an optimize --uncompress, and could then get a good tree
17:28 optimize --compress (using the same 2.0.2+1) and then a get from the 1.0.9 machine results in the above error
17:29 kowey ok... are you willing to be extra-extra-helpful by trying optimize --compress with darcs 2.1.0?
17:29 n6mod_ I could, sure.
17:29 kowey (darcs 2.1.2 is fine; they are the same)
17:30 n6mod_ zooko: what's the easiest/least disruptive way to get a darcs 2.1.x onto hanford?
17:30 zooko Onto hanford?  Why?  It just so happens that I am doing that right now.
17:30 But it shouldn't ..
17:30 * zooko reads IRC log.
17:31 zooko Ok, just a minute.
17:31 n6mod_: for your information darcs on hanford is managed under stow (see /usr/local/stow/)
17:32 n6mod_ Ah, cool
17:32 zooko and I generally compile the darcs executable myself on hanford, which I just finished doing for darcs-2.1.2.
17:32 Okay, so now I'm about to do "cd /usr/local/stow && sudo stow -D darcs* && sudo stow darcs-2.1.2"
17:33 n6mod_ cool
17:33 zooko Done.
17:33 So now /usr/local/bin/darcs is a symlink to /usr/local/stow/darcs-2.1.2/bin/darcs
17:33 n6mod_ right. darcs -v concurs. :)
17:33 zooko "make test" passed
17:34 n6mod_ so I guess I want to take the original repo from /home/darcs/tahoe/server, copy that somewhere convenient, and then do the --uncompress/-compress dance?
17:35 zooko That sounds good.
17:37 n6mod_ Same failure as above
17:37 (openBinaryFile: does not exist)
17:37 zooko Please run darcs check on that repo.
17:38 kowey so to sum up, compressed patches produced with darcs 2 give you an error when you do a darcs get with 1.0.9?
17:38 (darcs 2.x)
17:38 zooko It isn't that simple.
17:38 semka joined #darcs
17:38 zooko We've been producing patches with darcs-2 and darcs getting them with darcs-1 for a long time.
17:38 n6mod_ It appears that the --compress borks the repository
17:39 zooko n6mod_: we don't particular care if it is compressed or uncompressed...
17:39 n6mod_ darcs check produces:
17:39 darcs failed:  fromSlurpFile:  Couldn't find file "./src/allmydata/test/test_system.py"
17:39 zooko If it helps make things work better for you, just run "darcs optimize --uncompress" whenever you see this bug.  :=/
17:39 Okay, so darcs check failed.  That's interesting.
17:39 Please run "darcs repair"
17:39 kowey that's a good course of action
17:39 n6mod_ same error
17:40 kowey hmm
17:40 would you be willing to let one of us perform some sort of forensics on this repository?
17:40 n6mod_ So if I'm understanding what I'm seeing, darcs 2.0.2 created a patch that 1.0.9 can't gzread.
17:40 kowey one thing I would like to see also is if darcs 2.1 can read these patches
17:40 n6mod_ --uncompress using 2.0.2 works fine
17:41 --compress with either 2.0.2 or 2.1.2 destroys the repo
17:41 zooko The repo is public and open source.
17:41 kowey oh great!
17:41 n6mod_ Though that particular branch isn't exposed anywhere
17:42 this is the tahoe-server branch, which is only used internally
17:42 zooko It is already public.
17:42 Just nobody cares.
17:42 http://allmydata.org/trac/tahoe-server
17:42 lambdabot Title: allmydata.org Tahoe-Server
17:43 kowey ok, may I ask one of you to file a bug report with the findings from this IRC session?
17:43 n6mod_ But... how does he get at the repo through darcs? i've been using ssh
17:43 zooko PErsonally, I'm not sure what those findings are.
17:43 kowey for now, I suppose we'll have to leave you with a working but uncompressed set of patches :-(
17:43 zooko n6mod: the tahoe-server repo?  On hanford?  That actual part of the hanford filesystem is not public, you are right.  ssh only.
17:43 There is a mirror of that repo automatically updated which is on .org, that I linked to there.
17:44 I don't think patch compression makes much difference.
17:45 kowey hmm
17:45 i would be curious about the reading-with-darcs-2.1 experiment as well
17:46 as I understand it, just doing darcs repair reveals problems already
17:46 n6mod_ OK, I have a tarball of the unmolested repo
17:46 that is, the initial state where 1.0.9 can't read it, before any mucking about with optimize
17:47 kowey very good
17:47 zooko Upload it to tahoe.  :-)
17:47 n6mod_ if we were running tahoe on hanford, I would. :)
17:47 zooko Seems like our "server" repo is corrupted.
17:48 You can use http://webapi.allmydata.com:8123 or http://testgrid.allmydata.org:3567
17:48 If you want.
17:48 Here's an easy way to reproduce a problem:
17:48 darcs get http://allmydata.org
17:48 sorry
17:48 lambdabot Title: tahoe-lafs
17:48 zooko hit enter too soon
17:48 darcs get http://allmydata.org/source/tahoe/server/
17:48 lambdabot Title: Index of /source/tahoe/server
17:49 zooko http://codepad.org/4bEuK7kq
17:49 n6mod_ I will, but I need to fetch the file off hanford first... net sucks here, so it will be a few minutes
17:49 kowey i can reproduce this with darcs 2.1.2
17:50 n6mod_ weird... that looks like the post-compressed error condition
17:50 zooko: did you do any darcs optimize steps on home/darcs/tahoe/server?
17:50 zooko n6mod: I guess the repo on allmydata.org is corrupted.
17:50 I have done in the past, yes.
17:51 kowey is this a partial repository of some sort?
17:51 your first patch is tagged tahoe-server-1.2.0, which leads me to surmise that it may be so
17:51 in which case, it's not entirely surprising that darcs check fails
17:51 zooko Hm?  The public http repo on allmydata.org you mean?
17:52 * zooko looks.
17:52 Igloo checking a partial repo should work, I think
17:52 zooko Huh, it is.  I didn't realize that.
17:53 Maybe I should go ahead and put a full copy there.
17:53 n6mod_ So the process that mirrors the repo over to .org seems to be producing the same behavior as the --compress
17:53 C-Keen Igloo: how so? check does a replayRepo IIRC and that tries to get all the patches, doesn't it?
17:53 Igloo It should start from the earliest checkpoint
17:53 kowey right, but since checkpoints aren't propagated, darcs check of my local copy would fail
17:53 zooko That process is just a "darcs push", run on .com, pointing at .org, over ssh.
17:53 Which is triggered whenever a patch is committed to the repo on .com.
17:53 n6mod_ weird
17:54 kowey so the good news is that your non-gz-related error is now a bit less mysterious :-)
17:54 Igloo kowey: Are you sure? Can't you do a darsc get --partial of your local copy?
17:54 zooko Okay, so because the repo at http://allmydata.org/source/tahoe/server was a partial repo (by accident), that explains some of the problems?  And I should just put a full repo there?
17:54 lambdabot Title: Index of /source/tahoe/server
17:54 zooko Doing so now.
17:54 kowey I can't
17:54 C-Keen --partial should not do anything with a darcs2 repo
17:54 n6mod_ the error you get trying to get from the mirror on .org looks like the error I see doing a get from a --uncompress/--compressed version of the repo on hanford.
17:55 Igloo It's not a darcs2 repo
17:55 kowey and I remember people requesting that checkpoints be propagated
17:55 n6mod_ it's not the gzread error
17:55 kowey darcs 2 seems to have an annoying (or maybe a good) behaviour with partial repositories
17:55 oh no wait, scratch that comment
17:56 Igloo kowey: I can: http://hpaste.org/12690
17:56 arjanb joined #darcs
17:56 kowey Igloo: oh wait, I forgot that I didn't do darcs get --partial in the first place
17:57 C-Keen bye!
17:57 kowey see ya
17:58 hmm, and now doing darcs get --partial gives : darcs failed:  Bad checkpoint!
17:58 Igloo: does darcs check work on your partial partial?
17:59 Igloo Yes
18:01 kgoj left #darcs
18:01 kowey huh
18:02 * kowey could have sworn checkpoints are not propagated
18:02 Igloo They aren't if you do a full get
18:03 kowey ah
18:03 ah, right and checkpoints HAVE to be propagated for darcs get --partial to work
18:03 ok, so if you darcs get --partial A P; then darcs get --complete P P2
18:04 darcs check in P2 should break
18:04 Igloo No, the get will fail
18:04 kowey then darcs get P P2 implies --partial?
18:05 this is all sounding more robust than I remember --partial being
18:05 Igloo No, it fails (with 1.0.9 and 2.1.0 at least; just tested it)
18:05 kowey huh
18:06 so then I wonder how weird situations like this creep up
18:06 right, you /have/ to do darcs get --partial P P2
18:07 ok, then I retract all my claims about partial repositories and go back to just scratching my head
18:08 but somehow we have the situation where darcs get of their tahoe repository works, sans checkpoint and only fetching 39 out of presumably a whole lot of patches
18:08 with darcs thinking that this is a complete repository
18:10 well, I have to run
18:10 zooko, nsmod_: you have a copy of the complete repository, right?
18:10 (i.e. with more than 39 patches)
18:11 n6mod_ I do. pushing it up to tahoe now, I'll have a link for you in a bit.
18:12 kowey ok, well I won't be around for a few hours, but hopefully #darcs will be able to continue helping you
18:12 bye!
18:35 zooko Off I go to lunch.
19:33 Peaker joined #darcs
19:33 Peaker hey, why are darcs bundles not diff-formatted?
19:59 n6mod_ So, here's the download link for our broken repo as a tarball
19:59 http://testgrid.allmydata.org:[…]3%3A10%3A99473758
20:16 markstos joined #darcs
20:17 markstos I'm considering using "prehook" with darcs record to run files through "perltidy" before recording them. How do I let the posthook now which files are about to be recorded?
20:18 mornfall That sounds like something you don't want to do.
20:18 markstos What do I really want to do then?
20:18 mornfall Or, maybe I just misunderstood.
20:18 Will that modify the files, or just check them?
20:19 markstos I want to modify them, I think. .. possibly with a backup.
20:19 perltidy can do either. (just report or modify)
20:20 mornfall I'd probably stick with just report.
20:20 markstos Ok, then how I convey the list of files I'm about record, so I can just report on them with my prehook script?
20:21 The documents for --prehook document no details of files available to it:
20:21 http://search.cpan.org/~markst[…]l-QuickAdd-0.5_1/
20:21 lambdabot Title: Mark Stosberg / ICal-QuickAdd-0.5_1 - search.cpan.org
20:21 markstos Oh oops, wrong clipboard.
20:21 http://www.darcs.net/manual/no[…]10000000000000000
20:21 lambdabot Title: Darcs commands, http://tinyurl.com/27c4xj
20:22 markstos But if you like Google Calendar's "Quick Add" feature, but wished it work with standard ICS files, that Perl project might be of interest. :)
20:22 Maybe something like the posthook solution of exporting DARCS_FILES would work. ... but it looks like it isnt' implemented yet.
20:22 mornfall markstos: I don't think there's currently a way, you might need to modify src/Darcs/Test.lhs.
20:23 Or, wait.
20:23 * markstos waits
20:23 * mornfall looks around for the envvar exports.
20:26 mornfall Hm, tough luck.
20:26 It seems that record currently does not export anything.
20:26 push, pull and so on has DARCS_FILES env set in posthook...
20:27 markstos At least the code is consistent with the docs here.
20:27 mornfall Moreover, it seems that these aren't available in the prehook anyway.
20:27 One way around that is a wrapper around darcs binary, and some programs go that route.
20:27 Although it's quite inelegant...
20:27 markstos Then... I wonder how people are actually using prehook then. Like, isn't something using a "tidy" program of some sort, or doing line-ending conversion?
20:28 mornfall I think these are generaly dangerous uses of prehook.
20:28 markstos Maybe I'm approaching this wrong. I found no example of in-use prehook scripts by googling, though.
20:28 mornfall You would need a better mechanism to implement that, and it'd still likely be fragile.
20:29 davidL joined #darcs
20:29 markstos OK
20:33 nomeata joined #darcs
20:35 gour joined #darcs
20:47 mornfall markstos: I'd consider prehook a viable mechanism to enforce policies, but modifying files is icky.
20:48 markstos: First, you could get easily swamped with spurious changes in interactive record, second two people with slightly different versions of the program in question might end up flip-flopping some differences.
20:48 zooko It might be safer to have a .. oh, what mornfall said.  To check if the file satisfies a policy and reject the patch if not.
20:49 markstos mornfall: The .perltidyrc file would ship with the project and be referenced by the prehook, so we'd all be using the same policies.
20:50 But even if I just want to enforce policies... there's no way to get the list of files to enforce the policies on.
20:51 mornfall markstos: Well, you could run it in apply somewhere, and people would easily get chance to amend their patches and re-send/re-push.
20:51 Or so I understand the idea.
20:53 markstos mornfall, but doesn't prehook in darcs apply have the same limitation...no access to the file list?
20:54 mornfall Dunno.
20:54 Well, true.
20:54 But you can run it on everything, right?
20:55 markstos First, I'd rather not run it on over 300 files when only one or two changes. Second, I only want to run it on Perl scripts, not on the hundreds of HTML and image files, which would be useless.
20:56 mornfall markstos: Well, the latter is a non-issue, just check the file for being perl. The former, well, yeah.
20:56 But it might as well be premature optimisation.
20:56 Dunno.
20:56 I probably don't have very good answers...
20:56 markstos Ok, I figured this out.
20:57 mornfall It wouldn't be extremely hard to implement in darcs, but noone has done that  so far.
20:57 markstos the prehook can call "darcs whatsnew -s" to get the list of files.
20:57 An example using git does the equivalent:
20:57 http://use.perl.org/~Yanick/journal/35626
20:57 lambdabot Title: Journal of Yanick (3196)
20:58 mornfall Well, it is a little icky, but you could do just that, indeed.
20:58 It specifically fails to take into account the possibility that you are only recording a subset of the files.
20:58 markstos It's less icky than processing 300 files to check one...
20:59 True, but it seems that it's the best that's possible with darcs.
20:59 mornfall Well, in record, yes, checking 300 files is more or less out of question. On a server where people push, it might be no problem.
21:00 markstos We generally record and push all on the same system.
21:00 mornfall Also, you can do a little trick, where you implement a record posthook, which looks at darcs changes --last 1 -s and examines those files, warning you that you should amend fixing this and that issue.
21:01 Possibly their pristine copies, so you don't compromise interactive records.
21:01 (So you can interactively record good parts of bad files.)
21:02 markstos That could work.
21:03 mornfall (At least I would find that the least intrusive in my normal workflow, although it might be hard to enforce that people do not ignore such warnings).
21:03 If you manage to get that work, it might be worth documenting somehow, too, btw.
21:06 mjrosenb copying a directory that's under version control is the same as darcs put, right?
21:07 markstos It would be nice if "whatnew" had a mode to supply a plain list of file names for cases like this, without the leading "M", "A", etc, and without the plus/minus line changes.  Currently when I do "darcs w -qs" and "darcs w -s"... the output is the same. Perhaps the "--quiet" mode could be updated to work this way, or maybe "--plain" or "-only-filenames" are even better.
21:07 mjrosenb: Not exactly, but it's absolutely safe and reasonable. I do it regularly.
21:07 If you "put" to the same file system, you could safe space with hardlinks.
21:08 Just being able to copy or move darcs repos so easily is one of the beautiful features it has.
21:08 mjrosenb hardlinks are automatically unlinked on write by the OS?
21:09 Peaker I'd assume the hard links are for the darcs-internal files, and not the actual working tree?
21:09 (and then darcs can unlink them first)
21:09 (but that's just an assumption)
21:09 mjrosenb that makes more sense
21:10 although having hardlinks would probably make this easier on my
21:10 Peaker we need revision control supported in the file system itself, IMO (and we need to replace the file system with typed objects, and generally rewrite software :-)
21:11 mjrosenb diff_patch :: a -> a -> a -> a
21:12 or if you want a bit more abstraction
21:12 diff :: a -> a -> Patch
21:12 patch :: Patch -> a -> a
21:14 markstos My experience with the hardlinking policies is that they have tended to "just work" for me.
21:14 I don't think there's much risk involved.
21:15 Peaker mjrosenb: that looks deceivingly symmetrical
21:15 mornfall I don't think put does hardlinks. Get does.
21:15 Peaker Patch -> (a -> a)  vs a -> (a -> Patch)
21:15 mornfall I still think put is a misfeature.
21:16 Peaker was darcs the first dvcs?
21:16 mjrosenb Peaker: either that or mercurial.  don't know which was first
21:16 pretty sure git was later as well
21:17 Peaker git was based on BitKeeper, which was also a kind of dvcs, I think
21:17 s/based/inspired
21:17 arjanb git is based on monotone
21:18 Peaker monotone was horrid
21:18 markstos I remember "arch / tla" being one of the early ones.
21:18 mjrosenb hrmm, i guess patch should be patch :: Patch -> a -> Maybe a
21:19 : (
21:19 goodbye symmetry
21:19 markstos There was a time when darcs was being considered for the Linux kernel...but it doesn't scale up for projects that big, it turned out.
21:19 Peaker mjrosenb: probably Either for more descriptive errors
21:20 markstos ".bak" had a distributed mode, where I could send friends a file, and they could also make ".bak" copies, but like the centeralized ".bak" system, it had significant weaknesses.
22:05 markstos left #darcs
22:47 conal joined #darcs
22:47 Peaker hey, how do I see/know what recorded patches I have on a local branch that are not in my pull location?
22:48 also, can I get darcs send to just dump a bundle as text, instead of actually mailing it?
22:59 wjt -o filename
22:59 or -O to dump to a file in the current dir
23:01 Peaker ah, its so interactive already that it could be just letting you type nothing in the email question for -O
23:35 twb joined #darcs

← Previous day | Index | Channel Index | Today | Next day → | Search | Google Search | Plain-Text | plain, newest first