Camelia, the Perl 6 bug

IRC log for #darcs, 2008-03-18

| Channels | #darcs index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
02:09 porrifolius Hi there.  I'm trying to get some help compiling darcs 1.0.9 with ghc 6.8.2.  I get:
02:09 porrifolius checking GHC.Handle.openFd... NOT old APIchecking GHC.Handle.openFd new API... failedconfigure: error: Couldnt figure out how to call GHC.Handle.openFd!
02:10 porrifolius Looks to me like there is no GHC.Handle.openFd in ghc 6.8.2.
02:19 lispy porrifolius: update to the latest version of the source.  I know this is fixed in unstable, and I thought it was fixed in stable.
02:26 porrifolius lispy: I do have darcs 1.0.9 working with ghc6.8.2 on a different machine, but it has gone through succesive upgrades so I dunno if I ever compiled 1.0.9 with 6.8.2. Do you mean I should use unstable 1.x or the new 2.x? How should I go about getting the latest source?
02:29 lispy porrifolius: visit darcs.net, there is information at the bottom about getting the latest source
02:29 lispy porrifolius: if you get the lastest copy of the stable repository it should be 1.0.9 + bug fixes
02:30 lispy porrifolius: but the stable maintainer has been busy and hasn't had the time to prepare a release.
02:30 lispy I think it should be safe though.
02:30 lispy Even unstable is pretty safe, near as I can tell
02:31 porrifolius lispy: ok, I'll try a darcs get http://darcs.net/repos/stable on a different machine and try and transfer it across to the new machine... death to all chickens and eggs.
02:31 lambdabot Title: darcs
02:31 lispy it's really just as easy as, darcs get --partial http://darcs.net/repos/stable darcs; cd darcs; make; ./configure; make install
02:31 lambdabot Title: darcs
02:32 lispy porrifolius: if you get it on a different machine, you might try running, 'darcs dist' in the repo, that will generate a tarball that you can transfer to the new machine
02:32 porrifolius lispy: ok, ta. I'll give that a try.
02:32 lispy usually i just install from apt and then build a personal copy from sources
02:33 porrifolius yeah, I'm using gentoo... has worked fine on my other machine... but maybe I leap-frogged the problem somehow.
02:34 lispy ah, I've never used gentoo, so I wouldn't be much help there.
02:44 porrifolius that's a good sign... it's got past the GHC.Handle api checks.
02:44 lispy yup, good luck :)
02:53 porrifolius lispy: are the release tars hosted on darcs.net just made via 'darcs dist'?
02:53 lispy porrifolius: I think mostly yes.
02:54 lispy porrifolius: there are probably some preperatiion steps
02:54 porrifolius ok thanks... just wondering how easiest to fool my package management system!
04:01 porrifolius for the record/logs: in gentoo the darcs-1.0.9 ebuild was using the release that failed with ghc 6.8.2, the darcs-1.1.0_pre1 patched the darcs code to work with 6.8.2... but had a bug in the ebuild.  That bug in the ebuild has now been fixed.  So try out the darcs-1.1.0_pre1 (or later) if you're having trouble.
17:07 zerny hi
17:07 zerny I have a quick question. Is i ok to supply several "apply posthook ..." lines in the _darcs/prefs/defaults file?
17:12 zooko Dunno.  Try it and see.
17:17 zerny ok. i have tried it and it does not seem to work
17:18 zerny "apply posthook cmd1; cmd2" was the way to get it to work
17:18 zerny if set on two separate lines cmd2 is not run
17:19 zerny the online manual is not very clear on this. it says "To set multiple defaults for the same command (or for ALL commands), use multiple lines."
17:19 zerny http://darcs.net/manual/node5.h​tml#SECTION00510000000000000000
17:19 lambdabot Title: Configuring darcs
18:43 droundy zerny: the meaning of "command" in that sentence is distinct from "flag", i.e. you can have apply --posthook foo and apply --no-test on different lines.
18:48 gour droundy: hi, why is problem if the two repos were converted to darcs-2 format by issuing 'convert' on each one?
18:48 droundy the conversion is lossy
18:49 droundy and the information that is lost are likely to be different when the two repositories are converted.
18:50 gour hmm, how it is expected that two people exchaning patches don't do that, i.e. that only one converts repo and then pull/push to the other?
18:50 gour *exchanging
18:57 gour droundy: i saw your note on roundup, but still does not get "once per project" when we use darcs in distributed environment :-/
18:58 droundy There has to be a flag day, if you don't want to or cannot do that, then you can't switch to the darcs-2 format.
18:59 zooko But doesn't darcs-2 when using the darcs-2-format converge identical patches anyway?
19:00 droundy it doesn't fix corruption, though.  If you have two patches with identical names but different content, then you've got a corrupt repository under any version of darcs.
19:01 zooko Do you plan to make the names include the secure hash of the patch content and context?
19:01 zooko Because in that case what you just described will be impossible.  :-)
19:01 gour droundy: huh, good to know...anyway, now i'll start any new project with darcs-2
19:01 droundy gour: it is right there in the wiki.
19:02 zooko http://wiki.darcs.net/DarcsWiki/ConflictsFAQ#​head-b0ca19ed25c932ca8e22afc3452ecdb29ff4b810
19:02 lambdabot Title: ConflictsFAQ - DarcsWiki, http://tinyurl.com/36re4p
19:02 zooko "doppelganger patches (identical patches) no longer conflict."
19:02 zooko So, it seems like if two people independently convert their darcs-1 repos to darcs-2 repos, then the resulting doppleganger patches should be non-conflicting.
19:02 zooko What am I missing?
19:02 droundy we aren't talking about doppleganger patches, which are patches with the same contents but differing names.
19:03 zooko nods.
19:03 droundy we're talking about patches with the same name but different contents.
19:03 zooko Oh, the contents are different because of differing contexts.
19:03 zooko I understand now.
19:03 zooko And how about my other question: are you planning to put the secure hash of the contents (including context) into the name, as you and I have previously discussed?
19:03 droundy because of differing contexts, and because the conversion process to darcs-2 format is lossy.
19:03 droundy zooko: I don't have any plans to do so, no.
19:04 zooko Oh, but if the two people convert their repos when they exactly the same then they'll get identical-content patches, right?
19:04 zooko Did you change your mind, or did I misunderstand?  I thought you were planning to add sha-256 hashes of contents and context to the patch name,
19:04 droundy yes, if the two repositories are identical in every respect, then the conversion produces two identical repositories.
19:04 zooko last time we talked.
19:04 droundy zooko: no, I wasn't planning to do so, I was just acknowledging that it could be done.
19:04 zooko Oh.
19:05 zooko Really?  I really misunderstood.
19:05 droundy Or maybe I was thinking I'd do so.  But you could do this yourself if you wanted, without modifying darcs, so it's not high priority for me, and right now I want to focus on high priority changes.
19:06 droundy Partly I'm just really stressed because I'm way behind on every aspect of work (darcs included) because I've been off at a conference for a week, and I'd got less than no spare time.
19:06 gour i really wonder how will people manage migration to darcs-2 in distributed environment where many people have not-exact repos
19:06 zooko I've just read back through, and perhaps I was confusing switching to sha256, which you intend to do, with adding secure hash of content and contexts into patch names.
19:07 zooko Wouldn't that latter feature -- adding secure hash of content and context into patch names -- help with the "how do I convert my distributed project to darcs-2" problem, by preventing any two patches with identical names but different contents from existing anywhere ever?
19:08 gour is getting curios
19:10 zooko According to this: http://wiki.darcs.net/DarcsWiki/DarcsTwo#he​ad-59c157a75a60a3e4426b191e065875da77cc5f19
19:10 lambdabot Title: DarcsTwo - DarcsWiki, http://tinyurl.com/yw6cck
19:10 droundy zooko: yes, it could help with that, but it'd also be a pain for that.
19:10 zooko darcs-2 when using darcs-2-format will converge identical patches.
19:10 zooko So, why wouldn't it Just Work?
19:10 droundy It'd be a pain to code, not to use.
19:10 zooko I see.
19:10 zooko Sounds like we need more darcs coders.
19:10 droundy We'd have to use two passes, so it'd slow things down.
19:10 droundy Yes, we do need more darcs coders.
19:11 zooko Two passes over what?
19:11 droundy Over all the patches
19:11 zooko Ah.
19:11 zooko Although actually, each patch is necessarily not dependent on later patches, right?
19:11 droundy the converted tag would depend on the contents of the patches referenced in the tag.
19:11 zooko So it would be okay to define the context of the second patch in the repo as being just the first patch in the repo, then the context of the 3rd patch as being the first two patches, etc.
19:12 droundy Right, so it'd still be O(N), unless you've got lots of tags, in which case it'd be O(N^2)
19:12 zooko There is an object -- I think it is called a "manifest" -- which is a list of all the patches in this repository, right?
19:12 zooko And this object is supposed to be kept always up to date, so whenever you add a patch, you have to add an entry to this object, right?
19:14 zooko So, when converting from darcs-1-format or darcs-hashed-format to darcs-2-format, you start with the empty manifest, add the secure hash of patch 1's contents and the empty manifest to patch 1's name, then add patch 1 to the manifest, then go on to the next patch.
19:14 zooko This is one-pass.
19:19 droundy But each tag requires reading the manifest, making it O(N^2)
19:20 droundy (it's actually called an inventory in darcs...)
21:28 intripoon hi
21:28 intripoon I've just tried out darcs
21:29 lispy intripoon: congrats, what do you think?
21:29 intripoon when I added a dir recursively to my repository, it wrote "Skipping boring file {some file}" a few times
21:29 intripoon is there a way to modify the boring files list of darcs?
21:29 lispy yes
21:29 intripoon I searched the wiki but it didn't find anything for "boring file"
21:29 intripoon oh great, how?
21:30 lispy The wiki is nice, but you'll also want the manual: http://darcs.net/manual/
21:30 lambdabot Title: Darcs 1.1.0pre1 (unknown) Darcs
21:30 lispy http://darcs.net/manual/node5.html
21:30 lambdabot Title: Configuring darcs
21:30 lispy intripoon: look at the section "boring"
21:31 intripoon thanks
21:31 intripoon so so can I just edit that boring file whenever I want? or just right after initializing a repository?
21:32 lispy intripoon: chances are you want to include the boring file under version control
21:33 lispy intripoon: there is a paragraph in that section that describes how to do it
21:33 lispy I'm not normally so RTFM, but the manual really describes this in detail :)
21:34 Heffalump you can edit it whenever you want
21:35 intripoon I thought that's about forcing to add a file that is masked out as boring usually by the boring file
21:36 lispy intripoon: if you edit _darcs/prefs/boring then when you share your repository with others they won't get your custom version.  So that's why the manual explains how to track the boring file as part of the repository.  Does that make more sense?
21:36 intripoon yes I understood it already after RTFM
21:37 lispy oh
21:39 intripoon if I define a ~/.darcs/boring, which one will be used? the one in the repository I'm working on or the one in my home dir?
21:45 lispy I'm not sure
21:48 intripoon maybe the home dir version just gets used wehn initializing a new repository
21:48 intripoon what's the equivalent to ~/.darcs/boring on windows?
21:50 lispy intripoon: I don't use darcs on windows so I don't know.  but, it's probably in C:\Documents And Settings\Username\
21:59 Heffalump uses darcs on windows but still doesn't know :-)

| Channels | #darcs index | Today | | Search | Google Search | Plain-Text | summary