Front page | perl.perl5.porters |
Postings from February 2014
TONYC TPF grant report #28
From:
Tony Cook
Date:
February 24, 2014 01:51
Subject:
TONYC TPF grant report #28
Message ID:
20140224015142.GA3317@mars.tony.develop-help.com
[Hours] [Activity]
2014/02/17 Monday
0.77 #121223 minor fixes, apply to blead
0.30 #121259 comment, start bisect
1.23 #120120 try to reproduce, comment
1.22 #121196 produce a test, a fix and a comment
0.68 #121257 reproduce and comment
0.37 #121033 review, review PerlIO_openn(), comment
0.38 #120939 try to reproduce leak
=====
4.95
2014/02/18 Tuesday
1.83 check for cygwin build failure, reproduce failure, produce
and test a fix
0.87 #120936 cygwin shm.t failure - fix skip logic
1.17 #120936 cygwin taint.t failure
1.85 cygwin win32core.t failure
=====
5.72
2014/02/19 Wednesday
0.37 cygwin win32core.t failure, produce a fix on cygwin and
start a win32 test run
0.43 #121081 apply patch and comment
0.80 #121269 review patch and linked discussion, review older
utf8.pm changes
0.32 more win32core, find some related issues
0.47 #121269 test UTF-16 BOM, comment
0.97 win32core.t - work up final commits, test on both cygwin
and win32, push to blead
0.82 I18N::Collate test failure cygwin - strange strxfrm
results
0.17 run/locale.t tests for khw
=====
4.35
2014/02/21 Friday
0.32 #121287 review and comment
1.03 #120939 fix just the leak
0.28 #121259 test sprout's patch
0.30 #121291 test -Dusedl build, check on Module::Load failure,
comment
0.87 #121269 review discussion, review code, experiment and
comment
0.10 #121291 test, comment and close
0.28 #121292 open ticket based on 121269 discussion
0.68 #121196 rebase, review, retest and apply
1.57 #121112 produce a patch
=====
5.43
Which I calculate is 20.45 hours
Approximately 14 tickets were reviewed or otherwise worked on, and 3
patches were applied.
With this week, I've spent 265.07 hours on my second grant, which
exceeds the limits of the grant.
I've applied for a new grant, but the Perl 5 Core Maintenance fund is
low on funds,
Partly due to that, and to a new stable release coming soon, I
concentrated on short-term tasks.
This included looking over test failures on Cygwin, where a couple of
test scripts were failing when cygserver[1] isn't running. It turned
out one test file, io/shm.t was attempting to skip the tests, but due
to the difference in how skip_all is requested between Test::More and
test.pl, was crashing instead. The other, op/taint.t was failing
(exiting on a SIGSYS) because it didn't have any skip logic at all.
The other failure I was seeing on my current (1.7.28) Cygwin was in
ext/Win32Core/t/win32core.t, which checks that calling a function like
Win32::GetLastError() without having loaded Win32.pm will load
Win32.pm and do it without modifying the windows error code - fairly
important if you happen to be calling Win32::GetLastError().
The test code as written, didn't check that the value (exposed as $^E
on MSWin32 builds) was preserved on Cygwin, but that the value was 0,
which was strange. It turns out $^E doesn't read or write the Win32
error code on Cygwin, but acts as an alias for $!, making the test
non-sensical.
I modified the test to check $^E only on Win32 builds, and added code
and tests for also preserving $! on both Cygwin and Win32. I
considered modifying the dSAVE_ERRNO macros to preserve the Win32
error code on Cygwin, but unfortunately Cygwin doesn't #include the
windows SDK headers, so I wasn't sure it was safe, and I was getting
beyond the point of a quick fix, so I left dSAVE_ERRNO as it was and
added explicit code to save errno.
This changed cygwin from failing or passing TODOs for 6 different
tests, down to 3, one of which is intermittent (op/threads.t), one
which has a tickets (78502) and the other is passing TODO tests, which
I haven't looked into.
[1] http://cygwin.com/cygwin-ug-net/using-cygserver.html
-
TONYC TPF grant report #28
by Tony Cook