Parrot 0.9.0 "From Outer Space" Released | parrot.org/ | migration to svn.parrot.org begins at 19:00 UTC on Thurs
Set by moderator on 26 January 2009.
lathos Nope. 00:00
See, for instance, Parrot_str_index
allison or, requesting a single character from a particular point may return only the first character of a multi-char grapheme?
lathos No.
Returns the character at the specified index (the Nth character from the start of the string). Combining characters are counted separately. Variable-width encodings will lookahead to capture full character values.
Sorry, yes, if you ask for the character at index 0, you get the head character. If you ask for the character at index 1, you get the combining character. 00:01
allison this breaks the guarantee of NFG always behaving as fixed-width
lathos It does behave as fixed-width. It's just that what you're measuring isn't characters. 00:02
The whole point of NFG was to put each grapheme into its own cell.
allison an NFG string with one character and two combining characters, should report its length as 3, not 5
that is something like a-o-accent-i-accent
lathos No, that's not true either.
Parrot_string_length
Returns the number of characters in the string. Combining characters are each counted separately. 00:03
allison then Parrot_string_grapheme_length returns the number of graphemes?
lathos Yep.
Tene_ are there different reasons for asking for character-count and grapheme-count?
Ah.
allison lathos: okay, I'm good with that one
lathos And there's byte_length as well for good measure.
00:04 NotFound joined
lathos What I *really* don't want to happen is you have a string which thinks it has 5 characters, then it gets internally converted to NFG (transparently to the consumer) and suddenly Parrot says it's only 3 characters wide. 00:04
allison lathos: then, what should happen when an NFG string is appended to another string type, is the NFG string is converted to the format of the destination type, character-by-character 00:05
(I should say, appended "character-by-character")
lathos Well, no, because if the grapheme can be composed into a single character in the destination's charset, then appending character-by-character will do the wrong thing. When you're appending two strings, you always need to do it grapheme-wise.
allison lathos: the composition happens as part of the conversion 00:06
lathos But you can't *do* that if you're handling characters individually. You have to look at the whole grapheme to get the context.
allison it's on converting NFG to the destination format that you decide if characters can be composed or not
so: step 1 convert NFG string to destination format, step 2 append resulting string to destination string using the ordinary non-NFG algorithm 00:08
lathos So look at each grapheme of an NFG string, break it up into constituent characters, convert each one to the destination string format, then run over that string again recombining them back into a more natural representation.
00:08 NotFound joined
lathos OR we could just do the conversion grapheme-by-grapheme instead, which would be a damned sight easier and more efficient. 00:08
00:08 AndyA joined
lathos (Which again are reasons why we invented the whole NFG system.) 00:09
allison lathos: you've got the "breaking into constituent characters" in the wrong place
NFG strings have to be able to participate in standard string transactions without requiring everything to convert to NFG
lathos Sure, they currently do. 00:10
allison when they're used in that context, they "dumb down" their semantics a bit
but, someone who's using NFG strings heavily can use the grapheme-specific versions of the functions instead
those versions happily convert everything to graphemes 00:11
to NFG, specifically
lathos Using graphemes is not the same as requiring everything to convert to NFG".
allison it's pretty costly to go parsing ordinary strings down to a grapheme representation and converting it back to the original representation every time you perform an operation on it 00:12
hard to see the advantage there 00:13
lathos It isn't.
allison elaborate?
lathos For strings that don't understand the concept of grapheme, grapheme==character. You ask for all the graphemes in a string, you get each character wrapped in a grapheme type. 00:15
nopaste "kid51" at 70.107.5.34 pasted "Proposed updates to t/README" (82 lines) at nopaste.snit.ch/15450
kid51 That match is intended to bring the t/ subdirs described in the README into alignment with the currently existing subdirs. Anyone want to comment? 00:16
allison lathos: aye, but that's not really "treating all strings as collections of graphemes"
lathos: nor is it using grapheme-semantics everywhere 00:17
lathos For other Unicode representations, when you ask for a grapheme, it gives you a character but peeks ahead to see if there are any combining characters afterwards.
allison lathos: yes
chromatic kid51, it could use a little more editing "Try to test all builtin PMCs?" but it looks decent. 00:18
basic particle: Jerry -- right? This is Rudy from the OSL
lathos What I'm saying is that treating graphemes rather than characters as the basic thing-to-be-throwing-around is not that hard, not that expensive, and, well, what graphemes were invented for in the first place.
NotFound lathos: you assume that there are no other character sets other than unicode that does not have the concept of combining characters.
lathos Doesn't matter.
I've proved the concept with Unicode, it applies equally to others too. 00:19
In fact, I think you're helping my argument. Shift-based character sets like SJIS need to be handled grapheme-wise rather than character-wise; a shift on its own doesn't mean much. 00:20
allison I'm waiting to see how well the implementation of the grapheme versions of the functions go. Someday we may replace existing character-based functions with grapheme-based ones. For now, we keep both.
lathos (Encodings, sorry, not character sets. YOu started it. ;)
Infinoid seen particle 00:21
purl particle was last seen on #parrot 2 hours, 35 minutes and 2 seconds ago, saying: and it may be worth spelling out PCT
00:21 DietCoke joined
DietCoke ron: you should find 'ack' 00:21
kid51 chromatic: Let me commit what I have. I mainly wanted to eliminate subdirs that have gone away and include those that were left out.
chromatic Fair enough.
NotFound I suspect that many people will be upset if you normalize representations when they not ask for it.
lathos allison: Given that NFG requires us to implement the character-based ones in terms of grapheme-based ones, I'm not sure that's a good idea but I'll code it anyway. ;)
Coke apparently lost internet for a bit there.
Infinoid basic: You got the right guy, but he might not be around... 00:22
basic i'm working on getting the email2trac setup, but had to run to class
Infinoid Yay, email2trac++
allison lathos: NFG only requires that we ensure NFG strings respond appropriately when requested for characters
lathos (Since NFG stores graphemes, "gimme character 3" translates to "give me grapheme 1, check how many characters are inside it, if there's 3 or more give me the third, otherwise move on."
dalek r36122 | jkeenan++ | trunk/t: 00:23
: Add entries for t/ subdirs not previously mentioned. Delete entries for t/ subdirs which have been superseded.
review: www.parrotvm.org/svn/parrot/revision?rev=36122
NotFound lathos: shitt encodings are not combining characters, they combine bytes, like utf8 does.
allison lathos: that still doesn't satisfy the requirement for NFG. It's got to be usable from languages that completely don't understand multi-byte encodings or have any way to deal with them. 00:24
TimToady I wish you guys wouldn't use the word "characters" to mean "codepoints"...
rg basic: can we get trac.parrot.org/parrot/wiki/TracNotification ?
chromatic I wish no one used "characters" when they meant "bytes".
lathos I wish no one used characters. 00:25
NotFound chromatic: strongfully agreed
allison TimToady/chromatic: it does lead to a degree of confusion
NotFound At least say 'char', not 'character'
TimToady eep
allison lathos: sure, but we're hosting a lot of legacy languages
lathos: I mean, it's very likely that Perl 6 will exclusively use the grapheme-based functions 00:26
TimToady in the absence of a pragma, yes 00:27
nopaste "NotFound" at 213.96.228.50 pasted "A dirty trick yo allow use self from an 'invoke' override" (34 lines) at nopaste.snit.ch/15451
basic rg: that should already be setup
TimToady to the user, grapheme == character
basic there's a parrot-tickets list
rg basic: then either it's not allowed for simple users or i'm too stupid to figure out how to subscribe :( 00:28
TimToady but p6 also allows 'use codepoints' or 'use bytes', with requisite OO complications on strings
rg yes, i've been pointed to that one, but i was thinking per ticket.
NotFound The problem of that trick is that in order to work as expected, the overrided invoked must not get the usual 'self' passed 00:29
allison rg: lists.parrot.org/mailman/listinfo/parrot-tickets to subscribe
00:30 tetragon joined
rg allison: thanks, but what i mean is to add myself to the cc field on certain tickets. 00:30
dalek r36123 | allison++ | branches: 00:31
: Creating branch for the second-round strings refactor.
review: www.parrotvm.org/svn/parrot/revision?rev=36123
lathos allison: Oh yeah - there wasn't any Parrot_str_ level comparison functions. (Or even equality functions.) Should there be?
I added some just to make testing easier, but it occurs to me that something like that probably ought to be in the spec. 00:32
allison lathos: there's a 'string_equal'
Coke cotto++ # updating the doc based on the mailing list. Awesome.
allison lathos: what would 'level' be for?
lathos Not in my copy of the PDD there isn't...
Sorry, I mean the "Parrot_str_ level" as opposed to the "PDD level". 00:33
allison or, do you mean "C-level" comparison functions?
lathos s/PDD/PMC/
Yes.
allison lathos: also, 'string_compare'
lathos I'm not seeing these functions in PDD28.
allison lathos: must not have copied them into the PDD, but they do exist and will continue to exist 00:34
lathos There's a PMC-level is_equal in there, but that's all I can find.
Ah, right-oh.
allison lathos: I'll add to the PDD, both regular and grapheme versions. 00:35
lathos Thanks.
Possibly also worth having a bytewise comparison there too. It's a fast way of asking if the strings are the same.
Infinoid allison: does parrot-tickets come through to parrot-dev automatically? I seem to have gotten several "[parrot] #NN:" type emails already
allison Infinoid: it only comes through if someone explicitly adds the parrot-dev mailing list as a CC on the ticket (which is generally discouraged) 00:36
Infinoid ah, ok. I've just subscribed to it, thanks
dalek r36124 | coke++ | trunk: 00:37
: Track function replacement.
review: www.parrotvm.org/svn/parrot/revision?rev=36124
Coke string folks, double check r36124 00:39
lathos allison: Oh, and bufused versus strlen could do with some clarification. The "amount of the buffer currently in use" really ought to be the same as the "length of the string in bytes". The amount of the buffer *allocated* may well be different, but that's not what "bufused" implies.
Maybe bufused should become bufsize or something. 00:40
00:42 Whiteknight joined
NotFound BTW, will be nice if string internals were not exposed to string unrelated parts of parrot. Just forward declare it. 00:43
lathos You won't see the internals; we'll just keep handing you graphemes. Um, I mean characters. Or perhaps codepoints. 00:44
NotFound In the current codebase internals are exposed, and abused a lot. 00:45
lathos But I need to see the internals because I'm trying to implement it.
The current strings codebase needs to be set on fire.
This is why I'm starting again in P6, rather than starting with what we have now. 00:46
NotFound lathos: I think your work does not qualify as 'unrelated part' 00:48
00:50 silug joined
dalek r36125 | allison++ | trunk/docs/pdds: 00:50
: [pdd] Add descriptions for 'compare' and 'equal' functions. Catch an
: unconverted old function name.
review: www.parrotvm.org/svn/parrot/revision?rev=36125
allison lathos: 'bufused' means "how much of the buffer that we currently have allocated is being used?" 00:51
dalek r36126 | coke++ | trunk: 00:52
: Track the string -> str rename currently in progress.
review: www.parrotvm.org/svn/parrot/revision?rev=36126
00:53 s1n joined
lathos Oh, urgh, buflen lives somewhere else, in a structure currently called "cache". 00:53
When would bufused != strlen? 00:54
Coke chromatic: is See RT #60626.
er.
is that RT closable?
lathos I guess bufused would be different from strlen when strstart hacks have been used. But since these are defined to be going away, presumably we can get rid of bufused too. 00:55
chromatic Coke, not quite. mmd_cvt_to_types needs renaming. 00:56
allison lathos are you looking at the String PMC or Parrot STRING*? 00:57
lathos STRING*
It has a cache, which will turn into "buffer" and "buflen", and it has "bufused" and "strlen".
allison cache is a substructure for compatibility with PMC headers, will be moved out into a single flat structure once we completely deprecated cache from PMC 00:58
lathos Yep, got that. But I don't get bufused versus strlen. 00:59
cotto allison, that's good to know. What'll be the intended purpose of the new flat struct?
lathos The string is stored in the buffer. The number of bytes used in the buffer really should be the same as the number of bytes in the string. So I don't think we need both members. 01:01
allison lathos: some operations can change strstart rather than moving the whole string over, so bufused may be longer than strlength
lathos But strstart is going away.
So one of the two members should probably go away as well. 01:02
NotFound lathos: the buf size allow optimizations for shorten and enlarging strings
lathos NotFound: I know, but it complicates the entire string subsystem for a tiny optimization on substring operations, and offset math is messy with encodings that aren't byte-based.
(apparently)
allison lathos: fair enough, when that deprecation is complete, bufused could go and keep only strlength 01:03
NotFound lathos: I agree, but the poing must be consensuated.
point
lathos allison: Excellent.
allison lathos: (assuming it doesn't break anything horribly) 01:04
NotFound Well, allison voice is aproximately a consensus ;) 01:05
lathos allison: It sounds like you're thinking more of a gradual change to the existing code. I still think the existing code needs burning, furrowing and salting, and replacing by something that actually understands encoding transparency. But now I'm going to bed. 01:06
allison lathos: yes, I generally think that when I'm revamping a system too
chromatic generally thinks that about everything, all the time. 01:07
allison lathos: but whatever the eventual fate of the existing code, successive changes over time will be far less painful that a wholesale replacement in one fell swoop
TimToady depends on how you amortize it
NotFound I tryied some months ago an attempt of gradually reinplement strings and failed miserably
lathos NotFound: You end up needing to rip everything out anyway, because people have broken abstraction all over the shop. 01:08
NotFound There are too much abuse of string internals, you change something and broke a lot of things.
allison the existing string system has the advantage that it works, that counts for a lot
lathos So does hello world.
allison replacements have to be well tested before they become candidates for primacy
NotFound allison: yes, and every gradual change I tryed make it not work. 01:09
allison but, the lovely thing about Parrot is we have plenty of room to accommodate multiple simultaneous implementations of a subsystem
and swap the "default" when ready
NotFound allison: when it starts to be a subsystem, yes. Currently is not. 01:10
lathos Yep. This is why I'm off playing in a branch. And calling for more tests.
allison lathos: aye
NotFound Even the library searching functions abuse of string internals. 01:11
allison NotFound: yes, definitely have to improve the encapsulation of string subsystem
dalek r36127 | coke++ | trunk (7 files):
: Remove the obsolete (DEPRECATED) Data::Sort from the stdlb (TT #106)
:
purl : is the path separator
dalek review: www.parrotvm.org/svn/parrot/revision?rev=36127
NotFound allison: the way to do that is to kill it ;)
allison NotFound: the awful thing is, many of those direct accesses to the string internals have corresponding function names
could (and should) be calling functions instead 01:12
chromatic Step one: add functions
NotFound allison: and others are premature optimizations
chromatic Step two: rename or move macros
Step three: fix all compilation failures
NotFound And other are plain and simple uses of parrot string as if they were c string buffers 01:13
allison NotFound: which is actually the source of a few bugs we've fixed over time
NotFound allison: yeah, we fixed a lot, but there is a lot that I think will give more work to find and fix than to reimplement the full thing. 01:14
01:16 ron joined
NotFound At least we've able to deprecate the string_repeat thing :) 01:17
01:19 ron_ joined
dalek r36128 | allison++ | branches/pdd28str_part2 (3 files): 01:44
: [pdd28str] Name change for 'Parrot_str_write_COW'.
review: www.parrotvm.org/svn/parrot/revision?rev=36128
01:56 skv joined, baest joined, Debolaz_ joined 02:01 bkuhn joined, Maddingue joined 02:13 petdance joined 02:34 pmichaud joined 02:35 pmichaud joined 02:43 Zaba_ joined
dalek r36129 | allison++ | branches/pdd28str_part2 (11 files): 03:02
: [pdd28str] Renaming 'Parrot_str_new_COW'.
review: www.parrotvm.org/svn/parrot/revision?rev=36129
r36130 | allison++ | branches/pdd28str_part2 (5 files): 03:49
: [pdd28str] Renaming 'Parrot_str_reuse_COW'.
review: www.parrotvm.org/svn/parrot/revision?rev=36130
r36131 | allison++ | branches/pdd28str_part2 (4 files): 04:14
: [pdd28str] Renaming 'Parrot_str_set'.
review: www.parrotvm.org/svn/parrot/revision?rev=36131
04:19 TiMBuS joined 04:44 ChrisDavaz joined
dalek r36132 | allison++ | branches/pdd28str_part2 (3 files): 04:54
: [pdd28str] Renaming 'Parrot_str_init'.
review: www.parrotvm.org/svn/parrot/revision?rev=36132
05:00 dmajnem2 joined
dalek r36133 | allison++ | branches/pdd28str_part2 (3 files): 05:07
: [pdd28str] Renaming 'Parrot_str_finish'.
review: www.parrotvm.org/svn/parrot/revision?rev=36133
05:16 rg1 joined
dalek r36134 | allison++ | branches/pdd28str_part2 (13 files): 05:23
: [pdd28str] Renaming 'Parrot_str_new_noinit'.
review: www.parrotvm.org/svn/parrot/revision?rev=36134
05:25 tetragon joined 05:29 Maddingu1 joined
dalek r36135 | allison++ | branches/pdd28str_part2 (13 files): 05:45
: [pdd28str] Renaming 'Parrot_str_concat'.
review: www.parrotvm.org/svn/parrot/revision?rev=36135
05:45 mberends joined
dalek r36136 | allison++ | branches/pdd28str_part2 (29 files): 06:17
: [pdd28str] Renaming 'Parrot_str_append'.
review: www.parrotvm.org/svn/parrot/revision?rev=36136
06:48 clunker3 joined 06:56 HG` joined 07:15 uniejo joined
dalek r36137 | allison++ | branches/pdd28str_part2 (46 files): 07:25
: [pdd28str] Renaming 'Parrot_str_new_from_cstring'.
review: www.parrotvm.org/svn/parrot/revision?rev=36137
r36138 | cotto++ | trunk/lib/Parrot/Pmc2c: 07:31
: [pmc2c] make PCC method args more user-friendly
review: www.parrotvm.org/svn/parrot/revision?rev=36138
07:45 masak joined 07:46 iblechbot joined 08:48 alvar joined
dalek r36139 | allison++ | branches/pdd28str_part2 (45 files): 08:53
: [pdd28str] Realizing that 'Parrot_str_new' and 'Parrot_str_new_from_cstring' do
: exactly the same thing (take a C string argument and return a new Parrot 08:54
: STRING*), collapsing them into one function.
review: www.parrotvm.org/svn/parrot/revision?rev=36139
09:07 alvar joined
lu_zero hi 09:08
Tene_ hi 09:09
moritz smolder? 09:37
purl rumour has it smolder is sourceforge.net/projects/smolder or web-based smoke test aggregator used by developers and testers to upload (automated or manually) and view smoke/regression tests using the Test Anything Protocol (TAP). or smolder.plusthree.com/app/public_pr..._reports/8
09:40 skv_ joined 09:46 ilbot2 joined
moderator Parrot 0.9.0 "From Outer Space" Released | parrot.org/ | migration to svn.parrot.org begins at 19:00 UTC on Thurs
10:08 alvar joined 10:11 skv joined 10:17 gaz joined 10:18 riffraff joined 10:23 kj joined 10:26 gaz joined 10:45 bacek joined
dalek r36140 | fperrad++ | trunk (2 files): 10:54
: [codingstd] add check of copyright for Makefile
review: www.parrotvm.org/svn/parrot/revision?rev=36140
11:00 ChrisDavaz joined
dalek r36141 | fperrad++ | trunk (39 files): 11:01
: [codingstd] fix copyright for Makefiles
review: www.parrotvm.org/svn/parrot/revision?rev=36141
r36142 | fperrad++ | trunk/t/codingstd: 11:04
: [codingstd] add check of SVN Id for Makefile
review: www.parrotvm.org/svn/parrot/revision?rev=36142
r36143 | fperrad++ | trunk/languages/bf/config/makefiles: 11:06
: [codingstd] fix SVN Id for Makefiles
review: www.parrotvm.org/svn/parrot/revision?rev=36143
kj This might be interesting to attract some more developers for Parrot's JIT: www.sourcemod.net/devlog/?p=76 11:11
TiMBuS Writnig a JIT 11:16
i giggled.
cotto looks like the spellchecker wasn't JIT 11:23
szbalint PM gets a cookie 11:34
11:41 riffraff joined
cotto Heh. Just when you thought x86 was register starved... 11:51
12:14 skv_ joined 12:29 Eevee joined 12:30 rg joined 12:46 iblechbot joined 13:24 Whiteknight joined
dalek r36144 | Whiteknight++ | trunk/src/gc: 13:51
: [GC] removing old markers for the since-resolved tickets #46191 and #46181
review: www.parrotvm.org/svn/parrot/revision?rev=36144
14:14 skv joined 14:16 bkuhn joined
kj Whiteknight: I think chromatic mentioned to me that the pic branch should be reviewed first before it's committed 14:25
Whiteknight okay, so it hasn't been committed yet then? Maybe I'll take a look at it today/tonight
it definitely is going to need to be updated after all this time, that may take a while
Coke_away Whiteknight: there is a comment on the ticket, as I recall. 14:26
Coke we got it very close, though.
Whiteknight there were several comments, I'm just trying to see what the status of everything is
I'm still listed as ticket "owner", so it's lik my job to prod about these things 14:27
Coke as I recall, there's a JIT thing that I had no idea how to resolve.
(I can only destroy C code, not create it. =-)
PerlJam Coke++ helping entropy do its job :) 14:28
Whiteknight in the ticket allison mentioned that she was going to resolve that JIT issue, I need to find out if she's done that yet or not 14:29
if she hasn't I'll do it myself
14:34 gryphon joined
Coke I don't believe she has. 14:40
thanks for following up.
14:45 iblechbot joined
Whiteknight I've got one or two other tickets in the JIT system that require some of my trademarked monkeying. I'll take a stab at the whole lot tonight or over the weekend 14:46
dalek r36145 | pmichaud++ | trunk/languages/perl6/docs: 15:05
: [rakudo]: spectest-progress.csv update: 298 files, 6609 passing, 0 failing
review: www.parrotvm.org/svn/parrot/revision?rev=36145
Whiteknight quite a good amount of rakudo tests passing! 15:12
15:14 alvar joined
masak grumbles something about quite a few bugs, too 15:37
Whiteknight bugs get fixed eventually. Rakudo has enough development velocity to muscle through all the bugs 15:41
NotFound Offtopic: Soemone fluent in spanish want to take a lookt at that? barrapunto.com/~explorer/journal/31662 Is about the Modern::Perl thing 15:43
Looks like chromatic is a sort of Sauron for some people here in Spain X-) 15:44
15:47 Phurl left
Coke I don't speak at all fluently, but it could be positive. 15:48
I think the evil things there are the things things c is trying to get us to not use, not c himself.
NotFound Coke: well, at least it will make more people take a look at Moder::Perl 15:50
16:00 clunker3__ joined, geof joined 16:10 Theory joined
dalek r36146 | fperrad++ | trunk: 16:11
: ignore language checkouts 'kea-cl' & 'perk'
review: www.parrotvm.org/svn/parrot/revision?rev=36146
16:21 ask_ joined, ask- joined 16:23 davidfetter joined 16:26 Tene joined 16:29 Whiteknight joined 16:54 barney joined 17:14 barney joined 17:18 Whiteknight joined
dalek r36147 | bernhard++ | trunk/docs/pdds: 17:30
: [codingstd] pdd_format.t
review: www.parrotvm.org/svn/parrot/revision?rev=36147
17:31 dmajnem2 joined
dalek r36148 | fperrad++ | trunk (2 files): 17:34
: [codingstd] add check of Makefile coda
review: www.parrotvm.org/svn/parrot/revision?rev=36148
17:34 contingencyplan joined
dalek r36149 | fperrad++ | trunk (46 files): 17:39
: [codingstd] fix coda of Makefiles
review: www.parrotvm.org/svn/parrot/revision?rev=36149
17:39 chromatic joined
pmichaud What's the new parrot repo location going to be? 17:46
svn.parrot.org ?
particle i expect so, yes 17:47
that's what it is now, anyway
pmichaud svn.parrot.org/parrot/trunk ?
particle ooh, hey, does that start in 75 minutes?
pmichaud yes, 75m
particle pmichaud: click that link and take a look yourself :)
pmichaud "Revision 34015" 17:48
looks out of date. Or the revision numbers all change.
particle no, it's a test from earlier
proof-of-concept
today, svn head moves
well, svn dump 17:49
pmichaud looks like I have rakudo in github
davidfetter w00t!
pmichaud github.com/rakudo/rakudo
PerlJam rakudo/rakudo ? 17:50
pmichaud username + repo
more precisely it's probably rakudo/rakudo.git
PerlJam wee! 17:51
Now if you tell me that it already "works" as-is, I'll be shocked :)
pmichaud depends on the meaning of "works" 17:52
if you check it out into languages/rakudo/ and run Configure.pl, it works.
PerlJam (i.e., it already sorts out which parrot to use and such)
pmichaud it doesn't do the "sort out which parrot to use" part yet.
PerlJam yeah, I figured I'd need to put it in parrot
17:54 hercynium joined
jonathan pmichaud: Is there an SVN mirror? 17:54
(yet)
pmichaud jonathan: no.
jonathan Or better to ask: will there be?
pmichaud jonathan: there will be one if someone creates one.
(I'm not planning to do it) 17:55
git seems to be no trouble to use thus far.
hercynium git++ # interoperates with svn, so TIMTOWTDI
jonathan Which GIT version do I want? 17:56
pmichaud as in, I was able to checkout a (git) copy of rakudo into the parrot tree, make a change, and commit it back to the (git) repo without any difficulty.
Infinoid git 1.6.x
jonathan installs
dalek r36150 | coke++ | trunk/runtime/parrot/library (2 files):
: avoid usage of DEPRECATED Data::Escape library.
review: www.parrotvm.org/svn/parrot/revision?rev=36150
PerlJam pm: now you just need to start handing out commit bits to the appropriate people :)
pmichaud PerlJam: correct. 17:57
PerlJam btw, github is awesome for that too.
pmichaud I've noticed :-)
hercynium only stumled onto the conversation since he rarely watches this channel, even though he lurks 17:58
Infinoid I'm going to have some spare tuits, this evening. Any fixing-things-after-the-repository-split tasks you can hand out to bored people like me?
dalek r36151 | rurban++ | trunk/config/init/hints: 17:59
: [configure] hints/mswin32
: - simplified get msvcversion
: - no -wd warnings disable syntax on MSVC6 (version 12)
review: www.parrotvm.org/svn/parrot/revision?rev=36151
pmichaud Infinoid: I'll be updating the "how to get rakudo" instructions -- more eyes on that would be helpful.
Infinoid ok, I'll check it out
pmichaud (haven't done it yet... these things take time)
Infinoid if you have any ideas on how to do the "sort out which parrot to use" stuff, I'm happy to hack on that, too. 18:00
jonathan git checkout C:\\Consulting\\parrot\\rakgit>git checkout git://github.com/rakudo/rakudo.git
fatal: Not a git repository (or any of the parent directories): .git
What am I doing wrong?
Infinoid s/checkout/clone/
jonathan Huh? 18:01
Infinoid use git clone, not git checkout
jonathan Ok
Infinoid "checkout" means "switch the local repository I'm sitting in to use the branch I've specified"
clone means "make a local repository by copying stuff from this url"
jonathan OK, it's doing something.
pmichaud jonathan: I find it helps immensely to think "I'm in an svk world" instead of "I'm in an svn world" 18:02
then things make more sense
jonathan pmichaud: Apart from I never used svk either.
pmichaud jonathan: just remember that you have your own copy of the repository. The *entire* repository. 18:03
jonathan Wow.
pmichaud thus "commit" means "commit to my working copy"
Infinoid that means all branches and all revisions
jonathan In that case, the checkout was fairly fast. Or did we lose version history?
pmichaud fast checkout is normal with git
Infinoid nope, it's all there
PerlJam jonathan: no, git is *fast*
purl okay, PerlJam.
jonathan Nice.
pmichaud and the way you get things from your local repository to the public one is "git push"
with git there's no "official master" repository designated by the software. It's only the "master" by convention. 18:04
jonathan OK.
Well, I have a checkout.
Erm.
A clone 18:05
:-)
Infinoid a repository
purl a repository is, like, see bast repo or code2.0beta.co.uk/moose/svnweb/index.cgi/moose/
pmichaud note that rakudo now expects to be languages/rakudo instead of languages/perl6
particle so, should we be working with the clone directly, or have copies of it?
is the clone like //mirror in svk?
pmichaud work with the clone.
Infinoid I dunno //mirror
particle or, whatever it's called, i forget
ok 18:06
pmichaud you work in the directory you created as part of the clone.
(languages/perl6 still exists in the parrot repo until everything settles out. But languages/rakudo is now the "official" location.)
particle ok, so i'll get a fresh parrot co and stick a rakudo git clone there
pmichaud I'm waiting for my dns changes to take effect. 18:07
dalek r36152 | fperrad++ | trunk/languages/lua/t:
: [Lua] mathx
: now, Inf & NaN work on win32
review: www.parrotvm.org/svn/parrot/revision?rev=36152
jonathan pmichaud: ROADMAP could use a couple of updates - I have done some things in there. ;-) 18:08
pmichaud jonathan: ROADMAP is due for a complete rewrite.
Coke time?
purl i heard time was 18:08:38 2009 and (did you mean "clock"?) or flowing like a river
Coke clock?
purl Coke: LAX: Thu 10:08am PST / CHI: Thu 12:08pm CST / NYC: Thu 1:08pm EST / LON: Thu 6:08pm GMT / BER: Thu 7:08pm CET / IND: Thu 11:38pm IST / TOK: Fri 3:08am JST / SYD: Fri 5:08am EST /
jonathan pmichaud: OK. :-)
Coke svn move in 51m? 18:09
particle yep
meantime, I CAN HAZ RAKUDO GITBIT?
pmichaud github id? 18:10
pmichaud guesses "particle" 18:12
particle particle is taken, i'm rakudoconsulting
pmichaud that's funny, "particle" brings up your picture :-)
particle oh?
maybe i already had an account :)
pmichaud github.com/particle 18:13
particle yep, that's me!
joy.
jonathan pmichaud: There's one critical issue we may have missed.
pmichaud jonathan: what's that?
jonathan We need to update the karma bot!!!
;-)
pmichaud I'll give a karma point to whoever does that. :-) 18:14
jonathan OK, so I should get a github account?
pmichaud jonathan: yes.
18:14 mberends joined
particle jonathan: it's not intuitive how, but at the bottom is a link, then select 'open source' 18:14
PerlJam there's a "Pricing and Signup" link at the top too 18:15
Coke manages to snag "coke" on github. whee. 18:16
chromatic Nice.
Infinoid grabs "Infinoid"
jonathan pmichaud: My accoutn is 'jnthn'
Infinoid Uh. That looked wrong.
jonathan *account 18:17
pmichaud jonathan: jnthn added
kj is the github account needed for the move of parrot to git? 18:19
pmichaud it's only needed if you plan to commit directly to the public repo
PerlJam kj: no, just the use of github
particle so, the first time i try to commit, it'll ask for my credentials? 18:20
pmichaud I think you need to set up a public key.
PerlJam yep
Coke kj: (parrot isn't moving to git)
particle i'm gonna need to know how to do that, then 18:21
kj Coke: ah yes, I was confused there for a bit. It's just moving to a different server
pmichaud particle: github.com/guides/providing-your-ssh-key 18:22
PerlJam github++
pmichaud git.rakudoperl.org/rakudo now works :-) 18:23
PerlJam you can also specify any number of public keys if you have multiple machines from which you work.
Coke is languages/perl6 in the parrot repo now defunct? 18:24
PerlJam For those of you new to git, you may want to do git.rakudoperl.org/guides/tell-git-...il-address too
shorten PerlJam's url is at xrl.us/bed8j5
PerlJam puts rakudoperl.org to use :)
Coke PerlJam: the urls you are posting have JS errors in them, at least according to IE. 18:25
PerlJam that's github's fault, not mine :)
Infinoid awesome. XML::RAI chokes on github's commit rss feed
diakopter Infinoid: :) 18:26
Infinoid ohai diakopter! are you working on dalek too? :) 18:27
particle ok, one per machine.
kj pmichaud: can you add /me as well? 18:28
jonathan afk for a bit - dinner and packing for workshop
pmichaud kj: username?
kj kjs
pmichaud kj: aded
*added
kj thanks
PerlJam pmichaud: when I go to git.rakudoperl.org/ and click on the login link I get "git.rakudoperl.org uses an invalid security certificate" this may come up more as rakudoperl.org is published and people try to use it. 18:29
pmichaud: just so you know.
diakopter Infinoid: heh, no... I'm selecting between tailor or svk to do mirroring to subversion at svn.perlsix.org/rakudo (not there yet)
pmichaud PerlJam: I don't plan to advertise "git.rakudoperl.org" anyway. Mainly it'll be git://.... 18:30
PerlJam okay.
particle wait... should i be using a clone of github.com or git.rakudoperl.com?
er, org.
18:30 PacoLinux joined
particle ok i was i scrollback 18:30
pmichaud particle: I'd recommend git.rakudoperl.org, but I'm still feeling my way through this :-)
particle is there a git switch? 18:31
pmichaud I'd just remove languages/rakudo and re-clone.
it's fast and easy enough :-)
particle okie fine
PerlJam particle: you can edit .git/config too
particle what should i edit it to be? git://git.rakudoperl.org/rakudo ? 18:32
pmichaud what is it now? 18:33
particle er, rakudo/rakudo.git
pmichaud just change the host
particle github.com/rakudo/rakudo.git
ok
what about the http?
PerlJam particle: that's fine 18:34
Coke rant: streams test that compares a 100 line file but gives no helpful diagnostic when there's a difference.
PerlJam particle: git.rakudoperl.org/rakudo/rakudo.git is how it should read
pmichaud github says git://... 18:35
Infinoid spectest_regression works fine in a git checkout :)
PerlJam pm: either works :)
pm: well, either works directly from github, I don't know about through rakudoperl.org 18:36
pmichaud I'll be using git:// in the readme.
if only because we might someday move to a non-http: repo
chromatic The Git protocol is also much more efficient. 18:37
purl okay, chromatic.
PerlJam it looks like git://github.com/rakudo/rakudo.git works, but git://git.rakudoperl.org/rakudo/rakudo.git does not 18:38
pmichaud PerlJam: correct, I'm getting the same results.
PerlJam chromatic: with such a small repo as rakudo, I doubt anyone will notice a difference :) 18:39
pmichaud PerlJam: Ah, I have to change the CNAME for git.rakudoperl.org 18:40
it needs to be rakudo.github.com
...and we might need a paid account for it to work. 18:45
Coke svn move in 14m? 18:46
dalek r36153 | kjs++ | trunk/languages/pod/src/parser (2 files): 18:47
: [pod] some work on languages/pod. Small bits.
review: www.parrotvm.org/svn/parrot/revision?rev=36153
particle someone put parrot on git, fast! ;) 18:49
davidfetter
.oO(parrot implementation of git)
particle hush now
someone notify ohloh, so they don't mess up my stats :) 18:50
Coke anyone else heard anything since allison's note about the move earlier in the week? 18:54
18:54 Robrt joined
pmichaud I haven't heard anything additional, no. 18:55
Coke seen robrt? 18:57
purl robrt was last seen on #pobox 7 days, 23 hours, 8 minutes and 4 seconds ago, saying: Also, pine sucks. [Jan 21 19:49:13 2009]
Coke amen, brother.
clock?
purl Coke: LAX: Thu 10:57am PST / CHI: Thu 12:57pm CST / NYC: Thu 1:57pm EST / LON: Thu 6:57pm GMT / BER: Thu 7:57pm CET / IND: Fri 12:27am IST / TOK: Fri 3:57am JST / SYD: Fri 5:57am EST /
Robrt Coke, yes? 18:58
Coke hio.
just wondering if you're all set for the migration in :02. =-)
Robrt Yes.
Coke Robrt++ 18:59
pmichaud Robrt++
Robrt At least I think so.
18:59 bkuhn` joined
pmichaud just so there's not confusion: it's okay if languages/perl6 (rakudo) gets copied along with the rest of Parrot in the migration 18:59
we'll do any additional moves/adjustements to it once it's in the new location.
Robrt pmichaud: I was going to copy everything anyway.
pmichaud Robrt: excellent.
Robrt Ok. Starting the process now. 19:02
rg if anyone is hacking on dalek after the move: would it be possible to output the name of a file, if a commit only changed one file? (since it says when more than one file was affected) 19:04
s/a file/the file/
19:04 allison joined
Robrt allison: we are go. 19:04
allison robrt: thumbs up! 19:05
purl i guess thumbs up is at www.friedmanarchives.com/China/Web/...%20dpi.jpg
diakopter Infinoid: see rg question above?
allison (I popped in channel to make sure everyone heard the migration start)
Coke shorten that 19:06
purl That URL is at xrl.us/bed8rb [parrotvm.org]
Coke dammit, purl.
purl janet!
Infinoid rg: sure can. keep bugging me and it'll get done :)
Coke hugs purl.
purl flees!
rg coke++ lol :)) 19:07
Infinoid (currently dalek parses the list of files out of the svnweb diff... I'm currently hacking up another version of that for github)
one speedbump: github's atom feed lists the committer as "Patrick R. Michaud", not "pmichaud". So I'd either need to do (Patrick R. Michaud)++, or have some kind of lookup table. 19:08
19:10 ask_ joined
Coke allison: I have a story ready to post on parrot.org right after the switch. 19:12
mainly just a wrapper for the 'svn switch' command you posted earlier, just want to make sure it works before I post it. 19:13
allison Coke: excellent, thanks! 19:14
Robrt Move Status: still waiting for the dump to dump. Another 10-15 minutes. 19:16
Coke Robrt++
Robrt Also, I just scheduled an oil change for my car in 2 hours, so if we're not done by then, y'all will have to wait till that's over. 19:17
:)
Coke ^_^
NotFound Someone can create an account for me with the name NotFound and drop permissions for julianalbo ?
particle "total", 6613, 0, 300, 1756, 8669, 14244 19:23
pmichaud++ git++ 19:24
allison NotFound: better if you create the new account, but yes, can easily switch permissions
NotFound Create in in trac?
allison NotFound: yes
NotFound Is already created 19:25
allison NotFound: okay, just a sec...
kj allison: what would be the root node of a POD parse tree, a Pod::DocTree::Block?
allison kj: ah, I didn't add that node, should be Pod;DocTree;File 19:27
kj ok, well i can add it.
allison (when parsing multiple files, you'd get an array of P;DT;File nodes)
kj oh ok, right.
19:27 mberends joined
kj at this point I can't get things to work at all. Null PMC access in find_method() 19:28
allison kj: this is from the actions.pm file? 19:29
kj yes
../../parrot pod.pbc, and then just typing in something like '=head1 x'
probably have to do a 'make' in all action methods. putting in placeholder make statements now 19:30
Infinoid ok, there. I've now got a botnix plugin that emits: 19:31
9f84067 | (Patrick R. Michaud)++ | Configure.pl:
: Modify Configure.pl to use "rakudo" instead of "perl6"
review: github.com/rakudo/rakudo/commit/9f8...612b2a0fb1
shorten Infinoid's url is at xrl.us/bed8uz
Robrt Move Status: Dump complete, now compressing. Next up copy.
Infinoid pmichaud: is that what you want it to look like? :)
pmichaud Infinoid: looks great to me. 19:32
Coke Infinoid: as long as you're in there, can we get partcl commits too? =-)
pmichaud I'm waiting for "rakudo.github.com" to start working. 19:33
I think I followed the instructions there, but no joy yet.
Infinoid pmichaud: Ok. No qualms about the full author name? (The RSS doesn't contain the username.)
Coke: Sure can. svn or git? rss link?
pmichaud qualms, yes, but I don't have any good answers for you at the moment.
Coke Infinoid: svn 19:34
pmichaud it's not something that I would see as a blocker.
Coke it's a googlecode project. seeing if there is an obvious rss change feed.
lathos Bah. I think I need to wait a fortnight for all the various bits of dust to settle.
Infinoid Sounds like we're going to be tracking several rss feeds... one each for parrot, rakudo, partcl, maybe eclectus and pipp etc. How should I disambiguate these visually?
Robrt Coke: There is 19:35
PerlJam Infinoid: prefix each line with the project name :)
Coke Robrt: perhaps obvious is the wrong word, as I cannot see it. =-)
Infinoid PerlJam: That works. I was thinking either that, or just prefix the "changed common prefix" part in the first line
e.g. rakudo/Configure.pl 19:36
Robrt Coke: what's the project?
purl i heard the project was theoretically more bitter than us
Coke Infinoid: code.google.com/feeds/p/partcl/svnchanges/basic
(google reader found it for me, yay.)
PerlJam Infinoid: should the commit messages perhaps have their own channel?
Infinoid I don't have a problem with that, either.
diakopter: are you ok with me significantly increasing dalek's workload? :) 19:37
basic Infinoid: want to test email2trac again?
Infinoid basic: ok, one moment.
basic thanks :)
Infinoid I should probably start making tickets for these dalek requests. 19:39
Robrt Move Status: loading dumpfile into new repository. wondering why i didn't just rsync over the raw directory tree 19:40
Infinoid basic: Jan 29 11:38:17 [postfix/smtp] 7F8342D9DCF: to=<tickets@parrot.org>, relay=smtp4.osuosl.org[140.211.166.137]:25, delay=2, delays=0.28/0.01/1.1/0.6, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as 516333F5E5)
diakopter Infinoid: what do you mean..?
Coke Robrt: then we'd have missed like 3 status updates, that's why!
basic neat
Infinoid diakopter: Sounds like we want to track at least 3 rss feeds, and move all of these notices to their own channel.
Coke (own channel) If you're moving out of #parrot, don't bother grabbing partcl's stuff on my account. 19:41
(feel free to include it for others)
Infinoid basic: how much delay should we expect? I don't see anything coming up on trac.parrot.org/parrot/ticket/49 yet.
Coke: We could settle the details democratically. I'm just making a list of requests... 19:42
basic Infinoid: oh, it may not work with the migration going on right now
diakopter Infinoid: I don't mind... just sigterm botnix and it should restart gracefully immediately 19:43
Infinoid Ok, thanks. (both of you)
I kinda like the single-line commit messages in #perl6, to be honest. The ones dalek emits are rather more verbose. 19:44
If spamming #parrot is a concern, I can always switch the format. Or emit a more verbose version somewhere else, if someone wants review links. 19:45
Any thoughts?
purl Any thoughts are welcome =)
chromatic I like reading commit logs and knowing what's going on.
PerlJam Infinoid: I like single-line messages on #parrot, full message on #other_channel
allison NotFound: okay, your user in trac now has subversion commit permissions. The 'julianalbo' account from the old system not ported over to the new one. 19:46
PerlJam (I don't know what to call the other channel. #parrot_related_commits?)
NotFound allison: nice, thanks
Infinoid Do the various languages have their own channels? If so, it might make sense to have a summary here and the full message there... but keep full parrot messages here, as this is parrot's channel.
allison PerlJam: maybe just #parrot-commits, to match the mailing list
PerlJam allison: How sane :) works for me. 19:48
Infinoid Okay. Is that the concensus? Works for me.
pmichaud I don't have a problem with #parrot spams thus far.
allison I like having the revision links in-channel 19:49
Coke (more verbose) eh. if we have a link in channel, we don't need more verbose in another channel. 19:51
Infinoid How about: stay with the current format and put all the feeds in here, and then move them out if/when project activity gets out of hand?
chromatic If they get out of hand, +1.
allison Infinoid: +1
purl 1
Infinoid (We *want* project activity to get out of hand, but at the moment I don't think the level of spam will be any different from what it was yesterday.)
PerlJam Infinoid: sounds good, +1
Infinoid Ok, thanks! 19:52
kj allison: is there a reference from which you wrote languages/pod's grammar?
bricas allison: will you be updating your ppa archive with the new parrot release? 19:53
kj pmichaud: what does "No handler to delete" message mean in a PCT-based compiler? 19:54
pmichaud means a pop_eh without a corresponding push_eh somewhere. 19:55
kj mm. it should be in the generated PIR somewhere. Does that imply there's a bug in NQP (or perhaps PCT)?
pmichaud I don't know that it implies an NQP or PCT bug, no. 19:56
would help to see the PIR output.
allison kj: yes, perlpodspec perldoc.perl.org/perlpodspec.html 19:58
bricas: I'm actually switching to the main parrot PPA, now that it compiles on 64-bit
bricas: my personal PPA was just a test
bricas allison: ah-ha :) thanks! 19:59
allison kj: also many years of experience maintaining Pod::Simple (PGE is *so* much cleaner for parsing Pod) 20:00
pmichaud oh! I remember my question now. Is this parsing perl5pod or perl6pod ?
allison pmichaud: perl5pod, since that's what we have in the repository currently 20:01
pmichaud: would be pretty quick to add the perl6pod variations as a subclass or fork
pmichaud: last I heard, the spec was still shifting there? 20:02
pmichaud it is, yes.
I was just curious. :-)
kj allison: yes, i can imagine. It looks pretty straightforward. I hope to get something working soon, once I can resolve the 'no handler to delete' issue.
allison pmichaud: still, it wouldn't hurt to have a PGE parser for it
kj pmichaud: i'll check with you later, regarding the generated code
thanks for now, anyway
Robrt Move Update: the svandmin load is taking too long, I'm working on Plan B to see if I can speed it up 20:03
pmichaud parser for perl6pod? We already have a basic one in Rakudo. :-)
(doesn't handle all of the special formats in the pod itself, no -- just the macro-level stuff)
allison pmichaud: then won't bother with a lower-level one
pmichaud: we need a Pod5 parser in Parrot so we can eliminate external dependencies 20:04
kj nopaste?
clunker3 pasta.test-smoke.org/ or paste.husk.org/ or nopaste.snit.ch:8001/ or rafb.net/paste or poundperl.pastebin.com/ or paste.scsys.co.uk/
purl nopaste is at nopaste.snit.ch/ (ask TonyC for new channels) or rafb.net/paste or poundperl.pastebin.com/ or paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at www.extpaste.com/ or paste.scsys.co.uk (for #catalyst, #dbix-class, #moose and others)
pmichaud oh, I totally agree.
I was just curious what you did :-)
nopaste "kjs" at 193.1.104.5 pasted "No handler to delete" (7 lines) at nopaste.snit.ch/15454
kj pmichaud: actually, now I think of it, the error is indicated to be in src/pct/hllcompiler. 20:05
allison kjs: how are you running the compiler? with --target=parse? another target? no target?
kj no target
pmichaud kj: it's possible that hllcompiler has a bug in push_eh/pop_eh, yes. 20:06
kj and the place where the error is indicated, has a 'push_eh' commented out
allison kj: try it with --target=parse, I'm curious which stage it's happening at
pmichaud kj: if you're running with no target and there's no code gen, then "no handler to delete" might be expected.
kj allison: the parse is ok
meaning, --target=parse is no error
pmichaud kj: is there a past structure being generated?
allison pmichaud: how do we delete handlers?
kj pmichaud: yes, Pod::DocTree::Nodes 20:07
pmichaud allison: pop_eh removes a handler, iirc
allison pmichaud: no, it's generating an alternate set of nodes
kj (subclasses of that)
20:07 rurban joined
allison pmichaud: they're subclasses of PCT::Node, but not related to the PAST nodes 20:07
pmichaud ah. The default stages attempt to call PAST::Compiler on whatever comes back from the parse stage
rurban "svn: Could not open the requested SVN filesystem" Are we moving house?
pmichaud so you probably need to adjust the stages
kj it checks for isa PAST::Node 20:08
which it isn't
allison pmichaud: that was actually my biggest question, how to change hllcompiler's stages
pmichaud allison: that's actually going to change this month.
kj and then it goto err_past, which tries to pop_eh
pmichaud but currently there's an "addstage" and various other methods on HLLCompiler to do it.
allison pmichaud: is there a "removestage"
pmichaud allison: yes.
Infinoid rurban: yep, transition in progress
rurban good 20:09
kj should the Pod::DocTree classes be subclasses of PAST::Node? or wouldn't that help?
pmichaud but as I said, I expect the whole stages thing to be refactored.
allison pmichaud: which stages would we need to remove to cut out everything after the initial "parse->ast" stage
pmichaud allison: you can supply a completely new list of stages
allison pmichaud: sure, we're just looking to get it working for now
moderator 11:58] <@allison> bricas: my personal PPA was just a test 20:09
Infinoid oops 20:09
moderator Parrot 0.9.0 "From Outer Space" Released | parrot.org/ | svn transition in progress 20:09
kj maybe just removestage everything after the parse->past conversion 20:09
pmichaud it's compiler.'stages'(...)
allison pmichaud: are there any examples in the repository? 20:10
pmichaud not that I know of (that manipulate the stages)
but effectively:
$P0 = split ' ', 'parse past foo bar baz'
compiler.'stages'($P0)
sets the explicit list of stages for compiler 20:11
allison pmichaud: okay, good. and then how would you set the actions file for your custom stage 'foo'?
pmichaud I'd probably keep the existing past stage
it doesn't care if what comes back is past
or something else 20:12
oh wait, yes it does.
hrm.
allison pmichaud: what we'd have is something like 'parse doctree html' or 'parse doctree man',
pmichaud well, eventually each "stage" will be able to register itself as an HLLCompiler
so there won't be a need to list the stages -- it'll be automatically computed via '--target' 20:13
allison pmichaud: makes sense
pmichaud for now each "stage" is just a method on the HLLCompiler object
allison pmichaud: all we really need for now is a quick hack to get the chain started, even if we need to subclass and extend HLLCompiler
pmichaud my suggestion is subclass HLLCompiler, add 'doctree' and 'html' methods. 20:14
allison so, if you have a stage named 'doctree', you need to add a method named 'doctree' to HLLCompiler, or the subclass?
ah, yes
pmichaud either works.
allison and, we can look at the existing 'parse', 'past', 'post' etc methods for examples of how the 'doctree', 'html' etc methods should work 20:15
pmichaud rakudo has an example of subclassing HLLCompiler and adding methods, I think.
and yes, look at existing examples.
those methods are all very short.
(past isn't, but that's because it's trying to handle both PAST::Compiler and TGE::Compiler stuff.)
allison kj: does that make sense? do you want to take a stab at it, or would you like me to do it? 20:16
allison copying details into a text file to refer back to them 20:17
kj (backscrolling) 20:18
Robrt Move Update: Copy done. Now testing.
20:18 mberends joined
NotFound There is no TV show transmitting this on air ;) 20:21
?
Robrt Move Status: Things are looking good, now getting trac in shape. 20:23
basic Robrt: i can fix the lock 20:24
tewk ll 20:25
Robrt basic: Thanks. Should I be running resync as root or as myself?
kj pmichaud, allison: so, basically, 1) create a subclass of HLLCompiler 2) instantiate it 3) set its stages attribute (through the 'split' trick) 4) invoke it 20:26
pmichaud kj: yes
although "invoke it" is really hllcompiler.'compile'(...)
allison kj: yes, and you can do all that in the main pod.pir compiler file
pmichaud correct. 20:27
kj ok, I'll have a look.
pmichaud that's the logical place for it to go.
perl6.pir is the example I'm most familiar with.
kj yes looking at that now.
that seems straightforward enough
rurban jonathan: I'm working now on documenting the new packfile format: parrotbyte.pod, the native_pbc tests and enhancing pdump to match the new format. 20:30
Whiteknight rurban++, we need more packfile documentation 20:31
rurban But as I see it it is still not parrot inter-version portable. hmm. old-parrot new-pbc => "Iterator init without aggregate" 20:33
20:34 alvar_ joined
Robrt Move Status Update: svn is all done and works and is tested (at least once). Trac is resyncing slowly behind the scenes. Y'all are good to go. 20:37
Infinoid Robrt++
rurban Robrt++
lathos What's the magic switchover command? 20:38
nopaste "kjs" at 193.1.104.5 pasted "create a subclass of HLLCompiler: class 'HLLCompiler' does not exist..." (22 lines) at nopaste.snit.ch/15455
Infinoid lathos: svn sw --relocate svn.perl.org/parrot/trunk svn.parrot.org/parrot/trunk 20:39
(replace "http" with "https" if that's what your old checkout was using.) 20:40
lathos Neato.
chromatic And the svk switchover?
Infinoid Hell if I know.
allison chromatic: svk does have a switchover technique 20:41
NotFound Fresh checkout is always an option
Infinoid I haven't figured it out for git-svn, either.
Robrt I think for svk you have to jump through hoops and update a prop somewhere.
lathos Now, how long do we have before we have to bugger about again with rakudo and git?
PerlJam Infinoid: I think there's a file you can edit and it just works (for git svn)
Robrt In this case, we just picked up the server side files representing the repo and moved them. The only things different are the URL and authentication mechanisms.
allison chromatic: it's something like "rebase"
Infinoid PerlJam: probably .git/config or somesuch. I just haven't had the chance to look yet. 20:42
Infinoid is working on some dalek plugins first
PerlJam Infinoid: I'm about to look now.
Infinoid Great, please let me know.
allison chromatic: svk mirror --relocate DEPOTPATH URL 20:44
PerlJam Infinoid: I just edited what looked to be the appropriate URL in .git/config, but it doesn't seem to want to rebase now. 20:47
it just sits there. I have no clue what it's doing.
rurban First? 20:49
purl somebody said First was => wrong
rurban Ah I see, the irc hook is not yet working. Just committed r36155 20:50
chromatic Just pulled r36155. 20:51
rg it looks like all the docs on www.parrotcode.org/docs/ are empty (except for header and footer). i guess that needs to be switched, too?
PerlJam not all of the docs 20:53
everything from "Reference Material" down seems to work okay
Whiteknight how do we authenticate the new SVN server? our trac username/password? 20:54
rurban same as before
rg the pdds don't
Whiteknight same svn.perl.org username?
kj same doesn't work for me
rurban for me it worked. interesting
allison your username and password is your trac user/pass
kj it does work with my trac.parrot.org password
allison so, if you had them set the same, they're the same 20:55
the old accounts are all gone
kj allison: I took a stab at it, but I can't get it working (pod). Maybe I'm doing something very wrong
rg so make that only the reference material section works. 20:56
allison you can create a trac account that you only use for svn (that is, if you want a different username/password for svn)
Coke www.parrot.org/ has the new repo information.
allison kj: did you commit what you've done so far? 20:57
Coke (only on the front page atm.)
kj allison: anyway, I commited what I had
yes
allison kj: okay, I'll take a look at it
Infinoid Go trac go. It only has 5 more years of revisions to work through.
chromatic patches IMCC for jonathan.
Coke note that commit emails are currently lacking.
kj allison: not sure what level of priority this has... with 1.0 coming up...
allison Coke: they're still going to the perl.org address
(because we copied over the commit hooks directly) 20:58
Coke allison: if they're going there, they're being moderated.
allison Coke: I got one
rurban the irc commit hook does not work
Coke 36154. ?
(that was the first commit to the new repo)
allison Coke: oh, wait, the time stamp was 10:47, not 12:47 20:59
rurban 36155 was me: src/pdump -h visual change
allison Coke: okay, need to update those scripts
Coke allison: robert specifically did not re-enable the post-commit hooks it seems. 21:00
allison Coke: or, they're not working because mail sending is configured differently on the new server
kj is hungry and goes home
Coke allison: " I had the following post-commit hooks on perl.org - as Will noted, 21:01
you may want to re-institute some of them"
--Robrt
Robrt++
allison Coke: ah, right, then yes, we'll need to readd 21:02
Coke allison: probably want to create a parrot.org list for the commit messages and reply those that are post-switch. 21:03
allison Coke: list already created, it's parrot-commits@lists.parrot.org 21:04
chromatic ... and I can commit.
Coke Age: 4 years.
purl hmmm... 4 years is just not practical.
Coke chromatic: see, it wasn't that bad. *cough*
chromatic Good. I'm pleased. 21:05
Now to figure out how to subscribe to YAFML. 21:06
Coke YAFML
YAFML?
ya fine markup language?
chromatic Mailing List
Coke ... yes, that does make more sense. 21:07
jsut|work i think the F might not represent fine either, but who knows
chromatic '
"D stands for a lot of things." -- Neil Gaiman
rurban May I already commit again?
Coke Yes.
moderator Parrot 0.9.0 "From Outer Space" Released | parrot.org/ | svn transition complete-ish 21:08
Coke chromatic: (r36159) you funny. 21:09
chromatic I am? 21:10
rurban I'm getting now llvm-gcc stackdumps on freebsd 7, upgrading to 2.4 21:14
(compiler internal failure... bla...)
Coke Age: 3 years 21:19
21:41 bkuhn joined
basic allison: hey, im about to leave but i can hop on my laptop in class 21:50
21:54 russell_h joined
allison basic: I was just looking for info on available svn commit hook mailer scripts on parrotvm.osuosl.org 21:54
Coke Age: 22 months 22:08
22:09 Whiteknight joined
particle coke: is this updates on benjamin button? 22:10
Infinoid I'm probably not helping trac's latency at all by testing the rss stuff on it as it updates.
russell_h its mostly just iowait 22:13
the disk in the vm is connected via iscsi, so basically all disk io goes over the network 22:14
Infinoid ah.
russell_h reading svn -> writing trac db is a lot of io
Infinoid My rss stuff has an http fetch timeout of 30 seconds; I'm hitting that timeout sometimes while testing this. 22:16
Anyway, I think I've got a botnix plugin that will work with the new parrot repo.
Unfortunately, trac doesn't include the list of changed/added/deleted files in the rss description, so I'm scraping the changeset link to get that stuff.
russell_h yesterday the trac got > 12k hits from Googlebot
Infinoid Nice. 22:17
russell_h I've been updating robots.txt, and ip banned one googlebot for today
rg for google, iirc you can also put a hint in robots.txt about how many requests googlebot should make. 22:18
russell_h I'll look into that. Google ignores the crawl-delay setting for some reason. Apparently you have to set that in their webmaster tools, which resets it every 90 days 22:19
nopaste "Infinoid" at 96.238.213.50 pasted "For the interested, here's what the IRC output of the 3 new rss parsers will look like." (11 lines) at nopaste.snit.ch/15456 22:20
particle infinoid: how about parrot r18... | ... | ... ; partcl r324 | ... | ... ; rakudo 9f... | ... | ... 22:22
oh, nm
well, yeah, you don't need the colon
i guess every line should have the preface, though, so the colon is better 22:23
Infinoid well...
particle is it possible commit messages will cross within the same bot?
Infinoid the colon was already there prefixing the actual log message
That made the header and footer lines a bit more visually distinct.
particle i was imagining the project name only on the first line
PerlJam In the spirit of noticing random patterns, does anyone else find it mildly interesting the partcl, parrot, and rakudo all have the same number of letters? 22:24
Infinoid It isn't possible that commit messages will cross; botnix is a simple single-threaded thing.
basic allison: we can add whatever svn hooks you need, all of the old hooks should work if you want to move those scripts over
Infinoid PerlJam: Yeah. And so does lazy-k. But eclectus, hq9plus etc don't 22:25
PerlJam Infinoid: then there's obviously something wrong with those others :)
Infinoid I can always change the prefix to something more visually distinct.
PerlJam: blame barney :)
rg infinoid: is [languages/lisp] part of the commit message or something the bot outputs?
Infinoid rg: it's part of the commit message
PerlJam I like the prefix as you have it.
rg i like it too. infinoid++ :) 22:26
particle i only don't like that partcl includes partcl/ before trunk
Infinoid Ah. Yeah, that's an artifact of a previous mindset.
Should I remove the "project:" prefix from all but the first line? It improves visual distinctness, and I kinda like it. 22:27
PerlJam I vote to leave it.
rg me too (not that i expect to have a vote ;)) 22:28
particle leave it
Infinoid ok
particle one place is better than two, though (on the same line)
Infinoid yeah, I'm removing the partcl/ part
particle Infinoid++ 22:30
dentist &
Infinoid It seems the parrot commit rate *really* ramped up a couple of years ago. 22:31
rg russel_h: i found an article from 12/2008 and it seems like you're right and they're now only using the webmaster tools setting that resets after 90 days. i think that's kind of a step backwards. google-- 22:32
russell_h quite 22:36
22:38 dalek joined
Infinoid That should enable karma logging for rakudo and partcl. I'll enable parrot once trac catches up. 22:38
basic can someone drop the post commit scripts on the vm? i'll get those setup fo ryou 22:43
allison basic: they're there now, and should be set up, I'm about to make a commit to test 22:44
basic allison: oh okay :)
Infinoid 10000 more commits (1 year) left to go... 22:47
allison basic: you want to take a quick look? the script and configuration file are in /var/lib/svn/bin/ and work just fine when I run them from the command-line, but /var/lib/svn/parrot/hooks/post-commit isn't working 22:51
basic: possibly a permissions problem? I went with the same user/group as the other files in the hooks directory
basic let me see 22:53
russell_h " 22:56
opps. IRC via phone... not fun 22:57
basic allison: is there a revision i can use to test the post-commit?
Robrt allison: You don't want to put it in /var/lib/svn/bin
svn.parrot.org/
(At least I wouldn't.) 22:58
basic i dont see any errors
Infinoid bin/ is not a repository.
basic Jan 29 22:58:33 parrotvm.osuosl.org postfix/smtp[23641]: 53674134092: to=<parrot-commits@lists.parrot.org>, relay=smtp1.osuosl.org[140.211.166.138]:25, delay=0.25, delays=0.18/0.03/0.02/0.01, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as 7AA0A108769) 22:59
but yeah, i've always put the scripts in the hooks dir
allison Robrt: the general script should go in a general directory, but true that the conf file should go in a directory specific to that repository 23:00
Robrt Yes, I just wouldn't use /var/lib/svn, because it shows up externally.
Pick anywhere else :)
allison basic: any revision # under 36162 works 23:01
Robrt: why does it show up externally?
Robrt: is see. strange configuration, but okay 23:02
chromatic Robrt, basic -- thank you for the smooth migration, by the way.
allison s/is/I/
basic chromatic: you're welcome 23:03
Robrt chromatic: you're welcome.
allison: yes, strange config :) It's using... SVNParentPath or something that tells apache "all directories under here are svn repositories" 23:04
basic allison: did that email go through? it looks like it left the local queue, i wonder if mailman is deferring them?
Whiteknight migration was very smooth, I agree
allison basic: I checked the mailman queue... earlier
basic: looking for the new message now...
Infinoid PerlJam: did the .git/config change eventually work for you? It's working here.
allison basic: okay, I just got 36162 23:06
basic great!
allison basic: thanks! 23:07
basic let me check our configs, i believe i setup svnmailer on another host in a more universal path
ah that was centos 23:09
allison basic: we can just move bin/ to /var/lib/svn/parrot/.
basic i would keep the script and config in hooks/ 23:10
allison basic: ok, that works too (whatever's easiest to maintain)
Whiteknight trac appears to be at r29800 now 23:11
Infinoid Yep, still a ways to go.
Infinoid is looking forward to seeing how broken the new rss scripts are.
Whiteknight I just got a segfault in t/native_pbc/number.t on a fresh checkout 23:15
anybody else seeing that failure?
Coke_afk commits to partcl 23:17
Coke I see the email is moved. 23:18
chromatic Whiteknight, not here.
23:19 bacek_ joined
Infinoid Whiteknight: I can reproduce it here 23:24
23:24 TiMBuS joined, kid51 joined
Infinoid Whiteknight: r36160 23:25
apparently .pbc isn't portable between platforms. 23:29
Whiteknight .pbc should be portable, shouldn't it be? 23:31
chromatic Should be. 23:32
kid51 Has anyone had any experiences good or bad with the switch of the repository? 23:33
Whiteknight t/native_pbc/integer.t is failing too
23:33 Limbic_Region joined
kid51 I had trouble earlier today with one sandbox that was checkout only. 23:34
Am now going to try on my own boxes.
nopaste "Infinoid" at 96.238.213.50 pasted "pbc failure on x86-64 after r36160" (39 lines) at nopaste.snit.ch/15457
rg are you guys still busy with the switch? i'd like to ask a few questions regarding exceptions 23:41
Infinoid rg: asking never hurts :)
rg well i don't want to keep you away from more important tasks ;)
NotFound rg: we can make an exception ;) 23:43
23:43 tetragon joined
rg so let's start with: what's the status of rethrow? there's a test saying it's deprecated, but no other reference to that. 23:43
kid51 Okay, the 'svn switch --relocate' worked for me in the 2 cases where the original checkout was https. 23:44
Infinoid Yay, die bot die. 23:45
23:45 dalek joined
chromatic tetragon was a bot? 23:45
Infinoid No, but dalek is.
kid51 Though on my iBook, I had to do it twice, because the first time thru I didn't hit the p[Enter] -- to permanently accept the server certificate -- quickly enough.
tetragon is at this hour about to start a talk at Toronto.pm 23:46
chromatic Then I hope she's not a bot.
NotFound There's nothing about rethrow in DEPRECATED.pod
kid51 No. She's a Scot.
Infinoid This New Improved dalek will (supposedly) give us svn and git logs and all that good stuff.
kid51 What was wrong with the old dalek? 23:47
Infinoid The old dalek had parrot-svn disabled, because the svn was slowly adding tens of thousands of revs as trac synced itself up.
kid51 Worked much better than the old bot, what was its name .... svnbotl?
Infinoid Oh, that. Switching repos meant switching rss feeds, which meant switching parsers. 23:48
kid51 k
Infinoid I've also added feed readers for rakudo and partcl.
kid51 Where do bots go when they are disabled?
chromatic Calculator Heaven
kid51 but purl will go to Calculator Hell!
Infinoid pats purl 23:49
purl purrs
chromatic It's in New Jersey.
kid51 breathes easy now that his sandboxes are reoriented.
rg hmm no takers for rethrow status? 23:51
chromatic I usually give those things to Tene because he's young and naive enough to take them. 23:52
kid51 Hmm, lots of changes in config/auto/*.pm since yesterday. How much you wanna bet the tests were not run?
chromatic They all pass for me. 23:53
NotFound rg: there are tests with rethrow that pass, for example t/pmc/coroutine.t
Tene What am I taking? 23:54
rg oh ... there are even more exception tests? more code to read :)
Tene rg: what's up with rethrow?
rg so i guess the comment in t/pmc/exception.t is wrong and the test needs to be fixed or removed.
it's marked todo => "deprecate rethrow" 23:55
Whiteknight appears trac is synched now 23:56
Coke Infinoid: any luck resurrecting the commit bot?
NotFound rg: I qualify it as uninfomative, rather than wrong.
Whiteknight ARISE BOT! I COMMANDITH IT! 23:57
Tene rg: does it pass if you uncomment the rethrow?
rg I believe it would. let me check that properly. 23:58
Tene I have never heard of deprecating rethrow
chromatic "commandith"?
Tene lemme check when that was added. 23:59
Coke I would have gone for "eth"
I have heard that rethrow doesn't work.
chromatic Sounds like amateur hour on the Improper Pluralization Stage at the local ren faire.
Tene are there tickets about it? The tests for it work fine...
kid51 okay, all the configuration and postconfiguration tests passed. Now let's see how the test coverage has been affected.