Parrot 4.8.0 "Spix's Macaw" | parrot.org/ | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC
Set by moderator on 20 September 2012.
00:01 kid51_ joined 00:05 jimk joined 00:06 benabik joined 00:18 kid51_ joined, benabik joined 00:47 rurban_mobile joined 00:51 benabik joined
rurban_mobile kid51 again merged the threads branch into master, 3rd time. sigh 01:00
I did it only once.
dalek rrot: 57382f8 | rurban++ | t/dynpmc/select.t:
Avoid TODO in t/dynpmc/select.t on known passes
01:21
01:24 benabik joined
benabik I think kid51 pulled while threads was in master, so pulls afterwards create a merge between old master and new master. 01:25
If we had just committed an "anti-threads" revert commit, this wouldn't happen.
(For reference, this is _exactly_ why rewriting published history is frowned upon.) 01:27
rurban_mobile kid51: please do git fetch; git reset --hard origin/master; you are always merging threads in your commits. 01:28
benabik I think we need kid51 to do something like `git rebase --onto origin/master origin/threads <branch>` for all of his branches.
rurban_mobile benabik: do you want to do this anti-thread revert commit? 01:29
benabik And we need to never rewrite master in the future.
Is threads currently merged in parrot/master?
rurban_mobile nope, of course not. that's whay I have to cherry-pick from him and revert his commits
but rebase is worse. reset hard origin/master is easier 01:30
01:30 travis-ci joined
travis-ci [travis-ci] parrot/parrot#587 (master - 57382f8 : Reini Urban): The build was broken. 01:30
[travis-ci] Change view : github.com/parrot/parrot/compare/2...382f873591
[travis-ci] Build details : travis-ci.org/parrot/parrot/builds/2552308
01:30 travis-ci left
benabik Reset hard _loses data_ 01:30
rurban_mobile yes, it would loose his wrong merge
benabik And all the work done on his branches.
rurban_mobile it's only for master 01:31
nope, only master
benabik rurban_mobile: Can you give me an example branch where this happened? 01:33
I want to see if he's been creating new merges or not...
It might be that the branches just pre-date the removal.
rurban_mobile its on two of his latest branches: 840/has_libffi (already deleted) and one other with cpu 01:34
cpu_type_eliminate_gpp_warning it was
f2d576e0e3bd3991e16bf9b04586b82d3094b7f6 is such a bad merge 01:35
Coke ugh, we rewrote published history? who did that?
benabik Yeah, you can see the repeated "Merge branch 'master' of git@github.com:parrot/parrot
rurban_mobile Coke: I reset one bad merge (threads) 01:36
benabik I was against it at the time, although I didn't voice that terribly strongly.
Coke rurban_mobile: please don't ever do that again.
rurban_mobile git revert -m 1 did not work out for me this time
Coke: Sure.
benabik rurban_mobile: As I recall, it actually needed to be "-m 2"
rurban_mobile Now I have to cherry pick from kid's branches, and revert all his commits 01:37
Coke I am wondering if we have already done it once, will doing it one more time hurt any more?
I'd ask on list, and at least get buyin from dukeleto on how to clean it up. 01:38
(in general, though, let's avoid rewriting)
rurban_mobile It was an undo of one last merge. A simple git pull would have fixed it. 01:40
benabik I think a big NEVER REWRITE MASTER should be our policy. Even if the "wrong" history only existed for minutes, it's a race condition: Who pulled before the new one was pushed?
rurban_mobile: No. Git-pull creates new merged.
*merges
ttbot Parrot ebe1e7c6 MSWin32-x86-multi-thread make error tt.taptinder.org/cmdinfo/97567
benabik Which is exactly what's been happening to poor kid51.
rurban_mobile Oh, I see
sorear benabik: this wouldn't be a problem if we could just contact kid51 (?) 01:41
Coke and anyone else who happens to be working off a bad master.
benabik Right.
I think kid51 is the only one affected. I'm going to post to parrot-dev a probable fix... 01:42
rurban_mobile: Do you remember what commit was the re-write?
Blub. Actually, I don't have time for this. 01:43
Short version `git rebase --onto origin/master <removed master commit> <branch>` should be done for all affected branches. 01:44
This degenerates to `git reset origin/master` for any branch (local master?) which doesn't have any local changes.
obviously I don't suggest doing this for any branches published to parrot/parrot. Just use cherry-pick or wait until post-threads to merge those. 01:45
`git branch --contains <removed master>` gives all affected commits (unless that commit is still in threads? 01:46
01:49 l3l1p joined
benabik said "don't have time" because before writing that up for the list and kid51, I would like to be far more sure I'm right, including determining the commit and testing it. 01:51
But homework and crying kid both call.
02:08 l3l1p joined 02:12 sivoais joined 02:19 l3l1p joined
ttbot Parrot 57382f87 MSWin32-x86-multi-thread make error tt.taptinder.org/cmdinfo/97579 02:52
03:35 rurban_mobile joined
dalek rtcl-nqp/nqp2: d3368fc | coke++ | / (4 files):
Move "invoke" to a helper class, refer to it as a WVal
03:36
rtcl-nqp/nqp2: 7d076be | coke++ | src/Partcl/Actions.pm:
switch ::op to use callmethod.
03:52
rurban_mobile I think it should be git revert -m 1 a54a581d2392a885c70093349382b5da696ec4dd 03:54
benabik rurban_mobile: A real "revert merge" commit would involve merging threads, then reverting. It's probably easier to try to fix kid51 right now. 04:14
MikeFair goes to bed as well. 04:27
rurban_mobile msg kid51 you based your branches on a rewritten master, which still includes the wrong threads merge. big problem. please git reset --hard origin/master and rebase your branches onto the new master then please. 04:36
aloha OK. I'll deliver the message.
05:55 l3l1p joined 07:08 brrt joined 07:33 Psyche^ joined
brrt hi #parrot 07:36
07:53 lucian joined 11:39 mtk joined 11:52 rurban_mobile joined 11:57 Liz joined 11:58 woolfy joined
rurban hi #parrot 12:07
brrt hi rurban 12:12
rurban ewontfix.com/2/ on our thread cancellation problem 12:20
dalek rrot: 64fd80f | rurban++ | t/pmc/ (4 files):
[cage] Fix 4 asynch typos in tests
12:24
12:34 travis-ci joined
travis-ci [travis-ci] parrot/parrot#588 (master - 64fd80f : Reini Urban): The build was fixed. 12:34
[travis-ci] Change view : github.com/parrot/parrot/compare/5...fd80fb3e8a
[travis-ci] Build details : travis-ci.org/parrot/parrot/builds/2556109
12:34 travis-ci left 12:56 PacoAir joined 13:16 rurban_mobile joined 13:25 bluescreen joined
ttbot Parrot 64fd80fb MSWin32-x86-multi-thread make error tt.taptinder.org/cmdinfo/97742 13:44
Coke points at boingboing.net/2012/09/24/adobe-rel...e-cod.html for a nice new(?) font. 13:45
dalek rrot/rurban/clang++-gh844: d75558b | rurban++ | / (4 files):
[GH #844] add missing auto::alignof files

Add files to MANIFEST Use auto::alignof as last auto step
14:09
rrot/rurban/clang++-gh844: d582800 | rurban++ | src/dynpmc/gziphandle.pmc:
[GH #844] Make gziphandle C++ safe

Wrap #include <zlib.h> into PMC_HEADER_PREAMBLE to be able to use ATTR gzFile file. This is now C++ safe and clang++ compiles fine.
14:36
rurban clang++ all PASS smolder.parrot.org/app/projects/rep...ails/31718 14:44
14:48 benabik joined 14:52 dmalcolm joined
rurban checking now threads with g++ 14:54
dalek Heuristic branch merge: pushed 17 commits to parrot/rurban/clang++-gh844 by rurban 14:59
rurban nine: pcc_unproxy_context had a worrying pointer bug. Parrot_Interp * const target_interp => Parrot_Interp const target_interp 15:03
So Parrot_thread_create_proxy worked on a wrong ptr... 15:04
g++ and esp. clang++ really give us superior diagnostics. 15:05
dalek rrot: fdd0ca3 | rurban++ | src/dynpmc/gziphandle.pmc:
[GH #844] Make gziphandle C++ safe

Wrap #include <zlib.h> into PMC_HEADER_PREAMBLE to be able to use ATTR gzFile file. This is now C++ safe and clang++ compiles fine.
15:29
rurban clang++ does not compile with this alone, it's just a cherry-pick from rurban/clang++-gh844 needed for threads also
15:53 travis-ci joined
travis-ci [travis-ci] parrot/parrot#589 (master - fdd0ca3 : Reini Urban): The build was broken. 15:53
[travis-ci] Change view : github.com/parrot/parrot/compare/6...d0ca3cc18c
[travis-ci] Build details : travis-ci.org/parrot/parrot/builds/2558751
15:53 travis-ci left 16:00 brrt left
ttbot Parrot fdd0ca3c MSWin32-x86-multi-thread make error tt.taptinder.org/cmdinfo/97778 16:11
allison Coke: just compatibly licensed, so we don't trip people up 16:31
Coke: like BSD/MIT is totally fine, GPL is trickier (better to make it a package dependency)
Coke: but mostly, I never did grok the Parrot love of sucking everything into the tarball 16:32
Coke: it's just not necessary, the world is full of good packaging systems today
Coke depends on if it's optional or a requirement, I think. and if you need to patch it. 17:08
I endorse rakudo bundling some stuff that is pretty much required and needs patching, e.g.
all a tradeoff. in general, though, yes, let's default to making it an external dep. 17:09
allison: you still with ubuntu?
allison Coke: even if it's required, it's better to use the packaged version than install your own 17:11
thousands of man hours go into maintaining packages
fixing security issues
fixing bugs
tracking the latest from the library maintainers
embedding our own version means we lose all that value 17:12
(and it's not like Parrot is so overstaffed with volunteers that we can really afford to miss out on free development work)
Coke: I'm still an ubuntu volunteer, but not working at Canonical anymore 17:13
embedding a patched version of an upstream library is an even greater maintenance burden 17:14
subclassing or wrapping with changes is better 17:15
basically, anything in the parrot tarball becomes the responsibility of the parrot developers 17:16
anything external is just about free
minor integration/testing with each new release of the particular distro/os 17:17
Coke fair enough. 17:18
"what about windows?" ;)
(no answer required). 17:20
allison windows is it's own universe, make strawberry parrot :)
Active Perl and Strawberry Perl pretty much are the "perl-centric" packaging systems for Windows 17:21
but, that doesn't mean the Perl5 core itself should include all the cruft that windows needs
17:23 contingencyplan joined 17:58 davidfetter joined 18:00 benabik joined 18:08 benabik joined
dalek rrot/threads: 2244666 | dukeleto++ | src/call/context.c:
Make g++ happy on the threads branch
18:16
rurban dukeleto: I think your fix is wrong, and the compiler is right. I'm stepping through the debugger right now. 18:19
dalek rrot/threads: 789cea7 | rurban++ | src/call/context.c:
Revert "Make g++ happy on the threads branch"

This reverts commit 22446667e8dbd29c9342f9402f8766f3dc295437. Wrong fix, see 02eece1 instead.
18:23
rrot/threads: 8765cd4 | rurban++ | src/call/context.c:
Fix target_interp in pcc_unproxy_context detected by g++

Parrot_Interp is a ptr to the interp struct already. This code section was never triggered in any testcase. I am trying to find a testcase for this.
18:27 travis-ci joined
travis-ci [travis-ci] parrot/parrot#590 (threads - 2244666 : Jonathan "Duke" Leto): The build was fixed. 18:27
[travis-ci] Change view : github.com/parrot/parrot/compare/0...446667e8db
[travis-ci] Build details : travis-ci.org/parrot/parrot/builds/2560773
18:27 travis-ci left
dalek rrot/rurban/pmc2c-unused-gh836: ac0b135 | rurban++ | lib/Parrot/Pmc2c/Method.pm:
[GH #836] Catch also Scheduler.destroy and empty Undef bodies
18:45
rrot: 60cfaca | rurban++ | lib/Parrot/Pmc2c/Method.pm:
[GH #836] Improve parsing pmc2c UNUSED arguments

UNUSED(arg) amcros are now detected in pmc bodies and change the argument declaration to SHIM(). Empty bodies with return 1; are now detected and the two args are SHIMed. UNUSED(interp) cause a new warning to be replaced by UNUSED(INTERP).
rrot: 6afb068 | rurban++ | config/auto/warnings.pm:
warnings: Improve clang support

clang requires warnings overrides for -Wno-parentheses-equality and adds -Wno-unused-result to src/ops/core_ops.c.
  (used in 29582199aef9ea9462 [GH #828] Optimize print_n/i and say_n/i)
rrot: a95f757 | rurban++ | config/gen/makefiles/root.in:
Add ccwarn::src/ops/core_ops.c SUFFIX OVERRIDE for using (void)Parrot_io_write_b

Added with 29582199aef9ea94622b4202aee129521bc
rrot: ef4b571 | rurban++ | src/ (3 files):
Add more UNUSED() declarations to key.pmc and core.ops
rrot: 4045afa | rurban++ | / (30 files):
merge master into rurban/pmc2c-unused-gh836

Fix conflict in config/auto/warnings.pm
rrot: 1d37b98 | rurban++ | config/auto/warnings.pm:
fixup wrong config/auto/warnings.pm merge
rrot: 562f9ab | rurban++ | lib/Parrot/Pmc2c/Method.pm:
[GH #836] Allow UNUSED(word); the semicolon
rrot: f4a63d5 | rurban++ | src/pmc/default.pmc:
[GH #836] default thaw: SELF.init uses INTERP
rrot: 7c350cf | rurban++ | config/gen/makefiles/root.in:
pmc2c: use the current libs not the installed

pmc2c favored installed Parrot::Pmc2c libs over the current ones, which made debugging Parrot::Pmc2c methods hard.
rrot: 847cb9b | rurban++ | / (13 files):
[GH #836] Cleaned wrong UNUSED(arg) macros in all pmc's

Due to an improved pmc2c compiler, which SHIMs all UNUSED args, a lot of wrong and/or badly placed UNUSED macros have been fixed.
rrot: 7913e25 | rurban++ | / (2 files):
[codingstd] GH #836 fix hard tabs
rrot: 0525faa | rurban++ | / (16 files):
Merge branch 'rurban/pmc2c-unused-gh836'

Fixed conflict:
  \tconfig/auto/warnings.pm
fixes already in master
rrot: ac0b135 | rurban++ | lib/Parrot/Pmc2c/Method.pm:
[GH #836] Catch also Scheduler.destroy and empty Undef bodies
rrot: ce2c408 | rurban++ | lib/Parrot/Pmc2c/Method.pm:
Merge branch 'rurban/pmc2c-unused-gh836'
ttbot Parrot ac0b1355 i386-linux-thread-multi make error tt.taptinder.org/cmdinfo/97812 18:49
19:05 travis-ci joined
travis-ci [travis-ci] parrot/parrot#593 (master - ce2c408 : Reini Urban): The build was fixed. 19:05
[travis-ci] Change view : github.com/parrot/parrot/compare/0...2c408d3627
[travis-ci] Build details : travis-ci.org/parrot/parrot/builds/2561119
19:05 travis-ci left
rurban #ps in 5 min 19:25
dalek Heuristic branch merge: pushed 62 commits to parrot/gh838_cmdline_cleanup by rurban 19:29
rrot: 19183d0 | dukeleto++ | / (2 files):
Remove mentions of -d/-O/-v from --help output and docs/running.pod #838
rrot: bf60df5 | dukeleto++ | / (3 files):
Remove more references to options that no longer exist #838
rrot: eaa1466 | rurban++ | / (41 files):
Merge remote-tracking branch 'origin/master' into gh838_cmdline_cleanup
19:30
rrot: 4879083 | rurban++ | / (3 files):
[GH #838] bootstrap-prt0, ChangeLog

Remind to call bootstrap-prt0 in Makefile when prt0.winxed is changed. Called bootstrap-prt0 Added ChangeLog line, and whitespace fixes
ttbot Parrot 0525faa8 MSWin32-x86-multi-thread make error tt.taptinder.org/cmdinfo/97925 19:33
dalek rrot: a5bb6bf | rurban++ | / (2 files):
[codingstd] hard tabs
19:54
rrot: 14fa643 | rurban++ | docs/binaries/parrot.pod:
[codingstd] podcheck parrot.pod

Fixed various non-conformant pod: empty =item, =over for bodies
rurban Oh! travis smoked the threads branch actually. Nice. Exactly as I wanted. 19:55
travis-ci.org/#!/parrot/parrot/builds/2560855
make cover actually does something useful. src/list.c and src/platform/generic/error.c src/extend_vtable.c src/disassemble.c have 0% 20:03
ttbot Parrot 4879083e MSWin32-x86-multi-thread make error tt.taptinder.org/cmdinfo/97986 20:14
rurban Question: Why is ImageIOThaw.set_pointer(void*) and not set_pointer(PackFile_ConstTable *value)? 20:16
20:18 tuxit joined
sorear erm, is the latter even an option? 20:24
isn't it forced to void* by the VTABLE spec for set_pointer? 20:25
rurban set_pointer is always void*? This would make sense, yes 20:27
sorear I think so, but don't trust me. 20:31
benabik I think so. 20:32
set_pointer is not a particularly safe operation.
ttbot Parrot 14fa643c MSWin32-x86-multi-thread make error tt.taptinder.org/cmdinfo/97998 20:55
21:20 perlite joined 22:21 whiteknight joined
whiteknight good evening, #parrot 22:24
22:47 benabik joined 23:07 jevin joined 23:18 rurban_mobile joined 23:41 mdupont joined 23:52 rurban_mobile joined