Camelia, the Perl 6 bug

IRC log for #darcs, 2012-12-28

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

All times shown according to UTC.

Time Nick Message
00:04 sm__ joined #darcs
00:06 bleutyler joined #darcs
01:03 mizu_no_oto joined #darcs
01:21 schlaftier joined #darcs
01:37 mizu_no_oto joined #darcs
01:53 mizu_no_oto joined #darcs
02:40 mizu_no_oto joined #darcs
02:45 mizu_no_oto joined #darcs
05:59 mizu_no_oto joined #darcs
10:04 owst joined #darcs
10:11 schlaftier joined #darcs
13:23 markstos joined #darcs
13:55 mekeor joined #darcs
14:41 donri joined #darcs
14:55 schlaftier joined #darcs
15:33 mizu_no_oto joined #darcs
16:10 markstos I just found a patch in my repo that was completely empty. I thought that would be impossible. It contains simply: { } (part of the darcs patch structure)
16:12 owst markstos: sounds weird
16:12 owst amend recorded or rebased or something?
16:13 markstos owst: I can't be sure that this point. Possibly rebased, yes.
16:14 owst Hmm. Heffalump would be interested if that were the case. I wonder if fixups can zero-out a patch...
16:15 markstos The patch would have added a single file to the respository. It was clearly labeled as intending to add a SQL file.
16:16 owst can you see if any other patches touch that file?
16:16 markstos I've seen fixups that perfectly negate a patch, and the perfect negation of adding a file would be... not adding it.
16:16 markstos owst: I think that's impossible, because since the file was not added from darcs perspective, it can't be changed.
16:17 markstos Just today, we created basically the identical patch. ... I hadn't spotted the empty patch yet, but I noticed the SQL file was missing. :)
16:17 markstos Also odd, I tried to oblit the patch, but darcs couldn't find it. Perhaps a separate issue.
16:18 markstos darcs oblit -p 'SQL to alter pets table constraints'
16:18 markstos ... doesn't look like a Regexp issue.
16:18 owst darcs cha -p 'SQL to alter pets table' ?
16:19 owst Is the patch under a tag?
16:19 markstos darcs changes finds it.
16:19 owst That's a bit weird :-)
16:20 markstos Yes, it's under a tag. Maybe that's it? I thought it would offer to oblit things that depend on the target in that case.
16:21 owst I seem to recall being surprised when I tried something similar, so not sure.
16:34 mornfall joined #darcs
16:36 sm__ joined #darcs
16:37 rdesfo joined #darcs
17:11 amgarchIn9 joined #darcs
17:57 Heffalump you can make empty patches in a variety of ways - amend-record in the opposite change, amend-unrecord, probably with rebase too
17:58 Heffalump markstos: I hacked up an annotate command along the lines discussed yesterday
17:58 owst Seems yucky
17:58 Heffalump have a look at the logs for the details
17:58 owst Heffalump: was I being silly about the layout thing?
17:59 Heffalump owst: I think so
18:00 owst That's alright then ;-)
18:01 markstos Heffalump: neat! Link?
18:01 owst http://hub.darcs.net/ganesh/annotate-all - also need http://hub.darcs.net/ganesh/hack-for-annotate-all
18:03 markstos Do I just compile it with "ghc --make" and run the resulting binary?
18:03 owst markstos: I guess so, but you'll need to install the version of darcs in hack-for-annotate
18:03 owst need to first install*
18:07 markstos Thanks. Hopefully I'll find some time to play with it. Heffalump: Is there a "screenshot" of the output? (Or perhaps I should review the IRC logs I've missed)
18:07 owst No screenshot
18:08 owst The output will be similar to normal annotate, I think
18:28 Heffalump it's more like show authors
18:28 Heffalump it works on the darcs repo now, btw
18:28 Heffalump I'm turning it and another utility I knocked up a while ago into a 'darcs-utils' package
18:29 markstos Cool. Could you "paste" the report of running it on the darcs repo somewhere?
18:33 owst oh, oops I did mean show authors
19:43 owst joined #darcs
20:04 favonia joined #darcs
20:19 mekeor` joined #darcs
20:22 Heffalump sm: could you unpull 'use bytestring-handle instead of haskeline for encoding' from the screened mirror on hub?
20:23 owst What happens if anyone's based work on it?
20:23 owst Rebase exists, I suppose
20:23 Heffalump I think it's unlikely, but if they have then I'll figure it out
20:23 Heffalump I'll put the patch back once I actually fix the encoding problem, anyway
20:23 owst Fair enough
20:24 Heffalump in a sense I'm being lazy - rolling it back would be the right thing to do - but it'd make for a messy history
20:25 markstos I think 'oblit' is OK, since the patch is coming back.
20:26 owst It won't be the same patch presumably
20:26 owst (assuming a version bump somewhere)
20:27 markstos owst: Sure, it could be patch+refinement-patch.
20:27 Heffalump I don't think I bumped the version in it
20:27 Heffalump and yes, what markstos said
20:27 markstos rather than amended-patch.
20:27 owst Ah yeah, of course
20:27 Heffalump I guess if I leave it too long there'll be conflicts, but I will try not to
20:27 owst All this HSE parser reading is rotting my brain :-)
20:30 owst Heffalump: why does annotate need to use posix filepaths?
20:36 Heffalump because the rest of darcs does
20:37 Heffalump if it's asking the internals to "annotate this", "this" needs to be a posix filepath
20:37 owst Aha, I see.
20:37 owst Any more imports of non-posix filepath?
20:38 owst FilePath*
20:38 Heffalump I had a bit of a look around and didn't spot any obvious problems
20:38 owst Cool
20:38 Heffalump it's tricky because in some cases for external-facing things it's ok to use non-posix, and nicer for users
20:38 owst Yeah
20:39 Heffalump but there aren't other test failures (or at least if there are I have already fixed them or will do so soon when I check if all Windows tests are now ok)
20:39 owst Time to repeat the '"we" should fix the buildbots' gripe :-)
20:40 Heffalump I think they're actually a bit too high maintenance right now
20:40 Heffalump having me test on Windows is a good substitute
20:40 owst Well there is that
20:40 Heffalump though a habitual developer on MacOS would be nice
20:41 owst kowey, develop the magic recipe for more free time :-)
20:43 amgarching joined #darcs
20:56 Heffalump owst: what were your thoughts on speeding up the tests
20:56 Heffalump ?
20:57 markstos Are you using a parallel test harness? That can help a lot.
20:57 owst I bet a lot of tests use or could use a "default" repo
20:57 owst running them in parallel does speed them up a lot
20:57 owst but we do loads of needless darcs init'ing
20:58 owst I'm not exactly sure where the slow downs are though
20:58 donri Heffalump: ssh hub.darcs.net obliterate darcs/darcs-screened
20:58 markstos In the Perl world there is now "forkprove"... it preloads libraries that get used repeatedly, and then forks for each test. Not sure if the same approach could apply here.
20:58 Heffalump donri: I'm not aware I have permission for that
20:59 donri Heffalump: you do if you have push, i think
20:59 markstos What about a "fake_darcs_init" that does a cp of the files that "darcs init" would create from a read-only source?
20:59 Heffalump I don't though, it just mirrors from the darcs.net machine
20:59 donri ah
20:59 Heffalump so I can get things into it because I can push to darcs
20:59 owst markstos: yeah, that's what I was thinking
20:59 owst we also use something like that in some places
21:00 owst But I suppose in some places we really are checking that init/record etc does do the right thing
21:00 markstos You could also have a read-only reference repo that already contains a "t.txt" file with a line it, and maybe also a single patch as well.
21:01 markstos Right, so the tests for "darcs init" would not call "fake_darcs_init", but everywhere else it should be safe.
21:02 owst Also, I have no idea if the cleanup/init is what really slows the tests
21:02 rdesfo joined #darcs
21:02 markstos We do something like that on a login system on a website, which would take several HTTP requests to do normally. We can test the login system in one place, and elsewhere where the tests need to act as a logged in user, we can backdoor the login, and skip the effective "real world" login process being done repeatedly.
21:02 Heffalump if it's the overhead of executing darcs, I wonder about having some kind of long-running process with a thin wrapper that pokes it
21:03 markstos Ah, preloading darcs. interesting idea.
21:03 owst That's true
21:03 markstos I tried this: to check the darcs load time: time -p darcs boom
21:04 markstos It takes 0.01 seconds. :)
21:04 markstos ..but "darcs help" takes 2 seconds", suggesting real-world commands take much longer than a fake command.
21:04 owst darcs init?
21:05 markstos 0.03 seconds. Probably not worth optimizing.
21:05 owst 0.01 for me
21:05 alexei joined #darcs
21:05 markstos Nice hardware you've got there.
21:05 Heffalump we run darcs 3826*2 times when running the shell tests (rough guess)
21:05 markstos How about buying SSDs for all the developers?
21:06 owst Yeah, saving ~38 seconds would be nice
21:09 Heffalump we could turn off the hashed tests by default, they almost never find anything
21:10 Heffalump if we had the wrapper calling a darcs server, the wrapper would need to be very small and quick to load - probably statically linked C
21:10 Heffalump bit of a pain to write
21:11 Heffalump I'm probably going to get myself a SSD at some point in the next 6-12 months.
21:11 owst Cool
21:11 Heffalump I've heard mixed things about how good they are though
21:12 markstos I recommend getting one with a 3+ year warranty. I like my Intel. It has full-disk encryption built-in, with no speed penalty.  (That is: It's always on, whether you set a password or not).
21:12 Heffalump I'm not sure I want full-disk encryption, the risks to me of data loss are higher than of data theft
21:13 markstos They can fail after few months, but by that point, you'll probably be hooked, and buy another anyway. But that's why I look for the warranty... to avoid failure.
21:13 markstos I think the only data-loss case is forgetting your password, which you can take pains to backup.
21:13 markstos The encryption is all in the hardware, so it "can't fail".
21:14 Heffalump dinner, biab. owst, any reason I shouldn't tag 2.9.7 shortly (I want a new version for my utils to depend on)
21:14 * owst peeks at the tracker
21:14 sm__ joined #darcs
21:17 favonia joined #darcs
21:18 owst Heffalump: http://bugs.darcs.net/patch994 could go in (if you take a quick look)
21:19 owst but otherwise, fine
21:20 sm donri, +1
21:20 sm Heffalump: I've added you as a member in the darcs-screened & reviewed repos on hub, can you try now ?
21:20 owst hi sm
21:20 sm hi owst
21:21 sm any other darcs devs who want to be members of those, while I'm here ?
21:21 owst I might as well
21:21 owst Do you need anything from me?
21:21 sm nope, added you
21:22 owst Excellent, thanks
21:23 sm IIRC this gives you push and obliterate access to the repo when logged in as yourself.. does it let you change settings at http://hub.darcs.net/darcs/darcs-reviewed/edit ? I think not
21:23 owst "You do not own this repo"
21:24 owst $ ssh owst@hub.darcs.net obliterate darcs/darcs-screened
21:24 owst invalid repository name
21:25 sm hmm
21:28 sm ok, perhaps repo membership does not permit obliterate
21:28 sm but I documented that it does, so that's clearly impossible
21:28 owst :-)
21:31 sm http://hub.darcs.net/simon/darcs​den/browse/src/SSHServer.hs#114 and #150 look like it should work
21:31 Heffalump owst: I was planning on tagging screened, not reviewed (as usual)
21:31 Heffalump as in tagging screened is usual
21:31 owst Heffalump: ah, d'oh, brain fart :-0
21:32 owst sm: darcs/darcs-screened isn't sane, then?
21:32 sm it should be.. it works for pushing
21:33 owst oh yeah
21:33 sm anyway for now Heffalump I'll remind you of the darcs login so you can use that
21:33 owst sm: apply doesn't call isSane though
21:33 owst it just passes to saneRepo
21:34 mizu_no_oto joined #darcs
21:34 sm owst: aha, good eye
21:34 Heffalump sm: can I obliterate in the web interface? Otherwise I guess I should use the password to setup my ssh key?
21:35 sm hmm.. can you.. no not yet. Yes, then, unless it just prompts you for the pw without a key in place
21:36 Heffalump it doesn't (AFAIK)
21:36 sm ok
21:36 * sm is relearning what this thing does
21:39 Heffalump done, thanks
21:40 sm sure.. I preferred to have you be the one to obliterate a 10-day old change from the official darcs repo :)
22:05 owst joined #darcs
22:05 owst joined #darcs
22:05 schlaftier joined #darcs
22:32 mizu_no_oto joined #darcs
22:36 * Heffalump comes to the conclusion that obliterating was a mistake: I'll go for the rollback instead. It's confusing me, and I _know_ it happened.
22:37 owst :-)
23:46 mizu_no_oto joined #darcs

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