Parrot 3.0.0 Released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Goals: Deprecations as data, merge/cleanup, AutomatedHLLTesting, clean up false test failures | Schedule next weekend's Summit: doodle.com/4phzuaiahkgd3ie5
Set by moderator on 22 January 2011.
nopaste "kid51" at 192.168.1.3 pasted "t/pmc/socket_ipv6.t: test failures; master broken" (33 lines) at nopaste.snit.ch/28951 00:07
00:16 rindolf left
dalek rrot: b0e86cd | jkeenan++ | lib/Parrot/Harness/Smoke.pm:
Some of our branches have hyphens in their names. Allow for that when uploading to Smolder.
00:16
00:16 kurahaupo left
dalek rrot/annotations-tree: 5966c37 | jkeenan++ | lib/Parrot/Harness/Smoke.pm:
Some of our branches have hyphens in their names. Allow for that when uploading to Smolder.
00:18
ttbot Parrot b0e86cd1 MSWin32-x86-multi-thread make error tt.taptinder.org/file/cmdout/1506.txt (tt.taptinder.org/buildstatus/pr-Parrot) 00:19
dalek TT #1989 created by jkeenan++: t/pmc/socket_ipv6.t: new test failures
TT #1989: trac.parrot.org/parrot/ticket/1989
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#5287) fulltest) at 3_0_0-238-g97b004d - Ubuntu 10.10 i386 (g++-4.5) 00:22
00:40 whiteknight joined
dalek rrot/nwellnhof/ipv6: 70ed48a | nwellnhof++ | / (5 files):
Move more platform specific code to src/platform
00:44
00:45 kurahaupo joined 00:51 kurahaupo left
dalek rrot/nwellnhof/ipv6: 772e3c0 | nwellnhof++ | src/platform/generic/socket.c:
Make headerizer
00:58
rrot/nwellnhof/ipv6: 17b3c26 | nwellnhof++ | / (4 files):
Merge branch 'master' into nwellnhof/ipv6

Conflicts:
  \tsrc/io/socket_api.c
  \tsrc/platform/generic/socket.c
  \tsrc/pmc/sockaddr.pmc
  \tsrc/pmc/socket.pmc
rrot/nwellnhof/ipv6: 3caaa85 | nwellnhof++ | src/platform/generic/socket.c:
codingstd fixes
rrot: 70ed48a | nwellnhof++ | / (5 files):
Move more platform specific code to src/platform
01:05
rrot: 772e3c0 | nwellnhof++ | src/platform/generic/socket.c:
Make headerizer
rrot: 17b3c26 | nwellnhof++ | / (4 files):
Merge branch 'master' into nwellnhof/ipv6

Conflicts:
  \tsrc/io/socket_api.c
  \tsrc/platform/generic/socket.c
  \tsrc/pmc/sockaddr.pmc
  \tsrc/pmc/socket.pmc
rrot: 3caaa85 | nwellnhof++ | src/platform/generic/socket.c:
codingstd fixes
01:06
rrot: 958c51a | nwellnhof++ | / (9 files):
Merge branch 'nwellnhof/ipv6'
nwellnhof win32 should build, but ipv6 on windows doesn't work yet... 01:09
ttbot Parrot 958c51a3 MSWin32-x86-multi-thread make error tt.taptinder.org/file/cmdout/1534.txt (tt.taptinder.org/buildstatus/pr-Parrot)
kid51 nwellnhof: Thanks for your work on this. Do we have to adapt any tests to SKIP on Win32? 01:11
01:14 kid51 is now known as kid51_at_dinner
nwellnhof kid51: we could skip the ipv6 tests on windows for now, but i should get it running by tomorrow. 01:16
dalek rrot: 1b8dd49 | nwellnhof++ | src/ (2 files):
Add some #includes to hopefully fix the windows build
01:17
01:20 plobsing joined
nwellnhof yay 01:22
tt.taptinder.org/buildstatus/pr-parrot 01:23
ttbot Parrot 1b8dd492 i386-linux-thread-multi make error tt.taptinder.org/file/cmdout/1599.txt (tt.taptinder.org/buildstatus/pr-Parrot) 01:24
nwellnhof still not there... 01:26
01:34 davidfetter_ left
nwellnhof mj41: ping 01:36
dalek rrot: 6a20c38 | nwellnhof++ | src/pmc/sockaddr.pmc:
Another windows fix
01:38
ttbot Parrot 6a20c384 i386-linux-thread-multi make error tt.taptinder.org/file/cmdout/1657.txt (tt.taptinder.org/buildstatus/pr-Parrot) 01:43
01:52 dmalcolm left
cotto ~~ 01:55
dalek rrot: b5d0419 | nwellnhof++ | / (4 files):
The CONST #define clashes with windows.h

