Parrot 0.9.1 Released | parrot.org/ | 451 RTs left!
Set by moderator on 24 February 2009.
NotFound integer_4.pbc gives 0 entries to me, so the failure is in my code. 00:00
rg the _4 would be amd64, right. 00:01
00:01 jsut|w3rk joined
NotFound moritz: can you try with t/native_pbc/integer_1.pbc ? 00:01
moritz NotFound: that gives me Directory entries: 5
and a listing of the five things 00:02
NotFound Fine
moritz bed&
00:09 AndyA joined 00:11 japhb joined
NotFound t/native_pbc/integer_3.pbc seems to have an invalid signature 00:19
rg that one is probably pretty old 00:20
NotFound I've managed to make pbc_check work with the opcode size 8 files, but I don't think the way it works is matching the doc. 00:21
Some things are aligned to 32 bytes, not 16 00:22
rg i thought all things are supposed to be aligned to at least 32bit now
NotFound I don't think, just read the documents and write code ;) 00:23
rg good, but please take up all differences between docs and reality up with rurban ;) 00:24
NotFound No problem with changing the docs, provided there is some logic.
rg since i haven't read the docs (at least not yet ;)), i can't say. 00:25
Infinoid Coke: Ok. Leaving aside the whole stable / supported / development / monthly / whatever naming debacle, can I get a "latest" symlink so I can link to docs without having to update them monthly? 00:31
I'm going to bounce the old links for www.parrotcode.org/cage-cleaners/guide.html, www.parrotcode.org/faq/, www.parrotcode.org/glossary.html and so forth to docs.parrot.org. Having those always go to the latest release (if not a daily snapshot via cron) would probably be a good thing 00:34
00:37 japhb joined 00:40 tetragon joined 00:49 davidfetter joined 00:53 bacek_ joined 01:04 japhb joined 01:37 Tene joined
cotto should pbc_dump and pbc_disassemble segfault on pbc_to_exe.pbc? 01:46
01:47 kid51 joined
rg nothing should segfault. you've probably found a bug. 01:47
01:47 justin joined
cotto I'll have to check first to make sure it's not something I broke. Recently I don't seem to have a good track record in that area. 01:49
rg hmm this even happens on i386
nope, i can confirm it's nothing you (just) broke.
cotto It looks like it has to do with some Key ATTR code I missed. 01:51
which means it's not covered by the test suite
(or at least not by make test)
shouldn't be hard, though 01:52
should be fixed now unless make test breaks 01:59
dalek rrot: r37113 | cotto++ | trunk (3 files):
[PBC] fix pbc_dump and pbc_disassemble after Key ATTR conversion
02:00
rg you'll see the smoke in a few hours (or hopefully not) ;)) 02:01
coke: ping?
cotto The problem is that the breakage didn't cause any test failures. 02:02
I'm filing a tt now.
dalek rrot: r37114 | coke++ | trunk (3 files):
TT #400 - codingstd fixes
02:04
rg btw could anybody look at my patch for tt #386? 02:08
Infinoid rg: Looks sane, I'll see about testing it here 02:10
kid51 rg: Is there any way you could provide a test for that patch? 02:12
rg: Otherwise, I'd have to do a fresh checkout into a directory with a .ext in its name. 02:13
i.e., a test that would fail until your patch was applied.
rg i've wondered too. unfortunately the function is not exposed in any way, so i can't think of how to test it.
it's also only used by the loadlib code. we could rename the runtime/parrot/dynext directory, but i don't think that's a viable option 02:18
Infinoid maybe mock up a fake one for testing somehow? 02:22
kid51 ... with File::Temp::tmpdir() perhaps? 02:23
We/I do that in a lot of the configuration and build tests.
02:29 ron joined 02:31 TiMBuS joined
rg tempdir ... i see 02:35
kid51 The function in which that appears, parrot_split_path_ext, is never called in our current test suite. 02:38
So we would benefit from *any* tests thereof. 02:39
rg well it is called by loadlib, that's why the dynpmc/foo.t test fails
kid51 But it's not explicitly tested ... unit-tested. 02:41
Coke if someone makes an index.html that redirects nicely to docs.parrot.org/parrot/devel/html/index.html, I will push it out. 02:43
rg well it's not really exposed, which makes it hard to test. you'd need to have a pmc or something to call to exercise it.
Coke Infinoid: allison wins. it'll be devel for the monthlies, stable for the semi-annuals. 02:44
rg:pong
rg coke: are you aware that a number of tests are still checking the old runcore flags? are you looking for help on converting them? 02:45
cotto I'm glad that's settled.
Coke rg: I'm aware of no such tests.
other than the one that was reported failing.
patches welcome, or you can tell me which tests, or...
Infinoid: I created aliases for devel and latest that both curently point to 0.9.1 02:46
guess we can have devel/latest/stable all three, and just update the appropriate ones.
rg lots of them. grep for TEST_PROG_ARGS
Infinoid great, thanks 02:47
rg lots == about 10 or so
Coke rg: those are bad checks, as it's been possible for some time to get the same effect with -R jit or --runcore jit 02:48
rg that's very well possible.
Coke (or by just passing the arg to parrot directly and not using TEST_PROG_ARGS at all.
rg so what's the preferred way for a test to figure out which runcore it's being executed with? 02:49
Coke There isn't one. =-)
if it's a PIR test, you might be able to interrogate parrot.
(the running copy)
rg no it's for skipping or todoing the tests 02:50
Coke rg: some tests are /written in pir/
purl Hmm. No matches for that, Coke.
Coke (likely none of the ones that use TEST_PROG_ARGS, though)
we could just punt and say that you need to use t/harness to get the skips working for that sort of thing, and then standardize there. 02:51
rg well t/harness is setting the variable in the first place, so that's fine
Coke ah, t/harness is just using that var. 02:52
If I were paranoid, I'd add a method that let you specify a list of cores to skip/todo 02:53
(and have that method check all variants).
however, for a stopgap, good enough to just use whatever lib/Parrot/Harness/Options.pm uses. 02:54
(so, /-j/ -> /--runcore=jit/), etc.
rg which is a lot better to match anyway
so would you like me to prepare a patch? 02:57
Coke rg: that would be awesome.
mikehh dalek has left us again 03:02
Coke added a crappy HTML redirect to docs.parrot.org/
Infinoid poor feather
cotto If anyone wants to pretend to be dalek, now's the time. 03:03
dalek EXTERMINATE
purl EXTERMINATE! EXTERMINATE! EXTERMINATE!
dalek floats about the room on his retconned lifters.
03:04 dalek joined
Infinoid starts moving all the links on www.parrot.org/docs/, as that table of contents doesn't seem to be autogenerated 03:05
Coke Infinoid: it's probably a copy of parrotcode.org/docs 03:07
which was hardcoded.
parrot.org/docs should -> docs.parrot.org, IMO.
03:08 polyglotbot joined 03:09 leo joined, pmichaud joined 03:10 estrabd joined
Infinoid I can do that. 03:10
03:10 chip joined
Infinoid I kinda wish the index.html looked a little nicer... but I know where to fix that. 03:10
03:15 Util joined, PerlJam joined
Coke Infinoid: if you're in 'make html', perhaps you could claim TT #402 03:15
03:15 jonathan joined
Infinoid Apparently drupal needed two bounces, one for /docs and one for /docs/ ... both done. 03:20
rg: TT #386 bug and fix verified on linux/x86-64 03:21
rg infinoid: care to commit or do we need to find a way to test it? 03:22
Infinoid I dunno. It seems like the obviously correct fix to me, but I trust kid51's judgement on this sort of thing. 03:24
I have heard complaints recently about not enough added tests being included in bugfix commits
rg and i'd be happy to add a test if you tell me a good way to do so 03:25
an indirect test through loadlib doesn't seem the right way to go 03:26
Infinoid we already have the indirect test 03:27
rg well you need to test your parrot in a directory with a dot (not followed by a number) to trigger the bug right now. 03:29
Infinoid it looks like the packfile code uses this too... maybe placing uuid.pbc into a specially named tmpdir would be sufficient
I don't really know. I do lots of testing on the perl level, but I'm not an expert at testing C stuff from perl
or maybe just bug kid51 for an example :) 03:30
rg well he left the discussion when i was talking to coke :(
i can copy and/or modify the test to create a dir and copy the foo.so into it. it feels a bit hackish, though. 03:32
Coke I think if we add a test for that, it should NOT be run by default. 03:33
actually, I take that back.
nevermind.
mikehh when I picked up that bug I had copied my parrot dir to parrot.noopt 03:35
because at the time I was testing a optimized build against a build with no optimize 03:36
rg mikehh: the question is not how to trigger the problem, but how to make sure it doesn't resurface 03:37
mikehh I gathered that - I was just musing 03:38
Infinoid mikehh: it's a good catch 03:39
mikehh I thought your patch looked ok
Infinoid the code's logic previous to rg's fix was pretty silly.
dalek rrot: r37115 | coke++ | failed to fetch changeset:
[t] Fix test count broken in r36074.
03:42
Coke EXTERMINATE 03:44
purl EXTERMINATE! EXTERMINATE! EXTERMINATE!
Coke "failed to fetch changeset" ?
rg trac was too slow ... again
Infinoid purl, failed to fetch changeset? 03:46
purl i think failed to fetch changeset is because dalek timed out (60 seconds) fetching the link to scrape the list of changed files
Infinoid pats purl
purl pats Infinoid back, harder
03:48 janus joined
dalek rrot: r37116 | coke++ | trunk (3 files):
[examples] Remove old example that no longer compiles and would take some
03:50
rg coke: tt#403 03:53
Coke rg: looks good. 03:55
purl O_O
Coke someone apply that puppy.
rg well you do it. i can't ;)
rg needs to sleep 03:58
rg must sleep 03:59
purl $rg->sleep(8 * 3600);
rg that's the one :)
Coke tries to install sdl. 04:06
dalek rrot: r37117 | Infinoid++ | trunk/src/packdump.c:
[cage] Tweak whitespace to pass t/codingstd/c_parens.t.
04:10
cotto Infinoid++ #making code happy 04:23
04:44 japhb joined
dalek rrot: r37118 | Util++ | trunk/docs/book (7 files):
[book] Typos in docs/book/ch*.pod

   consonent
   constucts
   continution
   encapuslated
   insideous
   lanuages
   occurance
   parallism
   represention
   specifed
   stuctures
   untennable
   unweildy
   utlities
05:23
purl i heard parallism was getting cheaper
cotto Util++, you don't really need to list all the misspellings (although the fixes are appreciated). 05:27
dalek rrot: r37119 | cotto++ | trunk/t (9 files):
[t] update runcore-related switches to the parrot exectuable
Util cotto: It was done with an eye towards automating t/ scans for future common typos. I did not think that dalek showed more than the first line, though! 05:32
The next batch is too big to ennumerate, anyway. Thanks, cotto! 05:33
cotto That sounds a lot like enumerating badness. 05:34
05:34 magnachef joined
dalek rrot: r37120 | Util++ | trunk/docs/pdds (9 files):
[pdds] Typos in docs/pdds/pdd*.pod and docs/pdds/draft/pdd*.pod
05:47
rrot: r37121 | Util++ | trunk/docs/project (3 files):
[docs] Typos in docs/project/*.pod
05:55
rrot: r37122 | Util++ | trunk/docs (8 files):
[docs] Typos in docs/*.pod
06:02
06:13 masak joined 06:29 szabgab joined 06:32 tetragon joined 06:49 Theory joined 07:08 uniejo joined 07:18 Patterner joined 09:26 bacek joined 10:07 alvar joined 10:18 justin joined
dalek rrot: r37123 | cotto++ | trunk (14 files):
[PMC] use ATTRs in Continuation family PMCs

M src/ops/core.ops M src/debug.c M src/pic.c M src/pmc/retcontinuation.pmc M src/pmc/continuation.pmc M src/pmc/exceptionhandler.pmc M src/exceptions.c M src/sub.c M src/call/ops.c M src/call/pcc.c M lib/Parrot/Pmc2c/PMCEmitter.pm M include/parrot/sub.h M config/auto/pmc.pm M config/gen/makefiles/root.in
10:33
cotto That's not how it's supposed to work. 10:34
svn--
Where I come from, there are penalties when a svn client lies. 10:36
moritz cotto: it would have worked if you didn't add the [PMC] to that line :-) 10:39
I use vim to write the commit message, and the hilighting shows quite well if that line is still intact
cotto I didn't bother erasing it because I thought svn would ignore it.
moritz it seems it checks rather strictly 10:40
cotto seems so
at least the commit didn't (appear to) break anything
11:37 baest joined 12:14 rob joined
rob I don't seem to be able to make squaak anymore, the root.in as changed and its now looking for everying in /usr/local/lib/parrot 12:16
has*
is some way of overriding this?
there*
12:33 rg1 joined 12:41 justin joined
Infinoid strange. I created trac.parrot.org/parrot/report/15 so I could do the equivalent of www.parrotcode.org/openpatches.html for parrot.org, but I'm not sure I created that report in the right way. 13:19
trac.parrot.org/parrot/report/9's url is preserved in the URL bar, and doesn't show the additional Filters and Columns widgets that report 15 does
(I'm also not sure it's a problem... just a curiosity.) 13:20
Also, "make html"'s output is missing some files. It doesn't seem to be generating docs/project/cage_cleaners_guide.pod.html, others may be missing as well. 13:31
Coke make html probably suffers from the same thing that plagued parrotcode.org 13:33
(manual tracking of files.)
Infinoid I'll see what I can fix after work today, and take a stab at TT #402 as well 13:34
Coke does 402 make sense ?
Infinoid Yeah, seems simple and useful.
I think the best place for it is probably to put a "Parrot 0.9.1 Ā»" prefix before the file path (the "Contents Ā» PMCs Ā» Abstract root class" stuff) 13:36
or maybe to just replace "Contents" with that.
If I end up checking anything in, I'll apply the same patch to 0.9.1 and send you a tarball of its output 13:38
Coke eh. we don't have to retrofit 0.9.1; 13:44
1.0 will be here soon enough.
perhaps I can setup your cron job.
Infinoid well, my roadmap item is on the list of stuff for 1.0, so I'd prefer to get it done before 1.0 hits :) 13:48
13:51 Tene joined 13:59 gryphon joined
dalek rrot: r37124 | Infinoid++ | trunk (3 files):
[pmc] Un-TODO the PackfileDirectory.set_pmc_keyed_str test

post on 2009-02-20 to the parrot-dev list. I've made some additional initializer fixes to get it working.
14:04
15:07 ron joined 15:38 NotFound left 15:39 NotFound joined
NotFound hi 15:39
15:42 Theory joined
nopaste "NotFound" at 213.96.228.50 pasted "pbc_chekcer.cpp - now dump fixups and constants" (560 lines) at nopaste.snit.ch/15780 16:03
dalek rrot: r37125 | coke++ | failed to fetch changeset:
[t] pass t/examples/streams.t again
rrot: r37126 | coke++ | trunk (2 files):
[docs] update the verbiage slightly.
16:08
Coke wonders why the example tests are mucking with parrot options. 16:17
if we care about running the examples tests under multiple cores, we should do that in "fulltest".
particle1 well, benchmark tests muck with parrot options to run quicker 16:30
16:30 Tene joined
particle1 it's possible some examples tests followed that meme 16:30
or, that they were set up that way as a 'sanity' test for other runcores
16:36 justin joined
Coke particle1: none of which are good reasons to keep them this way. =-) 16:41
I will probably rip out the runcore twiddling from the examples tests and instead add the examples_tests to a fulltest run through each core. 16:42
(but if you run, say, 'testj')
*not if
particle1 better. 16:47
dalek rrot: r37127 | Util++ | trunk/docs/book/ch09_pct.pod:
[book] Correction - Property "pasttyle" is really "pasttype"
16:51
rrot: r37128 | Util++ | trunk/docs (5 files):
[docs] Typos
16:59
NotFound I'm starting to think that both implementation and documentation of pbc file formar are wrong. 17:11
17:15 mikehh joined
mikehh wrt TT#405 - ok builds with --optimize om Kubuntu Intrepid AMD64 - first time I have managed that 17:22
running make test now
oI got 3 tests failed and 1 TODO passed with 11701 tests 17:26
dalek kudo: fe2bc86 | pmichaud++ | docs/spectest-progress.csv:
spectest-progress.csv update: 317 files, 7121 passing, 0 failing
17:29
shorten dalek's url is at xrl.us/beifcc
17:31 GeJ joined 17:55 rdice joined 18:04 barney joined 18:36 Psyche^ joined 18:42 bacek joined
dalek rrot: r37129 | rurban++ | trunk (2 files):
[core] TT #405 fix amd64 --optimize
18:45
rrot: r37130 | rurban++ | trunk/config (2 files):
[config] TT #364 no 8byte ptr_alignment for Sparc64/solaris

  - On 8-byte ptr_alignment we cannot read 4-byte pbc's.
   Warn the user about it
18:57
18:58 rurban joined
rg1 rurban: thanks for the hints patch. the comment "# Don't know how to do this for gcc." (i guess you copied it from the -xlibmieee) is not quite correct. "don't need this on gcc" or "gcc always emulates bad aligned access" would be more correct 19:06
NotFound What's the commit message prefix for packfile related things? [pbc] ? 19:07
rurban why not, I used core I think
rg: the gcc comment is just copy paste from someone else 19:08
rg1 that's what i thought. would you mind to change it?
rurban but thanks for gcc update. what's the gcc ptr_alignment on the UltraSparc? 1 or 2 or 4? 19:09
rg1 good question. i'll need a moment to check.
dalek rrot: r37131 | NotFound++ | trunk/src/packfile.c:
[pbc] avoid duplicating filename string constant for each debug mapping
19:13
rg1 hmm it says 8 bytes?! 19:16
rurban not good. 19:17
dalek rrot: r37132 | rurban++ | trunk/lib/Parrot/Harness/Smoke.pm:
[t] TT #323 better smoke reports, html and smolder

  - report the branch
  - rename sun4 to sparc on smolder (TT #396)
  - add the 32/64 bit suffix to the cpuarch (TT #396)
  - better gcc detection and print msvc version
19:18
rurban does it pass the t/native_pbc tests? you probably have to run mk_native_pbc --noconf because PBC_COMPAT changed again
rg1 for its own arch? it did last time i checked 19:19
moritz (whoever fixed --optimize on amd64)++ 19:20
rg1 ok, now that you also fixed smolder reporting i'm running out of excuses not to also run smolder tests on the sparc ;)
moritz: well they really just worked around it ;)
rurban rgl: good 19:21
moritz: it was andy dougherty. I just cleaned it up a bit.
moritz rg1: I can't say I care too much. My rakudo now runs noteably faster, that's forth a ++ any day
rurban -j -O2 is broken and gets no test coverage, -O1 neither
implementing freeze_size will make parrot even more faster, and implementing pmc's as pir even more :) 19:22
rg what's broken? 19:23
rurban Implementing the missing non-jitted ops also
rg jit on an optimized build?
rurban -O2 assumes all ops to be jitted
mikehh rurban: building at r37132 with --optimize on AMD64 - will smoke too 19:24
rg mikehh: smoke only covers the default core
nopaste "rurban" at 93.210.224.181 pasted "improving jit optimize coverage" (14 lines) at nopaste.snit.ch/15786
mikehh that I know - j is not build on AMD64 19:25
rurban yes, that's a major project for the next year
mikehh just wanted to see how r37132 works 19:26
will look at i386 later 19:27
19:31 riffraff joined
dalek rrot: r37133 | rurban++ | trunk/config/gen/platform/cygwin/math.c:
[core] Add cygwin fallback to correct POSIX math
19:33
mikehh dalek is not very responsive - I got the email 3 minutes before (he/she/it?) posted here 19:36
dalek rrot: r37134 | rurban++ | trunk/src/pmc_freeze.c:
[cage] whitespace: align comments
19:37
mikehh that was only a 1 minute delay 19:38
rg dalek is only polling the rss feed every 5 minutes (iirc) 19:39
rurban so why is t/pmc/packfile.t and t/pmc/packfilesegment.t failing on amd64? set_integer_keyed_str both 19:40
rg are you referring to those smolder reports? 19:43
rurban yes
smolder.plusthree.com/app/public_pr...hive/18605
shorten rurban's url is at xrl.us/beifzr
rurban and the next one passed 100% 19:44
rg i was wondering if it's something in their setup, because i can't reproduce it and it is fine on 18601, which was the same revision as 18602
mikehh It is failing on my linux system Kubuntu Intrepid BUT seems to be passing on freebsd 19:45
rurban the failing is using --optimize the passing one not
rg 18602 has no --optimize, still failing
mikehh that was also mine 19:46
rurban I know that 64 still aligns packfiles not properly. But I'll fix that later, post-1.0
rg mikehh: are you sure your checkout is clean? 19:47
mikehh It passes on 18604 on freebsd
rg that's mine and that's why i said i can't reproduce
mikehh well I did a make realclean
rg can you check svn diff or svn status? 19:48
rurban That's why I added r37132 ! 19:49
rg ok, so his latest report was at 37132.
rurban All local modifications would have been printed in the smolder report. If its a svn checkout 19:50
rg rurban: where?
mikehh svn status -> ? languages/punie-- svn diff ok
NotFound rurban: I'm starting to think that may be better to solve all packfile problems before 1.0 19:51
rurban rg: in the header. see smolder.plusthree.com/app/public_pr...ails/18536
shorten rurban's url is at xrl.us/beif26
rurban NotFound: But I have no 64bit to test :(
rg rurban: ah. nice :)
NotFound rurban: that's a problem, certainly. 19:52
rg so it's possible to simply add headers?
rurban But I can produce a shorter patch to etst, smaller that the one in my ticket TT #254
rg: sure
rg i'd really like to have the possibility to add a reporter header. or the login and/or machine name. 19:53
rurban good idea! in one line please.
username@machine
rg something like that. 19:54
purl i think something like that. is that true?
rurban just see trac.parrot.org/parrot/attachment/...tter.patch 19:55
shorten rurban's url is at xrl.us/beif3k
mikehh I am also getting a TODO passed in t/pmc/exception.t 19:59
purl okay, mikehh.
mikehh ok 30 - catch ex from C-level MULTI function # TODO broken
20:00 contingencyplan joined
rurban that could be because of the new -O2 in the gc 20:01
rg mikehh: what's your compiler? can you do a cc --version? 20:02
nopaste "NotFound" at 213.96.228.50 pasted "pbc_chekcer.cpp - updated" (633 lines) at nopaste.snit.ch/15787 20:03
20:04 rurban_ joined
mikehh cc (Ubuntu 4.3.2-1ubuntu12) 4.3.2 20:05
dalek rrot: r37135 | fperrad++ | trunk/config/gen/makefiles/languages.in:
punie is gone
rg notfound: i'm getting ' 135FAILED: Error reading directory segment' when running it against pbc_to_exe.pbc 20:07
dalek pp: 6181f54 | (Bernhard Schmalhofer)++ | build/templates/ (2 files):
Check dependencies for src/pmc/pipp_group.so
shorten dalek's url is at xrl.us/beif5p
NotFound rg: What platform? 20:08
rg notfound: freebsd/amd64
NotFound rg: Can you send me the file?
rg sure, where to? 20:09
dalek rrot: r37136 | fperrad++ | trunk/languages/lisp (4 files):
[lisp] update PIR syntax :

  - problem when the namespace is a variable
NotFound rg: look for Julian Albo in CREDITS
rg on it's way 20:11
NotFound rg: received, thanks 20:12
rg does anyone else use gcc 4.3.x? 20:14
NotFound 4.3.2 here
rg (preferably on a 64bit platform)
moritz 4.3.2 on amd64 here
NotFound linux i386
rg moritz: are you seeing the same packfile failures as mikehh? 20:15
moritz rg: I didn't pay attention... 'make test' is clean as of r37131
rurban gcc-4.3.2 on cygwin here
moritz I do have some 'make fulltest' failures (build with --optimize) 20:16
rg it already failed on r37128 without optimize, so it's not the compiler either. 20:17
nopaste "rurban" at 93.210.224.181 pasted "Add username to smolder also" (33 lines) at nopaste.snit.ch/15788 20:18
rurban that logic is from perlbug
but the $^O eq 'macos' is something I don't know
MacOS it is, okay 20:19
rg rurban: that's nice. what i think would be great was an override to specify a real email address. like 'Submitter' => $ENV{"SMOLDER_SUBMITTER"} || "$me\\@$domain" 20:20
mikehh I got them on r37128 and r r37132 with or without --optimize
rg i'd also use my $domain = 'unknown'; 20:21
Coke macos is not supported. =-)
(that's pre- OS X)
rurban ok.
dalek rrot: r37137 | rurban++ | trunk/lib/Parrot/Harness/Smoke.pm:
[t] TT #323 also add Submitter to smolder (less privacy)
20:22
nopaste "NotFound" at 213.96.228.50 pasted "pbc_chekcer.cpp - fix" (634 lines) at nopaste.snit.ch/15789
Coke nor do we support os2.
mikehh both failures I got were with set_integer_keyed_str - received: Aborted expected not-equal
not equal -- Exited with error code: 134 20:23
NotFound rg: I think that fixes the problem
rg so .. no override i guess 20:24
NotFound rurban: this pbc_checker shows some problems with alignment, and does not match several things in pdd13
rurban NotFound: which checker? 20:25
NotFound My lasr nopaste
last
rurban I lost my net for a minute...
nopaste.snit.ch/15787 got it 20:26
NotFound nopaste.snit.ch/15789
rg notfound: next "bug": when i run it on t/native_pbc/number_4.pbc i get "FAILED: Unimplemented" ;)
NotFound rg: not a bug, is a feature ;)
rg (same for number_1.pbc for that matter)
20:27 isop joined
NotFound rg: floating point constants are not yet readed. 20:27
rg ok, i'm just testing ;) 20:28
mikehh: i'm running out of ideas what could be causing your failures. 20:29
mikehh I have had a couple of wierd things happenibg on this computer recently 20:30
I am going to reboot into i386 and see if I have any problems there 20:32
rurban mikehh: cannot just use --m=32 to Configure.pl?
rg rurban: i don't think that's going to work 20:33
dalek rrot: r37138 | rurban++ | trunk/lib/Parrot/Harness/Smoke.pm:
[t] TT #323 one more smolder optimization

  - default domain "unknown"
20:34
mikehh I could but I am trying to test on different platfprms - today was the first time I managed to get an --optimize to build
mikehh on AMD64 and the failures seem to be consistant 20:35
rg mikehh: but it seems you're the only one who's seeing them
mikehh with or without --optimize
as I said some weird things - maybe I should try Suse 11.1 20:36
I have some free boot partitions but had problems with the wireless connection with Suse 11.0 20:37
Coke ooh. I just thought of an interesting mini project. yah. 20:38
rurban we also have the new buildbot on amd64 buildbot.eigenstate.net:8040/
and this fedora amd64 also passes all packfile tests 20:39
nopaste "NotFound" at 213.96.228.50 pasted "pbc_chekcer.cpp - skip number constants" (661 lines) at nopaste.snit.ch/15790 20:42
NotFound rg: "feature" disabled ;) 20:43
mikehh I am going to see if I can track it down - but later - I need some sleep before I do something realy stupid
really
rg notfound: ah, don't disable it on my account ;)
notfound: i hope you're documenting all the differences between spec and reality you're finding 20:44
NotFound rg: I'm still thinking if is better to document it or change the reality 20:45
rurban NotFound: This huge PMC starting with '\\xfePBC\\x0d\\x0a\\x1a is the interpreter pmc
NotFound rurban: No need to check that, I think, showing the stringfied version is enough., 20:46
rg i'd decide that on a case by case basis, whatever is considered "better"
rurban But this bugger causes the most headaches, so its worthy to name it in your tool, if you want to 20:47
NotFound rg: better IMO is to have a comprehensible specification without lots of special cases.
rurban it's the hack to pass the pf->header down to freeze only.
so that the freeze/thaw unpackers know the wordsize, ... 20:48
NotFound rurban: if there is a fast way to obtain that information without an interpreter, I'll do it.
rurban I'll have to talk to chromatic to get rid of this pmc
NotFound I think will be better to add pbc_check to the repo. What can be a good place? tools? examples? 20:50
rurban the other pbc utils are in src, but this looks like a example/pbc 20:51
NotFound Better in examples, I agree, given that it does not use, and must not use, the parrot infrastructure.
rurban and it's ugly c++ 20:52
NotFound That's the better part ;)
rurban and it prints ugly xml
NotFound Not yet
rurban why not be consistent and convert everything to xml?
NotFound rurban: because I'm lazy ;) 20:53
rurban pbc_xml would be a good name then
rg that would be even less readable
NotFound The seudo-xml was just a fast way to mark the end of some sections.
rurban of course it's bette this way. But i'm sure the question will come up... 20:54
rg so we'll say apache does the same thing for their config ;) 20:55
NotFound I'm not interested in beauty at this point, just in identifying and maybe solving pbc format and documentation pitfalls.
rurban well, you ignu
NotFound I'm the beast ;)
rurban uuid_data, numbers
if (pbc_version <= 0x0325 && opcode_size == 8) 20:56
pbcfile.ignore(16);
what is this?
purl i guess this is some kind of revenge for Dick Van Dyke's accent in Mary Poppins.
NotFound rurban: Is what make the program work. 20:57
rurban I changed that?
NotFound The pbc_version is a hope that in the future things change
rurban if so, it should advance major, not minor. I'm confused 20:58
NotFound That is one of the points I want to discuss. The change in version required if we fix the problems. 20:59
In the meantime, the 0x0325 is easily searchable. 21:00
rurban if we change the bytecode format structure which is incompatible to now we must advance major.
but we didn't do that, because we have a very good format for now, which can be easily extended within major==3 21:01
NotFound Well, if the current way is wrong, surely fixing it will be incompatible.
rurban even if we change the pmc index from int to name we can still do with 3.x
I believe just the readers are wrong, the writers are okay. 21:02
NotFound rurban: but fixing the alignment problems will be an icompatible change.
rurban for 64bit reading 32bit we can do better.
e.g. writge everything as 8-byte, not 4-byte
or use --64compat to write 64bit on a 32-bit parrot
or use the alignment relaxment as now. it's just an optimization, nothing serious 21:03
rg with all that discussion, i really have to ask: why the decision to use an arch-dependent bytecode format at all? 21:04
rurban for now we are safe, I believe
NotFound rurban: If we found a reasonable way, fine. I'm not interested in forcing incompatible changes.
rurban make native fast, foreign slow
reading and writing native is fastest now, only reading foreign is slow
moritz why not make them all fast? ;-) (just kidding)
rg but a single pass when reading the file anyway won't really slow things down
rurban it's mmap'ed anyway. 21:05
the real bottleneck is the big number of unneccessary malloc/free for the pmc sizes
NotFound rurban: first question; What is the alignment after the segment size? If I'm not making some mistake, is not the same in all segment types.
rurban esp. with perl6
rg it's always mmap'ed and number converted for every access?? 21:06
rurban before and after any segment we always force 16-byte
rg: every pbc's is only mmap'ed once, and number converted onyl for foreign code which needs it.
NotFound rurban: the segment start with the segment size. What is the alignment, if any, after it? 21:07
rurban native is a single run-through, even with ptr advance, much faster than byte-advance
after the size, the first element alignment is lost, it's 16+wordsize
we pad only at the end 21:08
we only pad strings to wordsize also, the rest is native
NotFound rurban: It does not look that way in pbc_checker
rurban segment padding is 16-bytes though
because you are skipping some parts
NotFound rurban: Then we must identify and document that parts. 21:09
rurban you have to turn around the padding section in all your functions to pad at the end, not at the beginning
NotFound rurban: the paddings insertd is what makes it work. 21:11
rurban yes, because the padded end of the first, is the beginning if the next. this is where you pad.
NotFound rurban: dump_segment starts by positioning the file pointer at the start of the segment 21:12
rurban ok, I'll rewrite it
NotFound pbcfile.seekg(entry.getOffset() * opcode_size);
rurban NotFound: did you try that on 64bit and 32bit? 21:14
NotFound rurban: yes, that is the reason of the if opcode_size == 8 21:15
rurban and what did I change in 3.25 writing?
chromatic will kill me 21:16
NotFound rurban: I don't know, probably in older version several of this problems already existed.
Or was worse 21:17
rurban your logic is not pdd13 compliant 21:18
but it works, so there's a flaw somewhere
NotFound rurban: yes, that is one of the problems
dalek rrot: r37139 | fperrad++ | trunk/docs/book (2 files):
[book] cleanups, apply patch from TT #404.
rurban good, maybe it was really the writer which was broken.
NotFound I wrote it with a mix of pdd13 reading and inverseengineerig 21:19
particle1 pbc isn't pdd13-compliant
moritz should it be? or should pdd13 be pbc-compliant?
rurban particle: I believe not. what is wrong?
cross-version is just not possible this way, yes
NotFound particle1: we must fix pdd13, the pbc reading/writing, or both.,
particle1 the pdd hasn't been (fully) implemented yet 21:20
it's still the future spec, not current.
rurban just the full pmc access, yes
but the format is fixed. uuid_data check is missing, yes
particle1 infinoid and jonathan have done some work on the implementation, but i don't know what remains
rg t/op/lexicals.t suggests there's still some things missing
rurban some parts of pmc methods are missing 21:21
NotFound particle1: that is the point. We must know what we are doing.
particle1 yes, agreed. so email infinoid, jonathan, and the list with questions.
rurban I tried hard not to touch the writer in any way.
I can byte-compare the pbcs before and after 21:22
21:22 mikehh joined
rurban or use pbc_checker and pbc_dump 21:22
NotFound The main question is: must we fix this mess before 1.0?
mikehh at least the i386 build seems ok 21:23
rurban I don't think so. just 64bit cannot read 32bit
because the ALIGN_16 logic is wrong
I didn't want to touch that pre-1.0 21:24
it's only used for reading
NotFound rurban: yeah, but trying to fix platform interoperability without doing some cleaning before can be a nightmare.
rurban I'll analyze your code... 21:25
NotFound rurban: I'm sorry for the c++, but is the language with I can do that type of things fast,
rurban I wonder if we really should add this logic to the reader... 21:26
rg i don't think we need to get there for 1.0. we only need a big note saying 1.0 bytecode is neither portable nor forward compatible
rurban It's quite portable with some bugs
but it's not cross-version portable at all. 21:27
NotFound rg: Well, in that case will be better to stop worrying and losing time on the issue. 21:28
rurban cross-PBC_COMPAT portable it means. 1.0.1 can read 1.0 code of course. 1.1 maybe also.
NotFound That was really the big question.
rurban it just depends on changing the ops interfaces and pmc deprecations,
we already promides that pmc deprecations will not happen after 1.0, in the pbc format 21:29
promised
so the pmc indices are fixed, and new ones get added at the end
and old ones keep staying there, even if deprecated 21:30
NotFound rurban: but the current problem has nothing to do with adding or deprecating features, is on fixing or clarifying some problems.
rurban yes, for 64bit
NotFound rurban: I'm not sure is just for 64 21:31
Look at the first lines of PbcFile::dump_segment_pir_debug
rurban since we cannot read <3.25 anyway (pmc deprecations), we dont need to use your logic in the actual code 21:32
NotFound Theres is a ignore(8) that I don't understand what is needed.
rurban: 0x325 is not 3.25, is just major/minor together in hex 21:33
Infinoid NotFound: hi
purl hello, Infinoid.
NotFound purl: you are not my agent
purl ...but purl is a she. or captain obvious or so corny sometimes or creepy or a he or is also is also is also or retarded or NOT STEVAN or kd's quotefile|<reply>i am funny|<reply>My mother's name is Eliza...
rurban sorry, its 3.37 then
21:34 particle1 joined
rurban yes, with 3.37 I changed a padding macro for the reader 21:34
Infinoid NotFound: the Bytecode PMC API is mostly implemented in read-only mode, as a layer on top of the src/packfile.c implementation
everything is there according to pdd13 except for the new annotations stuff, which does not match pdd13 and thus the spec needs to be updated
very little of the write code is there yet. I did commit one of chromatic's patches to implement one of the write functions, this morning 21:35
NotFound Infinoid: the program I wrote does not use any parrot code, just read the pbc in the lowest level to check the specification.
Infinoid I was just describing the state of the pdd13 implementation work done so far. what's this you're working on? 21:36
NotFound Well, to check something, I'm not sure what.
Infinoid: nopaste.snit.ch/15790 21:37
Infinoid ok, so you're running into issues where the files don't match the spec? 21:38
rurban No, he found the 64bit bug.
Infinoid jonathan++ would know more about spec stuff than I... I've just been exposing the internal API as PMCs 21:39
NotFound Infinoid: What I'm doing is looking at what must be done to read pbc files, and checking if the result match the docs.
particle1 would somebody assign jonathan a 1.0 milestone ticket to update pdd13 wrt annotations? 21:40
NotFound In fact the other way, reading the specs and found where they don't match reality. 21:41
rurban we should rather fix the writer than, and not the spec. 21:42
the spec is sound.
NotFound I'm still not sure.
The PIR debug section description is not clear, and does not match reality. 21:44
rurban so we a problem with the debug segment writer, right?
NotFound Writer and reader, I suppose, 21:45
rurban Looks like a wrong debug segment padding. or rather of the segment before 21:46
well, something to do for tomorrow
NotFound rurban: pbc_checker starts reading at segment's offset. If there is a flaw in padding, is also in the directory. 21:47
rurban okay, rephrasing: before bc 3.37 the 64bit writer was wrong, it added a wrong 16 skip. 21:51
this did not match the pdd13
rg so for one we should only be testing with current pbc files, right? 21:53
rurban We only can, we cannot read older or newer pbcs anyway
for now 21:54
because the pmc's and ops are indexed by number
from 1.0 on we should be able to read older pbc's though. 21:55
rg well for notfound's reader it wouldn't matter that much, but if the whole structure changed that's a different thing. 21:57
particle1 is the reader written in pir? 21:58
nqp?
purl rumour has it nqp is not quite perl (6) or svn.perl.org/parrot/trunk/compilers/nqp
NotFound The checker can be adapted, is just a helper tool
Infinoid particle1: C++, nopaste.snit.ch/15790
NotFound particle1: my idea was to make it completely out of parrot, to be free of inadverted assumptions. 22:02
nopaste "rurban" at 93.210.224.181 pasted "post1.0-pf-logic.patch" (42 lines) at nopaste.snit.ch/15791 22:05
rurban notfound proved that the padding changed 22:07
for 64bit only
22:11 skv joined
GeJ Good morning everyone 22:14
rurban Okay, TT #407 tt407-post1.0-pf-logic.patch reflects the PBC_COMPAT policy change 22:33
dalek rrot: r37140 | NotFound++ | trunk (4 files):
[examples] add pbc_checker tool
22:37
cotto rurban, do you have a link to the rejected patch you mentioned in TT #401? 22:40
(or the thread where you submitted it) 22:41
rurban it was in the pdd30install_stage3 branch which got deleted. I'll attach it to the ticket 22:42
22:43 bacek joined
cotto Thanks. 22:44
22:47 rurban_ joined
rurban cott, here they are, in random order. TT#97 and TT #101 22:49
cotto rurban++ 22:50
rurban that's wy I got angry at allison when she single-handed rejected about 30 of my tickets and patches 22:51
RT#40817 "track all generated files" was also finished. I have no time for that now 22:54
allison rurban: I did explain why they weren't applied at the time, and what you needed to do to get them ready to be applied 23:05
rurban sure, but it was a lot of work, and it much more work now to rearrange the patches 23:06
same goes for the library.c changes 23:07
dalek kudo: e47c348 | pmichaud++ | src/parser/actions.pm:
Default lexicals as Perl6Scalar instead of Failure.
23:13
shorten dalek's url is at xrl.us/beigzw
23:18 bacek joined 23:19 cognominal joined
allison rurban: the library.c changes are done, but slightly differently 23:22
hmmm.... maybe we could use a "philosophy of code review" document in docs/project... 23:26
Infinoid hooray for code review 23:27
cotto (code review)++ 23:28
dalek rrot: r37141 | NotFound++ | trunk/examples/tools/pbc_checker.cpp:
[examples] spell fix and cosmetic changes
23:30
23:37 NotFound joined