In perl.git, the branch smoke-me/khw-smoke has been created
<http://perl5.git.perl.org/perl.git/commitdiff/2fe5398b8d27d5a82882de6ce062ec4a0a807123?hp=0000000000000000000000000000000000000000>
at 2fe5398b8d27d5a82882de6ce062ec4a0a807123 (commit)
- Log -----------------------------------------------------------------
commit 2fe5398b8d27d5a82882de6ce062ec4a0a807123
Author: Karl Williamson <[email protected]>
Date: Wed Dec 21 21:31:06 2016 -0700
t/uni/variables.t: Test what it purports to test
One of the tests wasn't testing what it thought it was, since evalbytes
downgrades the input if if is UTF-8 encoded. Therefore, this needs to
use unicode_eval, as the other places in the .t that do similar things
use.
M t/uni/variables.t
commit b8d38f071d1e0d6a4d887875a194728d4b13a20b
Author: Karl Williamson <[email protected]>
Date: Sat Dec 17 17:25:29 2016 -0700
utf8.c Extract common code into macros
The 3 case changing functions: to upper, lower, and title case are
essentially identical except for what they call to actually do the
change; those being different macros or functions.
The fourth function, to fold, is identical to the other three for the
first part of its code, but diverges at the end in order to handle some
special cases.
This commit replaces the first part of the bodies of these 4 functions
by a common macro. And it replaces the remainder of the first 3
functions by another common macro.
I'm not a fan of this kind of macro to use in generating code, but it
seems the best way to keep these definitions in sync.
This commit just moved the code to the macro, and I manually verified
that there were no logic changes.
M utf8.c
commit 243b70080ff7553ab317fbe60a14173f73180888
Author: Karl Williamson <[email protected]>
Date: Sun Dec 18 13:38:01 2016 -0700
APItest/t/handy.t: Bring final special case into loop
All the tests in this file are now in two loops, one for the isFOO()
macros, and the other for the toFOO() macros. Thus the main logic
applies to all, and tests can be added or changed easily.
M ext/XS-APItest/t/handy.t
commit cc6d3f25d278a189a856c752a47d7c2f45b3045a
Author: Karl Williamson <[email protected]>
Date: Sun Dec 18 13:17:45 2016 -0700
APItest/t/handy.t: White-space only
Indent newly formed block
M ext/XS-APItest/t/handy.t
commit 78a494c01cfa3ce21a75f44cb36c086a6b4da66e
Author: Karl Williamson <[email protected]>
Date: Sun Dec 18 12:40:06 2016 -0700
APItest/t/handy.t: Add more tests
Macros with the '_uvchr' suffix were not being tested at all. Instead,
the undocumented backwards-compatibility-only macros with the suffixes
_uni were being tested, but these might diverge, and the tests wouldn't
find that.
M ext/XS-APItest/APItest.xs
M ext/XS-APItest/t/handy.t
commit c210aef92a67a86a05f1e6eca115e56b805e1bf2
Author: Karl Williamson <[email protected]>
Date: Sun Dec 18 11:55:49 2016 -0700
APItest/t/handy.t: Add more tests
The macros like isALPHA() were not getting tested; instead the theory
being that testing isALPHA_A() was good enough because they are #defined
to be the same. But that might change and the tests wouldn't uncover
that. And it turned out that some things wern't getting tested at all
if there was no _A version of the macro, for example isALNUM(). This
commit adds test for the version of the isFOO() macros with no suffix.
M ext/XS-APItest/APItest.pm
M ext/XS-APItest/APItest.xs
M ext/XS-APItest/t/handy.t
commit ccbb4b05f4420e134776daed9be171215897c404
Author: Karl Williamson <[email protected]>
Date: Sat Dec 17 19:43:28 2016 -0700
APItest/t/handy.t: Use abbrev. char name in test names
I got tired of seeing all these long character names fly by on my screen
while testing, so this changes to use any official Unicode abbreviation
when available. It's kind of silly to do this in this test, but I might
extract and improve this for more general use in tests of characters in
the future.
This also changes some imports so that the full module name need not
always be specified.
M ext/XS-APItest/t/handy.t
commit 9935d3d8a93bb0d6032006b780313ed0106f953a
Author: Karl Williamson <[email protected]>
Date: Sat Dec 17 19:22:14 2016 -0700
APItest/t/handy.t: White-space only
indent newly formed block.
M ext/XS-APItest/t/handy.t
commit 82d1d8b5e380caa1788d92e301fed6f7f13dd5db
Author: Karl Williamson <[email protected]>
Date: Sat Dec 17 19:19:39 2016 -0700
APItest/t/handy.t: Fold in another special case
The previous commit revamped this .t to make most things
part of a single loop. This adds another thing that was outside it.
M ext/XS-APItest/t/handy.t
commit 64db05c0cbbba2412db54fb8c96d2690890a55b0
Author: Karl Williamson <[email protected]>
Date: Thu Dec 15 16:12:30 2016 -0700
APItest/t/handy.t: Refactor for maintenance
Over the years code has kept getting copied and modified slightly in
each new place. And a future commit would create still more. This cuts
down the number of slightly different versions to the minimum reasonably
attainable.
M ext/XS-APItest/t/handy.t
commit 832ca9bc4e5798f81bb1d48058316ffe42e097b6
Author: Karl Williamson <[email protected]>
Date: Tue Dec 20 13:07:23 2016 -0700
toke.c: Simplify finding mirror-image close delimiter
This is the code that figures out what the matching closing delimiter is
for the few ones recognized by Perl has having a mirror-image delimiter.
I have had to figure out multiple times how these couple lines of code
works. This time, as I started to comment it, so I wouldn't have to do
so again, I realized that its cleverness wasn't really saving anything,
and my slow things down. So split into two parallel strings, with one
string containing the opening delimiters which have mirror image closing
ones, and the other containing those closing delimiters, in the same
order.
M toke.c
commit 744a1554106e2e0f58af469e065d4a97bd50b27f
Author: Karl Williamson <[email protected]>
Date: Tue Dec 20 11:43:08 2016 -0700
toke.c: Skip some work for UTF-8 invariant
Since these chars are the same when encoded in UTF-8 as when not, no
need to do the extra UTF-8 work.
M toke.c
commit 3d5586ddf378aee8e13ebdee70d6fd15c4915396
Author: Karl Williamson <[email protected]>
Date: Tue Dec 20 14:37:11 2016 -0700
pod/perlop: Note that need space between op and \w delim
You can't say qqXfooX because it thinks it is all one bareword. Note
this, and that
qq XfooX
works.
M pod/perlop.pod
-----------------------------------------------------------------------
--
Perl5 Master Repository