summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Deprecate utf8_to_uvchr() and utf8_to_uvuni()Karl Williamson2012-03-194-14/+36
| | | | | | These functions can read beyond the end of their input strings if presented with malformed UTF-8 input. Perl core code has been converted to use other functions instead of these.
* Use the new utf8 to code point functionsKarl Williamson2012-03-1915-65/+77
| | | | | These functions should be used in preference to the old ones which can read beyond the end of the input string.
* utf8.c: Add valid_utf8_to_uvuni() and valid_utf8_to_uvchr()Karl Williamson2012-03-194-0/+40
| | | | | | | | These functions are like utf8_to_uvuni() and utf8_to_uvchr(), but their name implies that the input UTF-8 has been validated. They are not currently documented, as it's best for XS writers to call the functions that do validation.
* utf8.c: Add utf8_to_uvchr_buf() and utf8_to_uvuni_buf()Karl Williamson2012-03-195-2/+75
| | | | | | | | The existing functions (utf8_to_uvchr and utf8_to_uvuni) have a deficiency in that they could read beyond the end of the input string if given malformed input. This commit creates two new functions which behave as the old ones did, but have an extra parameter each, which gives the upper limit to the string, so no read beyond it is done.
* utf8.c: pod clarificationKarl Williamson2012-03-191-1/+2
|
* utf8.c: pod (mostly formatting) + comments changesKarl Williamson2012-03-192-79/+91
|
* perlapi (from sv.h) clarificationsKarl Williamson2012-03-191-2/+4
|
* autodoc.pl: pod format fixKarl Williamson2012-03-191-1/+1
|
* perlguts, warnings.t: Update references to obsolete fcn namesKarl Williamson2012-03-192-8/+9
| | | | | These functions were replaced long ago, apparently in 5.8, but I didn't verify that for sure.
* perldelta: clarificationKarl Williamson2012-03-191-2/+2
|
* Update Module::CoreList for 5.15.9Abigail2012-03-202-3/+689
|
* Point out CoreList's CAVEATS section is in CoreList.podAbigail2012-03-201-1/+3
| | | | Fix the git commit line as well.
* Eliminate a warningAbigail2012-03-201-1/+1
|
* mktables: white-space onlyKarl Williamson2012-03-191-21/+22
| | | | This outdents code to line up vertically with surrounding text
* mktables: Backport name_alias changes to earlier Unicode versionsKarl Williamson2012-03-191-12/+230
| | | | | This allow mktables to be compiled for earlier Unicode versions and work for them.
* mktables: Don't duplicate entriesKarl Williamson2012-03-191-2/+29
| | | | | | | | The Name table can have multiple names for each code point. The highest priority ones are first in the file. Prior to this patch, adding a high priority name to a code point which already had the same name, the old name could be retained, leaving two identical names for the code point. This patch causes the lower-priority one to be deleted.
* mktables: A leading zero is different than an only 0Karl Williamson2012-03-191-1/+1
| | | | | | | | | Commit b91749bce0ff3d86c6e210a0b35289b4ad36c144 assumed that a single 0 was a leading 0. This inappropriately makes a table appear to be hex when it isn't. This currently affects the kPrimaryNumeric property which is part of the Unihan database, and is not normally generated by mktables; it is generated only if an installation decides they want to compile Perl to use the Unihan properties.
* Unicode::UCD::prop_invmap: Fix returned formatKarl Williamson2012-03-191-1/+1
| | | | | | The type of an 'a' table should not be changed to 's'. This bug happened currently only if someone changed mktables to output one of the optional files.
* Unicode::UCD: typos in error messagesKarl Williamson2012-03-191-4/+4
| | | | | These concatenated the package name with the beginning of the text with no intervening punctuation. Add also the function within the package
* mktables: Add required parens and reword warning msgKarl Williamson2012-03-191-2/+2
| | | | | | Should this message ever get triggered, it would fail because the precedence is wrong: the argument to hex needs parens. Also reword somewhat for clarity.
* pat.t: Fix typo in commentKarl Williamson2012-03-191-1/+1
|
* Bump the perl version in various places for 5.15.9Abigail2012-03-1922-147/+147
|
* More perldelta work.Abigail2012-03-191-35/+2
|
* Mention the fix to perlfunc.html in "Configuration and Compilation" as well.Abigail2012-03-191-9/+2
| | | | Also, fix the spelling of html.
* Note in the source of perlhist.pod that "cow orker" is no typo.Nicholas Clark2012-03-191-0/+2
| | | | | This won't change the rendered pod, but will clarify to anyone thinking to patch the "mistake" that the seeming typo is intentional.
* Mention Porting/bisect.pl in perlgit.pod, before describing git bisect.Nicholas Clark2012-03-191-14/+53
| | | | | | | Porting/bisect.pl is intended to cover 90% of use cases, whilst being simpler to use than git bisect, so mention it first. Condense the description of git bisect slightly - it's giving implementation details which duplicate git help bisect, which we already refer the reader to.
* Add two missing "file"s to the documentation of Porting/bisect.plNicholas Clark2012-03-191-2/+2
|
* Move the example git bisect shell script from perlgit.pod to Porting/Nicholas Clark2012-03-195-30/+43
| | | | | This both avoids cluttering the flow of manpage with auxiliary data, and saves the user from having to extract the script from within the pod file.
* bisect-runner.pl should detect ccache with -V, not --versionNicholas Clark2012-03-191-2/+2
| | | | | ccache 2.4 doesn't support the --version parameter, only -V. ccache 3 supports both.
* Add a placeholder man page for perltodo, directing people to look at git.Nicholas Clark2012-03-194-0/+16
| | | | (Done as a second commit to avoid confusing git's rename detection.)
* Move the todo list from pod/ to Porting/Nicholas Clark2012-03-196-11/+6
| | | | | | Installing the Perl 5 to-do list as a manpage isn't that useful to anyone, as it's a snapshot that becomes increasingly out of date. Much better to point anyone interested in contributing direct to git HEAD, to view the current list.
* Add a TODO test for RT 111842Abigail2012-03-191-0/+5
|
* Bail out if it looks scary.Abigail2012-03-191-3/+16
| | | | | | | | Porting/sync-with-cpan hasn't automated all situations yet. In particular, it assumes the FILE entry has just one element, and that element is a directory. It also does not know what to do with MAP. If we determine this situation, we terminate the program before making any changes. Although there's the --force option for the braves.
* Don't remove --tarballAbigail2012-03-191-1/+1
| | | | | | By default, the script removes the tarball of the new distributions. However, if the --tarball option was given (and hence, the file was not downloaded from CPAN), we opt to keep this file around.
* Use #!/usr/bin/envAbigail2012-03-191-1/+1
| | | | | | /usr/bin/perl on dromedary is 5.8.8; but the script requires 5.10. By using #!/usr/bin/env, we give the user more control over which perl should be used. (And this benefits not just dromedary usesr)
* More work on perldeltaAbigail2012-03-191-84/+15
|
* Merge the feature and B::Deparse refactoring to blead.Nicholas Clark2012-03-195-145/+225
|\
| * Note the improvements to B::Deparse and feature in perldelta.Nicholas Clark2012-03-191-0/+9
| |
| * In feature.pm, inline current_bundle() into __common(), its only caller.Nicholas Clark2012-03-192-14/+8
| | | | | | | | | | current_bundle() was added after 5.14.0 was released, so has never been in a stable release. Hence it's totally safe to kill it.
| * In feature.pm, inline normalise_hints() into __common(), its only caller.Nicholas Clark2012-03-192-22/+14
| | | | | | | | | | normalise_hints() was added after 5.14.0 was released, so has never been in a stable release. Hence it's totally safe to kill it.
| * Merge the code common to feature::import and feature::unimport.Nicholas Clark2012-03-192-48/+22
| |
| * In feature.pm, use a consistent code style in import() and unimport().Nicholas Clark2012-03-192-10/+12
| | | | | | | | | | | | | | | | | | There were a couple of inconsistencies (shift with/without an explicit @_, exists with/without(), !@_ vs @_ == 0) which turn out to date back to before 5.10.0 Also fix an inadvertent use of a single element array slice with a simple array lookup in current_bundle().
| * In B::Deparse::_features_from_bundle(), don't call feature::current_bundle()Nicholas Clark2012-03-191-5/+2
| | | | | | | | | | | | | | | | | | Instead, directly access feature's package variables, as B::Deparse already does in 14 other places. (It also has its tentacles firmly into strict and warning's package variables - it's not fussy) feature::current_bundle() was not part of the documented API of feature either, so B::Deparse wasn't clean previously.
| * In Deparse, use $feature::hint_mask directly, instead of copying its value.Nicholas Clark2012-03-191-15/+10
| | | | | | | | | | | | | | | | Also, require feature unconditionally. Deparse already directly uses data from feature, switch and warnings, so this isn't a new trend in encapsulation breakage. Previously Deparse copied the value of $feature::hint_mask, and lazily loaded require in 4 places.
| * In B::Deparse, refactor common code into _features_from_bundle().Nicholas Clark2012-03-191-11/+15
| |
| * In B::Deparse, refactor the two places that feature::current_bundle()Nicholas Clark2012-03-191-6/+6
| | | | | | | | Converge the code, so that it's easy to extract out into a subroutine.
| * Fix regression in deparsing say (etc) under use 5.10.0Nicholas Clark2012-03-192-8/+2
| | | | | | | | | | | | | | | | | | | | | | Commit 6634bb9d0ed117be introduced a regression, causing this use 5.10.0; say "Perl rules"; to be deparsed as C<CORE::say>, not C<say>, etc. It wasn't actually possible to write tests for this within the t/deparse.t framework until the recent refactoring.
| * Add tests for deparsing C<say> under various combinations of pragmas.Nicholas Clark2012-03-191-0/+91
| | | | | | | | | | | | | | | | | | | | | | These mostly codify the current output of B::Deparse, which is not invalid, but might not be considered to be the optimal output. (It's defensive, in that it uses C<no feature;> which will ensure consistent behaviour whatever pragma context the output is evaluated in.) Some are TODO for the cases where B::Deparse is wrongly outputting C<CORE::say> instead of plain C<say> and C<CORE::__SUB__> instead of plain C<__SUB__>.
| * Avoid deparse.t testing everything under use feature ':5.10'Nicholas Clark2012-03-191-8/+36
| | | | | | | | | | Only use feature ':5.10' in those tests that actually need it. This will let us add tests for deparsing without any features enabled.
| * Add a 'context' feature to deparse.t, to better test ambient pragmas.Nicholas Clark2012-03-191-14/+14
| | | | | | | | | | | | Call ambient_pragmas() before each deparse test. This will allow use to remove the constraints of the current default, which is to always run under use feature ":5.10";