Include windows headers right at the beginning and undef CONST. Once all platform specific socket code is moved to src/platform, we can remove these includes.
01:57
ttbot Parrot b5d04195 i386-linux-thread-multi make error tt.taptinder.org/file/cmdout/1688.txt (tt.taptinder.org/buildstatus/pr-Parrot) 02:02
dukeleto ~~ 02:03
02:04 kid51_at_dinner is now known as kid51
nwellnhof 2 out of 3 taptinder windows machines are OK again. it seems like we have to check for getaddrinfo during config on cygwin. 02:08
dukeleto nwellnhof++ 02:09
kid51 Aha! A subject for which there is no Wikipedia article: en.wikipedia.org/w/index.php?title=...=packfiles 02:15
02:16 mtk left 02:23 mtk joined
cotto dukeleto, should we put gci projects on the trac wiki or does it matter at this point? 02:34
02:50 whiteknight left
plobsing kid51: how would you suggest they write such a page? The top 3 hits on google are git, the allegro game framework, and parrot, each of which uses the word as domain-specific jargon. the only common theme I can see is that they have something to do with compression. 03:05
kid51 plobsing: To be honest, I have no clue! 03:07
I've never seen 'packfile' defined in the Parrot context, so that's why I went to wikipedia. 03:08
I am completely ignorant in this area.
plobsing fair enough. they are very loosely defined. we might as well call them "thingies".
kid51 Zounds! That clarifies *everything*! 03:09
plobsing I don't really have a good definition myself (and I've been working with them for months).
but then again, the term "bytecode" is more tightly defined in parrot than in, say Java. Java's bytecode informally refers to everything in a compiled file, not exclusively the executable instructions (which *do* happen to be bytes in Java's case) but also their version of the constant table, annotations, etc... 03:11
"bytecode" is Java's "packfile"
kid51 excuses himself to go study Java for 3 years 03:12
KaeseEs no don't do it! 03:13
don't do it george!
kid51 Which would be more useful to study: Java or Objective-C?
plobsing I think the .Net variant is called "assembly", but I'm not terribly familiar with it.
kid51 :) 03:14
plobsing for the purpose of understanding parrot's PBC/bytecode/etc system? Java, Obj-C has no equivalent. For other porpoises, I think Obj-C is nicer, but that's just me. 03:15
en.wikipedia.org/wiki/Java_class_file is decently concise 03:17
sorear kid51: I beleive the article you are looking for is en.wikipedia.org/wiki/Object_file 03:18
plobsing of course, to confuse the whole issue, when they are actually in *files*, we call them bytecode, despite them having little if nothing to do with bytes, and the fact that they contain much more than just code. 03:21
kid51 sorear: Thanks. That will be my bedtime reading. 'Cause right now ... 03:23
kid51 must sleep
03:40 nwellnhof left 03:41 kid51 left 04:22 particle1 joined 04:26 particle left
cotto For such an important concept, "packfile" as it's used concerning Parrot really is ill-defined. 05:07
dalek rrot: 9acd66e | jimmy++ | / (3 files):
fixed build on windows
05:11
plobsing cotto: any ideas as to how we might improve that?
cotto maybe start a glossary on the wiki 05:12
there was a previous effort of some kind to do that 05:13
plobsing we could do away with the use of that term in many instances
cotto notices docs/glossary.pod
plobsing PackfileBytecode? Is there any other kind of bytecode parrot can run? Are we planning on adding some?
why not simply Bytecode or, ParrotBytecode? 05:14
cotto why not indeed
ttbot Parrot 9acd66e8 i386-linux-thread-multi make error tt.taptinder.org/file/cmdout/1703.txt (tt.taptinder.org/buildstatus/pr-Parrot)
cotto a coherent restructuring and redefining of the terms we use could make internals easier to follow 05:16
plobsing it does give a nice umbrella to hang things under
cotto If we were to try to replace "packfile", we'd need a more correct word. I suspect that there's too much stuff named packfile* to do otherwise. 05:20
sorear bytecode comes from packfiles
in theory, Parrot could run bytecode from a C-implemented HLL without touching the packfile subsystem 05:21
cotto as do constants tables
sorear, what do you mean? There'd still need to be an in-memory representation of the ops (etc) that are being executed. 05:25
sorear cotto: those are "code segment"s. Calling them packfiles only serves to confuse people. 05:28
plobsing while we're on the subject of misleading names, can we PLEASE rename the constant table? THEY AREN'T CONSTANT!!!! 05:29
cotto All of my favorite lies are disappearing from Parrot. 05:30
and by "favorite", I mean the opposite
plobsing, "variables table"? 05:31
05:32 JimmyZ joined
plobsing object table? static table? 05:32
cotto thingy table 05:33
plobsing object pool? 05:34
erm that boarders on sounding like GC
cotto that sounds a lot like a gc thing
and not everything is an object, for the commonly-understood meaning of "object" 05:35
plobsing since they are somewhat separated now, we could go with "strings table", "pmc table" and "nums table"
although that passes the buck on what to call their sum 05:36
values table? 05:37
sorear freeze area?
data segment?
.idata?
plobsing frieze area 05:38
the problem with calling it a segment, is that it raises notions of serialization and file-format, which we should be trying to get away from for the runtime representation 05:39
sorear it shouldn't have a runtime representation 05:42
objects from the data segment in the packfile should just go into the ordinary heap
plobsing and how do you look these values up? you need some kind of index, which is the purpose the tables serve. 05:44
sorear that requires a list of pointers 05:45
dalek rrot: f16b679 | jimmy++ | / (2 files):
fixed build with MSVC
sorear which should be called a "Global Offset Table", to further the analogy with mainstream object formats
plobsing but its not a table of offsets, nor is it global
ttbot Parrot f16b6790 i386-linux-thread-multi make error tt.taptinder.org/file/cmdout/1720.txt (tt.taptinder.org/buildstatus/pr-Parrot) 05:49
sorear yeah ELF should have named it an "Object Address Table"
it's "global" insofar as it is shared between all subs in a dynamic load file 05:50
I don't remember why they call it "offset" though...
JimmyZ sighs 05:53
plobsing sleeps
05:54 rurban_ joined 05:56 rurban left, rurban_ is now known as rurban
dalek rrot: e8d8659 | jimmy++ | include/parrot/parrot.h:
try to fix false build reported by ttbot
06:09
06:10 bacek left
ttbot Parrot e8d8659f i386-linux-thread-multi make error tt.taptinder.org/file/cmdout/1736.txt (tt.taptinder.org/buildstatus/pr-Parrot) 06:14
06:15 JimmyZ left 06:25 snarkyboojum left 06:39 theory left 06:49 fbrito left 06:56 theory joined 06:58 theory left, theory joined 07:00 JimmyZ joined 07:10 theory left
dalek rrot: 4b09814 | jimmy++ | include/parrot/parrot.h:
revert "try to fix false build reported by ttbot", this reverts e8d8659ff484c996dfe87567c8bb183dacab56dd, it is useless, jimmy--
07:20
07:21 JimmyZ left
ttbot Parrot 4b098143 i386-linux-thread-multi make error tt.taptinder.org/file/cmdout/1752.txt (tt.taptinder.org/buildstatus/pr-Parrot) 07:24
07:39 fperrad joined
cotto trac-- 07:43
07:44 kurahaupo joined 08:36 bacek joined
mj41 msg nwellnhof Thanks for your donation to TapTinder. nwellnhof++ 08:40
aloha OK. I'll deliver the message.
08:47 kurahaupo left 09:58 contingencyplan left 10:04 mtk left 10:10 mtk joined 10:19 fbrito joined, fbrito left 11:16 JimmyZ joined 11:40 kid51 joined
moderator Parrot 3.0.0 Released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Goals: Fix ipv6-related failures | Test imcc_interfaces and annotations-tree branches | Prepare for Parrot Developer Summit this weekend 11:43
moderator Parrot 3.0.0 Released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Parrot Developer Summit: 2200 UTC 29 Jan | Goals: Fix ipv6-related failures | Test imcc_interfaces and annotations-tree branches 12:14
Coke wonders if he can setup an OSX taptinder. 13:11
aloha, taptinder?
aloha Coke: taptinder is continues integration tool - taptinder.org . For Parrot project running on tt.taptinder.org/ and reporting build failures to #parrot channel as ttbot.
13:20 kid51 left
Coke writes a frontend to cpm that takes A/B/C.pm and DTRT. 13:22
er, to cpanm
If you think taptinder helps parrot, there's a donate button at dev.taptinder.org/wiki/TapTinder which I will hit as soon as it's payday here. 13:28
13:33 Kristaba joined 13:41 whiteknight joined
whiteknight good morning, #parrot 13:48
dalek rrot/whiteknight/imcc_info_struct: bf94540 | Whiteknight++ | compilers/imcc/ (2 files):
fast automagical runthrough of optimizer.c and cfg.c
13:51
rrot/whiteknight/imcc_info_struct: 0596ba5 | Whiteknight++ | compilers/imcc/imcc.y:
update imcc.y. Tried to fix some whitespace issues, but too many for little old me
rrot/whiteknight/imcc_info_struct: bc1339f | Whiteknight++ | compilers/imcc/imcc.l:
quick update of imcc.l
rrot/whiteknight/imcc_info_struct: b91c1f6 | Whiteknight++ | compilers/imcc/ (21 files):
headerizer
rrot/whiteknight/imcc_info_struct: 3094d55 | Whiteknight++ | compilers/imcc/ (7 files):
rebuild the lexer and parser files. reheaderizer. Some fixes. Some files are buildable
rrot/whiteknight/imcc_info_struct: 1d11482 | Whiteknight++ | / (12 files):
all files in compilers/imcc build again
rrot/whiteknight/imcc_compreg_pmc: 5ac00a2 | Whiteknight++ | / (2 files):
fix function documentation
rrot/whiteknight/imcc_compreg_pmc: 2690e47 | Whiteknight++ | src/embed/api.c:
small doc fix
rrot/whiteknight/imcc_compreg_pmc: b7a21c6 | Whiteknight++ | / (3 files):
fix codetest
rrot/whiteknight/imcc_compreg_pmc: a50f445 | Whiteknight++ | / (3 files):
fix some of the new additions to be codetest and headerizer-warnings free
rrot/whiteknight/imcc_compreg_pmc: 1a5614d | Whiteknight++ | / (3 files):
begun, the IMCC war has
rrot/whiteknight/imcc_compreg_pmc: f260885 | Whiteknight++ | compilers/imcc/ (11 files):
firebomb. Quick and semi-automagical converstion of IMCC to use the imcc_info_t struct instead of PARROT_INTERP almost everwhere. Did not update cfg.c or optimizer.c. Also made a few small cleanups and some TODO notes where I saw obvious problems.
rrot/whiteknight/imcc_compreg_pmc: bf94540 | Whiteknight++ | compilers/imcc/ (2 files):
fast automagical runthrough of optimizer.c and cfg.c
rrot/whiteknight/imcc_compreg_pmc: 0596ba5 | Whiteknight++ | compilers/imcc/imcc.y:
update imcc.y. Tried to fix some whitespace issues, but too many for little old me
rrot/whiteknight/imcc_compreg_pmc: bc1339f | Whiteknight++ | compilers/imcc/imcc.l:
quick update of imcc.l
rrot/whiteknight/imcc_compreg_pmc: b91c1f6 | Whiteknight++ | compilers/imcc/ (21 files):
headerizer
rrot/whiteknight/imcc_compreg_pmc: 3094d55 | Whiteknight++ | compilers/imcc/ (7 files):
rebuild the lexer and parser files. reheaderizer. Some fixes. Some files are buildable
rrot/whiteknight/imcc_compreg_pmc: 1d11482 | Whiteknight++ | / (12 files):
all files in compilers/imcc build again
rrot/whiteknight/imcc_compreg_pmc: c26cc03 | Whiteknight++ | / (31 files):
Merge branch 'whiteknight/imcc_info_struct' into whiteknight/imcc_compreg_pmc
13:52
rrot/whiteknight/imcc_new_api: 3dfce68 | Whiteknight++ | compilers/imcc/ (2 files):
quick implement of the new imcc API functions. Kill all the remaining stuff for command-line argument processing
rrot/whiteknight/imcc_new_api: 95bdb72 | Whiteknight++ | compilers/imcc/ (3 files):
start forming the new interface for IMCC. The world will shake.
rrot/whiteknight/imcc_new_api: dd5f423 | Whiteknight++ | compilers/imcc/main.c:
lots of little fixes
rrot/whiteknight/imcc_new_api: e2e6af2 | Whiteknight++ | compilers/imcc/main.c:
completely unify the IMCC interfaces. There are two functions to compile something, both redirect to a single compilation routine.
rrot/whiteknight/imcc_new_api: eb4cbdf | Whiteknight++ | compilers/imcc/main.c:
misc notes
whiteknight ...I had a few things from last night that needed to be pushed
arnsholt Apparently =) 13:53
JimmyZ good morning whiteknight
13:54 rurban_ joined
whiteknight good morning, JimmyZ, arnsholt 13:54
13:56 rurban left, rurban_ is now known as rurban 14:09 plobsing left 14:31 PhatEddy joined 14:35 plobsing joined, [hudnix] joined 14:36 hudnix left 14:38 PhatEddy left 14:45 JimmyZ left 15:15 [hudnix] left 15:24 hudnix joined, ambs joined 15:25 plobsing left 15:29 Patterner left 15:30 Psyche^ joined, Psyche^ is now known as Patterner 15:36 plobsing joined 15:52 contingencyplan joined 15:56 JimmyZ joined
tadzik Coke: you don't need a frontend, update your cpanm 15:56
hello #parrot
cotto_work ~~ 16:02
dukeleto ~~ 16:04
tadzik so, I feel like the workflow for DaD wasn't specified on the #ps yesterday 16:05
dukeleto tadzik: you are correct 16:07
tadzik: what do you need to know?
tadzik dukeleto: well, what are we planning to do? :) 16:08
16:12 theory joined 16:13 JimmyZ left
Coke tadzik: I am using the cpanm bundled with perlbrew. 16:15
dukeleto tadzik: instead of keeping track of new deprecations in POD, we do it in the YAML
Coke YAML-- 16:16
whiteknight what's wrong with YAML?
dukeleto Coke: are you volunteering to fix change stuff?
whiteknight it's on the same level as any other generic data markup would be
Coke dukeleto: no more than usual. 16:18
cotto_work I don't care too much as long as it's not annoying for humans to edit.
Coke just making my preference known.
16:23 plobsing left
dukeleto Coke: duly noted :) 16:26
cotto_work whiteknight: blog.whiletrue.com/2011/01/what-if-...ievements/
dukeleto Coke: i plan on making some kind of web interface to deprecation data, so the internal storage format of it should become less important 16:27
cotto_work (fun, not anything important)
dukeleto Coke: and command-line tools as well, of course
Coke looks like we've had a broken build for some time: 16:28
tt.taptinder.org/buildstatus/pr-parrot
(build # 7)
tadzik dukeleto: so that requires 1) notifying @parrot-dev, 2) removing .POD and 3) mergind? 16:31
16:34 plobsing joined
whiteknight cotto_work: I see a handful of acheivements that I would have unlocked. Many Many more that some coworkers embody 16:36
There was a cool project somewhere that allowed you to add acheivements to git 16:38
dukeleto tadzik: yep 16:42
whiteknight: yes, called git-achievements
whiteknight: i met the guy that wrote it at the Git Together 2010, he is a good chap 16:43
github.com/icefox/git-achievements
Benjamin Meyer
it is a great way to make learning about git fun 16:44
whiteknight yeah, it did look like a fun idea 16:59
tadzik dukeleto: am I to do it? 17:02
dukeleto tadzik: only if you are volunteering :)
tadzik: have the docs that mention DEPRECATED.pod been updated? 17:03
tadzik: we need to make sure people know to update the YAML instead
tadzik dukeleto: I acked it and fixed in some commit 17:04
github.com/parrot/parrot/commit/ff6a5bc 17:05
aw snap, it's now yaml not json, and even the branch name is wrong :)
dukeleto tadzik: the branch name isn't that important :) 17:10
plobsing branches are cheap. make a new appropriately-named one. 17:15
17:24 Puddles joined
tadzik did so 17:27
dalek rrot/tadzik/deprecations-as-data: 9e82667 | tadzik++ | DEPRECATED.yaml:
Added DEPRECATED.yaml, a direct translation of DEPRECATED.json
rrot/tadzik/deprecations-as-data: dfc2db1 | tadzik++ | / (6 files):
DEPRECATED.pod is now DEPRECATED.yaml
dukeleto tadzik++ 17:28
tadzik: delete the old branch too, if you haven't yet
tadzik on it 17:32
17:32 dmalcolm joined
tadzik I never remember this new syntax to remove a branch, and still push :branch-name 17:32
cotto_work tadzik: it's in the git workflow doc 17:33
tadzik done anyway 17:35
dalek nxed: r749 | NotFound++ | trunk/winxedst1.winxed:
allow tailcall in more cases
17:38
dukeleto tadzik: git push origin local_branch:remote_branch 17:43
tadzik: if local_branch is empty, it pushes "nothing" and deletes remote_branch
tadzik: i.e. git push origin :remote_branch
tadzik yeah, I know that one 17:44
but there is some new shiny syntax iirc
dukeleto tadzik: git branch -d foo is to delete a local branch 17:45
tadzik: i don't know of any shiny syntax, unless it has happened in the last few months
dukeleto yells "Get of my DAG!" to all the new git converts
tadzik dukeleto: I think I noticed it in some changelog few days after I learned the old way to delete a branch
whiteknight there's a new way to delete a branch? 17:50
PerlJam tadzik: I don't think so. But if so, I'd like to know it too.
tadzik heh, I'll better check it
dukeleto github.com/icefox/git-hooks is another cool project from the git-achievements dude 17:53
a pic of of dukeleto, the git-achievment dude and a bunch of way smarter git hackers: 1.bp.blogspot.com/_g_3jioX2SA4/TMnY...ther10.jpg 17:54
cotto_work looks like nice batch of nerds 17:55
dukeleto oh yeah, the dude standing the second from the right is Tom, who co-founded Github :)
cotto_work "fork you" shirt?
dukeleto cotto_work: yep :)
cotto_work: he is a surprisingly down-to-earth nice fellow
tadzik dukeleto: are you next to Tom? 17:56
PerlJam Who's that crazy looking guy in the blue shirt squatting in front? ;) 17:57
cotto_work dukeleto: git-achievements is epic
dukeleto i am the dude crouching in the blue shirt, with my eyes mostly closed :) 17:58
tadzik ah, right :)
dukeleto the shorter guy in the front is the current maintainer of Git, Junio 17:59
tadzik it's hard to recognize knowing you from the gravatar only
dukeleto in the front with a black shirt
PerlJam tadzik: I did it :)
tadzik * "git push" learned "git push origin --delete branch", a syntactic sugar 18:00
for "git push origin :branch".
git.kernel.org/?p=git/git.git;a=blo...xt;hb=HEAD
18:00 plobsing left
tadzik PerlJam: :) 18:00
PerlJam tadzik++
dukeleto syntactic sugar that makes it longer?
tadzik I knew I saw it somewhere
dukeleto doesn't understand
tadzik but more readable :)
dukeleto those crazy kids these days
PerlJam dukeleto: longer but more explicit.
(explicitness is the sweetness I guess) 18:01
tadzik so, a mail to @parrot-dev? 18:09
(DaD)
dukeleto tadzik: yes please 18:13
tadzik: and if you want, add a new deprecation for ipv6
tadzik: and we need to think about adding wiki page links to our yaml 18:14
tadzik: i mean, mark ipv6 as experimental
maybe we need an EXPERIMENTAL.yaml ?
18:14 plobsing joined
cotto_work dukeleto: if we find the right name for the yaml file, there's no reason we can't put that data into file tadzik is working on. 18:16
tadzik the branch is to be merged now, no? 18:17
should I delete DEPRECATED.pod now? 18:19
dukeleto: ^ 18:21
cotto_work tadzik: it's a bad idea to have the same data in two places. Once DEP.yaml is in master, nuke DEP.pod
PerlJam keep Parrot DRY 18:22
:)
tadzik cotto_work: I'll nuke .pod in a branch and then merge, ok?
cotto_work tadzik: wfm
tadzik alright, changes in progress 18:23
dalek rrot: 9e82667 | tadzik++ | DEPRECATED.yaml:
Added DEPRECATED.yaml, a direct translation of DEPRECATED.json
18:24
rrot: dfc2db1 | tadzik++ | / (6 files):
DEPRECATED.pod is now DEPRECATED.yaml
cotto_work tadzik: you should also write a DEPRECATIONS.readme or something similar to make sure that conventions are spelled out.
rrot: 95d715c | tadzik++ | DEPRECATED.pod:
Nuke DEPRECATED.pod
rrot: d53bbbb | tadzik++ | / (8 files):
Merge branch 'tadzik/deprecations-as-data'
tadzik hmm, sure 18:25
dukeleto cotto_work: you are right. we need a better name, something that encompasses both deprecations and experimental features
cotto_work: API_CHANGES.yaml ? something like that
cotto_work It's also redundant to have the titles contain status information (e.g. [experimental]).
dukeleto will brood on it during his run 18:26
cotto_work dukeleto: that's a good time for thinking
plobsing SUPPORT_POLICY.yaml? 18:28
cotto_work The issue is to define what the file will contain. "api changes" is pretty close.
ttbot Parrot d53bbbb0 i386-linux-thread-multi make error tt.taptinder.org/file/cmdout/1780.txt (tt.taptinder.org/buildstatus/pr-Parrot) 18:29
18:30 whiteknight_ joined
ttbot Parrot 95d715cf MSWin32-x86-multi-thread make error tt.taptinder.org/file/cmdout/1785.txt (tt.taptinder.org/buildstatus/pr-Parrot) 18:32
18:32 whiteknight left, whiteknight_ is now known as whiteknight
Coke api-changes.yml ++ 18:34
cotto_work Coke++
Does it need to be a SHOUTING_FILE?
13/11 18:35
aloha 1.18181818181818
Coke No, but then I'd probably move it out of ./ now, too. 18:36
(and add a pointer to it from README)
particle1 README: For a history of Parrot API changes, see docs/changes/api.yml. 18:44
18:44 particle1 is now known as particle
Coke we're not tracking the history 18:44
we're tracking what we know is going to change.
particle ah... then 'changes' is too vague. changelogs are for what has already changed 18:45
PerlJam future_changes 18:50
to-be-changed
18:51 cognominal left 18:52 cognominal joined 18:57 theory left 19:09 plobsing left 19:10 chromatic joined 19:12 plobsing joined
chromatic Is anyone else seeing t/pmc/socket.t and t/pmc/sockaddr.t eating gigabytes of memory? 19:13
Coke chromatic: over here. It would not surprise me, given those files just changed for the ipv6 stuff.
chromatic The ipv6 branch? 19:14
Coke merged back to master.
(which broke the build and fails tests and...) 19:15
chromatic Doesn't look like that one to me; I checked out the commit before and see the problem. 19:16
Coke hokay.
chromatic When was the last safe run you saw? 19:17
Saturday?
Coke taptinder? 19:18
aloha, taptinder?
aloha Coke: taptinder is continues integration tool - taptinder.org . For Parrot project running on tt.taptinder.org/ and reporting build failures to #parrot channel as ttbot.
Coke WebAgent response error: '500 Can't connect to tapir1.ro.vutbr.cz:2000 (connect: Connection refused)'
ww.
00cadd10 is the last one before the build errors started. 19:19
whiteknight chromatic: what's the problem?
(I'm not looking at it myself)
chromatic Parrot wants more memory than I want it to use. 19:20
whiteknight oh, I thought you were talking about identifying the specific bug causing it 19:21
chromatic I'm trying.
6da689d looks like the culprit. 19:22
sECuRE_ i would be surprised if the changes eat gigabytes of memory 19:23
(i made the ipv6 changes)
Coke fatal: ambiguous argument '6da689d': unknown revision or path not in the working 19:24
...
Coke was out of date, sorry
chromatic $ git bisect good
6da689dcdde0d5f1f0aff2e8ec5bc4a1e9cdbfab is the first bad commit
whiteknight looking at that changeset, I don't see anything that obviously goes apeshit on your memory 19:25
Parrot_io_getaddrinfo probably looks the most suspicious to me 19:26
chromatic It's this line in t/pmc/socket.t: $P1 = $P0."sockaddr"("localhost", 1234) 19:28
whiteknight I think that calls into Parrot_io_getaddrinfo
19:28 aantn joined
whiteknight got it 19:29
*ai is never initialized
for (walk = ai; walk; walk = ai->ai_next) goes crazy
chromatic Agreed.
That depends on what getaddrinfo does. 19:30
whiteknight right, I don't know what it should be set to
nwellnhof: ping
19:32 aantn left 19:33 aantn joined 19:34 vmspb joined
whiteknight the documentation for that function is in sore need of an update 19:35
it clearly doesn't describe what that function currently does
NotFound According man, getaddrinfo must set it pointing to one or more structures, or fail. 19:37
19:38 theory joined
chromatic Oh, here's the problem. See if you can spot it: 19:39
for (walk = ai; walk != NULL; walk = ai->ai_next) {
NotFound Uh, oh.. 19:40
chromatic At least it's easy to fix.
tadzik hah
NotFound The free_cstring may also leak. Let me fix it.
chromatic I can get both in one commit. 19:41
dalek rrot: a0719a2 | chromatic++ | src/platform/generic/socket.c:
[IO] Fixed infinite loop in Parrot_io_getaddrinfo.

Also plugged a potential memory leak.
19:48
whiteknight chromatic++ 19:51
dalek rrot: f078098 | NotFound++ | MANIFEST:
update MANIFEST
whiteknight *ai is still not being initialized 19:52
oh wait, maybe it is 19:53
NotFound whiteknight: according the main page it can not be, unless the function fails.
s/main/man
ttbot Parrot a0719a28 i386-linux-thread-multi make error tt.taptinder.org/file/cmdout/1832.txt (tt.taptinder.org/buildstatus/pr-Parrot)
Parrot f0780985 i386-linux-thread-multi make error tt.taptinder.org/file/cmdout/1845.txt (tt.taptinder.org/buildstatus/pr-Parrot) 19:58
20:00 aantn left 20:01 cognominal left, cognominal joined
NotFound "We need to pass the port as a string (because you could also use a * service specification from /etc/service" but the parameter 'port' is INTVAL ??? 20:16
Coke (that's the same error that's been failing for about 20 commits now.)
20:30 theory left 20:32 ambs left 20:43 fperrad left 20:54 plobsing left
cotto_work ~~ 21:12
tadzik ~~ 21:13
atrodo =~ 21:15
tadzik oh, and oldschool greeting :) 21:16
atrodo still stuck on 5.8.8
21:16 theory joined
cotto_work atrodo++ 21:17
atrodo I take that back. My server at home as 5.8.4 21:18
21:20 nwellnhof joined 21:27 whiteknight left
dalek rrot/nwellnhof/ipv6: 0713ced | nwellnhof++ | src/p (2 files):
Fallback for getaddrinfo and getnameinfo
21:30
rrot/nwellnhof/ipv6: ae31c17 | nwellnhof++ | src/pmc/sockaddr.pmc:
Cleanup Sockaddr PMC
rrot/nwellnhof/ipv6: 75d6b0c | nwellnhof++ | / (6 files):
Move all platform socket code and includes to src/platform
rrot/nwellnhof/ipv6: d626b11 | nwellnhof++ | config/auto/ipv6/test.in:
Change ipv6 test.c to check for getaddrinfo

That's much easier to check for. I'm not sure about the #includes for non-Linux Unices.
rrot/nwellnhof/ipv6: 3e67202 | nwellnhof++ | src/platform/generic/socket.c:
Fix Parrot_io_accept

IPv6 should work on Windows now.
rrot/nwellnhof/ipv6: 5c02fa3 | nwellnhof++ | / (8 files):
Switch socket error handling to exceptions
rrot/nwellnhof/ipv6: 7232125 | nwellnhof++ | t/pmc/socket_ipv6.t:
Fix IPv6 test count
21:34
rrot/nwellnhof/ipv6: 0d09c35 | nwellnhof++ | t/pmc/socket_ipv6.t:
Fix IPv6 test skip count
21:37
21:41 plobsing joined
dalek rrot: d626b11 | nwellnhof++ | config/auto/ipv6/test.in:
Change ipv6 test.c to check for getaddrinfo

That's much easier to check for. I'm not sure about the #includes for non-Linux Unices.
21:49
rrot: 3e67202 | nwellnhof++ | src/platform/generic/socket.c:
Fix Parrot_io_accept

IPv6 should work on Windows now.
rrot: 5c02fa3 | nwellnhof++ | / (8 files):
Switch socket error handling to exceptions
rrot: 7232125 | nwellnhof++ | t/pmc/socket_ipv6.t:
Fix IPv6 test count
rrot: 0d09c35 | nwellnhof++ | t/pmc/socket_ipv6.t:
Fix IPv6 test skip count
rrot: f43379a | nwellnhof++ | / (13 files):
Merge branch 'master' into nwellnhof/ipv6

Conflicts:
  \tinclude/parrot/parrot.h
rrot: 80f050a | nwellnhof++ | src/platform/generic/socket.c:
[codingstd] Fix indent
rrot: f9d4bc4 | nwellnhof++ | / (11 files):
Merge branch 'nwellnhof/ipv6'
ttbot Parrot f9d4bc43 MSWin32-x86-multi-thread make error tt.taptinder.org/file/cmdout/1870.txt (tt.taptinder.org/buildstatus/pr-Parrot) 21:51
21:54 rurban_ joined 21:56 rurban left, rurban_ is now known as rurban
dalek rrot: 64ca8e8 | nwellnhof++ | / (2 files):
Fix windows build
22:16
rrot: 56bbca1 | nwellnhof++ | src/platform/generic/socket.c:
Fix build without IPv6
22:25
ttbot Parrot 64ca8e83 i386-linux-thread-multi make error tt.taptinder.org/file/cmdout/1983.txt (tt.taptinder.org/buildstatus/pr-Parrot) 22:31
nwellnhof looking good so far... 22:35
aloha msg mj41 can you tell me what the tt windows machines are running exactly? 22:37
aloha nwellnhof: OK. I'll deliver the message.
mikehh nwellnhof: I am getting a failure with t/pmc/socket_ipv6.t - Can't convert NULL string 22:48
current instr.: 'test_tcp_socket6' pc 494 (t/pmc/socket_ipv6.t:130)
called from Sub 'main' pc 47 (t/pmc/socket_ipv6.t:31)
nwellnhof mikehh: i'll have a look at that tomorrow. 22:49
everything green again: tt.taptinder.org/buildstatus/pr-parrot
cotto_work nwellnhof: I'm running a couple smolder tests on my windows machine with whatever's latest. 22:50
mikehh nwellnhof: 'k - got to do a bunch of Ubuntu updates anyway
nwellnhof i'm off for some beers now. i can really need it ;) 22:53
22:55 nwellnhof left
mikehh hmmnn - t/pmc/socket_ipv6.t fails with g++ build but not with gcc 23:00
aloha msg nwellnhof t/pmc/socket_ipv6.t fails with g++ build but not with gcc 23:03
aloha mikehh: OK. I'll deliver the message.
mikehh needs to do some updates - bbl 23:05
23:05 mikehh left 23:14 theory left 23:16 theory joined, kurahaupo joined 23:18 whiteknight joined
KaeseEs tests for the main branch took ~300s. tests for the generational_gc branch seem to be going a bit slower. debating making a sandwich while i wait :) 23:27
whiteknight is generational_gc even testable?
KaeseEs i did 'make test' and it started spitting out TAP v0v 23:29
oh there, it failed a few. good to have a baseline though. 23:30
dalek rrot: 4af2095 | NotFound++ | config/auto/ipv6/test.in:
fix ipv6 detection to not fail in g++ for wrong reasons
23:40
cotto_work whiteknight: last I checked it worked but the approach wasn't something that'd result in a better gc. 23:52
the algorithm in the comments in gc_ms2 describes what bacek wants to do
but yeah, there's not much point in testing it. It won't be merged in anything like its current state. 23:53
bacek_at_work whiteknight, it's testable. But it's slow. 23:58
whiteknight okay, I didn't realize it was working. I hadnt tested it because I knew it wasn't really roadmap