CPAN-Changes-0.500005/000755 000000 000000 00000000000 15000255765 012205 5ustar00000000 000000 CPAN-Changes-0.500005/README000644 000000 000000 00000006025 15000255765 013070 0ustar00000000 000000 NAME CPAN::Changes - Parser for CPAN style change logs SYNOPSIS use CPAN::Changes; my $changes = CPAN::Changes->load('Changes'); $changes->release('0.01'); DESCRIPTION It is standard practice to include a Changes file in your distribution. The purpose the Changes file is to help a user figure out what has changed since the last release. People have devised many ways to write the Changes file. A preliminary specification has been created (CPAN::Changes::Spec) to encourage module authors to write clear and concise Changes. This module will help users programmatically read and write Changes files that conform to the specification. METHODS new ( %args ) Creates a CPAN::Changes object. %args preamble The preamble section of the changelog. releases An arrayref of CPAN::Changes::Release objects. load ( $filename, %args ) Creates a new CPAN::Changes object by parsing the given file via CPAN::Changes::Parser. load_string ( $filename, %args ) Creates a new CPAN::Changes object by parsing the given string via CPAN::Changes::Parser. preamble ( [ $preamble ] ) Gets or sets the preamble section. releases ( [ @releases ] ) Gets or sets the list of releases as CPAN::Changes::Release objects. add_release ( @releases ) Adds the given releases to the change log. If a release of the same version exists, it will be overwritten. delete_release ( @versions ) Removes the given versions from change log. find_release ( $version ) Finds a release with the given version. reversed Returns a new CPAN::Changes object with the releases in the opposite order. clone ( %attrs ) Returns a new "CPAN::Changes" object with the given attributes changed. serialize ( %options ) Returns the change log as a string suitable for saving as a Changes file. width The width to wrap lines at. By default, lines will be wrapped at 75 characters. styles An array reference of styles to use when outputting the entries, one for each level of change. The first entry is used for the release entry itself. The styles can be either a single character to prefix change lines or two characters to use as a prefix and suffix. indents An array reference of indent strings to use when outputting the entries. reverse (legacy) If true, releases will be output in reversed order. group_sort (legacy) A code reference used to sort the groups in the releases. LEGACY METHODS delete_empty_groups Removes empty groups. release An alias for find_release. AUTHOR haarg - Graham Knop (cpan:HAARG) CONTRIBUTORS Brian Cassidy COPYRIGHT Copyright (c) 2011-2015 the CPAN::Changes "AUTHOR" and "CONTRIBUTORS" as listed above. LICENSE This library is free software and may be distributed under the same terms as perl itself. See . CPAN-Changes-0.500005/bin/000755 000000 000000 00000000000 15000255764 012754 5ustar00000000 000000 CPAN-Changes-0.500005/corpus/000755 000000 000000 00000000000 15000255764 013517 5ustar00000000 000000 CPAN-Changes-0.500005/Changes000644 000000 000000 00000013435 15000255744 013503 0ustar00000000 000000 Revision history for perl module CPAN::Changes 0.500005 - 2025-04-17 - fix Test::CPAN::Changes on perl 5.10 without upgrading version.pm 0.500004 - 2024-05-02 - fix tests on Windows 0.500003 - 2024-02-22 - fix calling ->name on an unnamed group - fix ->set_changes call on groups 0.500002 - 2023-10-26 - releasing as stable 0.500_001 - 2023-08-27 - Full rewrite. The new version can parse nested entries to an arbitrary depth, rather than just groups. It can parse many more formats, and can format the outputs more flexibly. This means it can better handle the change logs that actually exist on CPAN. - parsed releases keep their original order - Pass given ChangeLog filename for --check (Tux) 0.400002 - 2015-06-21 - revert whitespace changes that were inadvertently included in previous release. - escape curly brackets in test to avoid warning in perl 5.22 0.400001 - 2015-05-23 - accept either UTF-8 or ISO-8859-1 files and decode them - only treat bracketed text if it is on its own line with no other brackets - bump version.pm prereq to make sure it works properly - Let long tokens (like URLs) overflow rather than splitting them into multiple likes - Don't wrap on non-breaking spaces - Clean up packaging - Return undef for dates or notes that don't exist - Quote meta chars to fix a problem that clobbered dates with timezones due to the '+' char (GH #20) 0.30 2014-07-26 - Fix for subclassing CPAN::Changes::Group (GH #23) 0.29 2014-07-23 - Groups are now objects (CPAN::Changes::Group). Backwards compatibility from hashes should be preserved (GH #22) 0.28 2014-06-10 - Add "SEE ALSO" links to similar modules (RT #94636) - Use perl 5.8-compatible regex 0.27 2013-12-13 [ Spec Changes ] - Bump version to 0.04 - Allow non-"word" characters between a Version and a Date 0.26 2013-11-21 - Fix reference issues when adding a release (RT #90605) 0.25 2013-10-08 - Move Text::Wrap usage to proper module (Michal Spacek) - Typo fix (Karen Etheridge) 0.24 2013-10-07 - Fix Dist::Zilla date parsing. Now puts timezone data in note section (Github #17) 0.23 2013-08-14 [ Spec Changes ] - Bump version to 0.03 - Allow the "T" marker in W3CDTF to be omitted [ Code Changes ] - Be more strict about what we consider to be a Dist::Zilla-style date to avoid false positive matches - Update W3CDTF parsing to make the "T" marker optional (RT #87499) - Fix extra whitespace for empty values after version (RT #87524) 0.22 2013-07-30 - Sync module versions (RT #87455) 0.21 2013-07-30 [ Spec Changes ] - Bump version to 0.02 - Added "unknown/dev" release date options (RT #67705) - Added optional release note (RT #69321) - Added another preamble example - Added a note about line length [ Code Changes ] - Require Test::More 0.96 (RT #84994) - Added --check and --help flags to tidy_changelog script (Gabor Szabo) - Properly parse multi-line preamble - Test::CPAN::Changes now warns about parsed dates not in spec-compliant form - Handle unknown/dev release dates and release note from new spec 0.20 2013-05-01 - 'delete_empty_groups' shouldn't erroneously delete default group (Yanick Champoux) - Add tidy_changelog utility script (Yanick Champoux) - Minor pod fix 0.19 2012-04-30 - Test::CPAN::Changes now accepts version entries ending in '-TRIAL' (RT #76882, Karen Etheridge) - releases() in CPAN::Changes also accepts entries ending in '-TRIAL' 0.18 2011-10-18 - Expand changes_file_ok() to accept arguments so that a specific version may be checked (Ricardo Signes) - Add $VERSION to Test::CPAN::Changes so it plays nice with the toolchain e.g Module::Install::AuthorRequres (Dan Brook) 0.17 2011-04-21 - Eliminate extra whitespace when release date is not defined (RT #67441) - Require version.pm 0.79, which introduced the $LAX regexp (RT #67613) - Add the option to sort groups (Yanick Champoux) 0.16 2011-04-12 - Expose W3CDTF regex variable - Allow whitespace in some dates - Extract out valid W3CDTF portions from dates - Requires perl 5.10 0.15 2011-04-11 - Handle more date/time formats during parsing 0.14 2011-04-11 - Add delete_empty_groups() to Changes.pm and Release.pm (Yanick Champoux) 0.13 2011-04-04 - Use version.pm's LAX regex for finding versions. 0.12 2011-04-04 - Sort releases() by version first for greater consistency 0.11 2011-03-31 - Parse the default Dist-Zilla date format (e.g. 2010-12-28 00:15:12 Europe/London) 0.10 2011-03-29 - Be more strict about date validation in Test::CPAN::Changes 0.09 2011-03-29 - Be more lenient when parsing dates. Timestamps (e.g. Tue Mar 29 08:32:16 2011) are now parsed and converted to W3CDTF. (Fixes RT #66862) 0.08 2011-03-14 - Handle inconsistent indentation between releases - Be more strict about parsing rules for grouping lines 0.07 2011-03-03 - Wrap version parsing in eval() 0.06 2011-02-15 - Add proper version sorting via version.pm - Update dist manifest to include tests missing from previous releases 0.05 2011-02-13 - Attempt to squash warnings for undefined dates and add rudimentary version sorting when dates are equal - Add support for a "next version" token (Yanick Champoux) - Proper definition of whitespace between version and date (Fixes RT #65678) 0.04 2011-02-10 - Remove done_testing() from a test. 0.03 2011-02-10 - Allow more than one space between the version and the date. The spec allowed for this, but the parser did not. (Dave Rolsky) - Handle the case where there is no space before the change marker correctly. (Dave Rolsky) 0.02 2011-02-08 - Make tests compatible with Test::More that ships with perl 5.10.0 (Fixes RT #65543) 0.01 2011-02-02 - Initial release CPAN-Changes-0.500005/MANIFEST000644 000000 000000 00000012566 15000255765 013350 0ustar00000000 000000 bin/tidy_changelog Changes corpus/dists/App-Ack.changes corpus/dists/App-Ack.parsed corpus/dists/App-lookup.changes corpus/dists/App-lookup.parsed corpus/dists/App-rainbarf.changes corpus/dists/App-rainbarf.parsed corpus/dists/Archer.changes corpus/dists/Archer.parsed corpus/dists/B-C.changes corpus/dists/B-C.parsed corpus/dists/BreadBoard.changes corpus/dists/BreadBoard.parsed corpus/dists/Business-PayPal-API.changes corpus/dists/Business-PayPal-API.parsed corpus/dists/Config-GitLike.changes corpus/dists/Config-GitLike.parsed corpus/dists/Convert-BinHex.changes corpus/dists/Convert-BinHex.parsed corpus/dists/Crypt-SaltedHash.changes corpus/dists/Crypt-SaltedHash.parsed corpus/dists/Dancer-Logger-Syslog.changes corpus/dists/Dancer-Logger-Syslog.parsed corpus/dists/Data-Monad.changes corpus/dists/Data-Monad.parsed corpus/dists/Data-MPQ.changes corpus/dists/Data-MPQ.parsed corpus/dists/DBICx-TestDatabase.changes corpus/dists/DBICx-TestDatabase.parsed corpus/dists/DBIx-Class.changes corpus/dists/DBIx-Class.parsed corpus/dists/Digest-MD5.changes corpus/dists/Digest-MD5.parsed corpus/dists/Dist-Zilla-App-Command-podpreview.changes corpus/dists/Dist-Zilla-App-Command-podpreview.parsed corpus/dists/Email-MIME-ContentType.changes corpus/dists/Email-MIME-ContentType.parsed corpus/dists/File-RegexMatch.changes corpus/dists/File-RegexMatch.parsed corpus/dists/File-Tail.changes corpus/dists/File-Tail.parsed corpus/dists/GraphViz2.changes corpus/dists/GraphViz2.parsed corpus/dists/if.changes corpus/dists/if.parsed corpus/dists/IUP.changes corpus/dists/IUP.parsed corpus/dists/LucyX-Simple.changes corpus/dists/LucyX-Simple.parsed corpus/dists/Marpa-R2.changes corpus/dists/Marpa-R2.parsed corpus/dists/Mock-Person.changes corpus/dists/Mock-Person.parsed corpus/dists/Module-Info.changes corpus/dists/Module-Info.parsed corpus/dists/Module-Rename.changes corpus/dists/Module-Rename.parsed corpus/dists/MySQL-Sandbox.changes corpus/dists/MySQL-Sandbox.parsed corpus/dists/Net-DNS-SPF-Expander.changes corpus/dists/Net-DNS-SPF-Expander.parsed corpus/dists/Ouch.changes corpus/dists/Ouch.parsed corpus/dists/Params-Dry-Declare.changes corpus/dists/Params-Dry-Declare.parsed corpus/dists/Perl-Critic.changes corpus/dists/Perl-Critic.parsed corpus/dists/Rose-HTML-Objects.changes corpus/dists/Rose-HTML-Objects.parsed corpus/dists/SQL-Statement.changes corpus/dists/SQL-Statement.parsed corpus/dists/Sub-Identify.changes corpus/dists/Sub-Identify.parsed corpus/dists/SWISH-Prog.changes corpus/dists/SWISH-Prog.parsed corpus/dists/Test-Aggregate.changes corpus/dists/Test-Aggregate.parsed corpus/dists/Ubic-Service-Plack.changes corpus/dists/Ubic-Service-Plack.parsed corpus/dists/Ubic.changes corpus/dists/Ubic.parsed corpus/dists/Wiktionary-Parser.changes corpus/dists/Wiktionary-Parser.parsed corpus/dists/WWW-Mechanize-Cached.changes corpus/dists/WWW-Mechanize-Cached.parsed corpus/dists/WWW-YouTube-Download.changes corpus/dists/WWW-YouTube-Download.parsed corpus/dists/XML-LibXSLT.changes corpus/dists/XML-LibXSLT.parsed corpus/dists/YAML-Tiny.changes corpus/dists/YAML-Tiny.parsed corpus/dists/YAML.changes corpus/dists/YAML.parsed corpus/test/bad_dates.changes corpus/test/bad_versions.changes corpus/test/date_formats.changes corpus/test/empty_release.changes corpus/test/legacy/basic.changes corpus/test/legacy/different-indentation.changes corpus/test/legacy/dist-zilla.changes corpus/test/legacy/dist-zilla_format.changes corpus/test/legacy/group-brackets.changes corpus/test/legacy/group.changes corpus/test/legacy/latin1.changes corpus/test/legacy/line-continuation.changes corpus/test/legacy/long_preamble.changes corpus/test/legacy/multiple_releases.changes corpus/test/legacy/no-leading-space-for-change.changes corpus/test/legacy/preamble.changes corpus/test/legacy/space-before-date.changes corpus/test/legacy/timestamp.changes corpus/test/legacy/unknown_date.changes corpus/test/legacy/utf8.changes corpus/test/legacy/version-date-separator.changes corpus/test/no_releases.changes corpus/test/ugly_dates.changes corpus/test/valid.changes lib/CPAN/Changes.pm lib/CPAN/Changes/Entry.pm lib/CPAN/Changes/Group.pm lib/CPAN/Changes/HasEntries.pm lib/CPAN/Changes/Parser.pm lib/CPAN/Changes/Release.pm lib/CPAN/Changes/Spec.pod lib/Test/CPAN/Changes.pm maint/Makefile.PL.include Makefile.PL MANIFEST This list of files t/add-release.t t/attach_group_nodup.t t/corpus.t t/dates.t t/group.t t/legacy/delete_empty_groups.t t/legacy/dist-zilla-changes.t t/legacy/moo_lazy_subclass.t t/legacy/read_basic.t t/legacy/read_different-indentation.t t/legacy/read_dist-zilla.t t/legacy/read_encoded.t t/legacy/read_group-brackets.t t/legacy/read_group.t t/legacy/read_line-continuation.t t/legacy/read_multiple_releases.t t/legacy/read_no-leading-space-for-change.t t/legacy/read_no_date.t t/legacy/read_preamble.t t/legacy/read_space-before-date.t t/legacy/read_timestamp.t t/legacy/read_unknown_date.t t/legacy/read_version-date-separator.t t/legacy/roundtrip.t t/legacy/rt90605.t t/legacy/self.t t/legacy/serialize.t t/legacy/sort_groups.t t/legacy/valid_dates.t t/parse.t t/raw.t t/test-cpan-changes.t t/wrap_length_defaults.t xt/author/pod.t xt/author/pod_coverage.t META.yml Module YAML meta-data (added by MakeMaker) META.json Module JSON meta-data (added by MakeMaker) README README file (added by Distar) LICENSE LICENSE file (added by Distar) CPAN-Changes-0.500005/LICENSE000644 000000 000000 00000046245 15000255765 013225 0ustar00000000 000000 Terms of the Perl programming language system itself a) the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version, or b) the "Artistic License" --- The GNU General Public License, Version 1, February 1989 --- This software is Copyright (c) 2025 by haarg - Graham Knop (cpan:HAARG) . This is free software, licensed under: The GNU General Public License, Version 1, February 1989 GNU GENERAL PUBLIC LICENSE Version 1, February 1989 Copyright (C) 1989 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The license agreements of most software companies try to keep users at the mercy of those companies. By contrast, our General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. The General Public License applies to the Free Software Foundation's software and to any other program whose authors commit to using it. You can use it for your programs, too. When we speak of free software, we are referring to freedom, not price. Specifically, the General Public License is designed to make sure that you have the freedom to give away or sell copies of free software, that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of a such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must tell them their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any work containing the Program or a portion of it, either verbatim or with modifications. Each licensee is addressed as "you". 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this General Public License and to the absence of any warranty; and give any other recipients of the Program a copy of this General Public License along with the Program. You may charge a fee for the physical act of transferring a copy. 2. You may modify your copy or copies of the Program or any portion of it, and copy and distribute such modifications under the terms of Paragraph 1 above, provided that you also do the following: a) cause the modified files to carry prominent notices stating that you changed the files and the date of any change; and b) cause the whole of any work that you distribute or publish, that in whole or in part contains the Program or any part thereof, either with or without modifications, to be licensed at no charge to all third parties under the terms of this General Public License (except that you may choose to grant warranty protection to some or all third parties, at your option). c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the simplest and most usual way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this General Public License. d) You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. Mere aggregation of another independent work with the Program (or its derivative) on a volume of a storage or distribution medium does not bring the other work under the scope of these terms. 3. You may copy and distribute the Program (or a portion or derivative of it, under Paragraph 2) in object code or executable form under the terms of Paragraphs 1 and 2 above provided that you also do one of the following: a) accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Paragraphs 1 and 2 above; or, b) accompany it with a written offer, valid for at least three years, to give any third party free (except for a nominal charge for the cost of distribution) a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Paragraphs 1 and 2 above; or, c) accompany it with the information you received as to where the corresponding source code may be obtained. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form alone.) Source code for a work means the preferred form of the work for making modifications to it. For an executable file, complete source code means all the source code for all modules it contains; but, as a special exception, it need not include source code for modules which are standard libraries that accompany the operating system on which the executable file runs, or for standard header files or definitions files that accompany that operating system. 4. You may not copy, modify, sublicense, distribute or transfer the Program except as expressly provided under this General Public License. Any attempt otherwise to copy, modify, sublicense, distribute or transfer the Program is void, and will automatically terminate your rights to use the Program under this License. However, parties who have received copies, or rights to use copies, from you under this General Public License will not have their licenses terminated so long as such parties remain in full compliance. 5. By copying, distributing or modifying the Program (or any work based on the Program) you indicate your acceptance of this license to do so, and all its terms and conditions. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. 7. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of the license which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the license, you may choose any version ever published by the Free Software Foundation. 8. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 9. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 10. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS Appendix: How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to humanity, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19xx name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (a program to direct compilers to make passes at assemblers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice That's all there is to it! --- The Perl Artistic License 1.0 --- This software is Copyright (c) 2025 by haarg - Graham Knop (cpan:HAARG) . This is free software, licensed under: The Perl Artistic License 1.0 The "Artistic License" Preamble The intent of this document is to state the conditions under which a Package may be copied, such that the Copyright Holder maintains some semblance of artistic control over the development of the package, while giving the users of the package the right to use and distribute the Package in a more-or-less customary fashion, plus the right to make reasonable modifications. Definitions: "Package" refers to the collection of files distributed by the Copyright Holder, and derivatives of that collection of files created through textual modification. "Standard Version" refers to such a Package if it has not been modified, or has been modified in accordance with the wishes of the Copyright Holder as specified below. "Copyright Holder" is whoever is named in the copyright or copyrights for the package. "You" is you, if you're thinking about copying or distributing this Package. "Reasonable copying fee" is whatever you can justify on the basis of media cost, duplication charges, time of people involved, and so on. (You will not be required to justify it to the Copyright Holder, but only to the computing community at large as a market that must bear the fee.) "Freely Available" means that no fee is charged for the item itself, though there may be fees involved in handling the item. It also means that recipients of the item may redistribute it under the same conditions they received it. 1. You may make and give away verbatim copies of the source form of the Standard Version of this Package without restriction, provided that you duplicate all of the original copyright notices and associated disclaimers. 2. You may apply bug fixes, portability fixes and other modifications derived from the Public Domain or from the Copyright Holder. A Package modified in such a way shall still be considered the Standard Version. 3. You may otherwise modify your copy of this Package in any way, provided that you insert a prominent notice in each changed file stating how and when you changed that file, and provided that you do at least ONE of the following: a) place your modifications in the Public Domain or otherwise make them Freely Available, such as by posting said modifications to Usenet or an equivalent medium, or placing the modifications on a major archive site such as uunet.uu.net, or by allowing the Copyright Holder to include your modifications in the Standard Version of the Package. b) use the modified Package only within your corporation or organization. c) rename any non-standard executables so the names do not conflict with standard executables, which must also be provided, and provide a separate manual page for each non-standard executable that clearly documents how it differs from the Standard Version. d) make other distribution arrangements with the Copyright Holder. 4. You may distribute the programs of this Package in object code or executable form, provided that you do at least ONE of the following: a) distribute a Standard Version of the executables and library files, together with instructions (in the manual page or equivalent) on where to get the Standard Version. b) accompany the distribution with the machine-readable source of the Package with your modifications. c) give non-standard executables non-standard names, and clearly document the differences in manual pages (or equivalent), together with instructions on where to get the Standard Version. d) make other distribution arrangements with the Copyright Holder. 5. You may charge a reasonable copying fee for any distribution of this Package. You may charge any fee you choose for support of this Package. You may not charge a fee for this Package itself. However, you may distribute this Package in aggregate with other (possibly commercial) programs as part of a larger (possibly commercial) software distribution provided that you do not advertise this Package as a product of your own. You may embed this Package's interpreter within an executable of yours (by linking); this shall be construed as a mere form of aggregation, provided that the complete Standard Version of the interpreter is so embedded. 6. The scripts and library files supplied as input to or produced as output from the programs of this Package do not automatically fall under the copyright of this Package, but belong to whoever generated them, and may be sold commercially, and may be aggregated with this Package. If such scripts or library files are aggregated with this Package via the so-called "undump" or "unexec" methods of producing a binary executable image, then distribution of such an image shall neither be construed as a distribution of this Package nor shall it fall under the restrictions of Paragraphs 3 and 4, provided that you do not represent such an executable image as a Standard Version of this Package. 7. C subroutines (or comparably compiled subroutines in other languages) supplied by you and linked into this Package in order to emulate subroutines and variables of the language defined by this Package shall not be considered part of this Package, but are the equivalent of input as in Paragraph 6, provided these subroutines do not change the language in any way that would cause it to fail the regression tests for the language. 8. Aggregation of this Package with a commercial distribution is always permitted provided that the use of this Package is embedded; that is, when no overt attempt is made to make this Package's interfaces visible to the end user of the commercial distribution. Such use shall not be construed as a distribution of this Package. 9. The name of the Copyright Holder may not be used to endorse or promote products derived from this software without specific prior written permission. 10. THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. The End CPAN-Changes-0.500005/t/000755 000000 000000 00000000000 15000255764 012447 5ustar00000000 000000 CPAN-Changes-0.500005/xt/000755 000000 000000 00000000000 15000255764 012637 5ustar00000000 000000 CPAN-Changes-0.500005/META.yml000644 000000 000000 00000003077 15000255764 013464 0ustar00000000 000000 --- abstract: 'Parser for CPAN style change logs' author: - 'haarg - Graham Knop (cpan:HAARG) ' build_requires: Test::More: '0.96' configure_requires: ExtUtils::MakeMaker: '0' dynamic_config: 1 generated_by: 'ExtUtils::MakeMaker version 7.72, CPAN::Meta::Converter version 2.150010' license: perl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html version: '1.4' name: CPAN-Changes no_index: directory: - t - xt provides: CPAN::Changes: file: lib/CPAN/Changes.pm version: '0.500005' CPAN::Changes::Entry: file: lib/CPAN/Changes/Entry.pm version: '0.500005' CPAN::Changes::Group: file: lib/CPAN/Changes/Group.pm version: '0.500005' CPAN::Changes::HasEntries: file: lib/CPAN/Changes/HasEntries.pm version: '0.500005' CPAN::Changes::Parser: file: lib/CPAN/Changes/Parser.pm version: '0.500005' CPAN::Changes::Release: file: lib/CPAN/Changes/Release.pm version: '0.500005' CPAN::Changes::Spec: file: lib/CPAN/Changes/Spec.pod version: '0.500005' Test::CPAN::Changes: file: lib/Test/CPAN/Changes.pm version: '0.500005' requires: Module::Runtime: '0' Moo: '1.006000' Sub::Quote: '1.005000' Test::Builder: '0' Types::Standard: '0' resources: IRC: irc://irc.perl.org/#metacpan bugtracker: https://rt.cpan.org/Public/Dist/Display.html?Name=CPAN-Changes license: http://dev.perl.org/licenses/ repository: https://github.com/metacpan/CPAN-Changes.git version: '0.500005' x_authority: cpan:BRICAS x_serialization_backend: 'CPAN::Meta::YAML version 0.018' CPAN-Changes-0.500005/META.json000644 000000 000000 00000005337 15000255765 013636 0ustar00000000 000000 { "abstract" : "Parser for CPAN style change logs", "author" : [ "haarg - Graham Knop (cpan:HAARG) " ], "dynamic_config" : 1, "generated_by" : "ExtUtils::MakeMaker version 7.72, CPAN::Meta::Converter version 2.150010", "license" : [ "perl_5" ], "meta-spec" : { "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", "version" : 2 }, "name" : "CPAN-Changes", "no_index" : { "directory" : [ "t", "xt" ] }, "prereqs" : { "build" : {}, "configure" : { "requires" : { "ExtUtils::MakeMaker" : "0" } }, "develop" : { "requires" : { "Test::Pod" : "1", "Test::Pod::Coverage::TrustMe" : "0.002000" } }, "runtime" : { "requires" : { "Module::Runtime" : "0", "Moo" : "1.006000", "Sub::Quote" : "1.005000", "Test::Builder" : "0", "Types::Standard" : "0" } }, "test" : { "requires" : { "Test::More" : "0.96" } } }, "provides" : { "CPAN::Changes" : { "file" : "lib/CPAN/Changes.pm", "version" : "0.500005" }, "CPAN::Changes::Entry" : { "file" : "lib/CPAN/Changes/Entry.pm", "version" : "0.500005" }, "CPAN::Changes::Group" : { "file" : "lib/CPAN/Changes/Group.pm", "version" : "0.500005" }, "CPAN::Changes::HasEntries" : { "file" : "lib/CPAN/Changes/HasEntries.pm", "version" : "0.500005" }, "CPAN::Changes::Parser" : { "file" : "lib/CPAN/Changes/Parser.pm", "version" : "0.500005" }, "CPAN::Changes::Release" : { "file" : "lib/CPAN/Changes/Release.pm", "version" : "0.500005" }, "CPAN::Changes::Spec" : { "file" : "lib/CPAN/Changes/Spec.pod", "version" : "0.500005" }, "Test::CPAN::Changes" : { "file" : "lib/Test/CPAN/Changes.pm", "version" : "0.500005" } }, "release_status" : "stable", "resources" : { "bugtracker" : { "mailto" : "bug-CPAN-Changes@rt.cpan.org", "web" : "https://rt.cpan.org/Public/Dist/Display.html?Name=CPAN-Changes" }, "license" : [ "http://dev.perl.org/licenses/" ], "repository" : { "type" : "git", "url" : "https://github.com/metacpan/CPAN-Changes.git", "web" : "https://github.com/metacpan/CPAN-Changes" }, "x_IRC" : "irc://irc.perl.org/#metacpan" }, "version" : "0.500005", "x_authority" : "cpan:BRICAS", "x_serialization_backend" : "JSON::PP version 4.16" } CPAN-Changes-0.500005/lib/000755 000000 000000 00000000000 15000255764 012752 5ustar00000000 000000 CPAN-Changes-0.500005/maint/000755 000000 000000 00000000000 15000255764 013314 5ustar00000000 000000 CPAN-Changes-0.500005/Makefile.PL000644 000000 000000 00000007511 15000255733 014156 0ustar00000000 000000 use strict; use warnings FATAL => 'all'; use 5.008; my %META = ( name => 'CPAN-Changes', license => 'perl_5', prereqs => { configure => { requires => { 'ExtUtils::MakeMaker' => 0, } }, test => { requires => { 'Test::More' => 0.96, }, }, runtime => { requires => { 'Moo' => '1.006000', 'Module::Runtime' => 0, 'Test::Builder' => 0, 'Sub::Quote' => '1.005000', 'Types::Standard' => 0, }, }, develop => { requires => { 'Test::Pod' => 1.00, 'Test::Pod::Coverage::TrustMe' => '0.002000', }, }, }, resources => { repository => { url => 'https://github.com/metacpan/CPAN-Changes.git', web => 'https://github.com/metacpan/CPAN-Changes', type => 'git', }, x_IRC => 'irc://irc.perl.org/#metacpan', bugtracker => { web => 'https://rt.cpan.org/Public/Dist/Display.html?Name=CPAN-Changes', mailto => 'bug-CPAN-Changes@rt.cpan.org', }, license => [ 'http://dev.perl.org/licenses/' ], }, no_index => { directory => [ 't', 'xt' ] }, x_authority => 'cpan:BRICAS', provides => { 'CPAN::Changes' => { file => 'lib/CPAN/Changes.pm', version => '0.500005', }, 'CPAN::Changes::Entry' => { file => 'lib/CPAN/Changes/Entry.pm', version => '0.500005', }, 'CPAN::Changes::Group' => { file => 'lib/CPAN/Changes/Group.pm', version => '0.500005', }, 'CPAN::Changes::HasEntries' => { file => 'lib/CPAN/Changes/HasEntries.pm', version => '0.500005', }, 'CPAN::Changes::Parser' => { file => 'lib/CPAN/Changes/Parser.pm', version => '0.500005', }, 'CPAN::Changes::Release' => { file => 'lib/CPAN/Changes/Release.pm', version => '0.500005', }, 'CPAN::Changes::Spec' => { file => 'lib/CPAN/Changes/Spec.pod', version => '0.500005', }, 'Test::CPAN::Changes' => { file => 'lib/Test/CPAN/Changes.pm', version => '0.500005', }, }, ); my %MM_ARGS = ( EXE_FILES => [ 'bin/tidy_changelog' ], test => { TESTS => 't/*.t t/*/*.t' }, ); ## BOILERPLATE ############################################################### require ExtUtils::MakeMaker; (do './maint/Makefile.PL.include' or die $@) unless -f 'META.yml'; # have to do this since old EUMM dev releases miss the eval $VERSION line my $eumm_version = eval $ExtUtils::MakeMaker::VERSION; my $mymeta = $eumm_version >= 6.57_02; my $mymeta_broken = $mymeta && $eumm_version < 6.57_07; ($MM_ARGS{NAME} = $META{name}) =~ s/-/::/g; ($MM_ARGS{VERSION_FROM} = "lib/$MM_ARGS{NAME}.pm") =~ s{::}{/}g; $META{license} = [ $META{license} ] if $META{license} && !ref $META{license}; $MM_ARGS{LICENSE} = $META{license}[0] if $META{license} && $eumm_version >= 6.30; $MM_ARGS{NO_MYMETA} = 1 if $mymeta_broken; $MM_ARGS{META_ADD} = { 'meta-spec' => { version => 2 }, %META } unless -f 'META.yml'; $MM_ARGS{PL_FILES} ||= {}; $MM_ARGS{NORECURS} = 1 if not exists $MM_ARGS{NORECURS}; for (qw(configure build test runtime)) { my $key = $_ eq 'runtime' ? 'PREREQ_PM' : uc $_.'_REQUIRES'; my $r = $MM_ARGS{$key} = { %{$META{prereqs}{$_}{requires} || {}}, %{delete $MM_ARGS{$key} || {}}, }; defined $r->{$_} or delete $r->{$_} for keys %$r; } $MM_ARGS{MIN_PERL_VERSION} = delete $MM_ARGS{PREREQ_PM}{perl} || 0; delete $MM_ARGS{MIN_PERL_VERSION} if $eumm_version < 6.47_01; $MM_ARGS{BUILD_REQUIRES} = {%{$MM_ARGS{BUILD_REQUIRES}}, %{delete $MM_ARGS{TEST_REQUIRES}}} if $eumm_version < 6.63_03; $MM_ARGS{PREREQ_PM} = {%{$MM_ARGS{PREREQ_PM}}, %{delete $MM_ARGS{BUILD_REQUIRES}}} if $eumm_version < 6.55_01; delete $MM_ARGS{CONFIGURE_REQUIRES} if $eumm_version < 6.51_03; ExtUtils::MakeMaker::WriteMakefile(%MM_ARGS); ## END BOILERPLATE ########################################################### CPAN-Changes-0.500005/maint/Makefile.PL.include000644 000000 000000 00000000516 14472651645 016724 0ustar00000000 000000 BEGIN { -e 'Distar' or system qw(git clone https://github.com/p5sagit/Distar.git) } use lib 'Distar/lib'; use Distar 0.001; use ExtUtils::MakeMaker 6.57_10 (); author 'haarg - Graham Knop (cpan:HAARG) '; manifest_include bin => qr/.*/; manifest_include corpus => qr/.*/; manifest_include 't/corpus' => qr/.*/; 1; CPAN-Changes-0.500005/lib/Test/000755 000000 000000 00000000000 15000255764 013671 5ustar00000000 000000 CPAN-Changes-0.500005/lib/CPAN/000755 000000 000000 00000000000 15000255764 013473 5ustar00000000 000000 CPAN-Changes-0.500005/lib/CPAN/Changes.pm000644 000000 000000 00000017042 15000255733 015401 0ustar00000000 000000 package CPAN::Changes; use strict; use warnings; our $VERSION = '0.500005'; $VERSION =~ tr/_//d; use Sub::Quote qw(qsub); use Types::Standard qw(ArrayRef HashRef InstanceOf); use CPAN::Changes::Release; use Moo; my $release_type = (InstanceOf['CPAN::Changes::Release'])->plus_coercions( HashRef ,=> qsub q{ CPAN::Changes::Release->new($_[0]) }, ); has _releases => ( is => 'rw', init_arg => 'releases', isa => ArrayRef[$release_type], coerce => 1, default => qsub q{ [] }, ); has preamble => ( is => 'rw', default => '', ); sub clone { my $self = shift; my %attrs = %$self; $attrs{releases} = [ map $_->clone, @{delete $self->{_releases}} ]; return (ref $self)->new(%attrs, @_); } # backcompat sub releases { my ($self, @args) = @_; if (@args > 1 or @args == 1 && ref $args[0] ne 'ARRAY') { @args = [ @args ]; } @{ $self->_releases(@args) }; } sub _numify_version { my $version = shift; $version = _fix_version($version); $version =~ s/_//g; if ($version =~ s/^v//i || $version =~ tr/.// > 1) { my @parts = split /\./, $version; my $n = shift @parts; $version = sprintf(join('.', '%s', ('%03s' x @parts)), $n, @parts); } $version += 0; return $version; } sub _fix_version { my $version = shift; return 0 unless defined $version; my $v = ($version =~ s/^v//i); $version =~ s/[^\d\._].*//; $version =~ s/\.[._]+/./; $version =~ s/[._]*_[._]*/_/g; $version =~ s/\.{2,}/./g; $v ||= $version =~ tr/.// > 1; $version ||= 0; return (($v ? 'v' : '') . $version); } sub find_release { my ($self, $version) = @_; my ($release) = grep { $_->version eq $version } @{ $self->_releases }; return $release if $release; $version = _numify_version($version) || return undef; ($release) = grep { _numify_version($_->version) == $version } @{ $self->_releases }; return $release; } sub reversed { my ($self) = @_; return $self->clone(releases => [ reverse @{ $self->_releases } ]); } sub serialize { my ($self, %opts) = @_; if ($opts{reverse}) { $self = $self->reversed; } my $width = $opts{width} || 75; my @styles = @{ $opts{styles} || ['', '[]', '-', '*'] }; my @indents = @{ $opts{indents} || ['', ' ', ''] }; my $out = $self->preamble || ''; $out .= "\n\n" if $out; for my $release (reverse @{$self->_releases}) { my $styles = \@styles; my $indents = \@indents; if ( !$opts{styles} and ( grep { length($styles->[1]) > 1 && length($indents->[0] . $styles->[1] . $_->text) > $width } @{ $release->entries } or !grep { $_->has_entries } @{ $release->entries } ) ) { $styles = [ '', '-', '*' ]; } $out .= "\n" unless $out eq '' || $out =~ /\n\n\z/; $out .= $release->serialize( %opts, indents => $indents, styles => $styles, width => $width - length $indents->[0], ); } return $out; } require CPAN::Changes::Parser; # :( i know people use these our $W3CDTF_REGEX = $CPAN::Changes::Parser::_ISO_8601_DATE; our $UNKNOWN_VALS = $CPAN::Changes::Parser::_UNKNOWN_DATE; sub load { my ($class, $filename, %args) = @_; $args{version_like} = $args{next_token} if exists $args{next_token}; require CPAN::Changes::Parser; CPAN::Changes::Parser->new(%args)->parse_file($filename); } sub load_string { my ($class, $string, %args) = @_; $args{version_like} = $args{next_token} if exists $args{next_token}; require CPAN::Changes::Parser; CPAN::Changes::Parser->new(%args)->parse_string($string); } sub add_release { my ($self, @new_releases) = @_; @new_releases = map { $release_type->coerce($_) } @new_releases; my @releases = @{ $self->_releases }; for my $new_release (@new_releases) { my $version = _numify_version($new_release->version); for my $release (@releases) { if (_numify_version($release->version) == $version) { $release = $new_release; undef $new_release; } } } push @releases, grep { defined } @new_releases; $self->_releases(\@releases); return 1; } sub delete_release { my ($self, @versions) = @_; my @releases = @{ $self->_releases }; for my $version (map { _numify_version($_) } @versions) { @releases = grep { _numify_version($_->version) != $version } @releases; } $self->_releases(\@releases); } sub release { my ($self, $version) = @_; $self->find_release($version); } sub delete_empty_groups { my ($self) = @_; for my $release ( @{ $self->_releases } ) { $release->delete_empty_groups; } } 1; __END__ =head1 NAME CPAN::Changes - Parser for CPAN style change logs =head1 SYNOPSIS use CPAN::Changes; my $changes = CPAN::Changes->load('Changes'); $changes->release('0.01'); =head1 DESCRIPTION It is standard practice to include a Changes file in your distribution. The purpose the Changes file is to help a user figure out what has changed since the last release. People have devised many ways to write the Changes file. A preliminary specification has been created (L) to encourage module authors to write clear and concise Changes. This module will help users programmatically read and write Changes files that conform to the specification. =head1 METHODS =head2 new ( %args ) Creates a B object. =head3 %args =over 4 =item preamble The preamble section of the changelog. =item releases An arrayref of L objects. =back =head2 load ( $filename, %args ) Creates a new B object by parsing the given file via L. =head2 load_string ( $filename, %args ) Creates a new B object by parsing the given string via L. =head2 preamble ( [ $preamble ] ) Gets or sets the preamble section. =head2 releases ( [ @releases ] ) Gets or sets the list of releases as L objects. =head2 add_release ( @releases ) Adds the given releases to the change log. If a release of the same version exists, it will be overwritten. =head2 delete_release ( @versions ) Removes the given versions from change log. =head2 find_release ( $version ) Finds a release with the given version. =head2 reversed Returns a new B object with the releases in the opposite order. =head2 clone ( %attrs ) Returns a new C object with the given attributes changed. =head2 serialize ( %options ) Returns the change log as a string suitable for saving as a F file. =over 4 =item width The width to wrap lines at. By default, lines will be wrapped at 75 characters. =item styles An array reference of styles to use when outputting the entries, one for each level of change. The first entry is used for the release entry itself. The styles can be either a single character to prefix change lines or two characters to use as a prefix and suffix. =item indents An array reference of indent strings to use when outputting the entries. =item reverse (legacy) If true, releases will be output in reversed order. =item group_sort (legacy) A code reference used to sort the groups in the releases. =back =head1 LEGACY METHODS =head2 delete_empty_groups Removes empty groups. =head2 release An alias for find_release. =head1 AUTHOR haarg - Graham Knop (cpan:HAARG) =head1 CONTRIBUTORS Brian Cassidy =head1 COPYRIGHT Copyright (c) 2011-2015 the CPAN::Changes L and L as listed above. =head1 LICENSE This library is free software and may be distributed under the same terms as perl itself. See L. =cut CPAN-Changes-0.500005/lib/CPAN/Changes/000755 000000 000000 00000000000 15000255764 015043 5ustar00000000 000000 CPAN-Changes-0.500005/lib/CPAN/Changes/Spec.pod000644 000000 000000 00000007666 15000255733 016454 0ustar00000000 000000 =head1 NAME CPAN::Changes::Spec - Specification for CPAN Changes files =head1 VERSION version 0.500005 =head1 SYNOPSIS Revision history for perl module Foo::Bar 0.02 2009-07-17 - Added more foo() tests 0.01 2009-07-16 - Initial release =head1 DESCRIPTION It is intended as a guide for module authors to encourage them to write meaningful changelogs as well as provide a programmatic interface to reliably read and write Changes files. =head1 DATA TYPES =head2 Version Versions should be formatted as described in L. =head2 Date A date/time in the format specified by L aka W3CDTF. B The "T" marker before the time portion is optional. In order to satisfy release events not made to the public, or dates that are historically unknown, the following strings are also available: =over 4 =item * Unknown Release Date =item * Unknown =item * Not Released =item * Development Release =item * Development =item * Developer Release =back =head1 STRUCTURE =head2 Required Elements In its simplest form, the only required elements are a C, a C and the noted changes. Blank lines between the C line and the first C line are optional. Blank lines between C lines are also optional. (whitespace/non-"word" characters) (whitespace) B The characters between a C and a C must start with whitespace, but may subsequently contain any combination of whitespace and non-"word" characters. Example: 0.01 - 2013-12-11 C lines have no specific format. Commonly, authors will use a dash C<-> followed by a space to start a new change, and indent subsequent lines for multi-line changes. Example - Simple Change - This is a very very very long change line Although there is no limit on line length, authors generally wrap each line at 78 columns. =head2 Optional Elements =head3 Release Note Any text following the C portion of the C line will be considered the C. Example: 0.01 2013-04-01 Codename: April Fool - First Release =head2 Preamble Any amount of text before the first C line will be considered part of the preamble. Most existing distributions include something along the lines of: Revision history for perl module My::Module Or Revision history for perl distribution My-Distribution =head2 Groups Changelog entries may be grouped under headings. Heading lines begin with an opening square bracket (C<[>), and end with a matching square bracket (C<]>). When parsing group headings, leading and trailing whitespace inside the brackets should be discarded. (whitespace)[Grouping Name] (whitespace) Since empty lines hold no special meaning, all C lines will fall under the current group until a new group heading is found. Example: [ First Group ] - First Change - Second Change; in first group [ Second Group ] - First Change; in second group =head1 EXAMPLES =head2 Basic Example 0.01 2009-07-16 - Initial release =head2 Example with a preamble Revision history for perl module Foo::Bar 0.02 2009-07-17 - Added more foo() tests 0.01 2009-07-16 - Initial release =head2 Example with groups Revision history for perl module Foo::Bar 0.03 2009-07-18 [Important Security Information] - This release fixes critical bug RT #1234 [Other Changes] - Added some feature 0.02 2009-07-17 - Added more foo() tests 0.01 2009-07-16T19:20:30+01:00 - Initial release =head1 SEE ALSO =over 4 =item * L =item * L =back =head1 AUTHOR Brian Cassidy Ebricas@cpan.orgE =head1 COPYRIGHT AND LICENSE Copyright 2011-2013 by Brian Cassidy This is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut CPAN-Changes-0.500005/lib/CPAN/Changes/Parser.pm000644 000000 000000 00000024066 15000255733 016641 0ustar00000000 000000 package CPAN::Changes::Parser; use strict; use warnings; our $VERSION = '0.500005'; $VERSION =~ tr/_//d; use Module::Runtime qw(use_module); use Carp qw(croak); use Encode qw(decode FB_CROAK LEAVE_SRC); use Moo; has _changelog_class => ( is => 'ro', default => 'CPAN::Changes', coerce => sub { use_module($_[0]) }, ); has _release_class => ( is => 'ro', default => 'CPAN::Changes::Release', coerce => sub { use_module($_[0]) }, ); has _entry_class => ( is => 'ro', default => 'CPAN::Changes::Entry', coerce => sub { use_module($_[0]) }, ); has version_like => ( is => 'ro', ); has version_prefix => ( is => 'ro', ); sub parse_string { my ($self, $string) = @_; $self->_transform($self->_parse($string)); } sub parse_file { my ($self, $file, $layers) = @_; my $mode = defined $layers ? "<$layers" : '<:raw'; open my $fh, $mode, $file or croak "Can't open $file: $!"; my $content = do { local $/; <$fh> }; if (!defined $layers) { # if it's valid UTF-8, decode that. otherwise, assume latin 1 and leave it. eval { $content = decode('UTF-8', $content, FB_CROAK | LEAVE_SRC) }; } $self->parse_string($content); } sub _transform { my ($self, $data) = @_; my $release_class = $self->_release_class; my $entry_class = $self->_entry_class; $self->_changelog_class->new( (defined $data->{preamble} ? (preamble => $data->{preamble}) : ()), releases => [ map { my $r = $_; $release_class->new( (map { defined $r->{$_} ? ($_ => $r->{$_}) : () } qw(version line date raw_date note)), ($_->{entries} ? ( entries => [ map { _trans_entry($entry_class, $_) } @{$_->{entries}}, ], ) : () ), ) } reverse @{$data->{releases}}, ], ); } sub _trans_entry { my ($entry_class, $entry) = @_; $entry_class->new( line => $entry->{line}, text => $entry->{text}, $entry->{entries} ? ( entries => [ map { _trans_entry($entry_class, $_) } @{$entry->{entries}}, ], ) : (), ); } our $VERSION_REGEX = qr{ (?: v [0-9]+ (?: (?:\.[0-9]+ )+ (?:_[0-9]+)? )? | (?:[0-9]+)? (?:\.[0-9]+){2,} (?:_[0-9]+)? | [0-9]* \.[0-9]+ (?: _[0-9]+ )? | [0-9]+ (?: _[0-9]+ )? ) (?: -TRIAL )? }x; sub _parse { my ($self, $string) = @_; my $version_prefix = qr/version|revision/i; if (defined(my $vp = $self->version_prefix)) { $version_prefix = qr/$version_prefix|$vp/ } my $version_token = qr/$VERSION_REGEX(?:-TRIAL)?/; if (defined(my $vt = $self->version_like)) { $version_token = qr/$version_token|$vt/ } my $raw_preamble = ''; my @releases; my @indents; my $line_number = -1; while ($string =~ /((.*?)(?:\r\n?|\n|\z))/g) { my ($full_line, $line) = ($1, $2); last if !length $full_line; $line_number++; if ( $line =~ /^(?:$version_prefix\s+)?($version_token)(?:[:;.-]?\s+(.*))?$/i ) { my $version = $1; my $note = $2; my $date; my $raw_date; if (defined $note) { ($date, $raw_date, $note) = _split_date($note); } my $release = { version => $version, (defined $date ? (date => $date) : ()), (defined $raw_date ? (raw_date => $raw_date) : ()), (defined $note ? (note => $note) : ()), raw => $full_line, entries => [], line => $line_number+1, }; push @releases, $release; @indents = ($release); next; } elsif (!@indents) { $raw_preamble .= $full_line, next; } if ( $line =~ /^[-_*+~#=\s]*$/ ) { $indents[-1]{done}++ if @indents > 1; if (@indents) { $indents[-1]{raw} .= $full_line; } else { $releases[-1]{raw} .= $full_line; } next; } $line =~ s/\s+$//; $line =~ s/^(\s*)//; my $indent = 1 + length _expand_tab($1); my $change; my $done; my $nest; my $style = ''; if ( $line =~ /^\[\s*([^\[\]]*)\]$/ ) { $done = 1; $nest = 1; $change = $1; $style = '[]'; $change =~ s/\s+$//; } elsif ( $line =~ /^([-*+=#]+)\s+(.*)/ ) { $style = $1; $change = $2; } else { $change = $line; if ( defined $indents[-1]{text} && !$indents[-1]{done} && ( $indent > $#indents || ( $indent == $#indents && ( length $indents[-1]{style} || $indent == 1 ) ) ) ) { $indents[-1]{raw} .= $full_line; $indents[-1]{text} .= " $change"; next; } } my $group; my $nested; if ( !$nest && $indents[$indent]{nested} ) { $nested = $group = $indents[$indent]{nested}; } elsif ( !$nest && $indents[$indent]{nest} ) { $nested = $group = $indents[$indent]; } else { ($group) = grep {defined} reverse @indents[ 0 .. $indent - 1 ]; } my $entry = { text => $change, line => $line_number+1, done => $done, nest => $nest, nested => $nested, style => $style, raw => $full_line, }; push @{ $group->{entries} ||= [] }, $entry; if ( $indent <= $#indents ) { $#indents = $indent; } $indents[$indent] = $entry; } my $preamble; if (length $raw_preamble) { $preamble = $raw_preamble; $preamble =~ s/\A\s*\n//; $preamble =~ s/\s+\z//; $preamble =~ s/\r\n?/\n/g; } my @entries = @releases; while ( my $entry = shift @entries ) { push @entries, @{ $entry->{entries} } if $entry->{entries}; delete @{$entry}{qw(done nest nested)}; } return { ( defined $preamble ? (preamble => $preamble) : () ), raw_preamble => $raw_preamble, releases => \@releases, }; } my @months = qw( Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec ); my %months = map {; lc $months[$_] => $_ } 0 .. $#months; our ($_SHORT_MONTH) = map qr{$_}i, join '|', map quotemeta, @months; our ($_SHORT_DAY) = map qr{$_}i, join '|', map quotemeta, qw( Sun Mon Tue Wed Thu Fri Sat ); our ($_UNKNOWN_DATE) = map qr{$_}i, join '|', map quotemeta, ( 'Unknown Release Date', 'Unknown', 'Not Released', 'Development Release', 'Development', 'Developer Release', ); our $_LOCALTIME_DATE = qr{ (?: (?:$_SHORT_DAY\s+)? ($_SHORT_MONTH)\s+ | ($_SHORT_MONTH)\s+ (?:$_SHORT_DAY\s+) ) (\d{1,2})\s+ # date (?: ([\d:]+)\s+ )? # time (?: ([A-Z]+)\s+ )? # timezone (\d{4}) # year }x; our $_RFC_2822_DATE = qr{ $_SHORT_DAY,\s+ (\d{1,2})\s+ ($_SHORT_MONTH)\s+ (\d{4})\s+ (\d\d:\d\d:\d\d)\s+ ([+-])(\d{2})(\d{2}) }x; our $_DZIL_DATE = qr{ (\d{4}-\d\d-\d\d)\s+ (\d\d:\d\d(?::\d\d)?)(\s+[A-Za-z]+/[A-Za-z_-]+) }x; our $_ISO_8601_DATE = qr{ \d\d\d\d # Year (?: [-/]\d\d # -Month (?: [-/]\d\d # -Day (?: [T\s] \d\d:\d\d # Hour:Minute (?: :\d\d # :Second (?: \.\d+ )? # .Fractional_Second )? (?: Z # UTC | [+-]\d\d:\d\d # Hour:Minute TZ offset (?: :\d\d )? # :Second TZ offset )? )? )? )? }x; sub _split_date { my $note = shift; my $date; my $parsed_date; # munge date formats, save the remainder as note if (defined $note && length $note) { $note =~ s/^[^\w\s]*\s+//; $note =~ s/\s+$//; # explicitly unknown dates if ( $note =~ s{^($_UNKNOWN_DATE)}{} ) { $parsed_date = $date = $1; } # handle localtime-like timestamps elsif ( $note =~ s{^($_LOCALTIME_DATE)}{} ) { $date = $1; $parsed_date = sprintf( '%d-%02d-%02d', $7, 1+$months{lc($2 || $3)}, $4 ); if ($5) { # unfortunately ignores TZ data ($6) $parsed_date .= sprintf( 'T%sZ', $5 ); } } # RFC 2822 elsif ( $note =~ s{^($_RFC_2822_DATE)}{} ) { $date = $1; $parsed_date = sprintf( '%d-%02d-%02dT%s%s%02d:%02d', $4, 1+$months{lc $3}, $2, $5, $6, $7, $8 ); } # handle dist-zilla style, again ingoring TZ data elsif ( $note =~ s{^($_DZIL_DATE)}{} ) { $date = $1; $parsed_date = sprintf( '%sT%sZ', $2, $3 ); $note = $4 . $note; } # start with W3CDTF, ignore rest elsif ( $note =~ s{^($_ISO_8601_DATE)}{} ) { $parsed_date = $date = $1; $parsed_date =~ s{ }{T}; $parsed_date =~ s{/}{-}g; # Add UTC TZ if date ends at H:M, H:M:S or H:M:S.FS $parsed_date .= 'Z' if length($parsed_date) == 16 || length($parsed_date) == 19 || $parsed_date =~ m{\.\d+$}; } $note =~ s/^\s+//; } defined $_ && !length $_ && undef $_ for ($parsed_date, $date, $note); return ($parsed_date, $date, $note); } sub _expand_tab { my $string = "$_[0]"; $string =~ s/([^\t]*)\t/$1 . (" " x (8 - (length $1) % 8))/eg; return $string; } 1; __END__ =head1 NAME CPAN::Changes::Parser - Parse a CPAN Changelog file =head1 SYNOPSIS my $parser = CPAN::Changes::Parser->new( version_like => qr/\{\{\$NEXT\}\}/, version_prefix => qr/=head\d\s+/, ); my $changelog = $parser->parse_file('Changes', ':utf8'); my $changelog = $parser->parse_string($content); =head1 DESCRIPTION Parses a file or string into a L object. Many forms of change log are accepted. =head1 ATTRIBUTES =head2 version_like A regular expression for a token that will be accepted in place of a version number. For example, this could be set to C if the L plugin L<[NextRelease]|Dist::Zilla::Plugin::NextRelease> is managing the file. =head2 version_prefix A regular expression for a prefix that will be matched before a version number. C could be used if the change log is using Pod headings for the release headings. =head1 METHODS =head2 parse_file Parses a file into a L object. Optionally accepts a string of layers to be used when reading the file. =head2 parse_string Parses a string into a L object. =head1 AUTHORS See L for authors. =head1 COPYRIGHT AND LICENSE See L for the copyright and license. =cut CPAN-Changes-0.500005/lib/CPAN/Changes/Release.pm000644 000000 000000 00000013755 15000255733 016770 0ustar00000000 000000 package CPAN::Changes::Release; use strict; use warnings; our $VERSION = '0.500005'; $VERSION =~ tr/_//d; use Moo; with 'CPAN::Changes::HasEntries'; has version => (is => 'rw'); has date => (is => 'rw'); has note => (is => 'rw'); has line => (is => 'ro'); around BUILDARGS => sub { my ($orig, $class, @args) = @_; my $args = $class->$orig(@args); if (my $changes = delete $args->{changes}) { if ($args->{entries}) { die "Mixing back-compat interface with new interface not allowed"; } $args->{entries} = []; for my $group (sort keys %$changes) { my @entries = @{$changes->{$group}}; if ($group eq '') { push @{$args->{entries}}, @entries; } else { my $entry = CPAN::Changes::Entry->new( text => $group, entries => \@entries, ); push @{$args->{entries}}, $entry; } } } $args; }; sub serialize { my ($self, %args) = @_; my $indents = $args{indents} || ['', ' ', '']; my $styles = $args{styles} || ['', '[]']; my $width = $args{width} || 75; my $out = $indents->[0] . $styles->[0] . $self->version; if ($self->date || $self->note) { $out .= ' ' . join ' ', (grep { defined } $self->date, $self->note); } $out . "\n"; } around serialize => sub { my ($orig, $self, %args) = @_; $args{indents} ||= ['', ' ', '']; $args{styles} ||= ['', '[]']; $args{width} ||= 75; if (my $sort = $args{group_sort}) { my $entries = $self->_sorted_groups($sort); $self = $self->clone(entries => $entries); } $self->$orig(%args); }; sub changes { my ($self, $group) = @_; if (defined $group) { return $self->get_group($group)->changes; } else { return { map { $_ => $self->get_group($_)->changes } $self->groups }; } } sub add_changes { my $self = shift; my %opts; if (@_ > 1 && ref $_[0] eq 'HASH') { %opts = %{ +shift }; } $self->get_group($opts{group} || '')->add_changes(@_); } sub set_changes { my $self = shift; my %opts; if (@_ > 1 && ref $_[0] eq 'HASH') { %opts = %{ +shift }; } $self->get_group($opts{group} || '')->set_changes(@_); } sub clear_changes { $_[0]->entries([]); } sub groups { my ($self, %args) = @_; my $sort = $args{sort} || sub { sort @_ }; my %groups; for my $entry ( @{ $self->entries } ) { if ($entry->has_entries) { $groups{$entry->text}++; } else { $groups{''}++; } } return $sort->(keys %groups); } sub add_group { my ($self, @groups) = @_; push @{ $self->entries }, map { CPAN::Changes::Entry->new(text => $_) } @groups; } sub delete_group { my ($self, @groups) = @_; my @entries = @{ $self->entries }; for my $name (@groups) { @entries = grep { $_->text ne $name } @entries; } $self->entries(\@entries); } # this is nonsense, but try to emulate. if nothing has entries, then there # are no "groups", so leave everything. sub delete_empty_groups { my ($self) = @_; my @entries = grep { $_->has_entries } @{ $self->entries }; return if !@entries; $self->entries(\@entries); } sub get_group { my ($self, $name) = @_; require CPAN::Changes::Group; if (defined $name && length $name) { my ($entry) = grep { $_->text eq $name } @{ $self->entries }; $entry ||= $self->add_entry($name); return CPAN::Changes::Group->new(_entry => $entry); } else { return CPAN::Changes::Group->new(_entry => $self); } } sub attach_group { my ($self, $group) = @_; my $entry = $group->_maybe_entry; my $text = $entry->text; my $entries = $self->entries; if ($text eq '') { $self->add_entry( @{ $entry->entries } ); } elsif (my ($found) = grep { $_->text eq $text } @$entries) { $found->add_entry( @{ $entry->entries } ); } else { $self->add_entry( $entry ); } } sub group_values { my ($self, @groups) = @_; return map { $self->get_group($_) } $self->groups(@groups); } sub _sorted_groups { my ($self, $sort_function) = @_; my @groups = grep { $_->has_entries } @{ $self->entries }; my @bare = grep { !$_->has_entries } @{ $self->entries }; return \@bare if !@groups; my %entries = map { $_->text => [$_] } @groups; $entries{''} = \@bare if @bare; my @sorted = $sort_function->(keys %entries); return [ map { @{ $entries{$_} || [] } } @sorted ]; } 1; __END__ =head1 NAME CPAN::Changes::Release - A release in a CPAN Changes file =head1 SYNOPSIS my $release = CPAN::Changes::Release->new( version => '0.01', date => '2015-07-20', ); $release->add_entry('This is a change'); =head1 DESCRIPTION A changelog is made up of one or more releases. This object provides access to all of the key data that embodies a release including the version number, date of release, and all of the changelog information lines. =head1 ATTRIBUTES =head2 version The version number of the release. =head2 date The date for the release. =head2 note The note attached to the release. =head2 entries An array ref of L in the release. =head2 line The line number that the release starts at. =head1 METHODS =head2 serialize Returns the changes entry for the release in string form. =head2 clone Returns a new release object with the same data. Can be given any attributes to set them differently in the new object. =head2 has_entries Returns true if there are changes entries in this release. =head2 find_entry Accepts a string or a regex, returns a matching entry object. =head2 add_entry Adds a changes entry. Accepts a changes entry object or a string. =head2 remove_entry Given a string or a changes entry object, removes the entry from the release. =head1 LEGACY METHODS =head2 changes =head2 add_changes =head2 set_changes =head2 clear_changes =head2 groups =head2 add_group =head2 delete_group =head2 delete_empty_groups =head2 get_group =head2 attach_group =head2 group_values =head1 SEE ALSO =over 4 =item * L =back =head1 AUTHORS See L for authors. =head1 COPYRIGHT AND LICENSE See L for the copyright and license. =cut CPAN-Changes-0.500005/lib/CPAN/Changes/HasEntries.pm000644 000000 000000 00000004046 15000255733 017446 0ustar00000000 000000 package CPAN::Changes::HasEntries; use strict; use warnings; our $VERSION = '0.500005'; $VERSION =~ tr/_//d; use Sub::Quote qw(qsub); use Types::Standard qw(ArrayRef InstanceOf Str); use Moo::Role; my $entry_type = (InstanceOf['CPAN::Changes::Entry'])->plus_coercions( Str ,=> qsub q{ CPAN::Changes::Entry->new(text => $_[0]) }, ); has entries => ( is => 'rw', default => sub { [] }, isa => ArrayRef[$entry_type], coerce => 1, ); sub clone { my $self = shift; my %attrs = %$self; $attrs{entries} = [ map $_->clone, @{$self->entries} ]; (ref $self)->new(%attrs, @_); } sub has_entries { my $self = shift; !!($self->entries && @{$self->entries}); } sub find_entry { my ($self, $find) = @_; return undef unless $self->has_entries; if (ref $find ne 'Regexp') { $find = qr/\A\Q$find\E\z/; } my ($entry) = grep { $_->text =~ $find } @{ $self->entries }; return $entry; } around serialize => sub { my ($orig, $self, %args) = @_; my $indents = $args{indents} || []; my $styles = $args{styles} || []; my $width = $args{width} || 75; $indents = [ @{$indents}[1 .. $#$indents], ' '], $styles = [ @{$styles}[1 .. $#$styles], '-'], my $out = $self->$orig(@_); my $entries = $self->entries || []; for my $entry ( @$entries ) { my $sub = $entry->serialize( indents => $indents, styles => $styles, width => $width - length $indents->[0], ); $sub =~ s/^(.)/$indents->[0]$1/mg; $sub .= "\n" if $entry->has_entries; $out .= $sub; } $out =~ s/\n\n+\z/\n/; return $out; }; sub add_entry { my ($self, @entries) = @_; $_ = $entry_type->coerce($_) for @entries; push @{ $self->entries }, @entries; return wantarray ? @entries : $entries[-1]; } sub remove_entry { my ($self, $entry) = @_; $entry = ref $entry && $entry->isa('CPAN::Changes::Entry') ? $entry : $self->find_entry($entry); return unless $entry; my @entries = grep { $_ != $entry } @{ $self->entries }; $self->entries(\@entries); } require CPAN::Changes::Entry; 1; __END__ =for Pod::Coverage .* CPAN-Changes-0.500005/lib/CPAN/Changes/Entry.pm000644 000000 000000 00000004621 15000255733 016501 0ustar00000000 000000 package CPAN::Changes::Entry; use strict; use warnings; our $VERSION = '0.500005'; $VERSION =~ tr/_//d; use Moo; with 'CPAN::Changes::HasEntries'; has text => (is => 'ro'); has line => (is => 'ro'); sub serialize { my ($self, %args) = @_; my $indents = $args{indents} || []; my $styles = $args{styles} || []; my $width = $args{width} || 75; my $indent = $indents->[0]; my $style = $styles->[0]; my $text = $self->text; if (length($style) < 2) { my $space = ' ' x (2 * length $style); $width -= length $space; $text =~ s/\G[ \t]*([^\n]{1,$width}|[^ \t\r\n]+)([ \t\r\n]+|$)/$1\n/mg; $text =~ s/[ \t]+\n/\n/g; $text =~ s/^(.)/$space$1/mg; substr $text, 0, length($style), $style; } # can't wrap this style elsif (length($style) % 2 == 0) { my $length = length($style) / 2; $text = substr($style, 0, $length) . $text . substr($style, $length) . "\n"; } else { die "invalid changelog entry style '$style'"; } return $text; } 1; __END__ =head1 NAME CPAN::Changes::Entry - A change entry in a CPAN Changes file =head1 SYNOPSIS my $entry = CPAN::Changes::Entry->new( text => 'A change entry' entries => [ 'A sub-entry', 'Another sub-entry', ], ); =head1 DESCRIPTION A changelog is made up of one or more releases. This object provides access to all of the key data that embodies a release including the version number, date of release, and all of the changelog information lines. =head1 ATTRIBUTES =head2 text The text of the change entry. =head2 entries An array ref of sub-entries under this change entry. =head2 line The line number that the change entry starts at. =head1 METHODS =head2 serialize Returns the changes entry in string form. =head2 clone Returns a new release object with the same data. Can be given any attributes to set them differently in the new object. =head2 has_entries Returns true if there are sub-entries for this entry. =head2 find_entry Accepts a string or a regex, returns a matching sub-entry object. =head2 add_entry Adds a changes sub-entry. Accepts a changes sub-entry object or a string. =head2 remove_entry Given a string or a changes entry object, removes the entry from the release. =head1 SEE ALSO =over 4 =item * L =back =head1 AUTHORS See L for authors. =head1 COPYRIGHT AND LICENSE See L for the copyright and license. =cut CPAN-Changes-0.500005/lib/CPAN/Changes/Group.pm000644 000000 000000 00000004632 15000255733 016476 0ustar00000000 000000 package CPAN::Changes::Group; use strict; use warnings; our $VERSION = '0.500005'; $VERSION =~ tr/_//d; use Sub::Quote qw(qsub); use CPAN::Changes::Entry; use Moo; has _entry => ( is => 'rw', handles => { is_empty => 'has_entries', add_changes => 'add_entry', }, lazy => 1, default => qsub q{ CPAN::Changes::Entry->new(text => '') }, predicate => 1, ); sub name { my $self = shift; my $entry = $self->_entry; return $entry->can('text') ? $entry->text : ''; } sub _maybe_entry { my $self = shift; if ($self->can('changes') == \&changes) { return $self->_entry; } else { return CPAN::Changes::Entry->new( text => $self->name, entries => $self->changes, ); } } around BUILDARGS => sub { my ($orig, $self, @args) = @_; my $args = $self->$orig(@args); if (!$args->{_entry}) { $args->{_entry} = CPAN::Changes::Entry->new({ text => $args->{name} || '', entries => $args->{changes} || [], }); } $args; }; sub changes { my ($self) = @_; return [] unless $self->_has_entry; [ map { $_->text } @{ $self->_entry->entries } ]; } sub set_changes { my ($self, @changes) = @_; $self->clear_changes; my $entry = $self->_entry; for my $change (@changes) { $entry->add_entry($change); } return; } sub clear_changes { my ($self) = @_; my $entry = $self->_entry; @{$entry->entries} = (); $self->changes; } sub serialize { my ($self, %args) = @_; $args{indents} ||= [' ', ' ']; $args{styles} ||= ['[]', '-']; $self->_maybe_entry->serialize(%args); } 1; __END__ =head1 NAME CPAN::Changes::Group - An entry group in a CPAN Changes file =head1 SYNOPSIS my $group = CPAN::Changes::Group->new( name => 'A change group', changes => [ 'A change entry', 'Another change entry', ], ); =head1 DESCRIPTION Represents a group of change entries on a changelog release. This is a legacy interface for the and its use is discouraged. Behind the scenes, this works as a proxy for the real L objects. =head1 ATTRIBUTES =head2 name The name of the change group. =head1 METHODS =head2 is_empty =head2 add_changes =head2 changes =head2 set_changes =head2 clear_changes =head2 serialize =head1 SEE ALSO =over 4 =item * L =back =head1 AUTHORS See L for authors. =head1 COPYRIGHT AND LICENSE See L for the copyright and license. =cut CPAN-Changes-0.500005/lib/Test/CPAN/000755 000000 000000 00000000000 15000255764 014412 5ustar00000000 000000 CPAN-Changes-0.500005/lib/Test/CPAN/Changes.pm000644 000000 000000 00000010503 15000255733 016313 0ustar00000000 000000 package Test::CPAN::Changes; use strict; use warnings; use CPAN::Changes::Parser; use Test::Builder; use version (); our $VERSION = '0.500005'; $VERSION =~ tr/_//d; use Exporter; BEGIN { *import = \&Exporter::import }; our @EXPORT = qw(changes_ok changes_file_ok); our $Test = Test::Builder->new; our $Parser = CPAN::Changes::Parser->new( _release_class => 'Test::CPAN::Changes::Release', ); sub changes_ok { local $Test::Builder::Level = $Test::Builder::Level + 1; my ($arg) = @_; $Test->plan( tests => ( $arg && defined $arg->{version} ? 6 : 4 ) ); return changes_file_ok( undef, @_ ); } { package Test::CPAN::Changes::Release; use Moo; extends 'CPAN::Changes::Release'; has raw_date => (is => 'ro'); } sub changes_file_ok { my ( $file, $arg ) = @_; $file ||= 'Changes'; $arg ||= {}; local $Test::Builder::Level = $Test::Builder::Level + 1; my $tests = defined $arg->{version} ? 6 : 4; my $ok = 1; my $changes; $Test->ok( !!eval { $changes = $Parser->parse_file( $file ); 1 }, "$file is loadable" ) or do { $Test->diag("Error: $@"); $Test->skip("can't test unparsable change log") for 2 .. $tests; return !1; }; my @releases = map $_->[0], sort { $a->[1] <=> $b->[1] } map [$_, $_->line], $changes->releases; $Test->ok( !!@releases, "$file contains at least one release" ) or $ok = 0; my $date_err; for my $release ( @releases ) { if ( !defined $release->date || $release->date eq '' ) { $date_err = 'No date for version '.$release->version.' (line '.$release->line.')'; last; } my $d = $release->raw_date; if ( $d !~ m{^${CPAN::Changes::Parser::_ISO_8601_DATE}$} && $d !~ m{^(${CPAN::Changes::Parser::_UNKNOWN_DATE})$} ) { $Test->note( 'Date "' . $d . '" is not in the recommended W3CDTF format, should be "'.$release->date.'" (line '.$release->line.')' ); } } $Test->ok( !defined $date_err, "$file contains all valid release dates" ) or $Test->diag(' ERR: '.$date_err), $ok = 0; my $version_err; for my $release ( @releases ) { # strip off -TRIAL before testing (my $version = $release->version) =~ s/-TRIAL$//; my $parsed = eval { use warnings FATAL => 'all'; version->new($version); }; if ( !defined $parsed ) { $version_err = $release->version . ' (line '.$release->line.')'; last; } } $Test->ok( !defined $version_err, "$file contains all valid release versions" ) or $Test->diag(' ERR: '.$version_err), $ok = 0; if ( defined $arg->{version} ) { my $v = $arg->{version}; my $release = $changes->release( $v ); if ($Test->ok( !!$release, "$file has an entry for version $v" )) { my $entries = $release->entries; $Test->ok( !!@$entries, "$file version $v has content") or $ok = 0; } else { $Test->skip("can't check for entries in nonexistant version"); $ok = 0; }; } return !!$ok; } 1; __END__ =head1 NAME Test::CPAN::Changes - Validation of the Changes file in a CPAN distribution =head1 SYNOPSIS # in xt/author/cpan-changes.t use Test::More; use Test::CPAN::Changes; changes_ok; # checking for specific version use My::Module; use Test::More; use Test::CPAN::Changes; changes_ok({ version => My::Module->VERSION }); =head1 DESCRIPTION This module allows CPAN authors to write automated tests to ensure their changelogs match the specification. =head1 SUBROUTINES =head2 changes_ok( \%args ) Simple wrapper around C. Declares a test plan, and uses the default filename of C. =head2 changes_file_ok( $filename, \%arg ) Checks the contents of the changes file against the specification. No plan is declared and if the filename is undefined, C is used. Four tests are performed. The file must be parsable, must have releases in it, and the versions and dates listed must be valid. C<%arg> may include a I entry, in which case two additional tests are performed. The entry for that version must exist and have content. This is useful to ensure that the version currently being released has documented changes. =head1 SEE ALSO =over 4 =item * L =item * L =back =head1 AUTHORS See L for authors. =head1 COPYRIGHT AND LICENSE See L for the copyright and license. =cut CPAN-Changes-0.500005/xt/author/000755 000000 000000 00000000000 15000255764 014141 5ustar00000000 000000 CPAN-Changes-0.500005/xt/author/pod.t000644 000000 000000 00000000070 14472651645 015117 0ustar00000000 000000 use Test::More; use Test::Pod 1.00; all_pod_files_ok(); CPAN-Changes-0.500005/xt/author/pod_coverage.t000644 000000 000000 00000000122 14565151362 016762 0ustar00000000 000000 use Test::Pod::Coverage::TrustMe; all_pod_coverage_ok($_, { require_link => 1 }); CPAN-Changes-0.500005/t/test-cpan-changes.t000644 000000 000000 00000010773 14472651645 016162 0ustar00000000 000000 use Test::More; use Test::CPAN::Changes; { package FakeBuilder; sub new { my $class = shift; return bless { called => [], }, $class; } sub AUTOLOAD { my ($self, @args) = @_; my $method = our $AUTOLOAD; $method =~ s/.*:://; push @{$self->{called}}, [$method, @args]; return $args[0]; } sub DESTROY {} } sub called { no warnings 'once'; my $tester = local $Test::CPAN::Changes::Test = FakeBuilder->new; local $Test::CPAN::Changes::Parser = CPAN::Changes::Parser->new( _release_class => 'Test::CPAN::Changes::Release', version_like => qr/\{\{ \$NEXT \}\}/ ); changes_file_ok(@_); return $tester->{called}; } is_deeply called('corpus/test/valid.changes'), [ [ ok => 1, 'corpus/test/valid.changes is loadable' ], [ ok => 1, 'corpus/test/valid.changes contains at least one release' ], [ ok => 1, 'corpus/test/valid.changes contains all valid release dates' ], [ ok => 1, 'corpus/test/valid.changes contains all valid release versions' ], ], 'fully valid file tests properly'; is_deeply called('corpus/test/no_releases.changes'), [ [ ok => 1, 'corpus/test/no_releases.changes is loadable' ], [ ok => !1, 'corpus/test/no_releases.changes contains at least one release' ], [ ok => 1, 'corpus/test/no_releases.changes contains all valid release dates' ], [ ok => 1, 'corpus/test/no_releases.changes contains all valid release versions' ], ], 'correct failure for no releases'; is_deeply called('corpus/test/ugly_dates.changes'), [ [ ok => 1, 'corpus/test/ugly_dates.changes is loadable' ], [ ok => 1, 'corpus/test/ugly_dates.changes contains at least one release' ], [ note => 'Date "Mon Jul 20 12:26:55 2015" is not in the recommended W3CDTF format, should be "2015-07-20T12:26:55Z" (line 3)'], [ ok => 1, 'corpus/test/ugly_dates.changes contains all valid release dates' ], [ ok => 1, 'corpus/test/ugly_dates.changes contains all valid release versions' ], ], 'correct note for non-recommended dates'; is_deeply called('corpus/test/bad_versions.changes'), [ [ ok => 1, 'corpus/test/bad_versions.changes is loadable' ], [ ok => 1, 'corpus/test/bad_versions.changes contains at least one release' ], [ ok => 1, 'corpus/test/bad_versions.changes contains all valid release dates' ], [ ok => !1, 'corpus/test/bad_versions.changes contains all valid release versions' ], [ diag => ' ERR: {{ $NEXT }} (line 3)'] ], 'correct failure for bad versions'; is_deeply called('corpus/test/bad_dates.changes'), [ [ ok => 1, 'corpus/test/bad_dates.changes is loadable' ], [ ok => 1, 'corpus/test/bad_dates.changes contains at least one release' ], [ ok => !1, 'corpus/test/bad_dates.changes contains all valid release dates' ], [ diag => ' ERR: No date for version 0.01 (line 3)' ], [ ok => 1, 'corpus/test/bad_dates.changes contains all valid release versions' ], ], 'correct failure for bad dates'; is_deeply called('corpus/test/valid.changes', { version => 0.01 }), [ [ ok => 1, 'corpus/test/valid.changes is loadable' ], [ ok => 1, 'corpus/test/valid.changes contains at least one release' ], [ ok => 1, 'corpus/test/valid.changes contains all valid release dates' ], [ ok => 1, 'corpus/test/valid.changes contains all valid release versions' ], [ ok => 1, 'corpus/test/valid.changes has an entry for version 0.01'], [ ok => 1, 'corpus/test/valid.changes version 0.01 has content'], ], 'fully valid file tests properly with version'; is_deeply called('corpus/test/valid.changes', { version => 0.02 }), [ [ ok => 1, 'corpus/test/valid.changes is loadable' ], [ ok => 1, 'corpus/test/valid.changes contains at least one release' ], [ ok => 1, 'corpus/test/valid.changes contains all valid release dates' ], [ ok => 1, 'corpus/test/valid.changes contains all valid release versions' ], [ ok => !1, 'corpus/test/valid.changes has an entry for version 0.02'], [ skip => 'can\'t check for entries in nonexistant version' ], ], 'correct failure for missing release'; is_deeply called('corpus/test/empty_release.changes', { version => 0.01 }), [ [ ok => 1, 'corpus/test/empty_release.changes is loadable' ], [ ok => 1, 'corpus/test/empty_release.changes contains at least one release' ], [ ok => 1, 'corpus/test/empty_release.changes contains all valid release dates' ], [ ok => 1, 'corpus/test/empty_release.changes contains all valid release versions' ], [ ok => 1, 'corpus/test/empty_release.changes has an entry for version 0.01'], [ ok => !1, 'corpus/test/empty_release.changes version 0.01 has content'], ], 'correct failure for empty release'; done_testing; CPAN-Changes-0.500005/t/corpus.t000644 000000 000000 00000002741 14614765575 014173 0ustar00000000 000000 use strict; use warnings; use Test::More; use constant HAVE_DIFF => eval { require Test::Differences; Test::Differences::unified_diff(); 1; }; use CPAN::Changes::Parser; use Getopt::Long qw(:config gnu_getopt no_auto_abbrev no_ignore_case); use Data::Dumper (); use File::Spec; sub _dump { local $Data::Dumper::Indent = 1; local $Data::Dumper::Terse = 1; local $Data::Dumper::Sortkeys = 1; local $Data::Dumper::Useqq = 1; Data::Dumper::Dumper(@_); } sub _eq { if (HAVE_DIFF) { Test::Differences::eq_or_diff(_dump($_[0]), _dump($_[1]), $_[2], { context => 5 }); } elsif (ref $_[0] && ref $_[1]) { goto &Test::More::is_deeply; } else { goto &Test::More::is; } } GetOptions( 'update' => \(my $update), ) or die "Bad command line arguments.\n"; my $parser = CPAN::Changes::Parser->new(version_like => qr/\{\{\s*\$NEXT\s*\}\}/); for my $log (@ARGV ? @ARGV : glob('corpus/dists/*.changes')) { my $content = do { open my $fh, '<:raw', $log or die "can't read $log: $!"; local $/; <$fh>; }; my $parsed_file = $log; $parsed_file =~ s/\.changes$/.parsed/; my $parsed = $parser->_parse($content); if ($update) { open my $fh, '>', $parsed_file or die "can't write $parsed_file: $!"; print { $fh } _dump($parsed); close $fh; pass "updated $parsed_file"; } else { my $wanted = do File::Spec->rel2abs($parsed_file) or die $@||$!; _eq $parsed, $wanted, "$log parsed into expected form"; } } done_testing; CPAN-Changes-0.500005/t/parse.t000644 000000 000000 00000001614 14472651645 013762 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes::Parser; my $parser = CPAN::Changes::Parser->new; my $changes = $parser->parse_file('corpus/dists/DBIx-Class.changes'); is $changes->preamble, 'Revision history for DBIx::Class'; is scalar @{[ $changes->releases ]}, 114; my $release = $changes->find_release(0.08260); ok $release; is_deeply [ map { $_->text } @{ $release->entries } ], [ 'New Features', 'Notable Changes and Deprecations', 'Fixes', 'Misc', ]; $release = $changes->find_release(0.08250); my $entry = $release ->find_entry('New Features / Changes') ->find_entry(qr/^Rewrite from scratch the result/); ok $entry; is scalar @{ $entry->entries }, 7; ok $changes->find_release('v0.82.600'); ok $changes->find_release('0.82.600'); ok $changes->find_release('0.82.600'); ok $changes->find_release(0.08099_08); ok $changes->find_release("0.08099_08"); done_testing; CPAN-Changes-0.500005/t/legacy/000755 000000 000000 00000000000 15000255764 013713 5ustar00000000 000000 CPAN-Changes-0.500005/t/group.t000644 000000 000000 00000001531 14565150643 013775 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; use CPAN::Changes::Parser; my $parser = CPAN::Changes::Parser->new; { my $changes = $parser->parse_file('corpus/dists/Module-Rename.changes'); my $release = $changes->find_release('0.04'); my @groups = $release->group_values; is scalar @groups, 1, 'one group found when no groups present'; is eval { $groups[0]->name }, '', 'group has empty name'; } { my $changes = CPAN::Changes->new; $changes->add_release({version => '1.0'}); my $release = $changes->release('1.0'); my $entry = $release->add_entry('welp'); my $sub_entry = $entry->add_entry('welp'); my ($group) = ($release->group_values); $group->set_changes( 'guff', 'blorf', ); is join(',', map $_->text, @{$entry->entries}), 'guff,blorf', 'set_changes properly sets entries'; } done_testing; CPAN-Changes-0.500005/t/dates.t000644 000000 000000 00000000702 14472651645 013745 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes::Parser; my $parser = CPAN::Changes::Parser->new; my $changes = $parser->parse_file('corpus/test/date_formats.changes'); for my $release ($changes->releases) { my $date = $release->date; my $note = $release->note; my ($want) = $note =~ /WANT:(.*)/; $want = undef if $want eq 'undef'; is $date, $want, 'correct date for ' . $release->version; } done_testing; CPAN-Changes-0.500005/t/raw.t000644 000000 000000 00000001623 14614765353 013441 0ustar00000000 000000 use strict; use warnings; use Test::More; use constant HAVE_DIFF => eval { require Test::Differences; Test::Differences::unified_diff(); 1; }; use CPAN::Changes::Parser; sub _eq { if (HAVE_DIFF) { Test::Differences::eq_or_diff(@_[0..2], { context => 5 }); } else { goto &Test::More::is; } } my $parser = CPAN::Changes::Parser->new(version_like => qr/\{\{\s*\$NEXT\s*\}\}/); for my $log (@ARGV ? @ARGV : glob('corpus/dists/*.changes')) { my $content = do { open my $fh, '<:raw', $log or die "can't read $log: $!"; local $/; <$fh>; }; my $parsed = $parser->_parse($content); my $raw = $parsed->{raw_preamble}; my @entries = @{ $parsed->{releases} || [] }; while (my $entry = shift @entries) { $raw .= $entry->{raw}; unshift @entries, @{ $entry->{entries} || [] }; } _eq $raw, $content, "raw content properly preserved for $log"; } done_testing; CPAN-Changes-0.500005/t/wrap_length_defaults.t000644 000000 000000 00000003247 14472651645 017055 0ustar00000000 000000 use strict; use warnings; use Test::More; # ABSTRACT: Ensure wrap lengths are expected. use CPAN::Changes; # Text::Wrap has a default columns= value of 76 # But in practice, this means a string length of 75, because Text::Wrap *includes* \n in its string # length calculation. Or its an off-by-one error somewhere. my $limit = 75; # There are a lot of steps here because it turns out, Text::Wrap is hateful # and unclear. # Offsets do not include trailing \n like vim does. my $source = <<'EOF'; 0.1.2 - 2015-06-21 - nowrap x:68 characters long potato salmon farm test seagull xxxxx - nowrap x:72 characters long potato salmon farm test elephant xxxxxxxx - wrap x:73 characters long potato salmon farm test elephant xxxxxxxxxxx - wrap x:74 characters long potato salmon farm test elephant xxxxxxxxxxxx - wrap x:75 characters long potato salmon farm test elephant xxxxxxxxxxxxx - wrap x:76 characters long potato salmon farm test mammoth elephant xxxxxx - wrap x:77 characters long potato salmon farm test mammoth elephant xxxxxxx - wrap x:78 characters long potato salmon farm test mammoth elephant xxxxxxxx - wrap x:80 characters long potato salmon farm test mammoth elephant xxxxxxxxxx EOF my $reflow = CPAN::Changes->load_string($source)->serialize(); my @lines = split /\n/, $reflow; note explain \@lines; my $lineno = 0; for my $line ( @lines ) { $lineno++; my ( $wrap, $wraplength ) = $line =~ /\A\s*-\s*(nowrap|wrap)\s+x:(\d+)\s+/; next unless defined $wrap; # Skip the wrapped tail of each line next if cmp_ok( length $line, '<=', $limit, "Line $lineno expected <= wrap limit $limit" ); diag "Wrapped Line is: \'$line\'"; } done_testing; CPAN-Changes-0.500005/t/add-release.t000644 000000 000000 00000000710 14472651645 015012 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->new; $changes->add_release({ version => 1, note => 1 }); $changes->add_release({ version => 3, note => 2 }); $changes->add_release({ version => 2, note => 3 }); $changes->add_release({ version => 4, note => 4 }); $changes->add_release({ version => 3, note => 5 }); my @order = map { $_->note } $changes->releases; is_deeply \@order, [ 1, 5, 3, 4 ]; done_testing; CPAN-Changes-0.500005/t/attach_group_nodup.t000644 000000 000000 00000001105 14472651645 016530 0ustar00000000 000000 use strict; use warnings; use Test::More; # ABSTRACT: Ensure duplicates are not created with the same group name. use CPAN::Changes::Release; use CPAN::Changes::Group; my $group = CPAN::Changes::Group->new( name => 'GroupName' ); $group->add_changes("This is a test"); my $dup = CPAN::Changes::Group->new( name => 'GroupName' ); $group->add_changes("This is also a test"); my $release = CPAN::Changes::Release->new(); $release->attach_group($group); $release->attach_group($dup); my @groups = $release->groups; is( scalar @groups, 1, 'Only 1 group added' ); done_testing; CPAN-Changes-0.500005/t/legacy/read_no-leading-space-for-change.t000644 000000 000000 00000001476 14472651645 022232 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load( 'corpus/test/legacy/no-leading-space-for-change.changes' ); isa_ok( $changes, 'CPAN::Changes' ); is( $changes->preamble, '', 'no preamble' ); my @releases = $changes->releases; is( scalar @releases, 1, 'has 1 release' ); isa_ok( $releases[ 0 ], 'CPAN::Changes::Release' ); is( $releases[ 0 ]->version, '0.01', 'version' ); is( $releases[ 0 ]->date, '2010-06-16', 'date' ); is_deeply( $releases[ 0 ]->changes, { '' => [ "Initial release This line is part of the first" ] }, 'full changes' ); is_deeply( [ $releases[ 0 ]->groups ], [ '' ], 'only the main group' ); is_deeply( $releases[ 0 ]->changes( '' ), [ "Initial release This line is part of the first" ], 'one change line' ); done_testing; CPAN-Changes-0.500005/t/legacy/valid_dates.t000644 000000 000000 00000000616 14472651645 016374 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my @dates = ( '2000', '2000-01', '2000-01-01', '2000-01-01T12:00', '2000-01-01T12:00Z', '2000-01-01T12:00+04:00', '2000-01-01T12:00+04:00:00', '2000-01-01 12:00', # optional "T" ); for my $date ( @dates ) { ok( $date =~ m[^${CPAN::Changes::W3CDTF_REGEX}$], "Valid Date: $date" ); } done_testing; CPAN-Changes-0.500005/t/legacy/rt90605.t000644 000000 000000 00000000723 14472651645 015145 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $a = CPAN::Changes->new(); my $b = CPAN::Changes->new(); my $params = { version => '1.0'}; $a->add_release( $params ); $b->add_release( $params ); my ( @changes ) = ( 'hello' ); $a->release( '1.0' )->add_changes( @changes ); is_deeply( $a->release( '1.0' )->changes, { '' => [ 'hello' ] }, 'changes on "A"' ); is_deeply( $b->release( '1.0' )->changes, { }, 'no changes on "B"' ); done_testing; CPAN-Changes-0.500005/t/legacy/read_preamble.t000644 000000 000000 00000002307 14472651645 016676 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; { my $changes = CPAN::Changes->load( 'corpus/test/legacy/preamble.changes' ); isa_ok( $changes, 'CPAN::Changes' ); is( $changes->preamble, 'Revision history for perl module Foo::Bar', 'preamble' ); check_releases( $changes ); } { my $changes = CPAN::Changes->load( 'corpus/test/legacy/long_preamble.changes' ); isa_ok( $changes, 'CPAN::Changes' ); is( $changes->preamble, 'Revision history for perl module Foo::Bar Yep.', 'preamble' ); check_releases( $changes ); } sub check_releases { my $changes = shift; my @releases = $changes->releases; is( scalar @releases, 1, 'has 1 release' ); isa_ok( $releases[ 0 ], 'CPAN::Changes::Release' ); is( $releases[ 0 ]->version, '0.01', 'version' ); is( $releases[ 0 ]->date, '2010-06-16', 'date' ); is_deeply( $releases[ 0 ]->changes, { '' => [ 'Initial release' ] }, 'full changes' ); is_deeply( [ $releases[ 0 ]->groups ], [ '' ], 'only the main group' ); is_deeply( $releases[ 0 ]->changes( '' ), [ 'Initial release' ], 'one change line' ); } done_testing; CPAN-Changes-0.500005/t/legacy/read_space-before-date.t000644 000000 000000 00000002240 14472651645 020351 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load( 'corpus/test/legacy/space-before-date.changes' ); isa_ok( $changes, 'CPAN::Changes' ); is( $changes->preamble, '', 'no preamble' ); my @releases = $changes->releases; is( scalar @releases, 2, 'has 2 release' ); isa_ok( $releases[ 0 ], 'CPAN::Changes::Release' ); is( $releases[ 0 ]->version, '0.01', 'version' ); is( $releases[ 0 ]->date, '2010-06-16', 'date' ); is_deeply( $releases[ 0 ]->changes, { '' => [ 'Initial release' ] }, 'full changes' ); is_deeply( [ $releases[ 0 ]->groups ], [ '' ], 'only the main group' ); is_deeply( $releases[ 0 ]->changes( '' ), [ 'Initial release' ], 'one change line' ); isa_ok( $releases[ 1 ], 'CPAN::Changes::Release' ); is( $releases[ 1 ]->version, '0.02', 'version' ); is( $releases[ 1 ]->date, '2010-06-17', 'date' ); is_deeply( $releases[ 1 ]->changes, { '' => [ 'Testing tabs' ] }, 'full changes' ); is_deeply( [ $releases[ 1 ]->groups ], [ '' ], 'only the main group' ); is_deeply( $releases[ 1 ]->changes( '' ), [ 'Testing tabs' ], 'one change line' ); done_testing; CPAN-Changes-0.500005/t/legacy/delete_empty_groups.t000644 000000 000000 00000001535 14516473504 020170 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; subtest basic => sub { plan tests => 2; my $changes = CPAN::Changes->load_string(<<'END_CHANGES'); 0.2 2012-02-01 [D] [E] - Yadah 0.1 2011-01-01 [A] - Stuff [B] [C] - Blah END_CHANGES $changes->delete_empty_groups; is_deeply( [ sort( ($changes->releases)[0]->groups ) ], [ qw/ A C / ] ); is_deeply( [ sort( ($changes->releases)[1]->groups ) ], [ 'E' ] ); }; subtest mixed => sub { plan tests => 1; my $changes = CPAN::Changes->load_string(<<'END_CHANGES'); Revision history for {{$dist->name}} 0.2.0 [BUGS FIXES] - A - B 0.1.0 2012-03-19 - C END_CHANGES $changes->delete_empty_groups; is_deeply( [ sort( ($changes->releases)[0]->changes ) ], [ { '' => [ 'C' ], } ] ); }; done_testing; CPAN-Changes-0.500005/t/legacy/read_encoded.t000644 000000 000000 00000001615 14472651645 016511 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; for my $file ( 'corpus/test/legacy/utf8.changes', 'corpus/test/legacy/latin1.changes' ) { my $changes = CPAN::Changes->load( $file ); isa_ok( $changes, 'CPAN::Changes' ); is( $changes->preamble, '', 'no preamble' ); my @releases = $changes->releases; is( scalar @releases, 1, 'has 1 release' ); isa_ok( $releases[ 0 ], 'CPAN::Changes::Release' ); is( $releases[ 0 ]->version, '0.01', 'version' ); is( $releases[ 0 ]->date, '2010-06-16', 'date' ); is_deeply( $releases[ 0 ]->changes, { '' => [ "change made by k\x{00E4}the" ] }, 'full changes' ); is_deeply( [ $releases[ 0 ]->groups ], [ '' ], 'only the main group' ); is_deeply( $releases[ 0 ]->changes( '' ), [ "change made by k\x{00E4}the" ], 'one change line' ); } done_testing; CPAN-Changes-0.500005/t/legacy/read_multiple_releases.t000644 000000 000000 00000002237 14472651645 020627 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load( 'corpus/test/legacy/multiple_releases.changes' ); isa_ok( $changes, 'CPAN::Changes' ); is( $changes->preamble, '', 'no preamble' ); my @releases = $changes->releases; is( scalar @releases, 2, 'has 2 releases' ); isa_ok( $releases[ 0 ], 'CPAN::Changes::Release' ); is( $releases[ 0 ]->version, '0.01', 'version' ); is( $releases[ 0 ]->date, '2010-06-16', 'date' ); is_deeply( $releases[ 0 ]->changes, { '' => [ 'Initial release' ] }, 'full changes' ); is_deeply( [ $releases[ 0 ]->groups ], [ '' ], 'only the main group' ); is_deeply( $releases[ 0 ]->changes( '' ), [ 'Initial release' ], 'one change line' ); isa_ok( $releases[ 1 ], 'CPAN::Changes::Release' ); is( $releases[ 1 ]->version, '0.02', 'version' ); is( $releases[ 1 ]->date, '2010-06-17', 'date' ); is_deeply( $releases[ 1 ]->changes, { '' => [ 'New version' ] }, 'full changes' ); is_deeply( [ $releases[ 1 ]->groups ], [ '' ], 'only the main group' ); is_deeply( $releases[ 1 ]->changes( '' ), [ 'New version' ], 'one change line' ); done_testing; CPAN-Changes-0.500005/t/legacy/roundtrip.t000644 000000 000000 00000001071 14472651645 016137 0ustar00000000 000000 use strict; use warnings; use CPAN::Changes; use Test::More; my $less = <<'EOF'; 1.7.5 2013-08-01T09:48:11Z - Top Level Entry [Group] - Child Entry Line 1 - Child Entry Line 2 EOF my $more = <<'EOF'; 1.7.5 2013-08-01T09:48:11Z - Top Level Entry [ Group ] - Child Entry Line 1 - Child Entry Line 2 EOF for my $text ($less, $more) { my $changes = CPAN::Changes->load_string( $text ); my $serialize = $changes->serialize; is +CPAN::Changes->load_string( $serialize )->serialize, $serialize, 'changes roundtrips correctly'; } done_testing; CPAN-Changes-0.500005/t/legacy/read_group-brackets.t000644 000000 000000 00000001632 14472651645 020037 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load( 'corpus/test/legacy/group-brackets.changes' ); isa_ok( $changes, 'CPAN::Changes' ); is( $changes->preamble, '', 'no preamble' ); my @releases = $changes->releases; is( scalar @releases, 1, 'has 1 release' ); isa_ok( $releases[ 0 ], 'CPAN::Changes::Release' ); is( $releases[ 0 ]->version, '0.01', 'version' ); is( $releases[ 0 ]->date, '2010-06-16', 'date' ); is_deeply( $releases[ 0 ]->changes, { 'Group 1' => [ 'Initial release [not a group], seriously.', 'change [also] [not a group]', ] }, 'full changes' ); is_deeply( [ $releases[ 0 ]->groups ], [ 'Group 1' ], 'one group' ); is_deeply( $releases[ 0 ]->changes( 'Group 1' ), [ 'Initial release [not a group], seriously.', 'change [also] [not a group]', ], 'one change line' ); done_testing; CPAN-Changes-0.500005/t/legacy/read_unknown_date.t000644 000000 000000 00000001517 14472651645 017605 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load( 'corpus/test/legacy/unknown_date.changes' ); isa_ok( $changes, 'CPAN::Changes' ); is( $changes->preamble, '', 'no preamble' ); my @releases = $changes->releases; is( scalar @releases, 5, 'has 5 releases' ); my @expected = ( { version => '0.01', date => 'Unknown' }, { version => '0.02', date => 'Not Released' }, { version => '0.03', date => 'Unknown Release Date' }, { version => '0.04', date => 'Development Release' }, { version => '0.05', date => 'Developer Release' }, ); for ( 0..@expected - 1 ) { isa_ok( $releases[ $_ ], 'CPAN::Changes::Release' ); is( $releases[ $_ ]->version, $expected[ $_ ]->{ version }, 'version' ); is( $releases[ $_ ]->date, $expected[ $_ ]->{ date }, 'date' ); } done_testing; CPAN-Changes-0.500005/t/legacy/dist-zilla-changes.t000644 000000 000000 00000002310 14472651645 017570 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load( 'corpus/test/legacy/dist-zilla.changes', next_token => qr/\{\{\$NEXT\}\}/); isa_ok( $changes, 'CPAN::Changes' ); is( $changes->preamble, 'Revision history for Catalyst-Plugin-Sitemap', 'preamble' ); my @releases = $changes->releases; is( scalar @releases, 3, 'has 3 releases' ); my $r = pop @releases; isa_ok( $r, 'CPAN::Changes::Release' ); is( $r->version, '{{$NEXT}}', 'version' ); is( $r->date, undef, 'date' ); is_deeply( $r->changes, { '' => [ 'Something' ] }, 'full changes' ); is_deeply( [ $r->groups ], [ '' ], 'only the main group' ); isa_ok( $releases[ 0 ], 'CPAN::Changes::Release' ); is( $releases[ 0 ]->version, '0.0.1', 'version' ); is( $releases[ 0 ]->date, '2010-09-29', 'date' ); is_deeply( $releases[ 0 ]->changes, { '' => [ 'original version unleashed on an unsuspecting world' ] }, 'full changes' ); is_deeply( [ $releases[ 0 ]->groups ], [ '' ], 'only the main group' ); isa_ok( $releases[ 1 ], 'CPAN::Changes::Release' ); is( $releases[ 1 ]->version, '1.0.0', 'version' ); is( $releases[ 1 ]->date, '2010-11-30', 'date' ); done_testing; CPAN-Changes-0.500005/t/legacy/read_version-date-separator.t000644 000000 000000 00000001225 14472651645 021503 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load( 'corpus/test/legacy/version-date-separator.changes' ); isa_ok( $changes, 'CPAN::Changes' ); is( $changes->preamble, '', 'no preamble' ); my @releases = $changes->releases; is( scalar @releases, 3, 'has 3 releases' ); is( $releases[ 2 ]->version, '0.03', 'version' ); is( $releases[ 2 ]->date, '2013-12-11', 'date' ); is( $releases[ 1 ]->version, '0.02', 'version' ); is( $releases[ 1 ]->date, '2013-12-10', 'date' ); is( $releases[ 0 ]->version, '0.01', 'version' ); is( $releases[ 0 ]->date, '2013-12-09', 'date' ); done_testing; CPAN-Changes-0.500005/t/legacy/read_different-indentation.t000644 000000 000000 00000002243 14472651645 021366 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load( 'corpus/test/legacy/different-indentation.changes' ); isa_ok( $changes, 'CPAN::Changes' ); is( $changes->preamble, '', 'no preamble' ); my @releases = $changes->releases; is( scalar @releases, 2, 'has 2 releases' ); isa_ok( $releases[ 0 ], 'CPAN::Changes::Release' ); is( $releases[ 0 ]->version, '0.01', 'version' ); is( $releases[ 0 ]->date, '2010-06-16', 'date' ); is_deeply( $releases[ 0 ]->changes, { '' => [ 'Initial release' ] }, 'full changes' ); is_deeply( [ $releases[ 0 ]->groups ], [ '' ], 'only the main group' ); is_deeply( $releases[ 0 ]->changes( '' ), [ 'Initial release' ], 'one change line' ); isa_ok( $releases[ 1 ], 'CPAN::Changes::Release' ); is( $releases[ 1 ]->version, '0.02', 'version' ); is( $releases[ 1 ]->date, '2010-06-17', 'date' ); is_deeply( $releases[ 1 ]->changes, { '' => [ 'New version' ] }, 'full changes' ); is_deeply( [ $releases[ 1 ]->groups ], [ '' ], 'only the main group' ); is_deeply( $releases[ 1 ]->changes( '' ), [ 'New version' ], 'one change line' ); done_testing; CPAN-Changes-0.500005/t/legacy/moo_lazy_subclass.t000644 000000 000000 00000002602 14472651645 017642 0ustar00000000 000000 use strict; use warnings; use Test::More; # ABSTRACT: Make sure subclassing the name is easy and lazy BEGIN { eval "require Moo; 1" or plan skip_all => "Moo required for this test"; } use CPAN::Changes::Group; { package CustomGroup; use Moo; extends 'CPAN::Changes::Group'; has 'name' => ( is => ro =>, lazy => 1, builder => '_build_name' ); has 'flavour' => ( is => ro =>, lazy => 1, builder => '_build_flavour' ); sub _build_name { my ($self) = @_; return 'Custom::Name / ' . $self->flavour; } sub _build_flavour { return 'Vanilla'; } } subtest 'nameonly' => sub { my $object = CustomGroup->new( name => 'Bob' ); is( $object->name, 'Bob', 'Constructor attribute passthrough' ); is( $object->flavour, 'Vanilla', 'Default flavour still exists' ); }; subtest 'flavouronly' => sub { my $object = CustomGroup->new( flavour => 'Earwax' ); is( $object->name, 'Custom::Name / Earwax', 'Constructor attribute affects name lazily' ); is( $object->flavour, 'Earwax', 'Passed flavour propagates' ); }; subtest 'noargs' => sub { my $object = CustomGroup->new(); is( $object->name, 'Custom::Name / Vanilla', 'Default attribute affects name lazily' ); is( $object->flavour, 'Vanilla', 'Default flavour propagates' ); }; done_testing; CPAN-Changes-0.500005/t/legacy/read_dist-zilla.t000644 000000 000000 00000000613 14472651645 017161 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load( 'corpus/test/legacy/dist-zilla_format.changes' ); isa_ok( $changes, 'CPAN::Changes' ); my @releases = $changes->releases; is( scalar @releases, 1, 'has 1 release' ); isa_ok( $releases[ 0 ], 'CPAN::Changes::Release' ); is( $releases[ 0 ]->date, '2010-12-28T00:15:12Z', 'date' ); done_testing; CPAN-Changes-0.500005/t/legacy/sort_groups.t000644 000000 000000 00000001603 14516473512 016472 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load_string(<<'END_CHANGES'); 1.05 2011-04-17 [A] - stuff [B] - mo' stuff 1.04 2011-04-16 [C] - stuff [D] - mo' stuff END_CHANGES like $changes->serialize => expected_order(qw/ A B C D/ ); like $changes->serialize( group_sort => \&reverse_order ) => expected_order(qw/ B A D C/ ); my ($release) = reverse $changes->releases; like $release->serialize => expected_order(qw/ A B / ); like $release->serialize( group_sort => \&reverse_order ) => expected_order(qw/ B A / ); is_deeply [ $release->groups ], [qw/ A B /]; is_deeply [ $release->groups( sort => \&reverse_order ) ], [qw/ B A /]; sub reverse_order { return reverse sort @_; } sub expected_order { my @groups = @_; my $re = join '.*', map { "\\[$_\\]" } @groups; return qr/$re/s; } done_testing; CPAN-Changes-0.500005/t/legacy/read_timestamp.t000644 000000 000000 00000002130 14472651645 017104 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load( 'corpus/test/legacy/timestamp.changes' ); isa_ok( $changes, 'CPAN::Changes' ); my @releases = $changes->releases; is( scalar @releases, 11, 'has 11 releases' ); my @expected = ( qw( 2011-03-25T12:16:25Z 2011-03-25T12:18:36Z 2011-03-25 2011-04-11T12:11:10Z 2011-04-11T15:14Z 2011-04-11T21:40:45-03:00 ), { d => '2011-04-12T12:00:00Z', n => '# JUNK!' }, { d => '2011-04-13T12:00Z', n => 'Test' }, { d => '2011-04-14T12:00:00Z', n => 'America/Halifax' }, '2011-04-14T13:00:00.123Z', { d => '2011-04-12T12:00:00+01:00', n => undef }, ); for ( 0..@expected - 1 ) { isa_ok( $releases[ $_ ], 'CPAN::Changes::Release' ); if( ref $expected[ $_ ] ) { is( $releases[ $_ ]->date, $expected[ $_ ]->{ d }, 'date' ); is( $releases[ $_ ]->note, $expected[ $_ ]->{ n }, 'note' ); } else { is( $releases[ $_ ]->date, $expected[ $_ ], 'date' ); is( $releases[ $_ ]->note, undef, 'note' ); } } done_testing; CPAN-Changes-0.500005/t/legacy/read_no_date.t000644 000000 000000 00000001167 14472651645 016523 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load_string(<<'END_CHANGES'); 1.01 Note - Second 1.00 - First END_CHANGES isa_ok( $changes, 'CPAN::Changes' ); my @releases = $changes->releases; is( scalar @releases, 2, 'has 2 releases' ); my @expected = ( { date => undef, note => undef }, { date => undef, note => 'Note' }, ); for ( 0..@expected - 1 ) { isa_ok( $releases[ $_ ], 'CPAN::Changes::Release' ); is( $releases[ $_ ]->date, $expected[ $_ ]->{ date }, 'date' ); is( $releases[ $_ ]->note, $expected[ $_ ]->{ note }, 'note' ); } done_testing; CPAN-Changes-0.500005/t/legacy/read_group.t000644 000000 000000 00000001365 14472651645 016246 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load( 'corpus/test/legacy/group.changes' ); isa_ok( $changes, 'CPAN::Changes' ); is( $changes->preamble, '', 'no preamble' ); my @releases = $changes->releases; is( scalar @releases, 1, 'has 1 release' ); isa_ok( $releases[ 0 ], 'CPAN::Changes::Release' ); is( $releases[ 0 ]->version, '0.01', 'version' ); is( $releases[ 0 ]->date, '2010-06-16', 'date' ); is_deeply( $releases[ 0 ]->changes, { 'Group 1' => [ 'Initial release' ] }, 'full changes' ); is_deeply( [ $releases[ 0 ]->groups ], [ 'Group 1' ], 'one group' ); is_deeply( $releases[ 0 ]->changes( 'Group 1' ), [ 'Initial release' ], 'one change line' ); done_testing; CPAN-Changes-0.500005/t/legacy/read_basic.t000644 000000 000000 00000001352 14472651645 016167 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load( 'corpus/test/legacy/basic.changes' ); isa_ok( $changes, 'CPAN::Changes' ); is( $changes->preamble, '', 'no preamble' ); my @releases = $changes->releases; is( scalar @releases, 1, 'has 1 release' ); isa_ok( $releases[ 0 ], 'CPAN::Changes::Release' ); is( $releases[ 0 ]->version, '0.01', 'version' ); is( $releases[ 0 ]->date, '2010-06-16', 'date' ); is_deeply( $releases[ 0 ]->changes, { '' => [ 'Initial release' ] }, 'full changes' ); is_deeply( [ $releases[ 0 ]->groups ], [ '' ], 'only the main group' ); is_deeply( $releases[ 0 ]->changes( '' ), [ 'Initial release' ], 'one change line' ); done_testing; CPAN-Changes-0.500005/t/legacy/serialize.t000644 000000 000000 00000010103 14472651645 016074 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->new; $changes->add_release( { date => '2010-06-16', version => '0.01', changes => { '' => [ 'Initial release' ] }, } ); { my $expected = <serialize, $expected, 'serialize' ); } { $changes->preamble( 'Revision history for perl module Foo::Bar' ); my $expected = <serialize, $expected, 'serialize with preamble' ); } { my $release = $changes->release( '0.01' ); $release->clear_changes; $release->add_changes( { group => 'Group 1' }, 'Initial release' ); my $expected = <serialize, $expected, 'serialize with ground and preamble' ); } { $changes->add_release( { version => '0.02', date => '2010-06-17', changes => { '' => [ 'New version' ] }, } ); my $expected = <serialize, $expected, 'serialize with multiple releases' ); } { $changes->releases( { version => '0.01', date => '2010-06-16', changes => { '' => [ 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. In quis tortor ac urna faucibus feugiat.' ] }, } ); my $expected = <serialize, $expected, 'serialize with line-wrap' ); } { $changes->releases( { version => '0.01', date => '2010-06-16', note => 'Note', changes => { '' => [ 'Test' ] }, } ); my $expected = <serialize, $expected, 'serialize with note' ); } { $changes->releases( { version => '0.01', date => 'Unknown', note => '(Oops)', changes => { '' => [ 'Test' ] }, } ); my $expected = <serialize, $expected, 'serialize with unknown date and note' ); } { my $changes = CPAN::Changes->new; $changes->add_release( { date => '', version => '0.01', note => '', changes => { '' => [ 'Initial release' ] }, } ); my $expected = <serialize, $expected, 'serialize w/ defined but empty date and note' ); } { my $changes = CPAN::Changes->new; $changes->add_release( { date => '', version => '0.01', note => '', changes => { '' => [ 'http://www.cpan.org/abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz', "\x{026B}this_entry_should_not_be_wrapped_on_the_nonbreaking_space\x{00A0}in_it_even_though_it_is_over_80_characters_long", ] }, } ); my $expected = <serialize, $expected, 'serialize does not wrap long tokens or split on nbsp' ); } done_testing; CPAN-Changes-0.500005/t/legacy/self.t000644 000000 000000 00000000447 14472651645 015050 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load( 'Changes' ); my @releases = $changes->releases; isa_ok( $changes, 'CPAN::Changes' ); ok( scalar @releases, 'has releases' ); isa_ok( $_, 'CPAN::Changes::Release' ) for @releases; done_testing; CPAN-Changes-0.500005/t/legacy/read_line-continuation.t000644 000000 000000 00000001464 14472651645 020551 0ustar00000000 000000 use strict; use warnings; use Test::More; use CPAN::Changes; my $changes = CPAN::Changes->load( 'corpus/test/legacy/line-continuation.changes' ); isa_ok( $changes, 'CPAN::Changes' ); is( $changes->preamble, '', 'no preamble' ); my @releases = $changes->releases; is( scalar @releases, 1, 'has 1 release' ); isa_ok( $releases[ 0 ], 'CPAN::Changes::Release' ); is( $releases[ 0 ]->version, '0.01', 'version' ); is( $releases[ 0 ]->date, '2010-06-16', 'date' ); is_deeply( $releases[ 0 ]->changes, { '' => [ "Initial release This line is part of the first" ] }, 'full changes' ); is_deeply( [ $releases[ 0 ]->groups ], [ '' ], 'only the main group' ); is_deeply( $releases[ 0 ]->changes( '' ), [ "Initial release This line is part of the first" ], 'one change line' ); done_testing; CPAN-Changes-0.500005/corpus/test/000755 000000 000000 00000000000 15000255764 014476 5ustar00000000 000000 CPAN-Changes-0.500005/corpus/dists/000755 000000 000000 00000000000 15000255764 014645 5ustar00000000 000000 CPAN-Changes-0.500005/corpus/dists/SWISH-Prog.changes000644 000000 000000 00000032400 14472651645 020012 0ustar00000000 000000 Revision history for Perl extension Prog. 0.75 11 Dec 2013 - 3.1.0 release of swish3 cli: * remove --lucy_highlightable and replace with -I (--Indexer_opts) * rename --aggregator_opts to --Aggregator_opts 0.74 01 Oct 2013 - packaaging clean up only 0.73 12 Sept 2013 - turn off Pod tests unless RELEASE_TESTING env var set. Pod::Coverage failures were because optional dependencies were not present but module load was attempted in order to walk symbol tree for pod tests. 0.72 10 Sept 2013 - add TRACE_ALL to pod-coverage test to discover why it suddenly started epic fail - add explicit port to t/17-spider-server, running on 5002 0.71 1 Aug 2013 - add --null_term feature to swish3 example - add sitemap support to Spider - swish3 -W sets SWISH_PARSER_WARNINGS env var 0.70 10 Feb 2013 - add tests for Utils class. - Utils extension regex now matches \w+ rather than hardcoded document extensions. 0.69 05 Feb 2013 - fix documentation for SWISH::Prog::InvIndex::Meta, add data() accessor method. 0.68 23 Jan 2013 - fix failing test t/17-spider-server with 'use base' vs '@ISA' - force URI objects to stringify when passing in/out of cache 0.67 19 Jan 2013 - Spider now uses LWP::RobotUA to respect robots.txt. Dependency on WWW::Mechanize is removed. - Spider authorization features now work. Added bona fide test suite for spidering. - expand Queue API to add remove() and clean() and internal locking on get() - Spider->modified_since feature to allow for incremental crawls - Added new class SWISH::Prog::Aggregator::Spider::Response, refactoring appropriate UA methods into Response class since WWW::Mechanize was intentionally blurring the logical distinction. - Spider->file_rules (new feature) follows same code path as Aggregator::FS. - added Utils::write_log and ::write_log_line methods for standardizing debug output 0.66 8 Dec 2012 - yanked redundant test t/09 as it is now part of Search::Tools - fix t/05 spider to warn on correct missing module; fix spider count 0.65 5 Nov 2012 - add more tests for MailFS aggregator - all Aggregators now set content-type to valid MIME instead of custom Swish types - Aggregator->set_parser_from_type() will now not override a defined Doc->parser() value 0.64 12 Oct 2012 - add --aggregator_opts to swish3 and SWISH::Prog - add looks_like_feed() to Spider, and add dependency on XML::Feed - switch Spider::UA parent class to WWW::Mechanize::GZip 0.63 11 Sept 2012 - add TagAlias support to Config. TagAlias is a Swish3 feature. - improve SWISH::Prog documentation - add --doc_filter to swish3, to allow for set_filter to work from an external Perl file. 0.62 3 Sept 2012 - support subclassing of Indexer in start() sanity check introduced in 0.61 - add InvIndex->meta_file method and avoid referring to swish.xml directly 0.61 23 Aug 2012 - swish3 now catches exceptions and re-throws errors - swish3 now passes --debug flag into Searcher->new - base Indexer now performs check on existing indexes to verify that you aren't trying to run one format's Indexer against a different format's index. - swish_last_start file now created by base Indexer class, not swish3 cli. 0.60 28 July 2012 - add *_property methods to InvIndex::Meta - SWISH::3 now required dependency - added use_quotes and quote_char features to Aggregator::DBI, inspired by patch from Miko O'Sullivan. 0.59 26 July 2012 - add FollowXInclude support for Swish3 0.58 26 June 2012 - fix Config class for FuzzyIndexingMode conversion to XML (ver3) 0.57 7 May 2012 - change default max_depth in Spider to 1 (makes it actually work by default) 0.56 2 Apr 2012 - make swish3 stdin/stdout utf8 safe 0.55 6 Nov 2011 - fix skip test count in t/15 0.54 14 Oct 2011 - $SWISH::Prog::Utils::DefaultExtension now let's you configure default file extension - fix SWISH::Prog::Config->new() to support perldoc's claims of passing in a hashref or named attribute pairs. 0.53 09 Oct 2011 - fix DBI Aggregator to make code support docs for swishtitle and swishdescription. Bug reported by Logan Bell. - fix FS Aggregator behavior to work like 2.x and not skip files with no extension. - fix bug in swish3 where index dir is not created before swish_last_start is touched. - confess() when swish.xml does not exist - base Aggregator class no longer requires an indexer in new(). 0.52 26 Sept 2011 - add support for IndexFile config option - add --lucy_highlightable option to swish3 - new class SWISH::Prog::ReplaceRules for backcompat - add get_stemmer_lang() method to Config class for Snowball stemmer forward-compat. 0.51 28 June 2011 - add 'Lucy' backend 0.50 22 Feb 2011 - make swish3 -N flag argument optional, defaulting to indexdir/swish_last_start - error check in base Indexer for valid invindex param - misc doc fixes 0.49 07 Jan 2011 - refactor FileRules feature into File::Rules module 0.48 03 Nov 2010 - added progress() feature to Aggregator classes, and 'expected' param to swish3. - add CascadeMetaContext config option for Swish3 compatibility - bump SWISH::3 (optional) dependency to 0.09 - fix MailFS aggregator to preserve filesystem paths as Doc url 0.47 25 July 2010 - add Search time to swish3 (3.0.7) - fix bug in Native::Searcher affecting fieldtypes 0.46 22 June 2010 - add dep on Search::Query - add default_boolop feature to Native::Searcher - fix IncludeConfigFile recursionin Config->ver2_to_ver() 0.45 08 May 2010 - fix swish3 to allow "swishrank" as -x option - enable -H option in swish3 - SWISH::3->slurp optimization now uses transparent gunzip feature. Requires SWISH::3 >= 0.06. - fix backcompat for DefaultContents config in Config->ver2_to_ver3() 0.44 19 Mar 2010 - register MailFS aggregator as 'mailfs' for use with swish3 -S 0.43 19 Mar 2010 - remove docs and method for 'sort_order' in abstract Searcher class. No subclass uses it, deferring to 'order' in the search() method opts. - FS->crawl now returns count - add MailFS aggregator class 0.42 27 Feb 2010 - add invindex format to search output headers in swish3 - add parsed query to search output headers in swish3; add query() method to base Results class. - add progress_size to Aggregator and implement in FS. 0.41 10 Feb 2010 - fix the check_swish() feature in Native::Indexer to only return the version number, not the whole output of swish-e -V (fixes the -D fix in 0.40). 0.40 09 Feb 2010 - make -D '\x03' optional in Native::Indexer based on which version of swish-e is available. The -D feature is only in 2.4.8 or newer. 0.39 07 Feb 2010 - add fix for systems using Swish-e 2.6, which doesn't create a index.swish-e file. - remove the requires_external_bin from Makefile.PL since KSx and Xapian do not require swish-e but do require SWISH::Prog. Fix tests (which also check for swish-e) to SKIP the correct number of tests. 0.38 05 Feb 2010 - add support for 'order', 'limit', 'start', 'max' and 'rank_scheme' in Native::Searcher. - Utils->perl_to_xml() moved to Search::Tools::XML (where it really belonged). - enable more options to swish3 0.37 01 Feb 2010 - add -D '\x03' to the Native::Indexer exec command. This mimics libswish3. - examples/swish3 now installed by default with usual make install. - added -N option to swish3, along with ok_if_newer_than feature in Aggregator. - added dependency on Rose::DateTime. - Native Indexer can now merge() and add(). - -l and -M options now supported in swish3 - yank Query.pm and QueryParser.pm. They weren't used and the idea is now fleshed out in Search::Query if we ever need it. - Searcher may now take an array of invindex values, and always returns an array ref of values. 0.36 12 Jan 2009 - fix Config bug where StoreDescription was ignored in ver2_to_ver3() - switch to Module::Install - updates to example/swish3 - fix t/03_object.t to test for JSON not YAML::Syck (see RT#53275) 0.35 09 Jan 2009 - fix bug in Config where $append flag was being interpreted as a MetaName/Property - fix bug in Config where ver2_to_ver3 was calling $self->new instead of $class->new when passed a filename. - fix bug in Spider where filter was not being passed correctly. 0.34 07 Jan 2009 - fix mem leak test to include only those outside our control. - add version() to SWISH::Prog::Doc to pick header style per instance. 0.33 02 Jan 2010 - fix bug where SWISH::3->slurp was being called with out binmode flag and .gz files were getting their NUL bytes stripped. - add test_mode feature (set with SWISH_TEST env var) - fix some memory leaks - fix JSON::XS dependency (JSON required, not JSON::XS). 0.32 12 Dec 2009 - Config->ver2_to_ver3() method now supported. - fix bug in Prog.pm to allow Config passed in aggregator and Indexer passed in aggregator - removed dependency on Class::Accessor for Config.pm - refactor internal handling of Config object so there is only ever one per Prog instance - refactor internal handling of Config to support SWISH::3::Config - FileRules support now in Aggregator::FS 0.31 1 Dec 2009 - POD fixes 0.30 29 Nov 2009 - change KinoSearch to KSx in implementation registry - fix bug in base Searcher where InvIndex class was not loaded. 0.29 8 Nov 2009 - add strip_plural option to Utils->perl_to_xml() - add count attribute to arrayref values of hashrefs in perl_to_xml() - fix method/param name strictness bug revealed by Rose::ObjectX::CAF 0.03. This mostly required internal param name changes to official method names. 0.28 30 Sept 2009 - add some missing calls to SUPER::init() 0.27 28 Sep 2009 - make QueryParser and Query part of the official install, even though there are still TODO items - add all_metanames() method to Config - refactor to use Search::Tools and Rose::ObjectX::CAF instead of Class::Accessor::Fast 0.26 26 Feb 2009 - fix off-by-one error in skip test count in t/03-object.t 0.25 26 Jan 2009 - added more features to example/swish3 - add missing test file to MANIFEST - tests clean up after themselves wrt swish.xml header files 0.24 20 Jan 2009 (Happy Obama Day!) - add base Searcher, Results and Result classes - refactor QueryParser to use Search::QueryParser::SQL - flesh out the InvIndex::Meta class, adding XML::Simple dependency - IMPORTANT: rename Native classes to match naming convention 0.23 11 Dec 2008 - properly clean up temp Config files 0.22 10 Dec 2008 - added support for SWISH::Prog::DBI - use SWISH::3 for slurping files, if available. - fix bug in SWISH::Prog::Utils->perl_to_xml where hash refs were not getting tagged. 0.21 31 Oct 2008 - fix tests to skip correct numbers if swish-e not installed - change to JSON::XS and make json default format in Aggregator::Object - add perl_to_xml() in Utils - change t/04 to manually create dirs at test time 0.20 23 April 2008 - complete rewrite of the API for Swish3 development 0.08 22 Nov 2007 - added S::P::Mail class and example swishmail.pl script - sync all $VERSION vars to same value - allow for non-standard docclass names 0.07 * S::P::Object iterator now uses more idiomatic while/next algorithm. 0.06 * S::P::Object now defers to explicit 'config' passed in new(). 0.05 * S::P::Object now uses JSON or YAML to serialize values instead of Data::Dump - This change is sync'd with SWISH::API::Object 0.0.6 0.04 * S::P::DBI no longer calls disconnect() on db handle in DESTROY - fixed bug with auto-defining metanames - S::P::Config always returns arrayref on directive method calls - use MIME::Types instead of File::Type - S::P::Find now uses File::Find instead of Path::Class::Iterator - S::P::Object obj_filter() must return an object of some kind - S::P::Object will not dump() scalar strings, thus avoiding extra quotes - S::P::Config added stringify() method and reverted from IO::All to File::Slurp - S::Prog added elapsed() method - S::Prog new() verbose now defaults to 1 0.03 * removed all mentions of SWISH3 - test indexes are removed as part of 'make clean' - switched from Data::Dumper to Data::Dump - added new SWISH::Prog::Object example - fixed bug in SWISH::Prog::Headers to test defined() rather than simply eval true/false - fixed bug in SWISH::Prog::DBI with accepting DBI handle in init() - changed to using IO::All instead of File::stat and File::Slurp for better UTF8 support - changed default order of init() and init_indexer() to work more intuitively. Fixed S::P::DBI accordingly. To prevent an indexer from being init'd (as in 0.02) simply override init_indexer() and don't call SUPER::init_indexer(). - new feature: SWISH::Prog::Find - renamed meta() to table_meta() in SWISH::Prog::DBI for clarity. - S::P::Config now always handles config params as arrays - Config metanames() propertynames() and propertynamesnostripchars() are no longer available - S::P::Config now requires IO::All and Config::General; added read2() method. - new feature placeholder: SWISH::Prog::Spider 0.02 POD fixes - added merge() add() and mv() methods to S::P::Index and t/3merge.t and t/4add.t - added 2 more test docs - added format() accessor to S::P::Index - changed S::P::I to use Class::Accessor::Fast since we don't need to override get/set - S::P now always inits an indexer even if fh=>0 - added private _index_methods to S::P 0.01 2005-11-22T21:54:37Z - original version; created by h2xs 1.22 with options -XA -n Prog CPAN-Changes-0.500005/corpus/dists/Dancer-Logger-Syslog.changes000644 000000 000000 00000000567 14472651645 022110 0ustar00000000 000000 Revision history for Dancer-Logger-Syslog 0.4 April 22nd, 2013 * Call 'openlog()' in all child processes. (GH#4, Sam Crawley) 0.3 April 14th, 2013 * Add 'info' in the log levels. (GH#2, Sam Crawley) * Facility can be set via config. (GH#1, Sam Crawley) 0.2 October 5th, 2010 0.1 Jan 29th, 2010 * First version, released on an unsuspecting world. CPAN-Changes-0.500005/corpus/dists/if.parsed000644 000000 000000 00000005011 14472651645 016452 0ustar00000000 000000 { "preamble" => "Revision history for Perl extension if.", "raw_preamble" => "Revision history for Perl extension if.\n\n", "releases" => [ { "entries" => [], "line" => 3, "note" => "The version of 5.7.3.", "raw" => "0.01\t\tThe version of 5.7.3.\n\n", "version" => "0.01" }, { "entries" => [ { "line" => 6, "raw" => "\t\ttest adopted for backward-compatibility\n\n", "style" => "", "text" => "test adopted for backward-compatibility" } ], "line" => 5, "note" => "`our' removed for backward-compatibility.", "raw" => "0.010001\t`our' removed for backward-compatibility.\n", "version" => "0.010001" }, { "entries" => [ { "line" => 9, "raw" => "\t\tfix `require or die'.\n\n", "style" => "", "text" => "fix `require or die'." } ], "line" => 8, "note" => "support package names which are simultaneously keywords (open).", "raw" => "0.04\t\tsupport package names which are simultaneously keywords (open).\n", "version" => "0.04" }, { "entries" => [ { "line" => 12, "raw" => "\t\tolder versions of Perl.\n\n", "style" => "", "text" => "older versions of Perl." } ], "line" => 11, "note" => "test was using a discipline for open.pm not supported with", "raw" => "0.0401\t\ttest was using a discipline for open.pm not supported with\n", "version" => "0.0401" }, { "entries" => [ { "line" => 15, "raw" => "\t\t Better error handling.\n", "style" => "", "text" => "Better error handling." }, { "line" => 16, "raw" => "\t\t Suggest significance of => in the docs.\n\n", "style" => "", "text" => "Suggest significance of => in the docs." } ], "line" => 14, "note" => "Sync with perl5.12.2:", "raw" => "0.05\t\tSync with perl5.12.2:\n", "version" => "0.05" }, { "entries" => [], "line" => 18, "note" => "Update email address.", "raw" => "0.06\t\tUpdate email address.\n\n", "version" => "0.06" }, { "entries" => [], "line" => 20, "note" => "The update of 0.0401 was lost during update to 0.05", "raw" => "0.0601\t\tThe update of 0.0401 was lost during update to 0.05\n\n", "version" => "0.0601" } ] } CPAN-Changes-0.500005/corpus/dists/Dist-Zilla-App-Command-podpreview.parsed000644 000000 000000 00000001727 14472651645 024316 0ustar00000000 000000 { "preamble" => "Revision history for Dist-Zilla-App-Command-podpreview\n\n * fixed use of smartmatch (warns as experimental in 5.18) (ether)", "raw_preamble" => "Revision history for Dist-Zilla-App-Command-podpreview\n\n * fixed use of smartmatch (warns as experimental in 5.18) (ether)\n\n", "releases" => [ { "entries" => [ { "line" => 6, "raw" => " * Fix error in pod\n\n", "style" => "*", "text" => "Fix error in pod" } ], "line" => 5, "note" => "01/04/2011", "raw" => "0.002 01/04/2011\n", "version" => "0.002" }, { "entries" => [ { "line" => 9, "raw" => " * Initial upload to CPAN\n", "style" => "*", "text" => "Initial upload to CPAN" } ], "line" => 8, "note" => "01/04/2011", "raw" => "0.001 01/04/2011\n", "version" => "0.001" } ] } CPAN-Changes-0.500005/corpus/dists/WWW-YouTube-Download.parsed000644 000000 000000 00000057242 14472651645 021714 0ustar00000000 000000 { "preamble" => "Revision history for Perl extension WWW::YouTube::Download", "raw_preamble" => "Revision history for Perl extension WWW::YouTube::Download\n\n", "releases" => [ { "entries" => [], "line" => 3, "raw" => "{{\$NEXT}}\n\n", "version" => "{{\$NEXT}}" }, { "date" => "2013-07-27T09:21:38Z", "entries" => [ { "line" => 6, "raw" => " - Changed signature encoding (kucharskim++)\n\n", "style" => "-", "text" => "Changed signature encoding (kucharskim++)" } ], "line" => 5, "raw" => "0.55 2013-07-27T09:21:38Z\n", "raw_date" => "2013-07-27T09:21:38Z", "version" => "0.55" }, { "date" => "2013-07-05T18:29:31Z", "entries" => [ { "line" => 9, "raw" => " - If unavailable video, croak with an appropriate error message. (kucharskim++)\n", "style" => "-", "text" => "If unavailable video, croak with an appropriate error message. (kucharskim++)" }, { "line" => 10, "raw" => " - Support encrypted signature video. (kucharskim++)\n\n", "style" => "-", "text" => "Support encrypted signature video. (kucharskim++)" } ], "line" => 8, "raw" => "0.54 2013-07-05T18:29:31Z\n", "raw_date" => "2013-07-05T18:29:31Z", "version" => "0.54" }, { "date" => "2013-06-05T16:05:56Z", "entries" => [ { "line" => 13, "raw" => " - Various improvements to youtube-playlists (kucharskim++)\n\n", "style" => "-", "text" => "Various improvements to youtube-playlists (kucharskim++)" } ], "line" => 12, "raw" => "0.53 2013-06-05T16:05:56Z\n", "raw_date" => "2013-06-05T16:05:56Z", "version" => "0.53" }, { "date" => "2013-05-05T16:18:54Z", "entries" => [ { "line" => 16, "raw" => " - Added playlist_id() and video_id() method (kucharskim++)\n\n", "style" => "-", "text" => "Added playlist_id() and video_id() method (kucharskim++)" } ], "line" => 15, "raw" => "0.52 2013-05-05T16:18:54Z\n", "raw_date" => "2013-05-05T16:18:54Z", "version" => "0.52" }, { "date" => "2013-05-03T07:49:29Z", "entries" => [ { "line" => 19, "raw" => " - Support new url (mikolaj++)\n\n", "style" => "-", "text" => "Support new url (mikolaj++)" } ], "line" => 18, "raw" => "0.51 2013-05-03T07:49:29Z\n", "raw_date" => "2013-05-03T07:49:29Z", "version" => "0.51" }, { "date" => "2013-04-19T17:50:39Z", "entries" => [ { "line" => 22, "raw" => " - repackaging\n\n", "style" => "-", "text" => "repackaging" } ], "line" => 21, "raw" => "0.50 2013-04-19T17:50:39Z\n", "raw_date" => "2013-04-19T17:50:39Z", "version" => "0.50" }, { "date" => "2013-04-09T21:13:56Z", "entries" => [ { "line" => 25, "raw" => " - repacking\n\n", "style" => "-", "text" => "repacking" } ], "line" => 24, "raw" => "0.49 2013-04-09T21:13:56Z\n", "raw_date" => "2013-04-09T21:13:56Z", "version" => "0.49" }, { "date" => "2013-04-09T21:09:55Z", "entries" => [ { "line" => 28, "raw" => " - Fixed parsing problem on youtube-playlists (mikolaj++)\n\n", "style" => "-", "text" => "Fixed parsing problem on youtube-playlists (mikolaj++)" } ], "line" => 27, "raw" => "0.48 2013-04-09T21:09:55Z\n", "raw_date" => "2013-04-09T21:09:55Z", "version" => "0.48" }, { "date" => "2013-04-02T02:06:07Z", "entries" => [ { "line" => 31, "raw" => " - Added some documentation and added eg/menu.pl (polettix++)\n\n", "style" => "-", "text" => "Added some documentation and added eg/menu.pl (polettix++)" } ], "line" => 30, "raw" => "0.47 Tue Apr 2 02:06:07 2013\n", "raw_date" => "Tue Apr 2 02:06:07 2013", "version" => "0.47" }, { "date" => "2013-03-24T15:34:27Z", "entries" => [ { "line" => 34, "raw" => " - YouTube's design was changed (vjp++, yusukebe++)\n\n", "style" => "-", "text" => "YouTube's design was changed (vjp++, yusukebe++)" } ], "line" => 33, "raw" => "0.46 Sun Mar 24 15:34:27 2013\n", "raw_date" => "Sun Mar 24 15:34:27 2013", "version" => "0.46" }, { "date" => "2013-02-10T02:14:09Z", "entries" => [ { "line" => 37, "raw" => " - New substitution variable {user} (isync++)\n\n", "style" => "-", "text" => "New substitution variable {user} (isync++)" } ], "line" => 36, "raw" => "0.45 Sun Feb 10 02:14:09 2013\n", "raw_date" => "Sun Feb 10 02:14:09 2013", "version" => "0.45" }, { "date" => "2013-01-19T18:29:58Z", "entries" => [ { "line" => 40, "raw" => " - added proxy support (isync++)\n\n", "style" => "-", "text" => "added proxy support (isync++)" } ], "line" => 39, "raw" => "0.44 Sat Jan 19 18:29:58 2013\n", "raw_date" => "Sat Jan 19 18:29:58 2013", "version" => "0.44" }, { "date" => "2013-01-05T01:43:17Z", "entries" => [ { "line" => 43, "raw" => " - fixed grammar (mokko++)\n", "style" => "-", "text" => "fixed grammar (mokko++)" }, { "line" => 44, "raw" => " - using Module::Build\n\n", "style" => "-", "text" => "using Module::Build" } ], "line" => 42, "raw" => "0.43 Sat Jan 5 01:43:17 2013\n", "raw_date" => "Sat Jan 5 01:43:17 2013", "version" => "0.43" }, { "date" => "2012-11-16T21:35:31Z", "entries" => [ { "line" => 47, "raw" => " - fixed \"failed to extract JSON data\" (ks0608++)\n", "style" => "-", "text" => "fixed \"failed to extract JSON data\" (ks0608++)" }, { "line" => 48, "raw" => " - fixed RT: 81068 (panic83++)\n\n", "style" => "-", "text" => "fixed RT: 81068 (panic83++)" } ], "line" => 46, "raw" => "0.42 Fri Nov 16 21:35:31 2012\n", "raw_date" => "Fri Nov 16 21:35:31 2012", "version" => "0.42" }, { "date" => "2012-10-04T00:44:13Z", "entries" => [ { "line" => 51, "raw" => " - follow the change of site (mikolaj++, yusukebe++)\n", "style" => "-", "text" => "follow the change of site (mikolaj++, yusukebe++)" }, { "line" => 52, "raw" => " - fixed color problems on scripts (mikolaj++)\n", "style" => "-", "text" => "fixed color problems on scripts (mikolaj++)" }, { "line" => 53, "raw" => " - fixed RT 79931 (HMBRAND++)\n\n", "style" => "-", "text" => "fixed RT 79931 (HMBRAND++)" } ], "line" => 50, "raw" => "0.41 Thu Oct 4 00:44:13 2012\n", "raw_date" => "Thu Oct 4 00:44:13 2012", "version" => "0.41" }, { "date" => "2012-01-22T16:54:53Z", "entries" => [ { "line" => 56, "raw" => " - Fixed a problem that did not works, because YouTube's design was changed.\n (ks0608++, zentooo++)\n\n", "style" => "-", "text" => "Fixed a problem that did not works, because YouTube's design was changed. (ks0608++, zentooo++)" } ], "line" => 55, "raw" => "0.40 Sun Jan 22 16:54:53 2012\n", "raw_date" => "Sun Jan 22 16:54:53 2012", "version" => "0.40" }, { "date" => "2012-01-18T01:28:00Z", "entries" => [ { "line" => 60, "raw" => " - remove suffix from youtube-download.pl and youtube-playlists.pl (mikolaj++)\n\n", "style" => "-", "text" => "remove suffix from youtube-download.pl and youtube-playlists.pl (mikolaj++)" } ], "line" => 59, "raw" => "0.39 Wed Jan 18 01:28:00 2012\n", "raw_date" => "Wed Jan 18 01:28:00 2012", "version" => "0.39" }, { "date" => "2011-12-08T00:44:52Z", "entries" => [ { "line" => 63, "raw" => " - fix typo (mikolaj++)\n", "style" => "-", "text" => "fix typo (mikolaj++)" }, { "line" => 64, "raw" => " - remove wrong code (mikolaj++)\n\n", "style" => "-", "text" => "remove wrong code (mikolaj++)" } ], "line" => 62, "raw" => "0.38 Thu Dec 8 00:44:52 2011\n", "raw_date" => "Thu Dec 8 00:44:52 2011", "version" => "0.38" }, { "date" => "2011-12-07T02:33:23Z", "entries" => [ { "line" => 67, "raw" => " - fix wrong characters in filename in youtube-download.pl (mikolaj++)\n", "style" => "-", "text" => "fix wrong characters in filename in youtube-download.pl (mikolaj++)" }, { "line" => 68, "raw" => " - fix doc in youtube-download.pl (mikolaj++)\n", "style" => "-", "text" => "fix doc in youtube-download.pl (mikolaj++)" }, { "line" => 69, "raw" => " - file_name option is DEPRECATED\n\n", "style" => "-", "text" => "file_name option is DEPRECATED" } ], "line" => 66, "raw" => "0.37 Wed Dec 7 02:33:23 2011\n", "raw_date" => "Wed Dec 7 02:33:23 2011", "version" => "0.37" }, { "date" => "2011-10-31T02:45:48Z", "entries" => [ { "line" => 72, "raw" => " - fix default filename problem in youtube-download.pl\n\n", "style" => "-", "text" => "fix default filename problem in youtube-download.pl" } ], "line" => 71, "raw" => "0.36 Mon Oct 31 02:45:48 2011\n", "raw_date" => "Mon Oct 31 02:45:48 2011", "version" => "0.36" }, { "date" => "2011-10-18T00:28:58Z", "entries" => [ { "line" => 75, "raw" => " - fix typo in youtube-playlists.pl (rt:71721)\n\n", "style" => "-", "text" => "fix typo in youtube-playlists.pl (rt:71721)" } ], "line" => 74, "raw" => "0.35 Tue Oct 18 00:28:58 2011\n", "raw_date" => "Tue Oct 18 00:28:58 2011", "version" => "0.35" }, { "date" => "2011-10-15T16:14:57Z", "entries" => [ { "line" => 78, "raw" => " - workaround for win32\n", "style" => "-", "text" => "workaround for win32" }, { "line" => 79, "raw" => " - fix suffix problem\n\n", "style" => "-", "text" => "fix suffix problem" } ], "line" => 77, "raw" => "0.34 Sat Oct 15 16:14:57 2011\n", "raw_date" => "Sat Oct 15 16:14:57 2011", "version" => "0.34" }, { "date" => "2011-10-12T01:17:34Z", "entries" => [ { "line" => 82, "raw" => " - added youtube-download.pl and youtube-playlist.pl (request by st3vil++)\n", "style" => "-", "text" => "added youtube-download.pl and youtube-playlist.pl (request by st3vil++)" }, { "line" => 83, "raw" => " - fix doc\n\n", "style" => "-", "text" => "fix doc" } ], "line" => 81, "raw" => "0.33 Wed Oct 12 01:17:34 2011\n", "raw_date" => "Wed Oct 12 01:17:34 2011", "version" => "0.33" }, { "date" => "2011-08-23T01:52:20Z", "entries" => [ { "line" => 86, "raw" => " - added LICENSE file (no code change)\n\n", "style" => "-", "text" => "added LICENSE file (no code change)" } ], "line" => 85, "raw" => "0.32 Tue Aug 23 01:52:20 2011\n", "raw_date" => "Tue Aug 23 01:52:20 2011", "version" => "0.32" }, { "date" => "2011-08-23T00:25:02Z", "entries" => [ { "line" => 89, "raw" => " - added fmt 38 to .mp4 (mikolaj++)\n\n", "style" => "-", "text" => "added fmt 38 to .mp4 (mikolaj++)" } ], "line" => 88, "raw" => "0.31 Tue Aug 23 00:25:02 2011\n", "raw_date" => "Tue Aug 23 00:25:02 2011", "version" => "0.31" }, { "date" => "2011-08-07T15:25:11Z", "entries" => [ { "line" => 92, "raw" => " - cleanup (mikolaj++)\n\n", "style" => "-", "text" => "cleanup (mikolaj++)" } ], "line" => 91, "raw" => "0.30 Sun Aug 7 15:25:11 2011\n", "raw_date" => "Sun Aug 7 15:25:11 2011", "version" => "0.30" }, { "date" => "2011-08-05T01:29:27Z", "entries" => [ { "line" => 95, "raw" => " - fixed a problem that did not works, becouse changed YouTube's design. (katsuhito konishi++)\n\n", "style" => "-", "text" => "fixed a problem that did not works, becouse changed YouTube's design. (katsuhito konishi++)" } ], "line" => 94, "raw" => "0.29 Fri Aug 5 01:29:27 2011\n", "raw_date" => "Fri Aug 5 01:29:27 2011", "version" => "0.29" }, { "date" => "2011-08-04T00:03:58Z", "entries" => [ { "line" => 98, "raw" => " - fixed a problem that did not works, becouse changed YouTube's design. (mikolaj++)\n\n", "style" => "-", "text" => "fixed a problem that did not works, becouse changed YouTube's design. (mikolaj++)" } ], "line" => 97, "raw" => "0.28 Thu Aug 4 00:03:58 2011\n", "raw_date" => "Thu Aug 4 00:03:58 2011", "version" => "0.28" }, { "date" => "2011-05-29T23:32:31Z", "entries" => [ { "line" => 101, "raw" => " - fixed garbled (akiym++)\n", "style" => "-", "text" => "fixed garbled (akiym++)" }, { "line" => 102, "raw" => " - fixed typo (akiym++)\n\n", "style" => "-", "text" => "fixed typo (akiym++)" } ], "line" => 100, "raw" => "0.27 Sun May 29 23:32:31 2011\n", "raw_date" => "Sun May 29 23:32:31 2011", "version" => "0.27" }, { "date" => "2011-04-20T01:34:55Z", "entries" => [ { "line" => 105, "raw" => " - fixed scrape problem (reported by Octavian++)\n\n", "style" => "-", "text" => "fixed scrape problem (reported by Octavian++)" } ], "line" => 104, "raw" => "0.26 Wed Apr 20 01:34:55 2011\n", "raw_date" => "Wed Apr 20 01:34:55 2011", "version" => "0.26" }, { "date" => "2011-03-19T00:39:41Z", "entries" => [ { "line" => 108, "raw" => " - added few more match URLs (mikolaj++)\n\n", "style" => "-", "text" => "added few more match URLs (mikolaj++)" } ], "line" => 107, "raw" => "0.25 Sat Mar 19 00:39:41 2011\n", "raw_date" => "Sat Mar 19 00:39:41 2011", "version" => "0.25" }, { "date" => "2011-03-04T01:45:20Z", "entries" => [ { "line" => 111, "raw" => " - fixed could not fetch json data problem (akiym++)\n\n", "style" => "-", "text" => "fixed could not fetch json data problem (akiym++)" } ], "line" => 110, "raw" => "0.24 Fri Mar 4 01:45:20 2011\n", "raw_date" => "Fri Mar 4 01:45:20 2011", "version" => "0.24" }, { "date" => "2011-02-22T00:00:22Z", "entries" => [ { "line" => 114, "raw" => " - supported any video urls (mikolaj++)\n\n", "style" => "-", "text" => "supported any video urls (mikolaj++)" } ], "line" => 113, "raw" => "0.23 Tue Feb 22 00:00:22 2011\n", "raw_date" => "Tue Feb 22 00:00:22 2011", "version" => "0.23" }, { "date" => "2011-01-05T00:17:54Z", "entries" => [ { "line" => 117, "raw" => " - Fixed a problem that can not download videos there. (reported by Octavian)\n\n", "style" => "-", "text" => "Fixed a problem that can not download videos there. (reported by Octavian)" } ], "line" => 116, "raw" => "0.22 Wed Jan 5 00:17:54 2011\n", "raw_date" => "Wed Jan 5 00:17:54 2011", "version" => "0.22" }, { "date" => "2010-12-30T15:28:51Z", "entries" => [ { "line" => 120, "raw" => " - fixed bug for _video_id(). If already had \$1 is defined, was returned \$1 without matches. (woremacx++)\n\n", "style" => "-", "text" => "fixed bug for _video_id(). If already had \$1 is defined, was returned \$1 without matches. (woremacx++)" } ], "line" => 119, "raw" => "0.21 Thu Dec 30 15:28:51 2010\n", "raw_date" => "Thu Dec 30 15:28:51 2010", "version" => "0.21" }, { "date" => "2010-12-15T00:57:43Z", "entries" => [ { "line" => 123, "raw" => " - YouTube's API had change, maybe fixed it.\n\n", "style" => "-", "text" => "YouTube's API had change, maybe fixed it." } ], "line" => 122, "raw" => "0.20 Wed Dec 15 00:57:43 2010\n", "raw_date" => "Wed Dec 15 00:57:43 2010", "version" => "0.20" }, { "date" => "2010-10-17T18:17:57Z", "entries" => [ { "line" => 126, "raw" => " - Required Text::More 0.96 later\n", "style" => "-", "text" => "Required Text::More 0.96 later" }, { "line" => 127, "raw" => " - fixed POD spell miss\n\n", "style" => "-", "text" => "fixed POD spell miss" } ], "line" => 125, "raw" => "0.16 Sun Oct 17 18:17:57 2010\n", "raw_date" => "Sun Oct 17 18:17:57 2010", "version" => "0.16" }, { "date" => "2010-08-11T00:14:53Z", "entries" => [ { "line" => 130, "raw" => " - YouTube's API has changed so I fixed it. (reported by Bruce David)\n\n", "style" => "-", "text" => "YouTube's API has changed so I fixed it. (reported by Bruce David)" } ], "line" => 129, "raw" => "0.15 Wed Aug 11 00:14:53 2010\n", "raw_date" => "Wed Aug 11 00:14:53 2010", "version" => "0.15" }, { "date" => "2010-05-07T02:50:42Z", "entries" => [ { "line" => 133, "raw" => " - typo fix\n", "style" => "-", "text" => "typo fix" }, { "line" => 134, "raw" => " - wrote pod\n\n", "style" => "-", "text" => "wrote pod" } ], "line" => 132, "raw" => "0.14 Fri May 7 02:50:42 2010\n", "raw_date" => "Fri May 7 02:50:42 2010", "version" => "0.14" }, { "date" => "2010-04-10T18:20:05Z", "entries" => [ { "line" => 137, "raw" => " - Each instance to create a LWP::UserAgent. # thx kuniyoshi\n\n", "style" => "-", "text" => "Each instance to create a LWP::UserAgent. # thx kuniyoshi" } ], "line" => 136, "raw" => "0.13 Sat Apr 10 18:20:05 2010\n", "raw_date" => "Sat Apr 10 18:20:05 2010", "version" => "0.13" }, { "date" => "2010-04-03T16:06:33Z", "entries" => [ { "line" => 140, "raw" => " - upload miss X(\n\n", "style" => "-", "text" => "upload miss X(" } ], "line" => 139, "raw" => "0.12 Sat Apr 3 16:06:33 2010\n", "raw_date" => "Sat Apr 3 16:06:33 2010", "version" => "0.12" }, { "date" => "2010-04-03T15:02:25Z", "entries" => [ { "line" => 143, "raw" => " - added ua setter/getter.\n using CGI.\n\n", "style" => "-", "text" => "added ua setter/getter. using CGI." } ], "line" => 142, "raw" => "0.11 Sat Apr 3 15:02:25 2010\n", "raw_date" => "Sat Apr 3 15:02:25 2010", "version" => "0.11" }, { "date" => "2010-04-03T02:56:18Z", "entries" => [ { "line" => 147, "raw" => " - rewrite all\n\n", "style" => "-", "text" => "rewrite all" } ], "line" => 146, "raw" => "0.10 Sat Apr 3 02:56:18 2010\n", "raw_date" => "Sat Apr 3 02:56:18 2010", "version" => "0.10" }, { "date" => "2010-03-01T00:11:55Z", "entries" => [ { "line" => 150, "raw" => " - supported FULL HD quality\n\n", "style" => "-", "text" => "supported FULL HD quality" } ], "line" => 149, "raw" => "0.07 Mon Mar 1 00:11:55 2010\n", "raw_date" => "Mon Mar 1 00:11:55 2010", "version" => "0.07" }, { "date" => "2009-11-08T00:46:55Z", "entries" => [ { "line" => 153, "raw" => " - Youtube respond to changes in\n \n", "style" => "-", "text" => "Youtube respond to changes in" } ], "line" => 152, "raw" => "0.06 Sun Nov 8 00:46:55 2009\n", "raw_date" => "Sun Nov 8 00:46:55 2009", "version" => "0.06" }, { "date" => "2009-10-12T14:58:23Z", "entries" => [ { "line" => 156, "raw" => " - Youtube respond to changes in\n\n", "style" => "-", "text" => "Youtube respond to changes in" } ], "line" => 155, "raw" => "0.05 Mon Oct 12 14:58:23 2009\n", "raw_date" => "Mon Oct 12 14:58:23 2009", "version" => "0.05" }, { "entries" => [], "line" => 158, "note" => "0.04 lost X(", "raw" => "0.03 ~ 0.04 lost X(\n\n", "version" => "0.03" }, { "date" => "2009-06-06T21:04:17Z", "entries" => [ { "line" => 161, "raw" => " - added 'fmt' field\n\n", "style" => "-", "text" => "added 'fmt' field" } ], "line" => 160, "raw" => "0.02 Sat Jun 6 21:04:17 2009\n", "raw_date" => "Sat Jun 6 21:04:17 2009", "version" => "0.02" }, { "date" => "2009-04-04T16:26:29Z", "entries" => [ { "line" => 164, "raw" => " - original version\n", "style" => "-", "text" => "original version" } ], "line" => 163, "raw" => "0.01 Sat Apr 4 16:26:29 2009\n", "raw_date" => "Sat Apr 4 16:26:29 2009", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/Net-DNS-SPF-Expander.parsed000644 000000 000000 00000006275 14472651645 021433 0ustar00000000 000000 { "preamble" => "Revision history for {{\$dist->name}}", "raw_preamble" => "Revision history for {{\$dist->name}}\n\n", "releases" => [ { "entries" => [], "line" => 3, "raw" => "{{\$NEXT}}\n\n", "version" => "{{\$NEXT}}" }, { "date" => "2013-07-29", "entries" => [ { "line" => 6, "raw" => " - Make sure we can run the script on\n the same zonefile again without\n creating nonsense.\n", "style" => "-", "text" => "Make sure we can run the script on the same zonefile again without creating nonsense." }, { "line" => 9, "raw" => " - Fix tests by not reading from the file,\n but using a new return scalar value\n from ->write. It used to return 1, now\n it returns the string that will be\n written out.\n\n", "style" => "-", "text" => "Fix tests by not reading from the file, but using a new return scalar value from ->write. It used to return 1, now it returns the string that will be written out." } ], "line" => 5, "raw" => "0.006 2013-07-29\n", "raw_date" => "2013-07-29", "version" => "0.006" }, { "entries" => [ { "line" => 16, "raw" => " - Make sure that our split spf records\n contain the protocol, v=spf1.\n\n", "style" => "-", "text" => "Make sure that our split spf records contain the protocol, v=spf1." } ], "line" => 15, "raw" => "0.005\n", "version" => "0.005" }, { "date" => "2013-07-26", "entries" => [ { "line" => 20, "raw" => " - Add documentation.\n\n", "style" => "-", "text" => "Add documentation." } ], "line" => 19, "raw" => "0.004 2013-07-26\n", "raw_date" => "2013-07-26", "version" => "0.004" }, { "date" => "2013-07-25", "entries" => [ { "line" => 23, "raw" => " - Make script be found and installed. \n\n", "style" => "-", "text" => "Make script be found and installed." } ], "line" => 22, "raw" => "0.003 2013-07-25\n", "raw_date" => "2013-07-25", "version" => "0.003" }, { "date" => "2013-07-25", "entries" => [ { "line" => 26, "raw" => " - Make module get opts, and\n", "style" => "-", "text" => "Make module get opts, and" }, { "line" => 27, "raw" => " - add script\n\n", "style" => "-", "text" => "add script" } ], "line" => 25, "raw" => "0.002 2013-07-25\n", "raw_date" => "2013-07-25", "version" => "0.002" }, { "date" => "2013-07-25", "entries" => [ { "line" => 30, "raw" => " - Initial release. Hello world!\n", "style" => "-", "text" => "Initial release. Hello world!" } ], "line" => 29, "raw" => "0.001 2013-07-25\n", "raw_date" => "2013-07-25", "version" => "0.001" } ] } CPAN-Changes-0.500005/corpus/dists/Config-GitLike.changes000644 000000 000000 00000005603 14472651645 020750 0ustar00000000 000000 1.11 2013-08-04 * Switch from the deprecated Any::Moose to Moo 1.10 2012-11-07 * Provide and API got accessing the original key that a value was set with, in a case-preserving way. If the case of the key in a file matters, it is now possible to determine. * The 'name' value passed to the 'callback' parameter is now no longer forced to lower-case, as a consequence. 1.09 2012-08-10 * Multiple bug fixes concerning filters, including empty filters, valueless keys, and applying filters to single values. * Add "human" argument to get_all and get_regexp, to match get * Add an add_comment method * Add an encoding attribute, which adds the appropriate layer on file I/O * Enforce that all keys must have sections, as git 1.7.4.4 began doing 1.08 2012-02-15 * Fix loading of user_file, broken in dcdd01f, due to unexpanded ~ (alexmv, clkao@clkao.org) 1.07 2011-10-25 * Fix a spelling mistake in Config::GitLike::Cascaded (gregoa@debian.org, forwarded by carnil@debian.org) 1.06 2011-10-12 * Allow calling ->load_file as a class method, for simple use cases (alexmv) * Fix a parsing bug when quoted strings directly adjoined to unquoted strings (alexmv) * Calling ->load_file on a nonexistant file no longer sets ->is_loaded (alexmv) * Document that getters implicitly call ->load (alexmv) * Make ->dump implicitly call ->load as well (alexmv) * Minor POD fixes (alexmv, spang) 1.05 2011-01-07 * support Module::Install::ExtraTests 0.007 (sunnavy) * properly set is => 'rw' in inherited classes (trs, alexmv) * silence lc warnings on undef under perl 5.12 (iarnell@gmail.com) 1.04 - 2010-04-03 * The functionality of Config::GitLike::Cascaded has been folded into Config::GitLike as a "cascade" option, and the subpackage is now deprecated. (alexmv) * Config::GitLike::Git->new->load("/path/to/git") when the path is lacking a ".git", or is a bare repository, now works. (alexmv) * Fixed a bug wherein the home directory config file would be loaded twice, causing all values to be multiple, if that was your cwd. Reported by rjbs. (alexmv) * Allow explicitly calling ->load_file without previously having called ->load (alexmv) 1.03 - 2010-01-03 * Filter without replace_all should only replace the _first_ match (alexmv) * Having a matching filter with multiple and not replace_all does mean replacement (alexmv) * Fix a test that failed because multiple now works, and we're too smart (alexmv) * Fix for when ->set_multiple called with no arguments (alexmv) 1.02 - 2009-08-19 * Bugfixes and extra tests for escaped \ and " in subsections (sunnavy) * win32 fixes (sunnavy) * auto-escape \ and " in subsections on set (sunnavy) 1.01 - 2009-08-11 * Fix breakage under Mouse due to Moose references * New Config::GitLike::Git module for loading config files from the git locations * various cleanups of Makefile.PL * remove extraneous dep Regexp::Common 1.00 - 2009-07-08 * Initial release CPAN-Changes-0.500005/corpus/dists/DBICx-TestDatabase.changes000644 000000 000000 00000000353 14472651645 021445 0ustar00000000 000000 0.04 14 December 2010 - support unicode (patch by diegok) 0.03 14 December 2010 - use an in-memory sqlite database by default 0.01 7 October 2007 - first version, released upon an unsuspecting world CPAN-Changes-0.500005/corpus/dists/Business-PayPal-API.parsed000644 000000 000000 00000066721 14472651645 021461 0ustar00000000 000000 { "preamble" => "Revision history for Perl extension Business::PayPal::API.\n\nRelease 0.71\n-------------------------------------------\n\n- Merge in changes from Ron Phipps.\n - Reduce SOAP version requirement.\n - Protection eligibility support.\n- Merge in changes from Tomas Doran.\n - CPAN packaging enhancements.\n- Extract out more payer details from XML. (PayerName, NameSuffix, PayerCountry).\n- Fix https://rt.cpan.org/Public/Bug/Display.html?id=67386\n\nRelease 0.70 - First OALDERS release\n-------------------------------------\n- Fixes RT #70424 (Syntax deprecated in perl v5.14)\n>>>>>>> Fixes RT #70424 and bumps version to 0.70 for release.\n\nRelease 0.68 - First hembreed release\n-------------------------------------\nI've moved the module's scm to http://github.com/hembreed/Business-PayPal-API so others may share my pain. CPAN will be updated from there.\n\n- API.pm\n 1. Changed eq 'Success' to =~ /Success/ to accomodate variations introduced\n by PayPal.\n 2. Changed test for duplicates to test for defined variable first. This\n was causing errors in 5.10+ perl versions.\n-t/*t Changed test for Success in all test modules as above\n-t/RecurringPayments Corrected errors in type definitions and testing. Needs more work.\n-TransactionSearch Corrected test instructions and code to allow transaction searches using the transactionID. This works for some types of transactions but not others as per PayPal. It is the only way to get MassPayment information.\n\nRelease 0.62 - last scottw release\n----------------------------", "raw_preamble" => "Revision history for Perl extension Business::PayPal::API.\n\nRelease 0.71\n-------------------------------------------\n\n- Merge in changes from Ron Phipps.\n - Reduce SOAP version requirement.\n - Protection eligibility support.\n- Merge in changes from Tomas Doran.\n - CPAN packaging enhancements.\n- Extract out more payer details from XML. (PayerName, NameSuffix, PayerCountry).\n- Fix https://rt.cpan.org/Public/Bug/Display.html?id=67386\n\nRelease 0.70 - First OALDERS release\n-------------------------------------\n- Fixes RT #70424 (Syntax deprecated in perl v5.14)\n>>>>>>> Fixes RT #70424 and bumps version to 0.70 for release.\n\nRelease 0.68 - First hembreed release\n-------------------------------------\nI've moved the module's scm to http://github.com/hembreed/Business-PayPal-API so others may share my pain. CPAN will be updated from there.\n\n- API.pm\n 1. Changed eq 'Success' to =~ /Success/ to accomodate variations introduced\n by PayPal.\n 2. Changed test for duplicates to test for defined variable first. This\n was causing errors in 5.10+ perl versions.\n-t/*t Changed test for Success in all test modules as above\n-t/RecurringPayments Corrected errors in type definitions and testing. Needs more work.\n-TransactionSearch Corrected test instructions and code to allow transaction searches using the transactionID. This works for some types of transactions but not others as per PayPal. It is the only way to get MassPayment information.\n\nRelease 0.62 - last scottw release\n----------------------------\n", "releases" => [ { "entries" => [ { "line" => 35, "raw" => "date: 2009/07/28 18:00:58; author: scott; state: Exp; lines: +44 -4\n", "style" => "", "text" => "date: 2009/07/28 18:00:58; author: scott; state: Exp; lines: +44 -4" }, { "line" => 36, "raw" => "- getFields() returns an array ref if multiple values are returned\n from PayPal, otherwise it behaves as it always did, returning a\n non-ref scalar.\n", "style" => "-", "text" => "getFields() returns an array ref if multiple values are returned from PayPal, otherwise it behaves as it always did, returning a non-ref scalar." }, { "line" => 39, "raw" => "- BillingAgreement information returned in ExpressCheckout\n", "style" => "-", "text" => "BillingAgreement information returned in ExpressCheckout" }, { "line" => 40, "raw" => "- Fix GetTransactionDetails 'PII_SalesTax' parameter\n", "style" => "-", "text" => "Fix GetTransactionDetails 'PII_SalesTax' parameter" }, { "line" => 41, "raw" => "- Fix GetTransactionDetails to return multiple PaymentItems\n", "style" => "-", "text" => "Fix GetTransactionDetails to return multiple PaymentItems" }, { "line" => 42, "raw" => "- Fix MassPay to use the correct UniqueID parameter\n", "style" => "-", "text" => "Fix MassPay to use the correct UniqueID parameter" }, { "line" => 43, "raw" => "- Add DoReferenceTransaction to RecurringPayments API\n", "style" => "-", "text" => "Add DoReferenceTransaction to RecurringPayments API" }, { "line" => 44, "raw" => "- Lots of credit given to great folks with patches in API docs\n\n", "style" => "-", "text" => "Lots of credit given to great folks with patches in API docs" }, { "line" => 46, "raw" => "Thanks everyone! I'm handing this module off to Danny Hembree for\nmaintenance now.\n\n", "style" => "", "text" => "Thanks everyone! I'm handing this module off to Danny Hembree for maintenance now." }, { "line" => 49, "raw" => "Release 0.61\n----------------------------\n", "style" => "", "text" => "Release 0.61" } ], "line" => 34, "raw" => "revision 1.24\n", "version" => "1.24" }, { "entries" => [ { "line" => 52, "raw" => "date: 2008/05/05 15:10:40; author: scott; state: Exp; lines: +37 -5\n", "style" => "", "text" => "date: 2008/05/05 15:10:40; author: scott; state: Exp; lines: +37 -5" }, { "line" => 53, "raw" => "- timeout setting available\n", "style" => "-", "text" => "timeout setting available" }, { "line" => 54, "raw" => "- additional troubleshooting documentation (auth error handling, URL munging)\n----------------------------\n", "style" => "-", "text" => "additional troubleshooting documentation (auth error handling, URL munging)" } ], "line" => 51, "raw" => "revision 1.23\n", "version" => "1.23" }, { "entries" => [ { "line" => 57, "raw" => "date: 2008/05/05 15:11:14; author: scott; state: Exp; lines: +34 -2\n", "style" => "", "text" => "date: 2008/05/05 15:11:14; author: scott; state: Exp; lines: +34 -2" }, { "line" => 58, "raw" => "- add shipto parameters\n----------------------------\n", "style" => "-", "text" => "add shipto parameters" } ], "line" => 56, "note" => "[DirectPayments.pm]", "raw" => "revision 1.4 [DirectPayments.pm]\n", "version" => "1.4" }, { "entries" => [ { "line" => 61, "raw" => "date: 2008/05/05 15:11:51; author: scott; state: Exp; lines: +11 -3\n", "style" => "", "text" => "date: 2008/05/05 15:11:51; author: scott; state: Exp; lines: +11 -3" }, { "line" => 62, "raw" => "- MaxAmount parameter take currencyID attribute (Sandbox)\n----------------------------\n", "style" => "-", "text" => "MaxAmount parameter take currencyID attribute (Sandbox)" } ], "line" => 60, "note" => "[ExpressCheckout.pm]", "raw" => "revision 1.12 [ExpressCheckout.pm]\n", "version" => "1.12" }, { "entries" => [ { "line" => 65, "raw" => "date: 2008/05/05 15:15:04; author: scott; state: Exp;\n", "style" => "", "text" => "date: 2008/05/05 15:15:04; author: scott; state: Exp;" }, { "line" => 66, "raw" => "- add base for RecurringPayments (not working yet)\n\n", "style" => "-", "text" => "add base for RecurringPayments (not working yet)" }, { "line" => 68, "raw" => "Release 0.51\n----------------------------\n", "style" => "", "text" => "Release 0.51" } ], "line" => 64, "note" => "[RecurringPayments.pm]", "raw" => "revision 1.1 [RecurringPayments.pm]\n", "version" => "1.1" }, { "entries" => [ { "line" => 71, "raw" => "date: 2007/09/27 20:32:31; author: scott; state: Exp; lines: +18 -6\n", "style" => "", "text" => "date: 2007/09/27 20:32:31; author: scott; state: Exp; lines: +18 -6" }, { "line" => 72, "raw" => "- [API.pm] add three-token signature testing URI (Oliver Ready)\n", "style" => "-", "text" => "[API.pm] add three-token signature testing URI (Oliver Ready)" }, { "line" => 73, "raw" => "- [DirectPayments.pm] add ShippingTotal field (patch: Michael Hendricks)\n", "style" => "-", "text" => "[DirectPayments.pm] add ShippingTotal field (patch: Michael Hendricks)" }, { "line" => 74, "raw" => "- [VoidRequest.pm] documentation fixes for method call (Oliver Ready)\n", "style" => "-", "text" => "[VoidRequest.pm] documentation fixes for method call (Oliver Ready)" }, { "line" => 75, "raw" => "- [ReauthorizationRequest.pm] documentation fixes for method call (Oliver Ready)\n\n", "style" => "-", "text" => "[ReauthorizationRequest.pm] documentation fixes for method call (Oliver Ready)" }, { "line" => 77, "raw" => "Release 0.51\n----------------------------\n", "style" => "", "text" => "Release 0.51" } ], "line" => 70, "raw" => "revision 1.22\n", "version" => "1.22" }, { "entries" => [ { "line" => 80, "raw" => "date: 2007/08/29 20:56:42; author: scott; state: Exp; lines: +4 -2\n", "style" => "", "text" => "date: 2007/08/29 20:56:42; author: scott; state: Exp; lines: +4 -2" }, { "line" => 81, "raw" => "- fix PayerStatus location in DOM, add AddressStatus element (patch: Michael Hendricks)\n\n", "style" => "-", "text" => "fix PayerStatus location in DOM, add AddressStatus element (patch: Michael Hendricks)" }, { "line" => 83, "raw" => "Release 0.50\n----------------------------\n", "style" => "", "text" => "Release 0.50" } ], "line" => 79, "raw" => "revision 1.10\n", "version" => "1.10" }, { "entries" => [ { "line" => 86, "raw" => "date: 2007/05/21 21:59:33; author: scott; state: Exp; lines: +5 -5\n", "style" => "", "text" => "date: 2007/05/21 21:59:33; author: scott; state: Exp; lines: +5 -5" }, { "line" => 87, "raw" => "- minor doc changes\n", "style" => "-", "text" => "minor doc changes" }, { "line" => 88, "raw" => "- new Mass Pay API module included\n----------------------------\n\n", "style" => "-", "text" => "new Mass Pay API module included" }, { "line" => 91, "raw" => "Release 0.41\n----------------------------\n", "style" => "", "text" => "Release 0.41" } ], "line" => 85, "raw" => "revision 1.20\n", "version" => "1.20" }, { "entries" => [ { "line" => 94, "raw" => "date: 2007/05/15 20:46:56; author: scott; state: Exp; lines: +34 -12\n", "style" => "", "text" => "date: 2007/05/15 20:46:56; author: scott; state: Exp; lines: +34 -12" }, { "line" => 95, "raw" => "- some minor documentation additions\n\n", "style" => "-", "text" => "some minor documentation additions" }, { "line" => 97, "raw" => "Release 0.40\n----------------------------\n", "style" => "", "text" => "Release 0.40" } ], "line" => 93, "raw" => "revision 1.19\n", "version" => "1.19" }, { "entries" => [ { "line" => 100, "raw" => "date: 2006/10/06 17:53:44; author: scott; state: Exp; lines: +2 -2\n", "style" => "", "text" => "date: 2006/10/06 17:53:44; author: scott; state: Exp; lines: +2 -2" }, { "line" => 101, "raw" => "- version bump\n----------------------------\n", "style" => "-", "text" => "version bump" } ], "line" => 99, "raw" => "revision 1.18\n", "version" => "1.18" }, { "entries" => [ { "line" => 104, "raw" => "date: 2006/10/06 17:49:50; author: scott; state: Exp; lines: +42 -38\n", "style" => "", "text" => "date: 2006/10/06 17:49:50; author: scott; state: Exp; lines: +42 -38" }, { "line" => 105, "raw" => "- using PayPal API version 2.0\n", "style" => "-", "text" => "using PayPal API version 2.0" }, { "line" => 106, "raw" => "- note about SSL requirements of LWP\n", "style" => "-", "text" => "note about SSL requirements of LWP" }, { "line" => 107, "raw" => "- minor documentation cleanup\n", "style" => "-", "text" => "minor documentation cleanup" }, { "line" => 108, "raw" => "- DirectPayments tests added\n", "style" => "-", "text" => "DirectPayments tests added" }, { "line" => 109, "raw" => "- New modules (with tests!) from Danny Hembree:\n AuthorizationRequest.pm\n CaptureRequest.pm\n ReauthorizationRequest.pm\n VoidRequest.pm\n----------------------------\n", "style" => "-", "text" => "New modules (with tests!) from Danny Hembree: AuthorizationRequest.pm CaptureRequest.pm ReauthorizationRequest.pm VoidRequest.pm" } ], "line" => 103, "raw" => "revision 1.17\n", "version" => "1.17" }, { "entries" => [ { "line" => 116, "raw" => "date: 2006/07/06 15:25:21; author: scott; state: Exp; lines: +9 -2\n", "style" => "", "text" => "date: 2006/07/06 15:25:21; author: scott; state: Exp; lines: +9 -2" }, { "line" => 117, "raw" => "- add acknowledgement and pointers to example code from Andy Spiegl and others\n\n", "style" => "-", "text" => "add acknowledgement and pointers to example code from Andy Spiegl and others" }, { "line" => 119, "raw" => "Release 0.33\n----------------------------\n", "style" => "", "text" => "Release 0.33" } ], "line" => 115, "raw" => "revision 1.16\n", "version" => "1.16" }, { "entries" => [ { "line" => 122, "raw" => "date: 2006/07/05 18:05:39; author: scott; state: Exp; lines: +2 -2\n", "style" => "", "text" => "date: 2006/07/05 18:05:39; author: scott; state: Exp; lines: +2 -2" }, { "line" => 123, "raw" => "- fix documentation regarding SetExpressCheckout (returns a hash, not\n a scalar). If you were following the code in the SYNOPSIS for\n ExpressCheckout and getting a token with '3/8' or '4/8', you should\n change the \$token to %response, since SetExpressCheckout() returns a\n hash (big thanks to Andy Spiegl for finding this).\n\n", "style" => "-", "text" => "fix documentation regarding SetExpressCheckout (returns a hash, not a scalar). If you were following the code in the SYNOPSIS for ExpressCheckout and getting a token with '3/8' or '4/8', you should change the \$token to %response, since SetExpressCheckout() returns a hash (big thanks to Andy Spiegl for finding this)." }, { "line" => 129, "raw" => "Release 0.32\n----------------------------\n", "style" => "", "text" => "Release 0.32" } ], "line" => 121, "raw" => "revision 1.15\n", "version" => "1.15" }, { "entries" => [ { "line" => 132, "raw" => "date: 2006/07/03 15:46:24; author: scott; state: Exp; lines: +16 -1\n", "style" => "", "text" => "date: 2006/07/03 15:46:24; author: scott; state: Exp; lines: +16 -1" }, { "line" => 133, "raw" => "- acknowledgements section\n----------------------------\n", "style" => "-", "text" => "acknowledgements section" } ], "line" => 131, "raw" => "revision 1.14\n", "version" => "1.14" }, { "entries" => [ { "line" => 136, "raw" => "date: 2006/07/03 15:40:16; author: scott; state: Exp; lines: +11 -2\n", "style" => "", "text" => "date: 2006/07/03 15:40:16; author: scott; state: Exp; lines: +11 -2" }, { "line" => 137, "raw" => "- fix for 3-token auth\n\n", "style" => "-", "text" => "fix for 3-token auth" }, { "line" => 139, "raw" => "Release 0.31\n----------------------------\n", "style" => "", "text" => "Release 0.31" } ], "line" => 135, "raw" => "revision 1.13\n", "version" => "1.13" }, { "entries" => [ { "line" => 142, "raw" => "date: 2006/06/29 02:36:24; author: scott; state: Exp; lines: +2 -2\n", "style" => "", "text" => "date: 2006/06/29 02:36:24; author: scott; state: Exp; lines: +2 -2" }, { "line" => 143, "raw" => "- fix StateOrProvince typo [rt.cpan.org #20176]\n\n", "style" => "-", "text" => "fix StateOrProvince typo [rt.cpan.org #20176]" }, { "line" => 145, "raw" => "Release 0.30\n----------------------------\n", "style" => "", "text" => "Release 0.30" } ], "line" => 141, "raw" => "revision 1.12\n", "version" => "1.12" }, { "entries" => [ { "line" => 148, "raw" => "date: 2006/04/18 16:23:18; author: scott; state: Exp; lines: +2 -2\n", "style" => "", "text" => "date: 2006/04/18 16:23:18; author: scott; state: Exp; lines: +2 -2" }, { "line" => 149, "raw" => "- added DirectPayments API by Daniel Hembree. Thanks Daniel!\n\n", "style" => "-", "text" => "added DirectPayments API by Daniel Hembree. Thanks Daniel!" }, { "line" => 151, "raw" => "Release 0.23\n----------------------------\n", "style" => "", "text" => "Release 0.23" } ], "line" => 147, "raw" => "revision 1.11\n", "version" => "1.11" }, { "entries" => [ { "line" => 154, "raw" => "date: 2006/04/04 19:29:08; author: scott; state: Exp; lines: +12 -5\n", "style" => "", "text" => "date: 2006/04/04 19:29:08; author: scott; state: Exp; lines: +12 -5" }, { "line" => 155, "raw" => "- typo fix\n", "style" => "-", "text" => "typo fix" }, { "line" => 156, "raw" => "- wrap soap call in eval for safety (if ssl neg. fails w/ paypal, it croaks)\n", "style" => "-", "text" => "wrap soap call in eval for safety (if ssl neg. fails w/ paypal, it croaks)" }, { "line" => 157, "raw" => "- version bump\n\n", "style" => "-", "text" => "version bump" }, { "line" => 159, "raw" => "Release 0.22\n----------------------------\n", "style" => "", "text" => "Release 0.22" } ], "line" => 153, "raw" => "revision 1.10\n", "version" => "1.10" }, { "entries" => [ { "line" => 162, "raw" => "date: 2006/03/28 18:05:03; author: scott; state: Exp; lines: +54 -44\n", "style" => "", "text" => "date: 2006/03/28 18:05:03; author: scott; state: Exp; lines: +54 -44" }, { "line" => 163, "raw" => "- documentation updates\n\n", "style" => "-", "text" => "documentation updates" }, { "line" => 165, "raw" => "Release 0.21\n----------------------------\n", "style" => "", "text" => "Release 0.21" } ], "line" => 161, "raw" => "revision 1.9\n", "version" => "1.9" }, { "entries" => [ { "line" => 168, "raw" => "date: 2006/03/24 17:12:59; author: scott; state: Exp; lines: +14 -4\n", "style" => "", "text" => "date: 2006/03/24 17:12:59; author: scott; state: Exp; lines: +14 -4" }, { "line" => 169, "raw" => "- fix fault printing\n", "style" => "-", "text" => "fix fault printing" }, { "line" => 170, "raw" => "- fix getFieldsList record population\n\n", "style" => "-", "text" => "fix getFieldsList record population" }, { "line" => 172, "raw" => "Release 0.20\n----------------------------\n", "style" => "", "text" => "Release 0.20" } ], "line" => 167, "raw" => "revision 1.8\n", "version" => "1.8" }, { "entries" => [ { "line" => 175, "raw" => "date: 2006/03/23 17:28:10; author: scott; state: Exp; lines: +90 -9\n", "style" => "", "text" => "date: 2006/03/23 17:28:10; author: scott; state: Exp; lines: +90 -9" }, { "line" => 176, "raw" => "- allow subclass methods to be imported into API.pm namespace\n----------------------------\n", "style" => "-", "text" => "allow subclass methods to be imported into API.pm namespace" } ], "line" => 174, "raw" => "revision 1.7\n", "version" => "1.7" }, { "entries" => [ { "line" => 179, "raw" => "date: 2006/03/22 23:20:09; author: scott; state: Exp; lines: +2 -2\n", "style" => "", "text" => "date: 2006/03/22 23:20:09; author: scott; state: Exp; lines: +2 -2" }, { "line" => 180, "raw" => "- version bump\n----------------------------\n", "style" => "-", "text" => "version bump" } ], "line" => 178, "raw" => "revision 1.6\n", "version" => "1.6" }, { "entries" => [ { "line" => 183, "raw" => "date: 2006/03/22 23:19:03; author: scott; state: Exp; lines: +40 -13\n", "style" => "", "text" => "date: 2006/03/22 23:19:03; author: scott; state: Exp; lines: +40 -13" }, { "line" => 184, "raw" => "- add GetTransactionDetails API\n", "style" => "-", "text" => "add GetTransactionDetails API" }, { "line" => 185, "raw" => "- add TransactionSearch API\n", "style" => "-", "text" => "add TransactionSearch API" }, { "line" => 186, "raw" => "- getFieldList() for API.pm\n----------------------------\n", "style" => "-", "text" => "getFieldList() for API.pm" } ], "line" => 182, "raw" => "revision 1.5\n", "version" => "1.5" }, { "entries" => [ { "line" => 189, "raw" => "date: 2006/03/21 22:15:11; author: scott; state: Exp; lines: +2 -2\n", "style" => "", "text" => "date: 2006/03/21 22:15:11; author: scott; state: Exp; lines: +2 -2" }, { "line" => 190, "raw" => "- bump version\n----------------------------\n", "style" => "-", "text" => "bump version" } ], "line" => 188, "raw" => "revision 1.4\n", "version" => "1.4" }, { "entries" => [ { "line" => 193, "raw" => "date: 2006/03/21 22:05:19; author: scott; state: Exp; lines: +55 -31\n", "style" => "", "text" => "date: 2006/03/21 22:05:19; author: scott; state: Exp; lines: +55 -31" }, { "line" => 194, "raw" => "- minor debugging changes\n", "style" => "-", "text" => "minor debugging changes" }, { "line" => 195, "raw" => "- documentation update for developers\n", "style" => "-", "text" => "documentation update for developers" }, { "line" => 196, "raw" => "- note about using IO::Socket::SSL (don't)\n----------------------------\n", "style" => "-", "text" => "note about using IO::Socket::SSL (don't)" } ], "line" => 192, "raw" => "revision 1.3\n", "version" => "1.3" }, { "entries" => [ { "line" => 199, "raw" => "date: 2006/03/16 23:33:49; author: scott; state: Exp; lines: +184 -26\n", "style" => "", "text" => "date: 2006/03/16 23:33:49; author: scott; state: Exp; lines: +184 -26" }, { "line" => 200, "raw" => "- initial checkin of API and subclasses\n", "style" => "-", "text" => "initial checkin of API and subclasses" }, { "line" => 201, "raw" => "- all tests working, documentation done\n----------------------------\n", "style" => "-", "text" => "all tests working, documentation done" } ], "line" => 198, "raw" => "revision 1.2\n", "version" => "1.2" }, { "entries" => [ { "line" => 204, "raw" => "date: 2006/03/15 23:33:53; author: scott; state: Exp;\n", "style" => "", "text" => "date: 2006/03/15 23:33:53; author: scott; state: Exp;" }, { "line" => 205, "raw" => "- moved from Business::PayPal::WPP::ExpressCheckout\n", "style" => "-", "text" => "moved from Business::PayPal::WPP::ExpressCheckout" }, { "line" => 206, "raw" => "- uses API.pm for authorization/authentication and other common functions\n=============================================================================\n", "style" => "-", "text" => "uses API.pm for authorization/authentication and other common functions" } ], "line" => 203, "raw" => "revision 1.1\n", "version" => "1.1" } ] } CPAN-Changes-0.500005/corpus/dists/XML-LibXSLT.changes000644 000000 000000 00000023025 14472651645 020072 0ustar00000000 000000 Revision history for Perl extension XML::LibXSLT. 1.87 Mon 3 Feb 10:07:31 IST 2014 - Decrease the minimum libxslt version again. - Setting it as 1.1.28 did not fix the failures, and now we have some more tests to test against it. - https://rt.cpan.org/Ticket/Display.html?id=92659 - Thanks to Slaven Rezic for the report. 1.86 Sun 2 Feb 17:06:07 IST 2014 - Add t/xml-grammar-failures.t to catch test failures in dependent modules. - Add some data files for it under t/data/*. - This fails on FreeBSD 9.2 currently. 1.85 Sat 1 Feb 16:23:43 IST 2014 - Add "use strict;" and "use warnings;" globally (CPANTS). - Add LICENSE to the MANIFEST. 1.84 Thu 26 Dec 14:19:19 IST 2013 - Hopefully fix a segmentation fault on Win32 introduced in the last ver. - https://rt.cpan.org/Ticket/Display.html?id=91652 - Thanks to Alexandr Ciornii for the report, and to Nikolay Sivov for providing help. 1.83 Sun 22 Dec 18:20:23 IST 2013 - Get rid of compiler warnings when compiling using CLANG. - https://rt.cpan.org/Public/Bug/Display.html?id=91118 - Thanks to Daniel Macks for the report. 1.82 Wed 6 Nov 13:17:39 IST 2013 - Makefile.PL: Report LibXSLT mismatch correctly. - https://rt.cpan.org/Ticket/Display.html?id=90085 - Thanks to David Schmidt for the report, and to joel and brother from the channel #perl-help for analysis. 1.81 Fri 5 Jul 10:13:36 IDT 2013 - Fix a typo reported by dsteinbrunner: - https://rt.cpan.org/Ticket/Display.html?id=86689 1.80 Wed 23 Jan 07:53:57 IST 2013 - Bump the minimum version of libxslt2 to 1.1.28. - due to failures such as http://www.cpantesters.org/cpan/report/6f5029ee-639a-11e2-8465-2a97270fb964 1.79 Mon 26 Nov 12:15:35 IST 2012 - Die when libxslt is 1.1.27. - Due to this bug - https://bugzilla.gnome.org/show_bug.cgi?id=684564 1.78 Thu 6 Sep 13:17:28 IDT 2012 - Add output_method method, update documentation of media_type (dorian@cpan). - Thanks, Dorian! 1.77 Sat Feb 25 16:23:57 IST 2012 - Apply a patch from Michael Ludwig clarifying the quoting of string parameters to the XSLT transformation. - Thanks, Michael! 1.76 Thu Jan 12 19:15:03 IST 2012 - Made LibXSLT.xs compile with C compilers that don't accept declarations inside blocks: - https://rt.cpan.org/Public/Bug/Display.html?id=73905 - These include Microsoft Visual C++ (in C-mode). 1.75 Fri Oct 28 17:26:57 IST 2011 - Convert the following test scripts from Test.pm to Test::More : - t/03input.t - Fix for https://rt.cpan.org/Public/Bug/Display.html?id=71345 by Tim Brody: - «segfault in free()» - Thanks, Tim! 1.74 Tue Oct 25 21:48:48 IST 2011 - Convert the following test scripts from Test.pm to Test::More : - t/01basic.t - t/02dromeds.t - t/04params.t - t/05quick.t - t/06output.t - t/06entities.t - t/07blankdoc.t - t/08literal.t - t/09exslt.t - t/10functions.t - t/11utf8.t - t/12import.t - t/13error.t - t/14security.t - t/15misc.t - In the process made "Encode" and perl-5.8.1. pre-requisites of this distribution. - Add the "make runtest" and "make distruntest" targets to test using Test-Run. 1.73 Sun Oct 9 17:32:30 IST 2011 - Possible fix for https://rt.cpan.org/Ticket/Display.html?id=71456 : - made the port reservation on t/14security.t for the non-existent URL more robust. 1.72 Thu Oct 6 13:37:13 IST 2011 - Moved the benchmarking code under benchmark/ so it won't be indexed by CPAN (Tim Brody). - Avoid leaking memory inside extension elements by cleaning up on stylesheet DESTROY (Tim Brody). - xsltInit() and xsltCleanupGlobals() to avoid leaking memory on init/shutdown (Tim Brody). - Added support for stylesheet context functions via a $stylesheet->register_function() method with the same arguments as XML::LibXSLT->register_function(). (Tim Brody) - Added support for register_element() on stylesheet objects. The callback may leak memory though - nothing frees the _private attributes of the node + document owner for the passed arguments? (Tim Brody) 1.71 Sat Sep 10 20:38:23 IDT 2011 - Fixed https://rt.cpan.org/Ticket/Display.html?id=50487 : - add a blacklist for libxslt-1.1.25 which has a deadlock that hangs a test. - Fixed https://rt.cpan.org/Ticket/Display.html?id=52422 : - Unexpected webserver dependency in test - Updated the version control instructions in the README to bitbucket.org. 1.70 - fixed various bugs - documentation updates - #48247: Win32 patch kindly provided by KMX@cpan.org - sync with latest XML::LibXML ABI and add a compatibility check - do not force -lgcrypt and -lgpg-error linker flags - fix for attribute nodes returned by user-defined XPath functions - address #41542: restore internalDTD subset on the source document of a transformation (libxslt unlinks it) 1.68 - fix compilation problems - skip exslt tests if not available - added XML::LibXSLT::HAVE_EXSLT() (1/0) 1.67 - sync the binary internals to those of XML::LibXML 1.67 - update regression tests for compatibility with up-to-date libxslt 1.66 - bump requirements to libxslt 1.1.8 - sync the binary internals to those of XML::LibXML 1.66 1.63 - fix SIGSEGV regarding freeing nodes created by extension functions (reported by Elizabeth Mattijsen) - use pkg-config to determine linker flags for libexslt 1.62 - security callback interface contributed by Shane Corgatelli - check libxslt version - added XML::LibXML-like API to retrieve libxslt version - added output_as_bytes() and output_as_chars() - added regression tests for output_as_* to 11utf8.t - output_as_string documentation fixed to match reality - make 06entities.t to pass with older libxml2/libxslt - POD uses items instead of headings - fixed media_type and output_encoding for imported stylesheets [rt.cpan.org #23440] 1.61 - fixed error reporting: die on fatal errors, warn otherwise (in particular, warn rather than die on ) 1.60 - fix a huge memory leak in transform_file (bug #1314) - make it clear from the docs that output_string returns bytes (bug #8875) - added missing type-casting to fix compile-time warnings (bug #18508) - using call_* instead of perl_call_* (perl_ variants are obsolete) - in callbacks, POPs on error before croaking, otherwise it has no effect (and we probably leak) - added test case which used to fail (provided in rt #15723) - apply patch for Makefile.PL for non-standard libxslt paths (bug #16224) - fix segfault with registered functions returning nodes - fix leaks in parse_stylesheet - error reporting 1.59 - (revision bumped to match XML::LibXML) - adapted for new XML::LibXML::InputCallback API - support for static linking against libxml2 1.57 - (revision bumped to match XML::LibXML) - Some minor fixes to perl extension functions support - Fixed callbacks support - Enable xinclude in XSLT files - Fixed some memory leaks - Fixed some segfaults 1.53 - Fixed ordering of params to perl extension funcs - Implemented nodelist and other data type passing to extension functions, and returning nodelist and elements (some code from Ido Ben-Zvi) - Slightly better error handling 1.52 - Perl extension functions (whee!) 1.51 - Mac OS X fixes - Cleaned up XPath quoting - Fixed document('') test (though if it still doesn't work in your code, see t/07blankdoc.t for details about how to make it work). 1.50 - Cleaned up media_type method so it doesn't segfault. 1.49 - Migrated to new XML::LibXML 1.49 (with new memory stuff) 1.31 - removed global callbacks - changed callbacks to using LibXML globals 1.30 - Compatibility with XML::LibXML 1.30 (esp callbacks) - EXSLT support - Better test files 1.09 - Some fixes and tests for document('') - Better have_library implementation in Makefile.PL 1.08 - Fixed Makefile.PL check for libxslt > 0.7.0 to work with 1.0.0 1.07 - Fixes to work with XML::LibXML 0.94 1.06 - Support text/html defaulting for media_type when document element is . - Support building on Win32 1.05 - More tests and fixes for media_type 1.04 - Fixed media_type method 1.03 - Added output_encoding and media_type methods 1.02 - Fixed Makefile.PL to work with libxslt 0.10 1.01 - Removed hack where we set dom->standalone = 42 to prevent XML::LibXML from garbage collecting - Removed XML::LibXML from the distribution. Now separate. 1.00 - More segfault fixes - Benchmark updates 0.99_01 - More segfault fixes 0.99 - Fixed segfaults on 5.00503 0.98 - Fixed output encoding problems 0.97 - Now needs libxslt 0.7.0 - Removed add_param() (now passed to transform()) - Makefile.PL works without gnome-config now 0.95 & 0.96 - Various cleanups and code additions to make stable. 0.94 Tue Mar 13 2001 - First release to CPAN 0.01 Sat Mar 3 17:08:00 2001 - original version; created by h2xs 1.19 CPAN-Changes-0.500005/corpus/dists/B-C.changes000644 000000 000000 00000265754 14472651645 016575 0ustar00000000 000000 -*- change-log -*- Started on CPAN with B-C-1.04_12 The Perl compiler was in CORE from alpha4 until Perl 5.9.4 and worked quite fine with Perl 5.6 and 5.8 1.45 2014-02-11 rurban * C: reset PL_stack_sp on init (was one too far). no effects on code. * t/issue281.t: fix wrong test ($[ vs $]) 1.44 2014-02-10 rurban added adjusted CORE testsuite for 5.14. passes for 5.14.4-nt, not for 5.18.2-nt (cPanel code_monkeys) still missing in general are: - global destruction (use lexicals!), - attribute handlers, - compile-time perlio layers * C: Fix -O3 with ~ and ~~ formatstrings (#277) Fix SvLEN and PV ptr for empty shared hash keys (#272) Use the natural @dl_modules boot order, just put attributes to the front (#259) Store cop_hints to support lexical numeric hints pragmas, esp. use bytes and use open attributes (fixes #81 #152 #174 #176 #180 #185 #224 #235 #238 #241 #245 #253 #255 #256 #277) Skip saving defined(&cv) subs (#96) Fix format STDOUT/STDERR (#238, #239, #277, #284, #285, #283) Save now empty bodyless subs if they exist, for signal handlers, prototypes declarations and cvrefs (#251, #159, #235, #246, #270, #271, #275, #279) Fix PVMG PV overwriting the RV, overload sub (#273) * CC (1.14): Skip saving non-existing methods analog to B::C 1.43_06 (CC test 50) * perlcc (2.17): Accept -A for -DALLOW_PERL_OPTIONS * t/testc.sh: Accept -A for -DALLOW_PERL_OPTIONS 1.43 2014-01-15 rurban new 5.16, and partial 5.18, 5.20 and windows support. Many more fixes and testcases. Bytecode is still broken on 5.18, esp non-threaded. 5.20 looks pretty good though. * C: Fix -u without file extension. With hek do not drop FAKE, only for const pv. Fixed $$ ($PID) to be dynamic, issue 108. Thanks to flexvault for reporting this. Fixed double precision to 16 digits. The nbody shootout test passes now. Fixed refcounts of *ENV, issue 111. Fixed wrong boot_ arg for the xs version check with --staticxs Better fix for overwriting of @ARGV = 5.10 (#160) Fixed special usage of magic vars @-,@+,%+,$-,$! (#90) Fixed wrong REGEXP length for compiled QR data (#143) Fixed wrong -O3 comparison of strings to numbers (#138,#141, branch new-cog), unified PV handling, disabled -fcog replaced by -O3 -fconst-strings Fixed NUL-byte handling in strings by using B::SV->PV instead of PVX (#237) Storing now bareword filehandles (#148,#149) Do not create GvGP at all. This also removes the need for newGP() (Windows/AIX) use Config does not include B anymore, Internals::V now in __ANON__ package Fixed handling of empty - not successfully autoloaded - CVs (#235, #159, ...) by storing the SV and XPVCV but ignoring it and defer to run-time get_cv() Unify handling of static and dynamic strings, use ptr_undef throughout instead of NULL vs &PL_sv_undef (save_pv_or_rv => savesym, cur, len, pv, static) Restore $^H, the numeric value of global warnings flags (#193,#207,#243) Restore more missing globals: ${^UNICODE} ${^UTF8LOCALE} $; $\ $, $/ $" $| $^A $^L $: $^H $^R $% $- $= if set in a BEGIN block or via cmdline (#256,#231) Restore even deprecated vars $] $# $* (#171) Fix HvAUX memory corruption, accessing HvAUX beyond HE fields, esp. with threaded perls. Initialize now HvAUX backref and mro_meta fields. Do not boot internal core XS packages twice, refer to internal XS functions dynamically and do not link to them. Fixes fix Windows/AIX with strict linking. Defer dynaloaded GvCV initialization after dl_init() Fixed storage of non-special lexical warnings (#258 warnsize-i258) Fixed storage of shared heks, support IsCOW_hek (i.e. method names) Support new ReANY since 5.17.6 (#258 reg_temp_copy) Support stash symtab magic for PMf_ONCE m?? and reset (#188) Fixed POSIX overflow constants warnings for DBL_MAX,DBL_MIN,LONG_MIN,LONG_MAX (#262) Support user-defined static_ext modules, which are already booted from core. Add more DynaLoader::dl_debug output (set PERL_DL_DEBUG=1) Enforce -ffold on an ucfirst op or $INC{'unicore/To/Title.pl'} (#242) Mark empty but overloaded packages (#172). This is merely workaround for reduced testcases. Set PadnamelistMAXNAMED(comppad_name) needed since 5.19.3 for eval string (#268) Add new option -fno-delete-pkg to control if to ignore compiler-only dependent packages, compiler-independent packages are now always saved. Save those package names at Makefile.PL in @B::C::Flags::deps. * perlcc (2.14): new option --dryrun, -v5 does not -Dsp,-v new option -f passthru to C and CC * perlcc (2.15): fixed default --spawn: use waitpid which was broken for parallel builds. fixed warning Prototype mismatch: sub main::gettimeofday: none vs () at perlcc line 261 improved --version added --perlopts to handle -DALLOW_PERL_OPTIONS * perlcc (2.16): changed output name rules: Without given output file name we use the name of the input file (in the subdir) or with -e a.out resp. a.exe and a randomized intermediate C filename. If the input file is an absolute path on non-windows systems use the basename. * CC (1.13): Use the B::C integer and double precision logic (ivx, nvx). Fixed double precision to 16 digits. The nbody shootout is now 2x faster than perl. Added optimizations: -fno-magic, -fno-autovivify, -faelem Detect "no autovivification;" pragma. New -fno-taint, -fomit_taint is deprecated Fix amagic_generation which was removed with 5.17 Use new perl6 type names: int, num, str. double and string are deprecated. * Bytecode (1.14): fixed require and op_first, issue 97 Fixed regex_pad offset in threaded perls >= 5.11, issue 68. New type B::PAD isa B::AV (PADLIST for 5.17.5), New bytecodes newpadlx, padl_name, padl_sym (PADLIST for 5.17.5) Fixed CvGV_set causing Attempt to free unreferenced scalar in push_begin (42,43) Fixed -Do (peek ops) Renamed option -f to -F for files. Fixed READONLY magic and restricted hashes, issue 98 Support IsCOW xpvshared strings (>=5.18) Fixed wrong xpvshared logic (5.10-5.17), issue 138 Optimized away 0=default op and gp flags and pointers Optimized away default sv_refcnt=1 (GV not), and skip redundant bytecodes Set PadnamelistMAXNAMED(comppad_name) needed since 5.19.3 for eval string (#268) * ByteLoader (0.10): set sv_refcnt to 1 in newsv to skip most defaults * Assembler (1.11): allow "newpadlx 0" * Disassembler (1.12): use B::Concise op_flags and private_flags * Stash (1.03): fix compilation for 5.8.8 and below: gv_fetchsv missing * t/perldoc.t: perlcc fails with 5.8 because Cwd disturbs the fragile method package finder for File::Spec. Use cc_harness. 1.42 2012-02-01 rurban stable up to 5.14 * C: Improved finding methods in parent classes (Warning: method not found), Save @ISA of those child classes. Re-implement and simplify my_share_hek, now in terms of share_hek. PL_strtab hack gone. This fixed the shared_hek destruction problems. Turn off CvDYNFILE needed since 5.15.4, use static CvFILE. (DateTime) * perlcc: perlcc -stash does not hang anymore, renabled t/e_perlcc.t -stash section * Stash (1.02): '-xs' does not load B anymore. Now in seperate directory Stash * Stash/Stash.xs: new with CvIsXSUB() to get rid of B, polluting the stashes. * Stash/Makefile.PL: new * Bytecode (1.13): support shared hek (42,43) * ByteLoader (0.09), ByteLoader/bytecode.h, bytecode.pl: support shared hek (42,43), added xpvshared * t/issue95.t: added, isa methods not found 1.41 2012-01-30 rurban * t/modules.t: Fixed syntax error 1.40 2012-01-30 rurban static PerlIO Layers (e.g. __DATA__) * C: fixed deferred %INC, %INC is now stored and cleaned up at the end. Improved __DATA__ handle as PerlIO layer, PerlIO::scalar now loaded static (test 15). Defer eval section after dl_init (e.g. for PerlIO::scalar) (test 15) Check for XSLoader now at the very end (test 27) Fixed MUTABLE_CV for 5.10.0 Improved 5.8 method lifting for not-found methods a bit (5.8. perldoc.t) * Bytecode: fixed test 22 Cannot locate object method "fileno" via package "IO::File" * Makefile.PL: readonly $lib fix for MSWin32 * t/testc.sh: silence ulimit -m warnings + errors 1.39 2012-01-25 rurban * C: improved eval AUTOLOAD, avoid some POSIX and Storable .al compile-time side-effects such as creating files and dirs. First try loading .al files, only then eval the dangerous AUTOLOAD. * Makefile.PL: typo in -fav-init2 independent_comalloc detection. Added LICENSE key, META and the files were not enough to please pause. 1.38 2012-01-24 rurban * t/issue93.t: fixed syntax error 1.37 2012-01-24 rurban Enabled copy-on-grow strings >= 5.10. Save %main:: stashes w/o -fno-stash. Switched to git, added github mirror Fixed hashes and share_hek, when mixed compiled and load-time for >5.8. Stability: This release is the first which passes almost all tests and is used in production with --staticxs -O3, but copy-on-grow hek's and further logical improvements (deferred %INC cleanup) fail so far, so it's still considered unstable. * C: save stashes optionally with -fstash, but only values which are also stashes to avoid a second walker besides savecv, and thus do not walk into unneeded territory; B::STASHGV (46, issue 79) New -fno-stash with -O2 to omit stashes which are rarely needed. Fixed vulnerability to oCERT-2011-003 style DOS attacks. Do not pre-compute hashes for hv_store(), use fresh random hash seed. But shared_hek() has a limited API which does not allow this. UNIVERSAL methods were not correctly stored, which led to method not found at run-time errors. New debug option -Dr "runtime" to add debug output to the .c code (as in CC) New option -Upackage to skip package, mark_skip() Re-implemented sharepvn via share_hek() and SvLEN=0 (issue 71), Special FAKE+READONLY handling: LEN = 0 if pv_copy_on_grow or shared_hek. Fixed !SvIsCOW_shared_hash + FAKE+READONLY conflict (test 13, issue 82). Shared COW hashkeys which are optimized to static const strings may not be marked as IsCOW (remove SVf_FAKE). Re-implemented CORE share_hek with hash=0 Otherwise shared HEK's (post-5.10) come up with duplicate entries for the same keys; one compile-time created and one run-time created with a different random hash seed. E.g. observed by such warnings "Prototype mismatch: sub bytes::length (_) vs (_)" Added Internals::hv_clear_placeholders XS name exception, similar to version:: (issue 83) Store CV prototypes, issue 81 and issue 84 for empty () vs NULL prototypes. Fixed 5.15.2 hang at hfree_next_entry (issue 78) Defer writing of READONLY hash keys since 5.15 (issue 88) Enable -fcog copy-on-grow with static strings for >= 5.10 Improved Errno vs. *main::! and Tie::Hash::NamedCapture vs *main::+ / - logic (issue 90) Updated version XS methods, default to noop for (... Strip version object overload from XS packages (issue 91), XS needs plain PVs Do not initialize CONSTSUB XS methods twice, boot does it for us Pass proper cv to XS boot_$name, fixes boot of Tie::Hash::NamedCapture (issue 86) Fixed share_hek strings with -O1 (test 13) Fixed bootstrapping the XS/core part of attributes, thereby fixed threads tests 41-43. Fixed most 5.8.[45] problems by ignoring aelemfast SPECIAL pads. Fixed magic -> PTR when SV (>5.6) Moved -fsave-sig-hash from -O3 to -O0. You need -fno-save-sig-hash to disable it. Removed -fno-stash from -O2, -fno-stash is now the default. You need -fstash to add stashes. It caused not understood problems. Fixed saving %SIG signals and more -2 SV magic (issue 92) Adjusted IO logic, was erronously skipped (issue 59) inc_cleanup: save only those %INC keys which are stored. Save ext/mro only if the ext mro methods were loaded, and utf8_heavy.pl similarly. Force loading of -u arguments to avoid runtime loading. Call boot_core_PerlIO, mro, UNIVERSAL and xsutils. Warn on unsavable IO objects from BEGIN blocks. Fixed >&STD... handles (issue 93), i.e. Test::Builder, Test::NoWarnings and parts of the core testing. See http://blogs.perl.org/users/rurban/2012/01/what-to-avoid-in-begin-blocks.html Add B::COP::stashflags workaround, >5.15.4 threaded. Add fix for lost PL_regex_pad, 5.15 threaded. * CC (1.12): allow overriding of -f B::C flags. Skip internal packages with mark_skip (fixes cc_o2 tests). Move -ftype-attr from -O2 to -O1. Always define int, double and string package versions, parallel to types. * Bytecode (1.12): detect Tie::Hash::NamedCapture (issue 90) - works only partially. Fixed >&STD... handles (issue 93) Support -d debugging without -MOd * Stackobj (1.00_03): add UL or L to overlong integers. doubles not yet * perlcc (2.13): added options -O[1-4], -u, -U, --Wc, --Wl, --version, Keep cfile if output is empty. Change -o output C file directory and name with -S or -c: Before in current directory, now in -o directory. Before with input name, now with -o name. Add -rpath for all --staticxs libs if supported. Changed verbosity levels and output wording. * bytecode.pl: added xio_ifp * bytecode.h: added BSET_xio_ifp * META.yml: remove from MANIFEST and repo, let make dist autogenerate it. * t/test.pl, t/TESTS: changed test 46 (Exporter:: and other stashes in %main:: stash) to cover issue 79. use Exporter; print q(ok) if %main::Exporter:: * t/test.pl: use general comments with optional TODO. Before only TODO * t/perldoc.t: fixed for 5.8 with manually adding -uFile::Spec -uIO::Handle * t/issue59.t, t/issue81.t, t/issue90.t, t/issue93.t: added 1.36 2011-10-19 rurban lexical warnings and more 5.15 fixes * C: new B::LEXWARN, fixed representation of lexical warnings which was broken since 8e01d9a6 5.8.9/5.9.4 (issue 76) Added section free, use it for lexical cop_warnings (const STRLEN*) (TODO: static PV, HEK + COPs) Workaround for utf8::SWASHNEW adjusted to 5.15 PAD* sv flags changed in 5.15.3 XSLoader API changed (HEK in caller i.e.): had to add a XSLoader::load_file for [perl #101336] >= 5.15.3, also use mXPUSH for sp instead of 1-arg targ Set SvLEN=0 for static PVs to skip sv_clear (problem with 13) Handle overlarge negative 64bit ints, double not yet. Move -fwarn-sv from -O2 to -O1 Move -fsave-data from -O3 to -O2 Compile *main::DATA IO handle automatically (__DATA__), just package __DATA__ handles need -fsave-data (15) Die with 5.8.4/5.8.5 threaded with split->pushre on invalid pmreplroot. This is a core B::walkoptree bug and can not be easily fixed. Tests 15 and 103 do not hang anymore, 15 and 29 pass mostly * C.xs: added -Dts support to runloop to check internal compiler problems * t/issue76.t: added 1.35 2011-10-02 rurban tested from 5.6.2 until 5.15.3 * C: allow debugging without -MOd=C improve package_pv detection for methods, two more tests. detect previously missing packages within the main sourcefile (50,35,72,73) -O1 now includes also -fav-init2 and -fppaddr, which are all stable. -O2 string handling (-fro-inc) still unstable. added B::REGEXP::save for \$qr (Encode::Alias), issue 71. Still not fully fixed. Encode::Alias unusable. fixed empty HV assertions since 5.15, new HV default keys = 7 (3,4,36), but still unsolved 5.15 problem with endless loop in Perl_hfree_next_entry hv.c:1716 (3,4,36) workaround 5.15.2 inability to walk with from %INC deleted stashes, also workaround adding already deleted DynaLoader. CORE patch [perl #100138] for new 5.15.2-5.15.3 DynaLoader XS_INTERNAL problem required (16,29,44,45). Fixed with 5.15.4 0001-Export-DynaLoader-symbols-from-libperl-again.patch use proper PL_envgv for *main::ENV which is inited in perl_parse (fixes e.g. CGI apps using run-time values, not compile-time) * CC (1.11): allow debugging without -MOd=CC Try to jump from last to unknown label, put labels also onto cxstack. Fixed cc_last.t test 4, jump out of anonsub, but not across C functions yet (this is disallowed in C, need to split). * C.xs: added B::REGEXP::EXTFLAGS (missing from B). * perlcc (2.12): omit also inc_version_list dirs from perlcc as leaving them in could lead to unexpected crashes * t/cc_last.t: Fixed test 2. This works compiled and uncompiled, but the returned errcode is not compared. Skip if so. * t/TESTS: add all 5 possible method/sub calls to test 35 =>01234. See http://blogs.perl.org/users/rurban/2011/06/how-perl-calls-subs-and-methods.html * t/stash.t: fixed 5.8.8 stashes (overload, threads, ...) * t/issue71.t: added, but not fixed yet * ramblings/*.patches: CORE patches added and recommended in README. * ramblings/blogs-debugging-article[1-4].pod: added to MANIFEST. * perlcompile.pod, perloptree.pod: improved. * ramblings/yapceu_2010.pod: added. 1.34 2011-06-12 rurban * Makefile.PL: fixed make install < 5.13.7 * issue24.t, test.pl, bytecode.t: TODO more failing tests from cpantesters 1.33 2011-06-12 rurban * Makefile.PL: fixed make install > 5.13.7 * test.pl, bytecode.t: TODO more failing tests from cpantesters * stash.t: fixed freebsd test 4 1.32 2011-06-10 rurban more darwin and package scan fixes, Bytecode -i includeall. all top100 modules can be now be compiled on most perls * Bytecode.pm (1.11): fixed const xsub xsubany ptr >=5.10 <5.14 (27). save_cq => save_begin+save_init_end: moved push_begin upfront for the same init order (44). add CVf_CVGV_RC flag (refcount) on CV with no backref magic, e.g. END (48) added option -i includeall which adds no BEGIN require ops, but adds all included symbols. better BEGIN block @INC manipulation detection (33) print newsvx flags if -S or Comment print hex IV < 8 as int with -S * C.pm (1.32): check PERL_TRACK_MEMPOOL for AV malloc (25). fixed init chunk splitting for CV and -fav-init2, if >10000 lines. fixed overlarge AvFILL=3 of endav. Undefined subroutine &main:: (48) fixed shared GPs on typeglob assignment. do not gp_free shared GPs, just set them once. added try_isa before try_autoload. use mro::get_linear_isa instead of @ISA mark_package force: detect and fix already discarded packages which are brought back in directly or by someone else's @ISA. (e.g. Sub::Name needs DynaLoader::dl_load_flags) improved method_named package search, still not exact though (LWP) add manually compiled packages to %INC to avoid a runtime require special case Config detection, AUTOLOAD = launcher, included by Dynaloader added -Ds to print all sub names do not compile any B::C subs, esp. our %SIG handler add our own Internals::V as it is not exported by libperl inc the REFCNT of stashes (Path::Class) * Assembler.pm (1.10): archflag bit 2 for MULTPLICITY * Disassembler.pm (1.10): archflag bit 2 for MULTPLICITY use longsize resp. ivsize from .plc not from perl print newsvx flags print hex IV < 8 as int * ByteLoader (0.08): support archflag 2 MULTPLICITY, [perl #86186] force binary IO for __DATA__ handles, which changed in core with 5.14 * bytecode.pl: support m for MULTIPLICITY (yet unused) * Makefile.PL: move cc_runtime.h installation to make install step (sudo). Tested ok on darwin gcc, does use -I. internally. * cc_runtime.h: renamed from cc_runtime514.h * cc_harness: fixed darwin coredir * perlcc (2.11): fixed darwin coredir. omit darwin linking to dynamic .bundle - generate .a via libtool * TESTS: removed END block from test 28, only test run-time require (fixed 28) added 48 for previous test 28 END block lexvar del_backref failure added 49 for m//i blowup and -fno-fold testing added 50 empty @ISA issue 64 * assembler.t: fix for hex->int IV roundtrips 1.31 2011-03-21 rurban multiplicity support and more darwin fixes * C.pm (1.31): replace $ITHREADS by $MULTI (darwin), my_perl_destruct: disable CopFILE_set NULL and CopSTASHPV_set NULL on $MULTI, PL_sv_yes|no special on MULTI * CC.pm (1.10): replace $ITHREADS by $MULTI (darwin) * t/test.pl, issue34.t, issue35.t: -ofile => -o file (darwin cc) * cc_harness: -Wl,--warn-once invalid on darwin gcc * log.modules: encode MULTI without threads as -m 1.30 2011-03-06 rurban dbmopen, cc_runtime.h, perlcc, --staticxs * C.pm (1.30): support dbmopen, fixes issue 24. fixed xpvmgsect (was xpvsect) !-fcog < 5.10 (YAML, test 41,42,43). fixed m//i since 5.13.10: swash_init("utf8::Cased"). fixed method_common package_pv detection in most cases. still two cases open, without tests. PADOP GV NULL 0x20000, GV RV 0x40802. fixed method_named with >= 1 arg, checking for const PV package_pv (test 35) support GvCV_set and GvGP_set introduced with 5.13.10. [RT#65630] implement -staticxs for perlcc --staticxs either link to found static libs or link to shared lib with fixed LD_LIBRARY_PATH/PATH (nyi in C, just perlcc). optimize -fav-init use_av_undef_speedup &PL_sv_undef initialization (again). reserved -mPackagename (NYI) added verbose(),module() for CC. implement outline of -m module, name detection missing. added -fno-fold recommended since 5.13.9 to omit the huge utf8 tables. added -fno-warnings, recommended since 5.13.5. added special workaround for Scalar::Util bootstrapping which did not detect List::Util, since it is not in its ISA, only required. need a better scan. fixes test 44. init XS within Od. prevent autoloaded STDERR printing on non-debugging perls (e.g. "Storablelogcarp"). * CC.pm (1.09): support dbmopen, issue 24 failing due to XSLoader (test 45) no pp_name shortnames in embed.h since 5.13.9, use Perl_pp_name(aTHX). implemented dorassign, fixes issue 45. fixed XSLoader detection, moved use_xsloader to save_unused_subs() skip duplicate cc(pp_sub_*) functions (freebsd 45) added missing END block code (test 28). added B::C::verbose on -v fixed B::C::verbose crash by adding B::FAKEOP::fake_ppaddr. fixed compile_stats renamed -n module_name to init_name. check and set -f options from C also. implement outline of -m module, name detection missing. added option -fno-name-magic. added experimental option -ftype-attr. added TYPES pod section. added pod for some funcs: load_pad, cc_queue, label. option -strict only used with DEBUGGING perls. be less chatty with compiling bblocks. light layout cleanup of generated code sections. added Vishal Bhatia to AUTHORS. * Bytecode.pm (1.10): support dbmopen, fixes issue 24. re-added -m, compile as module to .pmc store AV elems for non-tied AV->MAGICAL >5.6 (i.e. @ISA, ...) (new test 47). -DA: limcheck PV. verbosity: added nice1 (condense elements). name SV indices also. * Byteloader: support GvCV_set introduced with 5.13.10 [RT#65630] * perlcc (2.10): fixed -B -r, -B output and run bytecode. implement --staticxs to workaround DynaLoader problems. use it in t/modules.t add sopath to PATH on -r. Without -r the sofile should be symlinked so that the process can find it. implement --shared and --static, --shared fails on strawberry due to core problems. implemented getopts bundling: -ScO -e'bla' -v4 -oa is now possible. disabled some old single-minus switches: -testsuite, -time, -log, ... requires now double-minus --testsuite, --time, --log, ... kept legacy handling only for -Wb=.. and -stash. fixed -B -e'oneliner'. fixed -B @ARGV, no duplication of @ARGV, c_argv.t 3. re-added -m|--sharedlib for Bytecode and C (NYI). print C and CC filtered compiler output. -v5 adds -v to the compiler options. -v6 adds -Dfull to the compiler options. support -Wb= for -B. fixed -Br for 5.6: add -MByteLoader. * Stash (1.01): add option xs to print xs modules with -x prefix. usable via -MO=Stash also. new option -D for debugging. omit PerlIO::Layer. added pod * Disassembler (1.08): 5.6: fix ldop comments. add op_type names, add @svnames, add indices, add ldspecsvx type. * Assembler (0.10): print more flags (as hex) and indices. better limcheck diagnostics (op,sv,pv). * cc_runtime514.h: removed from CORE with 5.13.9. [RT#65628] If so, cp it back. You might need sudo cp. (unchecked) Renamed not to pollute tests with older perls. Expanded PERL_MAGIC_taint 't' for 5.6. * C.xs: added experimental method_cv for the hash-only case, untested. * t/modules.t: try --staticxs first, try crosscheck without perlcc. * t/issue24.t: added. * t/issue45.t: fixed and added 3 more tests. * t/e_perlcc.t: added to test the new option handling. * t/testc.sh, t/TESTS: fixed wrong test 39 for 5.8, added 47, 104 (reset), 105 (type-attr). * t/testplc.sh: added 47. * t/stash.t: rewritten. allow 5.6, use Test::More, more stable * t/todomod.pl: added. interactive tool to check log.modules reports and fix TODOs * status_upd: recommend and fix ./status_upd -f -q -d -q -d prints only the actual tests * Changes: added more missing history ca. 1997-2000. 1.29 2011-01-08 rurban improve dl_init * C.pm (1.29): use DynaLoader::bootstrap_inherit, fixes dl_init when the module has no ISA DynaLoader. eg. Test::Harness with Time::HiRes improved CopFILE detection as context for dl_init (test 29) fix cop_warning cast warnings print debug messages for beginav and endav protect against undefined strings, and % in regex protect against undefined gvcv->GV->EGV (Spiffy) latefree r-magic regex strings >5.10, fixes a couple of modules * t/modules.pm: subset use 10 not 11 modules. run tests with -O1 less TODO tests, esp for 5.13 * t/modules.t: fixed binary detection on non-windows (a.out) * ByteLoader: fixed -Dt for GV 1.28 2010-12-31 rurban fixed XSLoader, pmflags, CV and most named methods for 5.14 * Bytecode.pm (1.09): fixed cv_gv and push_begin del_backref problem (27, ...) > 5.13 special cased op_pmflags: U32 needed since 5.13 (PMf_BASE_SHIFT) Fixes op_pmflags since 5.12 ((3..4,27..29,31,33), esp. pp_subst start for Windows 5.12 cop_store_label workaround: Labels disabled for now. Failed to include CORE hv.c: too large. mingw 5.12 compiles now again and passes all but 21,33,42..44 Fixed entrytry with Bytecode >= 5.12: ck_eval upgrades the UNOP entertry to a LOGOP, but B gets us just a B::OP (BASEOP) add BEGIN { push|unshift @INC } parts of blocks (test 33) * Byteloader (0.07): Support new CvSTASH_set. Basic op_pmflags U16/U32 support. No version conversion yet. BSET_gv_fetchpvn_flags: new for empty constant prototypes (fails on 64bit only) * C.pm: add -fno-destruct (with -O3) with a minimal perl_destruct, (re-enables -fcog >= 5.10), add -fro-inc (with -O2) readonly INC and curpad strings, add -fconst-strings (with -O3) const readonly strings and const more other fixed strings, do not boot static core packages (utf8, re, ...), fixed -O2/-fav-init2: store at wrong avchunk index, initialise CopFILE and CopSTASHPV static with ITHREADS improved 5.13 method_named package detection (first and pmreplroot), in endav still failing (Test::Deep) fixed overwritten CvSTART for 5.13.x do not cog/const nullify vars in END blocks disallow CONST->op_first with CONST_BARE. fixes ExtUtils::Install better XSLoader::load detection: aliases and defined in END blocks save XSLoader::load GV (test 46 and modules) bootstrap also static core packages add ptr_undef instead of NULL initialization non-threaded fix many cast warnings fix AV fill +1 required to run C.xs runloop to find PMOPs for QRs Fixed entrytry >= 5.12 as in Bytecode: ck_eval upgrades the UNOP entertry to a LOGOP, but B gets us just a B::OP (BASEOP) Fixed XSLoader, loading dynamic modules works now (test 45), had to set the .pm path in the calling context. * CC.pm (1.08): many fixes use new B::C optimizations, new -DF fixed issue 31 also run C.xs runloop to find PMOPs for QRs, fixed issue 35 same variable name in different scope (Heinz Knutzen), fixed issue 36 panic: leaveloop, no cxstack (Heinz Knutzen) fixed issue 37 orassign (Heinz Knutzen) fixed issue 38 on and/or return value not just no/yes (Heinz Knutzen) fixed issue 39 Bizarre copy of ARRAY in leavesub (Heinz Knutzen) fixed issue 42 remove enter/leave from %no_stack (Heinz Knutzen) fixed issue 44 aelemfast missing for lexicals (Heinz Knutzen) fixed issue 47 anonsub in while (Heinz Knutzen) fixed issue 48 wrong truth value for array assignment in boolean context (Heinz Knutzen) fixed issue 49 Can't "last" outside a loop block (Heinz Knutzen) fixed issue 51 errors on nested if statement with test on multiple variables (Heinz Knutzen) fixed issue 52 errors on variable with numeric value used in second expression of 'and' (Heinz Knutzen) add labels for alternate ops (e.g. run-time jumps). Not sure yet if the full alternate subtrees are saved. fixes test 32 (push_label, pop_label), issue 46. resolve duplicate such labels. honor $ENV{'PERLMODS'} (by cPanel) * Disassembler.pm (1.07): read over #! + use Bytecode .plc header. support pmflags * Assembler.pm (1.09): support pmflags * perlcc (2.09): added cc time for --time. same INC as in caller - omit duplicates * cc_harness: improve -Bstatic * t/testc.sh: simplified. Fixed various wrong tests * t/testm.sh: fixed UAC issues on Win7 * t/test.pl: new faster test functions for the new issues * t/issue27.t: added (Reported by alexchorny, Apr 25, 2010) * t/issue29.t: added (Reported by Heinz Knutzen) * t/issue31.t: added (Reported by Heinz Knutzen) * t/issue34.t: added (Reported by Heinz Knutzen) * t/issue35.t: added (Reported and partially fixed by Heinz Knutzen) * t/issue36.t: added (Reported and fixed by Heinz Knutzen) * t/issue37.t: added (Reported and fixed by Heinz Knutzen) * t/issue38.t: added (Reported and fixed by Heinz Knutzen) * t/issue39.t: added (Reported and fixed by Heinz Knutzen) * t/issue42.t: added (Reported and fixed by Heinz Knutzen) * t/issue44.t: added (Reported and fixed by Heinz Knutzen) * t/issue45.t: added (Reported by Heinz Knutzen), dorassign missing * t/issue46.t: added (Reported by Heinz Knutzen), fixed by r610 * t/issue47.t: added (Reported and fixed by Heinz Knutzen) * t/issue48.t: added (Reported and fixed by Heinz Knutzen) * t/issue49.t: added (Reported and fixed by Heinz Knutzen) * t/issue50.t: added (Reported by Heinz Knutzen) * t/issue51.t: added (Reported and fixed by Heinz Knutzen) * t/issue52.t: added (Reported and fixed by Heinz Knutzen) * t/issue54.t: added and fixed 1.27 2010-07-30 rurban Fixed 1.26 CV regressions for 5.8 and 5.10 * C.pm: add -DF print stringified sv and op flags. fixed xpvio off-by-one error for 5.10 (test 29) rewrote XPVCV forwards for >=5.10: (fails before) 1. only the SV is now forwarded, not the struct. 2. no duplicate SVs, the CV forward is just a link to one SV (#define CVIX) removed wrong CVf_ANON check causing CV failures (test 9,10,12). 5.13.3 still failing fixed CV svsect for 5.8 and 5.10 * Bytecode.pm (1.08): removed wrong CVf_ANON check causing CV failures (test 9,10,12,...) * perlcc (2.08): added --time, support vprint -1 * t/test.pl, t/bytecode.t: double check failing tests if it works uncompiled * t/testc.sh: add -D- for no gcc warnings added -f for testing single optimizations * t/testm.sh: add -D flags for compiler debugging and link with -g added -T for perlcc --time * t/c_argv.t, script/perlcc: properly quote spaces in path of perl and `cwd`/blib * t/modules.t: add svn rev to B::C::Version 1.26 2010-07-26 rurban Start of 5.14 support, CVs broken. * C.pm: improve -fav-init performance if not usemymalloc: no calloc, just direct libc malloc. -O2 uses -fav-init2, i.e. experimental independent_comalloc(), -O1 uses now -fav-init (Nick Koston + Reini Urban) Mark a package which is autoloaded from XS. Fix autoloading of constants AKA const xsubcv via AUTOLOAD [test 27] (Nick Koston) 5.13.3 support (xpv STASH, MAGIC, ... reorganization), but CVs still failing Check CVf_ANON when setting cv->GV. Fixes anon subs. Do not call REGEXP IVX and NVX methods (since 5.11) * bytecode.pl: CvGv_set since 5.13.3 Fixed byteorder 0x stripping causing wrong bget_swab on 64bit * B::C::Flags: new. added by Makefile.PL probing independent_comalloc() * CC.pm: the default -fno-slow-signals adds PERL_ASYNC_CHECK at the same ops as with 5.13, a major improvement. * Bytecode.pm (1.07), bytecode.pl: xpvav.xiv_u was removed with 5.13.2 but not used anymore. read and set av_flags only until 5.12, compile only before 5.10 Check CVv_ANON when setting cv->GV. Fixes anon subs * bytecode.h: do not PM_SETRE with empty arg. fails since 5.13 debugging * t/testc.sh, t/TESTS: fail test 44, change threads tests 41-43 to TODO * perlcc (2.07), cc_harness, t/test.pl: debian specific fixes for their broken -lperl linker args for ExtUtils::Embed::ldopts. * t/test.pl: Have complete c/cc TODO/SKIP status in one place. Fixed killing hangling tests with IPC::Run. Fixed new cc TODO. Run CC test 18 even not as AUTHOR * t/c*.t: make test 27 easier to debug (Nick Koston) Added test 45 (Nick Koston) 1.25 2010-04-11 rurban * C.pm: remove global my_perl, pass it properly around. * t/c*.t: added test 40 \000 byte in PV failing on ori 5.6.2 (Nick Koston), added more magic tests for shared vars - n,p,P magic: 39-43. 41 nyi * t/modules.t: fix -t (run module tests), print header only on full test * t/modules.pm: do not test core or deprecated modules, esp. do not download perl Added is_subset. * t/testm.sh: implement -k * t/testc.sh, t/TESTS: add 44 for weaken import and magic_killbackrefs #72922 1.24 2010-02-15 rurban * C.pm: Fixed off by one array access in magic array init (34) - valgrind is your friend. Fixed aelemfast padsv access crash (Text::Tabs on freebsd7) Fixed wrong stash names in gv_stashpv analog to gv_fetchpv (Text-Tabs+Wrap t/dandv.t) * t/testm.sh: implement -s without log file * t/modules.pm: export skip_modules, silence module scanning STDERR 1.23 2010-02-14 rurban * t/testm.sh: chmod +x * t/modules.t: fix $have_IPC_Run 1.22 2010-02-14 rurban Tested with ActivePerl 5.10.0 * bytecode.h: unshare_hek exception for WIN32, not only MINGW * t/modules.t: Added list of to be skipped modules, which cycle endlessly. Improve todo message. * t/testm.sh: add option -s "install skipped modules" * Makefile.PL, cc_harness, perlcc: fix ldflags for ActivePerl 5.10.0 for MSVC6 (ccversion 12) -opt:ref,icf leads to invalid outfile "pt:ref,icf" * c+cc test 29 fails on 5.10 randomly. Make it a TODO 1.21 2010-02-14 rurban * C.pm: Add missing Nullop for CC on 5.11.4 (cc 12). Test 38 passes 1.20 2010-02-14 rurban * C.pm: #define PERL_CORE broke Null macros on 5.11.4. Define those. 1.19 2010-02-13 rurban Almost fixed evaltry (12) with proper cop_seq setup, just solaris and debian fail sometimes. Tested ok with strawberry 5.10.1 * C.pm: fixed evaltry (test 12) mostly, NVX was shared with 2 xpad_cop_seq ints which accidently just worked before 1.17 with %s, but not after changing to the %g representation. Ignore unused random (overlong) xpviv IV, causing "warning: this decimal constant is unsigned only in ISO C90" Defer rv => cv to run-time < 5.10. Fixes ExtUtils::Install Defer xpvmg->pv init to run-time < 5.10. Fixes MooseX::Types Check for NV inf. Fixes compilation of DateTime Defined PERL_CORE: Fxied Windows problems with setjmp undef'ed in XSUB.h Added Win32 workaround for missing PL_do_undump Stripped perl_ prefix from perl_get_cv, perl_call_pv, perl_call_method * CC.pm (1.07): added -fslow-signals. Disabled inlined pp_enter: Fails on empty cxstack. Backed out inlining of enterloop: GIMME_V fails on freebsd7 Remove strawberry PerlProc_setjmp definition, #define PERL_CORE fixed that * Bytecode.pm (1.06): same NVX => xpad_cop_seq fix as in C.pm, added 2 new bytecodes (cop_seq_low, cop_seq_high), fixed tests 9,10,12. Passes all tests > 5.6 now. * bytecode.pl: added cop_seq_low (155), cop_seq_high (156) instead of xnv. No conversion code for loading older bytecode needed, but fragile (double => 2 int) * t/modules.t: refactored by Todd Rinaldo (toddr). 4*tests per module: -s a, exitcode 0, ok, no warnings on stderr * t/TESTS: added 38, failing on CC (Nick Koston). added 39, failing everywhere. * t/test.pl: refactor: Try to timeout on all tests (compiler and exec) if IPC::Run is installed * MANIFEST, *.pod: Moved conference pods to ramblings, removed lib/B/Asmdata.pm again, added t/qr_loaded_module.pm * t/testm.sh, t/modules.pm: added, -t not working yet though * t/b.t: $[ => $] 1.18 2010-02-06 rurban evaltry (test 12) still broken on most systems. * C.pm, C.xs: fixed r-magic for 5.6 (ExtUtils::Install, File::Temp, Template::Stash). need tests for run-time checks (33). 5.6 misses MG->pregcomp * t/modules.t: check for a.out (test from toddr) * Makefile.PL: create lib/B/Asmdata.pm beforehand (toddr) * ByteLoader: fixed duplicate + missing bl_header for bsd and Darwin (test from toddr) * test 37 added - AV self-refs, analog to HVs (never failed, just to be sure). Removed -qq from 5.6 tests. 1.17 2010-02-03 rurban Fixed now most module failures, non-threaded at least: bootstrap was in the way. strawberry perl fixes. Fixed test 29, broke evaltry test 12 * C.pm: Added option -Dfull for all full debugging info, set all options. Skip saving XS bootstrap. Fixes most XS module failures. i.e. Digest::MD5, Data::Dumper, .. Fail: Attribute::Handlers, B::Hooks::EndOfScope, YAML, MooseX::Types 4 for 5.8.9-nt from the top100, and 3 for 5.11.4-nt: Attribute::Handlers, File::Temp, ExtUtils::Install. Fixed AV self-references causing endless loops, analog to HVs (test 27) Fixed Getopt::Long crash with AV D magic (regdata), save_magic returns now the magic types as string. Fixed unescaped savere (test ExtUtils::Install). Fixed GvSTASH "initializer element is not constant" (Test::Harness) Fixed xrv_list "initializer element is not constant" (Class::MOP < 5.10) * CC.pm (1.06): Added missing unexported definitions for MSWin32, >=5.10: newGP, vivify_ref, prepare_SV_for_RV (tests 18, 29). PerlProc_setjmp, PerlProc_longjmp (tests 12, 32). Fixed cxinc for 5.11.0 * t/bytecode.t: mixed up 32 with 33. * t/modules.t, t/top100: new module test, see also the log.modules* results in the svn repo. * t/mymodules: added as reference, executed optionally. * script/cc_harness: ldopts -std if no -B 1.16 2010-01-27 rurban use Moose and benchmark still fails. IO even a regression. * C.pm: Fixed braces warning for empty xpvcv startfield (Nullany), register int for warn_sv loop Fixed hv init for magic hashes, pre-allocate array and xpvhv_aux. (test 34) Fixed method_named (CPAN #53889, test 35) for B::C, better fix than for B::CC. Added -DH for HV debuggging. Fixed HV self-references causing endless loops, i.e. with use Moose, test 36. * CC.pm (1.05): added experimental -finline-ops. Always on. Can be removed if it works okay for the new inlined versions. Inlined pp_enter, pp_reset, pp_regcreset, pp_stringify. Fixed pp_padsv DEREF for 5.10. Documented test coverage for each op. Fixed wrong $PERL511 definition. Added Opcodes support (no_stack), on CPAN as 0.01. added pp_pushmark pp_break pp_continue to no_stack handling. Fixed method_named (CPAN #53889, test 35) assuming there is only const before method_named. No counter examples found so far. Changed new OBJ => OBJ->new More curcop->write_back protection. * Stackobj.pm (1.00_02): RV fix for 5.11. * t/testc.sh, t/test.pl: added CC specific tests to increase CC op coverage after 100. Switched test 32->101 (arith) with 33->32 (evaltry catch die) as it fails with 5.11.3. Added new qr test 33 (Nick Koston), test 34 for magic hashes, test 35 for broken methodcall syntax (method_named), test 36 for HV self-references. * TESTS: added test 32 (evaltry catch die): Fails on 5.11.3 C/CC only, <5.11.3 it works okay. Also tests 33, 34, 35, 36. * ByteLoader/Makefile.PL: removed cygwin gcc specific stack-protector removal. It was a bug of mine. Added more AUTHOR gcc -ansi warnings, just -pedantic not. * Makefile.PL: Added more AUTHOR gcc warnings, also -pedantic. Added optional Opcodes PREREQ_PM 1.15 2010-01-03 rurban * t/test.pl: Fixed MSWin32 tests again. Lost the 1.13 patches with 1.14. 1.14 2010-01-02 rurban * CC.pm (1.04): Fixed entereval/leaveeval for 5.10. Fixes eval "", test 12. The end of the string CALLRUNOPS needed to be nullified, as in 5.8. 5.11 CORE also needs a patch for this. Optimized away SP save/restore for %no_stack ops. Need to read this from opcode.pl eventually. PERL_ASYNC_CHECK (pending signals) added after every basic blocks with -O1 and every loop. * C.pm: More 5.10 union braces. * Stackobj.pm (1.00_01): Added iv and nv to peek. Added documentation. * Bblock.pm (1.03_01): Print the argument (sub) to inspect. Added missing documentation. * t/testcore.t: improved. added -fail and a list of failing tests. C now always with -O3. * t/c_allow_opts.t: Added for -DALLOW_PERL_OPTIONS. 1.13 2009-12-31 rurban Tested with MSVC (MSVC compiles test29 and bigger examples awfully slow! 7:30min, 30MB mem, 98% CPU, 2GHz) * C.pm: MSVC fix for "(OP*)Nullany" i.e "(OP*){0}" => "{0}". Fixes test 27 on MSVC. CC test 12 broken on MSVC AS 5.8 * bytecode.pl: Restore C strictness, printf before declaration. Undefine debop for MSVC also. Fixed [cpan #53228]. * t/test.pl: Cleanup intermediate MSVC .obj. Skip too slow tests 29 on MSVC, only c.t Remove >nul for test results on Win32. More run_cc_perl fixes for Win32. Be more quiet on MSWin32 also (no 2>/dev/null) Skip stderr redirection to stdout on cmd.exe tests, t/o.t 5,9. * t/bytecode.pl: ditto. * t/TESTS: Fixed 28 for MSWin32 MSVC 1.12 2009-12-31 rurban __DATA__ handles work now. Also more Bytecode fixes. * t/testplc.sh: Added -S: skip all but -S and Concise * Bytecode.pm (1.05): Adapt RV 5.11 change from SV to IV, detect ROK at B::IV::bsave analog to C.pm. Fixes test 16. Set prototype sv_flags at first, so it cannot assert. Fixes tests 27 and 29. More work on 5.6 compat. * bytecode.pl: Fixed 5.6 %alias_to sizes. * bytecode.h: Fix BSET_cop_label for 5.11. Fixes test 21. * t/bytecode.t: Added DEBUGGING to the mix. 5.11 is now completely the same as 5.10. Remaining failures are now 9,10,12 for DEBUGGING (or non-threaded?). * C.pm: Added xpvuv (coverage in 5.6.2 test 21). Added PMOP->pmstash/pmstashpv (no coverage yet). Checked against -Wall -Wextra: Added missing pmop->stash for 5.8. Added missing cop->cop_io for 5.8. Added braces to union inits (MSVC Todo). Remove unused dTARG and dSP. Fixed CC test 29 on 5.6.2, not checked why. Fixed __DATA__ test 15 on 5.10 and 5.11. * TESTS: Updated with 5.10.1 CORE results 1.11 2009-12-29 rurban Fixed 5.11 RVs, added C optimizations to CC * C.pm: Adapt RV 5.11 change from SV to IV, detect ROK at B::IV::save. Fixes test 16. Added -DW for walk, together with -Dp only. Forced fullname optimization scalars for B::CC. Export save_sig and fixup_ppaddr for CC. * CC.pm (1.03): Fixed Perl_gv_SVadd cast warning. Added most B::C optimizations. This fixes all threaded tests 15 >= 5.10. Call save_sig, fixup_ppaddr not yet. * t/test.pl: simplified (and fixed) keep logic * t/c_argv.t: cleanup 1.10 2009-12-29 rurban Fixed @ARGV * C.pm: fixed couple of minor bugs detected with new t/testcore.t: t/CORE/comp/retainedlines.t => Use of uninitialized value $len, save_hek Use of uninitialized value $i in printf at C.pm line 49 Undefined value assigned to typeglob at C.pm line 2901 Do not overwrite run-time @ARGV on >= 5.10 (GP and AV). Fixes test c_argv.t * t/testcore.t: added * t/c_argv.t: added. test @ARGV and perlcc * perlcc (2.06): grab_stash only via new -stash, not automatically; B::C is better. ldopts -std only when modules are given. fix for empty options. add -sharedxs, -sharedlib; -shared is now for shared linkage, -sharedlib to create a shared lib (was -shared before but never worked), -sharedxs to also link shared xsubs, no run-time DynaLoader/XSLoader needed. 1.09 2009-12-27 rurban * C.pm: Cut down the number of AUTOLOAD'ed optrees, search only on empty gv->cv (31). Added very unsafe -O4/-fcop to eliminate most cops and file + line numbers. Added faster -fav-init to -O2, less unneeded av_extend(). Get rid of fbm_compile (11). Only 5.8.9 is broken. * CC.pm (1.02): partially fix eval "" for >=5.8.9, wrong CORE cc_runtime.h definition. (test 29 - eval "") * t/test.pl, t/c*.t: Simplify C/CC testsuite. * t/testc.sh: fixed -E Added -o for orig, no -Mblib * t/c_o3.t, t/c_o4.t: added 1.08 2009-12-23 rurban Adapt coding guidelines, add C and cperl coda. Reformat sources. * C.pm: Detect AUTOLOAD and CLONE (test 27 and 31). 5.10 is now the best release for unoptimized B::C. 5.8 is faster optimized, but misses some autoloaded xsubs. Simplify PVMG exclusion; all non-magical, not just PAD_OUR, as in Bytecode. * Bytecode.pm (1.04): Add missing BM logic to GV >= 5.10. Fixes test 11. Fixed op_pmflags logic for 5.10 threaded only, no += 2. Fixes test 2. Protect empty match from setting op_reflags. Fixes test 20. Add perlversion to the -S generated header. Document more options -TI, -TF, -u * perlcc: improve help. use Pod::Usage as module, not via cmdline. fix previous installation quirks. * assemble: improve pod. make it installable. * disassemble: make it installable. * cc_harness: ditto. * Makefile.PL: added script/* as EXE_FILES to install them. * t/TESTS, t/testc.sh, t/testplc.sh: test 31 non-xs AUTOLOAD added * ByteLoader/Makefile: tuning, bytecode.h triggers now byterun.c * bytecode.h: Specialize pregcomp on 5.10; add PL_regex_pad[0] for pregcomp if missing. fixes tests 3,4,5,7,31 on 5.10. 1.07 2009-12-19 rurban * C.pm: fix fbm_compile (INDEX) for >= 5.10. gv_list is already a pointer. rewrite PVGV (ie PVBM) init for >= 5.10. (test 11) Added CV->save_magic (untested) Fixed two wrong my decelarations detected by the new Od debugger. * README: Clarify DIFFERENCES section for CC only. Esp. the Context of ".." section. New test 30 * t/TESTS, t/testc.sh, t/testplc.sh: test 30 added for Context of ".." * t/testc.sh: fix -k logic, keep .pl for -O tests 1.06 2009-12-18 rurban Going public on the Perl birthday The first public compiler re-release since it was removed from CORE. * C.pm: Had to disable -O1 -fcog (pv_copy_on_grow) on 5.10 and higher until I find out how to fool S_unshare_hek_or_pvn. This fixes all C -O1 and -O2 tests. Warn about this. Fix wrong RV init on *5.10* for test 29 also, as with 5.11. Simplify __DATA__ handling. Warn when -O3 or -fsava-data is missing. Enable working -fsava-data on 5.8 and 5.10 threaded. Fixes couple of tests 15. Fix 5.8/5.10 PVMG pv = &PL_sv_undef for empty comppadnames * t/testc.sh: -k keep added. Delete temporaries on PASS as new default. -E added. Dump preprocessed source file with cc -E as _E.c (was default before) * Version bump to official: B::C 1.06 (1.05 is in 5.8.9) B::CC 1.01 B::Bytecode 1.03 B::Asmdata 1.03 B::Assembler 0.09 B::Disassembler 1.06 B::Bblock 1.03 ByteLoader 0.07 1.04_33 2009-12-17 rurban * t/cc*.t: skip some memory eating failing tests. * MANIFEST: dummy lib/B/Asmdata.pm added to fix cpan smokes on BSD. Thanks to Slaven Rezic. * C.pm: fix tests 14,16,23 on >=5.10, missing AV magic for CV main::a, protect PVMG from SvPAD_OUR. fix wrong RV init on 5.11 for test 29 * CC.pm: fix ARGS >=5.10 (in require, test 28). Enable quiet. No -q for quiet, just -v (verbose) or any -D switch turns on verbose. * t/testc.sh: Added test 27 (import), test 28 (require), test 29 (use) [Nick Koston] 1.04_32 2009-12-14 rurban Only two 5.10 B::C bugs remaining! * C.pm: added missing FBM logic to GV >= 5.10 (test 11). Forbid MAGIC on non-magival SVs >= 5.10 (tests 14 + 23). Special PVMG PL_sv_undef string. (namesv problem on 10,14,23) 1.04_31 2009-12-14 rurban * C.pm: fix test 21 on 5.10 "Bad free() ignored". Dynamically allocate CopLABEL. * Makefile.PL: fix the make depend section > 5.9 * t/testc.sh: fix -D option 1.04_30 2009-12-13 rurban Better 5.6 support, but Bytecode compiler still disabled. Not even the Byteloader works for 5.6 assembled code. The Disassembler does not stop at ret. Fixed several C tests. * bytecode.pl: renumbering policy: <= 5.6 squeeze, >= 5.8 fixed to force exact bytecode numbering as with 5.8. Allow float versions, such as 10.001 for subreleases. Add perlversion to header. Add byteorder check logic. Added logic to include all possible unsupported ops, all holes. bytecode table checked for 5.6.1, 5.6.2, 5.8.0, 5.8.1-5.11 Note, that I found official and contradicting 5.6.1 releases. ActiveState 5.6.1.626 had no op_children, the unix release tarball with 5.6.1 (called Trial 1) still has it. * ByteLoader.pm (1.06_06): better bytecode numbering. * Asmdata.pm (1.02_02): strict numbering along 5.8. Unsupported ops are now also included, with PUT method 0. * Assembler.pm (0.07_07): Add perlversion to header * Disassembler.pm (1.05_04): Add perlversion to header. Print header only for existing. * BcVersions/Asm*.pm, BcVersions.pod: added for most versions with the CORE compiler. * disassemble: Make it work with the older Disassembler. Make it work with older bytecode >= 5.8 via Asmdata unsupported ops. * i386.xs, jitcompiler.pl: removed (seperate module) * bytecode.h, C.xs: Fixed for 5.6, tested with 5.6.1 with MSVC. * bytecode.h, byterun.c: add static int force = 0. Override it to 1 to try out executing older bytecodes. * C.pm: fix test 16 on 5.10 again, non-threaded only (GVAV magic). first fix in 1.04_24, broken in 1.04_28. On 5.11 I have a broken RV handling here. Remove version and Regexp::DESTROY from the automatic methods (experimental). First attempts with pv and hek consting failed. * t/testc.sh, t/testplc.sh: support proper cmdline arguments, add -h for help Fixed test 5 by fixing the wrong test. * perloptree.pod: renamed from perloptreeguts.pod. Added links. 1.04_29 2009-12-07 rurban Disable the Bytecode compiler for 5.6. Fixed besides the __DATA__ handle (test 15) all remaining 5.8 C bugs. * C.pm: assign the PVX of GV also for empty stashes (main::) to avoid destruction failures at Perl_pad_undef() SvPVX_const(namesv) == '&'. Fixes tests 14 and 23 * byterun.c: No assert on empty bs_sv, it is &PL_sv_undef. Map missing -Dv on 5.6 to -Df i.e. -D256 Added better debugging output: setter values. * STATUS: re-run CORE tests, list cmdlines, update status * Disassembler.pm: added gen_header_hash() for gen_header output. add to documentation. * Bytecode.pm: -S uses gen_header_hash for gen_header output. 1.04_28 2009-12-06 rurban * C.pm: fix -fcog (Copy on Grow with -O1 and -O2) for >= 5.10 by a new SVPV. Statically initialize PVs with a union layout trick. Use char* as first union member. Revert xpvcv+svsect changes to pre-initialize those structs against gvcv recursion. * t/b.t, t/o.t, t/stash.t: fix tests for 5.6.2 * bytecode.c: byteorder swab only if same length. 1234 => 4321, 12345678 => 87654321. Skip a 0x prefix for byteorder in the header. Perl 5.6 had this. * Assembler.pm (0.07_06): 5.6 byteorder fix: until 5.6 the $Config{byteorder} was falsely dependent on ivsize, we need longsize. Add 0x to byteorder in header again, as with 5.6. * t/testc.sh: do not run old leftovers. some 5.6 optimizations * t/c_o1.t, t/c_o2.t, t/cc_o2.t, t/cc_o2.t: added * t/test.pl: support -O1 and -O2 * broke ByteLoader 1.04_27 2009-12-04 rurban * CC.pm (1.02_03): fixed endless loop in optimized sort. The sortcv cmp needed a return NULL (test 19). * c.t, cc.t: add failing tests as TODOs 1.04_26 2009-12-02 rurban * C.pm: remove nv->IVX for 5.10 (Can't locate object method "IVX" via package "B::NV"). protect mg->OBJ when SCALAR (Can't call method "save" on unblessed reference). fix NV isa IV, to fix test 23 (Nick Koston). fix CopLABEL for 5.11 (test 21) fix PMOP extflags, esp. for split on >= 5.10 (test 5 + 7) add fbm_compile() to BM::save >= 5.8 (test 11) (Nick Koston) * t/c.t, t/testc.sh: added tests 23, 24 (Nick Koston) * Bytecode.pm (1.02_04), bytecode.h: store and set PMOP reflags as U32. Fixes tests 2-4,7 Start of backporting Perl 5.6 1.04_25 2009-11-30 rurban * C.pm: fixed IO for 5.11: LINES => IVX. specialize GvLINES = -1 and protect against U32 signed-ness. fixed test 8 main::AUTOLOAD (unoptimized only) * t/test.pl: enable -Mblib for all Perl versions. fix 5.6.2 ldopts by explicit checking of (-lperl|CORE\/libperl5). make test works now for 5.6.2 * t/cc.t: adapt TODOs * t/c.t: add TODOs 15 for 5.6 * script/perlcc: a.exe for cygwin also 1.04_24 2009-11-29 rurban * C.pm: fixed more CV basics (test 9), just stash for autoload missing (test 8). PVLV adjusted, but no testcase yet. IO adjusted. Fixes test 4. re-enabled Perl 5.6, all tests but 8,15 pass with t/testc.sh. make test not. added option -DO, more OP info than with -Do. added saving "main::" CVs. Fixes test 16. Fixed PMOP op_pmreplroot for >= 5.10 (for SUBST). No test * t/TESTS, t/testc.sh: added 20 for qr// bug in 5.10 * t/c.t: remove TODO status from tests 14-16 1.04_23 2009-11-22 rurban * yapc_bratislava08.pod: title fix * SIGNATURE: added * C.pm: GvGP handling improved. added more sect comments. added -u option "unused" not to print verbose debugging info for unused subs. Fixed CV XPVCVIX initialisation - off-by-one error, wrong CvFLAGS. Fixes test 6. * run perltidy -i=2 1.04_22 2009-11-16 rurban * C.pm, CC.pm: fixed illegal pad in ASSERT_CURPAD_ACTIVE("pad_sv") with DEBUGGING. Simply forgot to set PL_comppad 1.04_21 2009-11-07 rurban * yapc_bratislava08.pod: added * C.pm: fixed CALLREGCOMP >=5.10 by using dynamic newSVpvn as in ByteLoader 1.04_20 2008-06-25 rurban * t/TESTS: numbered. * t/TESTS: added sub FETCHSIZE to test 16. required now * C.pm, CC.pm: change debug globals to hash. * C.pm: Fix B::RV::save for 5.10 * CC.pm: 5.10 fixed GvSV to GvSVn (PERL_DONT_CREATE_GVSV), fix cc test 3+4 crash * Artistic, Copying: added. Clarified perl license. * Bytecode.pm: fixed IO=>PVNV problem in test 15. * bytecode.pl, bytecode.h: rewrote gp_sv and gp_file setters with x (special setters). Fixes unshare hek assert in test 15, and force creation of GVSV. * Assembler.pm 0.07_05: cygwin text-mount fixes with \r\n * t/testplc.sh, t/testc.sh: require bash, accept testnumber args * Asmdata.pm: fix PORTABILITY docs * t/testc.sh: -Bdynamic: link to shared libperl * cc_harness: simplify. fixed for -Bdynamic -E 1.04_19 2008-06-08 rurban * CC.pm: CXt_LOOP check rewrite, use now CxTYPE_no_LOOP() * CC.pm, t/*.t: useithreads, not usethreads * bytecode.t, test.pl: TODO handling: do not print "ok 1 #" * b.t: fixed skip logic, better skip message * Bblock: fixed to work without B::Concise (5.6.2) * C.xs: add PM_GETRE for 5.6.2 and earlier * CC.pm: Fix PP_EVAL hack from 1.04_18 * Bytecode: fixed IO::SUBPROCESS error (test 15) * cc_harness: check static libperl.a, else try dynamic. Support -E * ByteLoader: support different byteorders (Disassembler not yet) * ByteLoader, Assembler, bytecode.pl: add archflags to header, relax platform strictness. * t/stash.t fixed for 5.10 * Disassembler: added hashref return for get_header in scalar context. * Bytecode: fixed compiler crash/assertions for GV without GP (test 11) 1.04_18 2008-06-04 rurban * Fixed t/assembler.t on 5.6.2 * Added ByteLoader::unimport (from 5.6.2) * ByteLoader: Fixed bytecode crashes for 5.10+5.11 in 2-5,7 by removing PMf_COMPILETIME from op_pmflags. Reason: empty check_substr in INTUIT. (6 still failing) * ByteLoader: Fixes for 5.11 by using PM_SETRE (test 7 still failing) * Bytecode: removed op_reflags. pregcomp with op_pmflags alone is enough to reconstruct it. * C,CC: enabled static_ext + DynaLoader boot section again. Fixed in cygperl. * CC: fixed Bug#55302 PP_EVAL by adding PP_EVAL_thr for threaded perl. cc_runtime.h was always wrong on this! 1.04_17 2008-04-20 rurban Added Fedora Core 1 as test system (5.6.2, 5.8.3, 5.11.0@33708 + valgrind) * ByteLoader: Fixed broken BYTEORDER check (for 32int) * ByteLoader: Remove allowing older versions until we have an opcode table for older versions. * ByteLoader: Fixed SIGSEGV with older gcc (3.3.2) at bstate->bs_obj_list[0] = NULL * ByteLoader, C.xs: Newx() support and more for older perl's. Tested with 5.8.3 * bytecode.pl: Fixed <11 op_reflags (double definition) * bytecode.pl: Support 8-10 version syntax (op_pmstash, cop_io) * Makefile.PL: added MKPATH blib/bin * added ByteLoader/ppport.h * fixed t/stash.t for 5.11 1.04_16 2008-04-14 rurban * ByteLoader: Fix PL_tokenbuf for older perls without PL_parser * B::C: walkoptree_slow for verbose statistics op_count. * Consistent in -v verbose and not verbose. * Workaround for invalid pad in save_context. * Added -Dp for verbose package cache printing. * -v verbose adds more generated comments: op struct fields * Fixed cop_label for 5.11 (Change #33656) * Fixed make subdirs-test error in 5.8.8 * Fixed RT#52920 "invalid cop_free of nullified cop" for B::C 1.04_15 2008-04-11 rurban Highlights: bytecode and ByteLoader portability preparation and commented disassembler output. PVGV and new REGEX still broken. Fixes for no ithreads. * Fixed verbose Bytecode for old B::Concise (5.8.8). t/testplc.sh failed before. * ByteLoader: Work on portability (different arch, version and sizes). Added bl_header. Changed macro BYTECODE_HEADER_CHECK to function bytecode_header_check(). Fixes for no threads. * bytecode.h: pregcomp fix for 5.10 w/o threads (Thanks to david@cantrell.org.uk for his cpantest for netbsd). use xpv_cur and not xpv_len for the rx length (len - 1) to strip off the ending nul byte. 5.10: new minlen check aborts * ByteLoader security: added strconst maxsize flag to bytecode.pl for buffer overflow checks. * Bytecode -DA for devel assertions of absolute or probably wrong opindex pointers (nyi) * disassemble, B::Assembler: commented output, similar to -MO=Bytecode,-S Added backwards option --bare for older assemblers. * assemble, disassemble: added pod * B::Disassembler: Provide default printers print_insn (commented) and print_insn_bare. Portability: Use the header settings from the .plc and not the current perl settings. * B::Assembler 0.07_03, B::Disassembler 1.05_02, ByteLoader 0.06_03: Added longsize to the bytecode header, just for xcv_depth. * B::Debug 1.05_03: Fixes for no threads. * Makefile.PL: Fixed script/perlcc.PL dependency make: *** No rule to make target `script/perlcc', needed by `blib/bin/perlcc'. (Thanks to david@cantrell.org.uk for his cpantest for solaris) * Added test TODO's, Added perloptreeguts.pod 1.04_14 2008-03-24 rurban * Fixed some 1.04_13 +x executable permissions in docs. Windows habits. 1.04_13 2008-03-24 rurban * Fixed B::C pv init in 5.10. Forgot refcnt and flags. * Added "Other perl to exe compilers" section to perlcompile.pod. This is even a FAQ. * Added the NOTES to perlcompile.pod * Added temp. perloptreeguts.pod. In work, also at the wiki. * Fixed Bytecode op_pmflags assertions. * Added orangesect for enough regexp space in RE's sv_any. Engine not initialized though. * Hangs in C/CC executables at an op_free(PL_main_root) trying to free the static op structs because the earlier op_seq -1 hack is gone now, and opt_static was replaced by opt_latefree. Set now opt_latefree = 1. This fixed tests 1 and 13. Slowly making progress step by step. 1.04_12 2008-03-16 rurban (first upload) * Fixed bug #40435 CC: Can't locate object method "_save_common_middle" via package "B::FAKEOP" * move tests from [bc]*.t into shared TESTS file. * fixed remaining ugly Bytecode bug in B::AV::bsave $_ = $_->ix for @array. Now we are at the same state as with 5.9.4 * fixed wrong bc cop_warning cast for 5.8 * fixed CC pmreplroot and pmreplstart fields * make C and CC less verbose, honor -v, -q ignored. 1.04_11 2008-03-09 rurban * removed Jit and Asm stuff. Maybe as seperate packages somewhen. But targeting PIR makes more sense. * added STATUS * added old Changes from the new git clone repo by Sam Vilain * fix C cop * fix C savepvn apparently * work on HV init - crashes at invalid entry * use run_cc_test 1.04_10 2008-02-26 rurban * change bc pvx access dummy struct bytestate_xpv, so pv has the same fields as with 5.8, seperated from the sv. The sv is seperated from the pv. TODO: different strategy for B::C, must link xpv to sv * add and parse Assembler comments * add Bytecode comments to -S output unless -q * change op_reflags from U16 to U32 * guarantee ByteLoader backwards compatibility: Accept lower versions also. 1.04_09 2008-02-25 rurban * restored 5.8 backwards compatibility, mainly for test comparison. CPAN installation will abort. * make t/test*.sh PERL independent * fixed B::C GV init crashes (SvPOK assertion) * added B::C RE section * fixed B::C xpvcv and xpvnv section * comment Bytecode -S nice ops to re-assemble them without errors * added new asm opcode op_reflags * removed Bytecode cop_arybase for 5.10 * 5.8 compatibility: fixed bytecode.pl versioning, Asmdata creation (exact same for 5.8.8), asmdata.t, b.t tests * improved make clean * add ByteLoader -Dt and -Dv debugging * don't link against jit code against possible sideeffects * fixed c.t and cc.t tests 1.04_08 2008-02-22 rurban * fixed t/b.t tests for 5.11 (REGEXP, ref RV => IV) * fixed Makefile.PL deps to ignore the interim .pl files * added PMOP reflags * added madprop to B-1.18_01 and B::C (if provided by B) * enhanced B::Debug 1.05_02 * fixed B::C PL_cshlen (already initialized since 5.10) * fixed B::C GvFILE * fixed various (SV)xpv list casts and inits, * fixed B::C xpvnv_list for 5.10 * fixed B::C xpvio_list for 5.10 * fixed B::C pmopsect for 5.11 * bootstrap also all $Config{static_ext}, not only dynamic stashes 1.04_07 2008-02-20 rurban * moved bstate->bs_pv.xpv_pv slot to bs_pv.xiv_u.xivu_p1 * fixed pv_free * added op_pmflags 2 to match PMOP * moved B into lib/B * fixed ByteLoader Makefile deps * added -DM flag to Bytecode backend * added perlcompile.pod and Perl_5_Internals.htm 1.04_06 2008-02-19 rurban * no crashes anymore for 5.10, just op_pmflags & PMf_ONCE assertions. * blead@32980 crashes in tests 11,16,17,18 * enhanced B::Debug (no version bump) * fixed general op_list inits, and specials for av, hv * almost fixed pv within sv handling * added -O=C,-DS for SV debugging 1.04_05 2008-02-18 rurban * added t/test.pl and t/test*.sh to MANIFEST. * fixed ByteLoader reading from the filter. * fixed -H .plc header parsing * updated Bytecode options in NOTES and pod * added -O=Bytecode,-v option * fixed PL_preprocess and SvREPADTMP_off for 5.11 1.04_04 2008-02-08 rurban * added jitcompiler macros 1.04_03 2008-02-05 rurban * added Jit and Asm layout, fixed Makefile deps 1.04_02 2008-01-22 rurban (never uploaded) * removed from CORE, now on CPAN. * added byteorder to bytecode header. * added support for 5.10 (NOT WORKING!), 5.9.5 not tested. up to 5.8.x already in CORE, so disabled. add back support later, when C/CC is improved or more features are added. * added type hekindex * added c.t and cc.t tests * extended bytecode.pl format: added version logic to have strictly consecutive indices 1.04_01 2008-01-15 rurban (never uploaded) * first package layout for all now non-CORE packages. =================================================================== B::C was at 1.05 when removed from core with 5.9.4. Nicholas Clark 2007-05-07 15:35:56 bytecode.pl: Exterminate! ext/B/B/Asmdata.pm: Exterminate! Nicholas Clark 2007-05-07 14:53:05 Given that @optype and @specialsv_name are hard coded tables, it seems more logical for them to be in B.pm, rather than in the "boilerplate" for the machine generated B/Asmdata.pm Marcus Holland-Moritz 2004-08-29 13:22:48 Fix typo in B::Assembler. Marcus Holland-Moritz 2004-08-29 13:21:50 Skip ext/B/t/assembler.t when configured without B. Rafael Garcia-Suarez 2003-08-09 21:13:27 Remove ByteLoader from the list of modules whose compilability should be tested : it's loaded (at runtime) by ext/B/t/bytecode.t (as Enache pointed out.) chromatic 2002-05-10 07:43:25 added ext/B/t/o.t Mattia Barbon 2002-01-12 00:29:48 @14216 B::C, perlcc.PL, B.xs, B.pm, t/TEST, C.xs Message-ID: <3C3F756C.4581.2E2A938@localhost> B::C (1.01): added B::C::InitSection, ... Mattia Barbon 2002-01-06 12:44:30 @14104 B, B::C, perlcc, t/TEST Message-ID: <3C38389E.7831.493570@localhost> Jarkko Hietaniemi 2001-12-21 14:42:31 @13830 packing I32 with L is not nice, need l; from Wolfgang Laun. Jarkko Hietaniemi 2001-12-19 16:59:02 @13807 One more embedded (?sx) de-embedded, from Wolfgang Laun. Jarkko Hietaniemi 2001-12-19 15:25:27 @13802 B::Assembler/B::Disassembler patches and test; from Wolfgang Laun. TODO: getting perlcc working. Michael G. Schwern 2001-12-14 20:59:13 @13697 BBlock: Some weak docs Message-ID: <20011215005913.GC28596@blackrider> Michael G. Schwern 2001-12-14 20:14:14 @13695 Adding B::Asmdata docs Message-ID: <20011215001414.GA25077@blackrider> Jarkko Hietaniemi 2001-11-29 02:22:02 @13346 Change $=, $., $*, $%, and $- to be IVs instead of longs. Jarkko Hietaniemi 2001-11-16 01:38:41 @13034 Add the fruits of Larry Shatzer's version verifying script. (There are some straddlers, but they will be fixed in the upcoming releases of the modules.) (Stamped with v1.00) Jarkko Hietaniemi 2001-09-16 22:36:58 @12040 Stamp B::Assembler with v0.03 Jarkko Hietaniemi 2001-07-01 17:20:38 @11061 Make 'compile' target a little less broken. Still very broken, though: -Wall warnings from the generated code, boot_Foo prototypes missing, can't autoload Fcntl::SEEK_CUR et alia, ... Jarkko Hietaniemi 2001-06-27 13:36:40 @10979 "lose the looses", from Abhijit Menon-Sen Richard Soderberg 2001-06-21 09:01:22 @10780 Step 2: Use the new PM_GETRE/SETRE macros everywhere. Message-ID: Gurusamy Sarathy 2001-03-19 08:07:09 Subject: Re: sync sync sync: have I missed any patches? Replace djSP with dSP. Mark-Jason Dominus 2001-01-16 14:43:18 Subject: [PATCH @8436] Eliminate op_children (Replaced by #8448) Traces of op_children (cleanup of #8442) (Replaced by #8448) More op_children traces (cleanup of #8442). Subject: [PATCH #3 @8436] Re: Eliminate op_children Replace #8444 and #8445. Gurusamy Sarathy 2001-01-30 14:20:24 integrate changes#7984,7987,8010 from mainline (gets rid of dTHR which has been a noop for a while now, except for the compatibility definition in thread.h) @8010 remove dTHR; Gurusamy Sarathy 2000-12-18 03:37:02 @7518 UNIVERSAL::can Gurusamy Sarathy 2000-12-18 00:03:38 Fix a couple of compiler-noted nits in #7235. Fix of sorts for bug id 20000901.092. There seems to be no trace of a 'pmshort' anywhere in the B, so the offending line was simply removed. Gurusamy Sarathy 2000-12-17 22:49:13 Subject: [ID 20000928.002] perlcc & ByteCode.pm option mismatch Did not apply cleanly, manual intervention was needed. Subject: [ID 20001003.006] B::Debug not -w clean Test harness update to sync with the new perlcc, from Simon Cozens. Gurusamy Sarathy 2000-11-27 18:11:21 Bytecompiler patches from Benjamin Stuhl. More bytecompiler. Subject: [PATCH blead] B:: missing dependency Byteloader 0.04 Gurusamy Sarathy 2000-11-27 13:53:18 U8->U16 CvFLAGS(cv) Jarkko Hietaniemi 2001-10-25 18:07:58 * make re, Opcode, File::Glob and B threadsafe * include XS_VERSION in MY_CXT_KEY (tweak for change#12652) Jarkko Hietaniemi 2001-04-05 04:00:33 Integrate changes #9544,9547,9549(perlio),9550,9551 from maintperl into mainline. "double" should be "NV"; standard typemap is missing entry for NV bailey 2000-02-09 09:09:45 Resync with mainline Gurusamy Sarathy 2000-02-25 02:50:04 @5250 more Compiler tweaks for useithreads Gurusamy Sarathy 2000-02-21 08:02:16 @5178 get Compiler "working" under useithreads Gurusamy Sarathy 2000-02-19 18:33:05 @5150 more B fixups to cope with empty GVs (these can only happen in pads) Gurusamy Sarathy 2000-02-18 04:57:43 @5125 Compiler fixups from Jan Dubois Gurusamy Sarathy 2000-01-27 04:56:48 @4910 various pod nits identified by installhtml (all fixed except unresolved links) Gurusamy Sarathy 2000-01-26 20:10:26 @4905 s/STOP/CHECK/ blocks bailey 2000-01-20 00:25:30 @4821 Quick integration of mainline changes to date Gurusamy Sarathy 2000-01-06 11:51:07 @4763 fix various C-backend shenanigans Gurusamy Sarathy 1999-12-08 00:16:21 @4662 typos in change#4546 Gurusamy Sarathy 1999-12-03 07:52:50 @4631 support -a switch to append bytecode to an existing file and make perlcc use it (from Tom Hughes ) Gurusamy Sarathy 1999-12-01 02:00:09 @4602 more complete pseudo-fork() support for Windows Gurusamy Sarathy 1999-11-11 11:32:54 @4546 avoid stash pointers in optree under USE_ITHREADS Gurusamy Sarathy 1999-11-11 07:04:20 @4545 another change towards a shareable optree: avoid pointer to filegv in COP; revert parts of change#4485 and s/xcv_filegv/xcv_file/ (CvFILE() may yet come in handy somewhere); adjust compiler doodads to suit Gurusamy Sarathy 1999-11-04 19:25:45 @4516 change#4485 didn't do the right thing for B::Bytecode Gurusamy Sarathy 1999-11-04 18:28:29 @4515 implement STOP blocks and fix compiler to use them (minimally tested) Gurusamy Sarathy 1999-10-29 08:08:50 @4485 more cleanup: avoid unused knowledge of "file GV" notion in CV and GV Gurusamy Sarathy 1999-10-29 05:00:21 @4484 usurp GVOP slot for new PADOP (one small step to making optree shareable across interpreters) Vishal Bhatia 1999-09-30 01:27:28 @4254 [patch _61] Minor corrections in C.pm Message-ID: Charles Bailey 1999-09-29 04:21:31 @4249 resync with mainline 5.05_61 ($handle_VC_problem, @4198: $sv->REFCNT - 1) Vishal Bhatia 1999-08-25 02:31:33 @4198 add arenas for managing allocations of remaining xpv*v structures Message-ID: Subject: [PATCH 5.005_60] removing extra ref count (compiler) Doug MacEachern 1999-07-25 17:49:00 @4129 B::clearsym Vishal Bhatia 1999-08-11 03:43:28 @4095 applied suggested patch with suitable test to detect MSVC Message-ID: Subject: compiler on win32 Gurusamy Sarathy 1999-09-06 22:16:58 @4092 support bytecode and C backends in perlcc (patch suggested by Tom Hughes ); s/-opt/-noopt/ and make the C backend the default; describe new switches in pod; introduce PERLCC_OPTS and s/COMPILE_TIMEOUT/PERLCC_TIMEOUT/; s/COMPILE_TEST/HARNESS_COMPILE_TEST/; document these %ENV entries Nick Ing-Simmons 1999-08-08 15:53:57 @3925 Will now correctly re-call bootstrap "Foo"; if requested. This should allow build on Win32 and other platforms where you cannot link to loadables directly. Nick Ing-Simmons 1999-08-07 14:23:55 @3934 Vishal Bhatia [PATCH 5.005_60] fix for some obscure bugs (compiler) Message-ID: Nick Ing-Simmons 1999-08-07 14:19:46 @3933 B::C changes to get simple Tk app. compiling again Nathan Torkington 1999-08-05 23:25:47 @3927 Fix for Nathan's fix (#3920) from Guy Decoux. Subject: Bugfix for my bugfix Message-ID: <14250.21947.765134.940583@localhost.frii.com> Nathan Torkington 1999-08-04 13:24:56 @3920 [5.005_60 PATCH] Make B::Bytecode work Vishal Bhatia 1999-07-31 21:08:33 @3869 "use constant" in the compiler Nathan Torkington 1999-08-01 11:23:35 @3859 ext/B/B/Disassembler.pm patch Message-ID: <14244.33431.739419.806927@localhost.frii.com> Gurusamy Sarathy 1999-08-01 20:34:41 @3848 fix defined(@foo) encarpments Gurusamy Sarathy 1999-07-27 05:56:17 @3784 change#3762 wasn't needed Gurusamy Sarathy 1999-07-26 10:59:47 @3762 setstate stop-gap from Vishal Bhatia Gurusamy Sarathy 1999-07-26 10:06:39 @3761 patch for pp_foo -> Perl_pp_foo changes from Vishal Bhatia Gurusamy Sarathy 1999-07-17 22:43:27 @3687 make CC.pm use a distinct CCPP() macro rather than PP() (suggested by Vishal Bhatia ) Vishal Bhatia 1999-06-30 16:02:42 @3644 Compiler and XSUBS Stephen McCamant 1999-06-25 15:38:44 @3637 Eliminate CONDOPs Vishal Bhatia 1999-06-20 19:17:17 @3630 Minor bug fix in pp_require Vishal Bhatia 1999-06-12 10:23:59 @3622 applied patch after demunging headers with appropriate paths Message-ID: Subject: [Patch 5.005_57] unsigned arithmetic (Compiler) Vishal Bhatia 1999-06-05 10:42:17 @3593 applied parts not duplicated by previous patches Message-ID: Subject: Fwd: [PATCH 5.005_57] consolidated compiler changes Vishal Bhatia 1999-06-03 02:57:48 @3584 [PATCH 5.005_57] pp_sort sorted out Gurusamy Sarathy 1999-06-10 10:38:00 @3526 fix small nits (ARGS => aTHX) Gurusamy Sarathy 1999-06-02 06:47:10 @3518 remove _() non-ansism Tom Hughes 1999-05-27 01:59:49 @3499 ByteLoader mark 2 To: perl5-porters@perl.org Message-ID: plus resolve tiny conflict with #3479 plus regen_headers. Gurusamy Sarathy 1999-05-11 11:34:13 @3367 various fixes for clean build and test on win32; configpm broken, needed to open myconfig.SH rather than myconfig; sundry adjustments to bytecode stuff; tweaks to DYNAMIC_ENV_FETCH code to make it work under win32; getenv_sv() changed to getenv_len() since SVs aren't visible in the lower echelons; remove bogus exports from config.sym; PERL_OBJECT-ness for C++ exception support; null out IoDIRP in filter_del() or sv_free() will attempt to close it Gurusamy Sarathy 1999-05-10 09:49:26 @3359 more Compiler patches from Vishal Bhatia Date: Tue, 27 Apr 1999 23:47:24 PDT Message-ID: <19990428064724.95244.qmail@hotmail.com> Subject: [PATCH 5.005_56] Saving Tied hashes ( C.pm) -- Date: Thu, 29 Apr 1999 18:21:06 -0700 Message-ID: Subject: [PATCH 5.005_56] double constants ( C.pm) -- Date: Mon, 03 May 1999 20:21:31 PDT Message-ID: <19990504032131.81113.qmail@hotmail.com> Subject: [PATCH 5.005_56] Overloading implementation ( Compiler) -- Date: Thu, 06 May 1999 17:57:09 -0700 Message-ID: Subject: Stash.pm Tom Hughes 1999-04-24 20:11:59 @3356 applied suggested patch, with win32 and PERL_OBJECT additions Message-ID: <609bdff748.tom@compton.compton.nu> Subject: ByteLoader patch Gurusamy Sarathy 1999-05-06 10:01:23 @3314 compiler fixes from Vishal Bhatia Date: Tue, 30 Mar 1999 23:40:34 PST Message-ID: <19990331074034.6117.qmail@hotmail.com> Subject: [PATCH 5.005_56] pp_entersub and pp_leavewrite(CC.pm) -- Date: Wed, 07 Apr 1999 00:28:23 -0800 Message-ID: Subject: [PATCH 5.005_56] function prototypes(B.pm) -- Date: Thu, 22 Apr 1999 23:40:52 -0700 Message-ID: Subject: [PATCH 5.005_56 ] discarding worthless padsvs -- Date: Tue, 27 Apr 1999 01:14:49 PDT Message-ID: <19990427081449.28615.qmail@hotmail.com> Subject: [PATCH 5.005_56] pp_ncmp implementation ( CC.pm) Vishal Bhatia 1999-03-23 17:21:43 @3168 applied needful parts of suggested patch Message-ID: Subject: [PATCH 5.005_56] pp_formline correction Gurusamy Sarathy 1999-03-25 07:21:05 @3165 fix refcnt on PL_main_cv (variant of suggestion by Vishal Bhatia ) Vishal Bhatia 1999-03-11 08:40:27 @3142 applied suggested patch, modulo bogus hunk Message-ID: <19990311154027.25891.qmail@hotmail.com> Subject: [PATCH 5.005_56] Minor fixes in perlcc Vishal Bhatia 1999-03-03 00:27:25 @3066 updates to compiler modules Message-ID: <19990303072725.779.qmail@hotmail.com> Subject: PATCH 5.005_56 + Test procedure Vishal Bhatia 1999-02-08 02:14:41 @2940 enable dynaloading in C.pm-compiled programs (non-conflicting part of suggested patch) Message-ID: Subject: [PATCH 5.005_54] some pending C.pm stuff Gurusamy Sarathy 1999-02-12 12:09:27 @2894 add missing hunk in change#2657 from Vishal Bhatia Vishal Bhatia 1999-01-18 02:32:31 @2657 pp_mapstart & pp_grepstart return val (CC.pm) To: perl5-porters@perl.org Message-ID: <19990118093231.18443.qmail@hotmail.com> Vishal Bhatia 1999-01-17 17:41:10 @2639 Duplicate saved ops (CC.pm) Message-Id: <19990118004111.29667.qmail@hotmail.com> Gurusamy Sarathy 1999-01-17 10:12:42 @2621 fix change#2602 to not used hard coded constants Vishal Bhatia 1999-01-11 09:02:41 @2602 B::MAGIC::PTR doesnot check for valid length. Lines: 134 Message-ID: Vishal Bhatia 1999-01-08 13:43:36 @2600 B::CC::pp_rv2cv problem To: perl5-porters@perl.org Message-ID: Vishal Bhatia 1998-12-16 04:17:03 @2525 More minor Fixes in CC.pm/C.pm To: perl5-porters@perl.org Message-ID: Vishal Bhatia 1998-12-10 09:30:02 @2524 Re:perlcc -e 'my $x = shift; print +($x ?...' failure To: perl5-porters@perl.org Cc: rmb1@cise.npl.co.uk, nick@ni-s.u-net.com Message-ID: (Nick's part was applied earlier, in change #2460) Vishal Bhatia 1998-12-09 07:50:30 @2523 return value of perlcc/B::CC generated functions. To: nick@ni-s.u-net.com Cc: perl5-porters@perl.org Message-ID: Vishal Bhatia 1998-12-20 20:03:25 @2492 pp_next/pp_last/pp_redo problems To: perl5-porters@perl.org Message-ID: <19981221030326.27660.qmail@hotmail.com> (slightly reformatted) Nick Ing-Simmons 1999-01-02 14:06:30 @2551 Export constant subs from B.xs for op.h, cop.h and a few others. Use them in various B::* rather than have local defs. Nick Ing-Simmons 1999-01-02 10:04:02 @2550 Integrate ext/B changes from //depot/cfgperl 'copy in' ext/B/B.xs (@2460..) 'merge in' ext/B/B/C.pm ext/B/B/CC.pm ext/B/B/Stackobj.pm (@2524..) Nick Ing-Simmons 1999-01-02 10:04:02 @2491 Integrate ext/B changes from //depot/cfgperl Gurusamy Sarathy 1998-09-23 09:52:46 B::Asmdata define PUT_svindex(), PUT_opindex() Nick Ing-Simmons 1998-12-20 14:21:29 @2491 Save _all_ GV's which have SV, AV or HV set. Vishal Bhatia 1998-12-09 23:16:50 @2461 1. Fixes the bug reported by Robin Barker 2. Fixes the bug regarding return value of c-functions generated out of perl subs. ( Just includes the patch I sent earlier) 3. Incorporates the other changes that need to be done to get CC.pm use ISA search for packages and methods on the same lines as C.pm Vishal would appreciate comments about B::Stackobj changes from someone knowing that module well. Nick Ing-Simmons 1998-12-05 17:14:42 @2453 Avoid hard-coding op numbers Update CC.pm to save %INC, and to co-exist with new C.pm Nick Ing-Simmons 1998-12-05 11:44:28 @2452 B.xs had its own code to calculate hash() which differed from PERL_HASH in hv.h - so all saved HV's were mangled - including %INC which meant that run-time require was re-done. Removed some debug from C.pm Nick Ing-Simmons 1998-12-04 22:58:49 @2451 Snapshot of re-worked B::C which compiles Tk apps at least as well as _54, but with pre-scan for classes and save the ISA scheme. Vishal Bhatia 1998-12-04 18:58:44 @2450 Vishal Bhatia's patch as a basis. Nick Ing-Simmons 1998-11-28 23:46:57 @2378 More C.pm tweaks Save globs even if we have saved cv itself before - may be imported. While we don't save "bootstrap" CV we need to provide a stub, so that if we require it later we don't fall through and attempt to DynaLoad module again. Attempt to save %INC so that "require" does not reload things we have compiled-in (does not work right yet - seems to be due to PL_incgv being created in perl_parse() current scheme setting GvHV() is "better" than saving the glob, but still does not work as I expect). Nick Ing-Simmons 1998-11-27 22:10:27 @2332 Handle INIT list in C.pm 1. Provide init_av() from B.xs 2. Export it in B.pm 3. Use it in C.pm Also disable some pruning in savecv() which seems to undo my previous patch. Experimental feature - save pathnames of .so files in easily grep-able form for use in wrapper to feed to linker. Gurusamy Sarathy 1998-11-27 15:41:38 @2324 B::C tweaks to allow Tk compiles from Nick Ing-Simmons Vishal Bhatia 1998-10-29 00:45:32 @2146 hand-apply whitespace-mutiliated patch Message-ID: <19981029074534.2334.qmail@hotmail.com> Subject: [PATCH 5.005_52]Compiling modules,more bugfixes for B Vishal Bhatia 1998-10-22 00:59:03 @2072 implement C and other fixes (via private mail) Message-Id: <19981022055904.20083.qmail@hotmail.com> Subject: [PATCH 5.005_52] More fixes for B Vishal Bhatia 1998-10-11 20:41:38 @1993 fix bug in B::CC::pp_sassign() Message-ID: <19981012014139.19614.qmail@hotmail.com> Subject: B::CC problems with pp_sassign routine Jarkko Hietaniemi 1998-10-17 15:17:19 @2005 Integrate mainperl. Gurusamy Sarathy 1998-09-23 11:52:46 @1842 define PUT_svindex(), PUT_opindex() Gurusamy Sarathy 1998-08-02 07:09:35 @1708 fixes for pod noises Gurusamy Sarathy 1998-07-22 02:08:00 @1618 fix up B modules for PL_* changes Malcolm Beattie 1998-07-21 18:13:16 @1617 Compiler docs for 5.005 Message-Id: <199807211713.SAA20735@sable.ox.ac.uk> Gurusamy Sarathy 1998-07-22 01:29:09 @1616 s/PL_sv/PL_bytecode_sv/ etc., so we have unique, case-insensitive names Gurusamy Sarathy 1998-07-21 07:12:00 @1611 fix bytecode.pl with moved var names Gurusamy Sarathy 1998-07-21 05:31:13 @1608 part 2 of PERL_OBJECT fixes (globals in bytecode.h moved to intrpvar.h) Gurusamy Sarathy 1998-07-21 05:29:10 @1607 part 1 of PERL_OBJECT fixes for new var names Gurusamy Sarathy 1998-07-20 09:38:39 @1578 complete s/foo/PL_foo/ changes (all escaped cases identified with brute force search script). Result builds and passes all tests on Solaris. win32 and PERL_OBJECT are still untested. Nick Ing-Simmons 1998-07-18 13:53:03 PL_ prefix to all perlvars, part1 Builds and passes all tests at one limit i.e. -DPERL_GLOBAL_STRUCT Ilya Zakharevich 1998-07-15 06:10:36 @1548 Minor improvements to perlcc Message-Id: <199807151010.GAA11270@monk.mps.ohio-state.edu> Gurusamy Sarathy 1998-07-15 10:01:41 @1516 add stub docs for ext/B, other minor tweaks Gurusamy Sarathy 1998-07-09 05:37:48 get it building again on win32 Gurusamy Sarathy 1998-07-04 05:02:01 @1292 fix perlcc to not rm output file, and other -w(arts) Stephen McCamant 1998-06-22 21:19:43 @1200 Inheritance of B:: classes Message-Id: Gurusamy Sarathy 1998-06-19 17:22:23 update repository copy of Asmdata.pm after `perl bytecode.pl` Gurusamy Sarathy 1998-06-11 02:59:23 @1113 fix outdated bytecode.pl Nick Ing-Simmons 1998-05-14 18:09:01 @972 Changes to allow compiler with gcc-2.8.1 in C++ mode, Remove K&R style functions, avoid struct/typedef clash. Ed Peschko 1998-04-29 21:02:36 @963 [ PATCH 5.004_64 ] Integrated regression tests for compiler added perlcc.PL Ilya Zakharevich 1998-04-08 03:21:03 @942 Subject: [PATCH 5.004_64] Cryptic error from B::CC Date: Sat, 11 Apr 1998 19:52:25 -0400 (EDT) Malcolm Beattie 1998-04-14 16:22:51 @888 [compiler] CC did "<<" instead of ">>" for right-shift on ints. Charles Bailey 1998-03-02 01:48:27 Miscellaneous minor fixes Spider Boardman 1998-03-01 02:02:47 Almost OK: 5.004_61 (threads, perlio) Andrew Cohen 1998-02-27 20:03:29 Change getc/fread to PerlIO_getc/fread in bytecode.h: Subject: [PATCH 5.004_61] bunch of small patches Nick Ing-Simmons 1998-02-28 11:31:15 Missed FREAD in bytecode.h Cannot export svref_mutex in non-threaded perl Malcolm Beattie 1998-02-27 18:35:27 Change FREAD/FGETC to BGET_FREAD/BGET_FGETC to avoid clash with preprocessor symbol on Digital UNIX. Gurusamy Sarathy 1998-02-26 03:56:19 @589 [win32] various cleanups so that B can be built as "just another extension" - export symbols needed for building B - bset_obj_store() is needed by byterun(), so define it there instead of at B.xs, and export it - freadpv() is only used in B.xs, so move it there - byte*.h are now included by perl.h - regenerate embed*.h Gurusamy Sarathy 1998-02-22 02:40:56 @568 [win32] get compiler building under win32 (needed Makefile.PL hacks that could be applicable to other platforms) Malcolm Beattie 1998-02-25 17:44:34 @585 More compiler tweaks. Malcolm Beattie 1998-02-20 18:23:47 @565 Remove compiler files from their old lib/B locations. The compiler now builds by default (without the byteperl executable so far) and seems to work at least minimally. Malcolm Beattie 1998-02-20 18:05:33 @564 Move lib/B/... and lib/[BO].pm over to where they should be, under ext/B. Malcolm Beattie 1998-02-20 17:54:58 @563 Start getting compiler to work when built with the core. [Still won't work as of this change.] Malcolm Beattie 1998-02-20 16:42:13 * Merge perlext/Compiler/... into mainline. Some files move to ext/B/..., some to lib/B/..., O.pm and B.pm go in lib and some move to the base perl directory (e.g. headers). Will need some cleaning up before it builds properly, I would guess. Malcolm Beattie 1998-02-20 16:39:38 * [compiler] Win32 changes from Sarathy, tweaked slightly by me. Malcolm Beattie 1998-02-17 17:50:50 * Assorted changes to the compiler Malcolm Beattie 1997-12-17 10:59:40 * Fix typo in compiler B/C.pm. Malcolm Beattie 1997-12-10 18:33:53 Alpha5 * Start overhauling compiler. It was working at least minimally right up until the final tweak of B.xs to add threadsv_names at which point building it provokes a seg fault in perl while doing the xsubpp :-(. Malcolm Beattie 1997-09-03 12:31:48 * Make compiler build/work with devel 5.005 Malcolm Beattie 1997-07-05 11:58:05 * Change %lx to %x in B::CV::save to prevent some CV fields becoming 0 in the init section. Add missing write_back in B::Stackobj::Padsv::load_double to fix test 22 of op/my.t. Malcolm Beattie 1997-07-05 11:58:05 * B::CC::pp_padsv must cope with vivify_ref (5.004) as well as provide_ref (5.003) Malcolm Beattie 1997-05-03 14:47:06 Alpha 4 * initial check in of compiler from version Alpha a3 to a4 CPAN-Changes-0.500005/corpus/dists/Config-GitLike.parsed000644 000000 000000 00000027077 14472651645 020627 0ustar00000000 000000 { "raw_preamble" => "", "releases" => [ { "date" => "2013-08-04", "entries" => [ { "line" => 3, "raw" => "* Switch from the deprecated Any::Moose to Moo\n\n", "style" => "*", "text" => "Switch from the deprecated Any::Moose to Moo" } ], "line" => 1, "raw" => "1.11 2013-08-04\n\n", "raw_date" => "2013-08-04", "version" => "1.11" }, { "date" => "2012-11-07", "entries" => [ { "line" => 7, "raw" => "* Provide and API got accessing the original key that a value was set\n with, in a case-preserving way. If the case of the key in a file\n matters, it is now possible to determine.\n", "style" => "*", "text" => "Provide and API got accessing the original key that a value was set with, in a case-preserving way. If the case of the key in a file matters, it is now possible to determine." }, { "line" => 10, "raw" => "* The 'name' value passed to the 'callback' parameter is now no longer\n forced to lower-case, as a consequence.\n\n", "style" => "*", "text" => "The 'name' value passed to the 'callback' parameter is now no longer forced to lower-case, as a consequence." } ], "line" => 5, "raw" => "1.10 2012-11-07\n\n", "raw_date" => "2012-11-07", "version" => "1.10" }, { "date" => "2012-08-10", "entries" => [ { "line" => 15, "raw" => "* Multiple bug fixes concerning filters, including empty filters,\n valueless keys, and applying filters to single values.\n", "style" => "*", "text" => "Multiple bug fixes concerning filters, including empty filters, valueless keys, and applying filters to single values." }, { "line" => 17, "raw" => "* Add \"human\" argument to get_all and get_regexp, to match get\n", "style" => "*", "text" => "Add \"human\" argument to get_all and get_regexp, to match get" }, { "line" => 18, "raw" => "* Add an add_comment method\n", "style" => "*", "text" => "Add an add_comment method" }, { "line" => 19, "raw" => "* Add an encoding attribute, which adds the appropriate layer on file\n I/O\n", "style" => "*", "text" => "Add an encoding attribute, which adds the appropriate layer on file I/O" }, { "line" => 21, "raw" => "* Enforce that all keys must have sections, as git 1.7.4.4 began doing\n\n", "style" => "*", "text" => "Enforce that all keys must have sections, as git 1.7.4.4 began doing" } ], "line" => 13, "raw" => "1.09 2012-08-10\n\n", "raw_date" => "2012-08-10", "version" => "1.09" }, { "date" => "2012-02-15", "entries" => [ { "line" => 25, "raw" => "* Fix loading of user_file, broken in dcdd01f, due to unexpanded ~\n (alexmv, clkao\@clkao.org)\n\n", "style" => "*", "text" => "Fix loading of user_file, broken in dcdd01f, due to unexpanded ~ (alexmv, clkao\@clkao.org)" } ], "line" => 23, "raw" => "1.08 2012-02-15\n\n", "raw_date" => "2012-02-15", "version" => "1.08" }, { "date" => "2011-10-25", "entries" => [ { "line" => 30, "raw" => "* Fix a spelling mistake in Config::GitLike::Cascaded\n (gregoa\@debian.org, forwarded by carnil\@debian.org)\n\n", "style" => "*", "text" => "Fix a spelling mistake in Config::GitLike::Cascaded (gregoa\@debian.org, forwarded by carnil\@debian.org)" } ], "line" => 28, "raw" => "1.07 2011-10-25\n\n", "raw_date" => "2011-10-25", "version" => "1.07" }, { "date" => "2011-10-12", "entries" => [ { "line" => 35, "raw" => "* Allow calling ->load_file as a class method, for simple use cases\n (alexmv)\n", "style" => "*", "text" => "Allow calling ->load_file as a class method, for simple use cases (alexmv)" }, { "line" => 37, "raw" => "* Fix a parsing bug when quoted strings directly adjoined to unquoted\n strings (alexmv)\n", "style" => "*", "text" => "Fix a parsing bug when quoted strings directly adjoined to unquoted strings (alexmv)" }, { "line" => 39, "raw" => "* Calling ->load_file on a nonexistant file no longer sets ->is_loaded\n (alexmv)\n", "style" => "*", "text" => "Calling ->load_file on a nonexistant file no longer sets ->is_loaded (alexmv)" }, { "line" => 41, "raw" => "* Document that getters implicitly call ->load (alexmv)\n", "style" => "*", "text" => "Document that getters implicitly call ->load (alexmv)" }, { "line" => 42, "raw" => "* Make ->dump implicitly call ->load as well (alexmv)\n", "style" => "*", "text" => "Make ->dump implicitly call ->load as well (alexmv)" }, { "line" => 43, "raw" => "* Minor POD fixes (alexmv, spang)\n\n", "style" => "*", "text" => "Minor POD fixes (alexmv, spang)" } ], "line" => 33, "raw" => "1.06 2011-10-12\n\n", "raw_date" => "2011-10-12", "version" => "1.06" }, { "date" => "2011-01-07", "entries" => [ { "line" => 47, "raw" => "* support Module::Install::ExtraTests 0.007 (sunnavy)\n", "style" => "*", "text" => "support Module::Install::ExtraTests 0.007 (sunnavy)" }, { "line" => 48, "raw" => "* properly set is => 'rw' in inherited classes (trs, alexmv)\n", "style" => "*", "text" => "properly set is => 'rw' in inherited classes (trs, alexmv)" }, { "line" => 49, "raw" => "* silence lc warnings on undef under perl 5.12 (iarnell\@gmail.com)\n\n", "style" => "*", "text" => "silence lc warnings on undef under perl 5.12 (iarnell\@gmail.com)" } ], "line" => 45, "raw" => "1.05 2011-01-07\n\n", "raw_date" => "2011-01-07", "version" => "1.05" }, { "date" => "2010-04-03", "entries" => [ { "line" => 53, "raw" => "* The functionality of Config::GitLike::Cascaded has been folded into\n Config::GitLike as a \"cascade\" option, and the subpackage is now\n deprecated. (alexmv)\n", "style" => "*", "text" => "The functionality of Config::GitLike::Cascaded has been folded into Config::GitLike as a \"cascade\" option, and the subpackage is now deprecated. (alexmv)" }, { "line" => 56, "raw" => "* Config::GitLike::Git->new->load(\"/path/to/git\") when the path is\n lacking a \".git\", or is a bare repository, now works. (alexmv)\n", "style" => "*", "text" => "Config::GitLike::Git->new->load(\"/path/to/git\") when the path is lacking a \".git\", or is a bare repository, now works. (alexmv)" }, { "line" => 58, "raw" => "* Fixed a bug wherein the home directory config file would be loaded\n twice, causing all values to be multiple, if that was your cwd.\n Reported by rjbs. (alexmv)\n", "style" => "*", "text" => "Fixed a bug wherein the home directory config file would be loaded twice, causing all values to be multiple, if that was your cwd. Reported by rjbs. (alexmv)" }, { "line" => 61, "raw" => "* Allow explicitly calling ->load_file without previously having\n called ->load (alexmv)\n\n", "style" => "*", "text" => "Allow explicitly calling ->load_file without previously having called ->load (alexmv)" } ], "line" => 51, "raw" => "1.04 - 2010-04-03\n\n", "raw_date" => "2010-04-03", "version" => "1.04" }, { "date" => "2010-01-03", "entries" => [ { "line" => 66, "raw" => "* Filter without replace_all should only replace the _first_ match (alexmv)\n", "style" => "*", "text" => "Filter without replace_all should only replace the _first_ match (alexmv)" }, { "line" => 67, "raw" => "* Having a matching filter with multiple and not replace_all does mean\n replacement (alexmv)\n", "style" => "*", "text" => "Having a matching filter with multiple and not replace_all does mean replacement (alexmv)" }, { "line" => 69, "raw" => "* Fix a test that failed because multiple now works, and we're too smart\n (alexmv)\n", "style" => "*", "text" => "Fix a test that failed because multiple now works, and we're too smart (alexmv)" }, { "line" => 71, "raw" => "* Fix for when ->set_multiple called with no arguments (alexmv)\n\n", "style" => "*", "text" => "Fix for when ->set_multiple called with no arguments (alexmv)" } ], "line" => 64, "raw" => "1.03 - 2010-01-03\n\n", "raw_date" => "2010-01-03", "version" => "1.03" }, { "date" => "2009-08-19", "entries" => [ { "line" => 75, "raw" => "* Bugfixes and extra tests for escaped \\ and \" in subsections (sunnavy)\n", "style" => "*", "text" => "Bugfixes and extra tests for escaped \\ and \" in subsections (sunnavy)" }, { "line" => 76, "raw" => "* win32 fixes (sunnavy)\n", "style" => "*", "text" => "win32 fixes (sunnavy)" }, { "line" => 77, "raw" => "* auto-escape \\ and \" in subsections on set (sunnavy)\n\n", "style" => "*", "text" => "auto-escape \\ and \" in subsections on set (sunnavy)" } ], "line" => 73, "raw" => "1.02 - 2009-08-19\n\n", "raw_date" => "2009-08-19", "version" => "1.02" }, { "date" => "2009-08-11", "entries" => [ { "line" => 81, "raw" => "* Fix breakage under Mouse due to Moose references\n", "style" => "*", "text" => "Fix breakage under Mouse due to Moose references" }, { "line" => 82, "raw" => "* New Config::GitLike::Git module for loading config\n files from the git locations\n", "style" => "*", "text" => "New Config::GitLike::Git module for loading config files from the git locations" }, { "line" => 84, "raw" => "* various cleanups of Makefile.PL\n", "style" => "*", "text" => "various cleanups of Makefile.PL" }, { "line" => 85, "raw" => "* remove extraneous dep Regexp::Common\n\n", "style" => "*", "text" => "remove extraneous dep Regexp::Common" } ], "line" => 79, "raw" => "1.01 - 2009-08-11\n\n", "raw_date" => "2009-08-11", "version" => "1.01" }, { "date" => "2009-07-08", "entries" => [ { "line" => 89, "raw" => "* Initial release\n", "style" => "*", "text" => "Initial release" } ], "line" => 87, "raw" => "1.00 - 2009-07-08\n\n", "raw_date" => "2009-07-08", "version" => "1.00" } ] } CPAN-Changes-0.500005/corpus/dists/Archer.parsed000644 000000 000000 00000034467 14472651645 017301 0ustar00000000 000000 { "preamble" => "Revision history for Archer", "raw_preamble" => "Revision history for Archer\n\n", "releases" => [ { "entries" => [], "line" => 3, "raw" => "{{\$NEXT}}\n\n", "version" => "{{\$NEXT}}" }, { "date" => "2013-07-25T06:32:29Z", "entries" => [ { "line" => 6, "raw" => " - fix asset_dir resolving in ConfigLoader\n", "style" => "-", "text" => "fix asset_dir resolving in ConfigLoader" }, { "line" => 7, "raw" => " - restore ShareDir missing in 0.14 and move asset/ to share/asset for Minilla friendly.\n", "style" => "-", "text" => "restore ShareDir missing in 0.14 and move asset/ to share/asset for Minilla friendly." }, { "line" => 8, "raw" => " - add error message of Archer::Util.\n\n", "style" => "-", "text" => "add error message of Archer::Util." } ], "line" => 5, "raw" => "0.16 2013-07-25T06:32:29Z\n", "raw_date" => "2013-07-25T06:32:29Z", "version" => "0.16" }, { "date" => "2013-06-18T02:20:51Z", "entries" => [ { "line" => 11, "raw" => " - fix dependencies\n", "style" => "-", "text" => "fix dependencies" }, { "line" => 12, "raw" => " - fix tests for perl5.17 or higher\n\n", "style" => "-", "text" => "fix tests for perl5.17 or higher" } ], "line" => 10, "raw" => "0.15 2013-06-18T02:20:51Z\n", "raw_date" => "2013-06-18T02:20:51Z", "version" => "0.15" }, { "date" => "2013-06-17T12:06:02Z", "entries" => [ { "line" => 15, "raw" => " - Switch to Minilla\n", "style" => "-", "text" => "Switch to Minilla" }, { "line" => 16, "raw" => " - Fixup dependencies\n", "style" => "-", "text" => "Fixup dependencies" }, { "line" => 17, "raw" => " - move script files to bin\n", "style" => "-", "text" => "move script files to bin" }, { "line" => 18, "raw" => " - fix typo in documents\n\n", "style" => "-", "text" => "fix typo in documents" } ], "line" => 14, "raw" => "0.14 2013-06-17T12:06:02Z\n", "raw_date" => "2013-06-17T12:06:02Z", "version" => "0.14" }, { "entries" => [ { "line" => 21, "raw" => " - add 'ready' phase.\n", "style" => "-", "text" => "add 'ready' phase." }, { "line" => 22, "raw" => " - appropriately handling when specified several values in --skip and --with.\n", "style" => "-", "text" => "appropriately handling when specified several values in --skip and --with." }, { "line" => 23, "raw" => " - remove old descriptions.\n", "style" => "-", "text" => "remove old descriptions." }, { "line" => 24, "raw" => " - refactor tests.\n\n", "style" => "-", "text" => "refactor tests." } ], "line" => 20, "raw" => "0.13\n", "version" => "0.13" }, { "entries" => [ { "line" => 27, "raw" => " - add validate feature in Plugin::Exec::Local.\n", "style" => "-", "text" => "add validate feature in Plugin::Exec::Local." }, { "line" => 28, "raw" => " - depend to Test::More 0.98.\n\n", "style" => "-", "text" => "depend to Test::More 0.98." } ], "line" => 26, "raw" => "0.12\n", "version" => "0.12" }, { "entries" => [ { "line" => 31, "raw" => " - add install_script `archer`\n", "style" => "-", "text" => "add install_script `archer`" }, { "line" => 32, "raw" => " - fix shebang in archer.pl and arher\n", "style" => "-", "text" => "fix shebang in archer.pl and arher" }, { "line" => 33, "raw" => " - set default assets path to share_dir\n\n", "style" => "-", "text" => "set default assets path to share_dir" } ], "line" => 30, "raw" => "0.11\n", "version" => "0.11" }, { "entries" => [ { "line" => 37, "raw" => " - hide from pause SVN::Agent\n\n", "style" => "-", "text" => "hide from pause SVN::Agent" } ], "line" => 35, "raw" => "0.10\n\n", "version" => "0.10" }, { "entries" => [ { "line" => 41, "raw" => " - add feature to specify multi roles in config.yaml\n", "style" => "-", "text" => "add feature to specify multi roles in config.yaml" }, { "line" => 42, "raw" => " - use IO::Prompt::Simple instead of IO::Prompt, because IO::Prompt doesn't work in perl-5.14 after.\n", "style" => "-", "text" => "use IO::Prompt::Simple instead of IO::Prompt, because IO::Prompt doesn't work in perl-5.14 after." }, { "line" => 43, "raw" => " - add feature to specify role in command line option\n", "style" => "-", "text" => "add feature to specify role in command line option" }, { "line" => 44, "raw" => " - role support in Archer::Schell\n\n", "style" => "-", "text" => "role support in Archer::Schell" } ], "line" => 39, "raw" => "0.09\n\n", "version" => "0.09" }, { "entries" => [ { "line" => 48, "raw" => " commit 239829c5d2fd0a15abdbecbe593146c466905c3c\n", "style" => "", "text" => "commit 239829c5d2fd0a15abdbecbe593146c466905c3c" }, { "line" => 49, "raw" => " Author: Masayuki Matsuki \n", "style" => "", "text" => "Author: Masayuki Matsuki " }, { "line" => 50, "raw" => " Date: Wed Dec 14 19:13:15 2011 +0900\n\n", "style" => "", "text" => "Date: Wed Dec 14 19:13:15 2011 +0900" }, { "line" => 52, "raw" => " stringify \$rsync->out and \$rsync->err for log.\n\n", "style" => "", "text" => "stringify \$rsync->out and \$rsync->err for log." }, { "line" => 54, "raw" => " File::Rsync::out and File::Rsync::err retruns array in array context,\n", "style" => "", "text" => "File::Rsync::out and File::Rsync::err retruns array in array context," }, { "line" => 55, "raw" => " and retruns array ref in scalar context.\n\n", "style" => "", "text" => "and retruns array ref in scalar context." }, { "line" => 57, "raw" => " lib/Archer/Plugin/Rsync.pm | 4 ++--\n", "style" => "", "text" => "lib/Archer/Plugin/Rsync.pm | 4 ++--" }, { "line" => 58, "raw" => " 1 files changed, 2 insertions(+), 2 deletions(-)\n\n", "style" => "", "text" => "1 files changed, 2 insertions(+), 2 deletions(-)" } ], "line" => 46, "raw" => "0.08\n\n", "version" => "0.08" }, { "entries" => [ { "line" => 62, "raw" => " * b3ab89f re-packaging\n", "style" => "*", "text" => "b3ab89f re-packaging" }, { "line" => 63, "raw" => " * 5fbafad use_test_base sucks\n", "style" => "*", "text" => "5fbafad use_test_base sucks" }, { "line" => 64, "raw" => " * 08c7ad2 shell\343\203\242\343\203\274\343\203\211\343\201\256 {on,with} ... do ... \345\275\242\345\274\217\343\201\250 !task {on,with} ...\345\275\242\345\274\217\343\201\214\345\213\225\343\201\217\343\202\210 \343\201\206\343\201\253\343\201\227\343\201\237\343\200\202 \343\203\206\343\202\271\343\203\210\343\202\263\343\203\274\343\203\211\343\202\202\350\277\275\345\212\240\343\200\202\n", "style" => "*", "text" => "08c7ad2 shell\343\203\242\343\203\274\343\203\211\343\201\256 {on,with} ... do ... \345\275\242\345\274\217\343\201\250 !task {on,with} ...\345\275\242\345\274\217\343\201\214\345\213\225\343\201\217\343\202\210 \343\201\206\343\201\253\343\201\227\343\201\237\343\200\202 \343\203\206\343\202\271\343\203\210\343\202\263\343\203\274\343\203\211\343\202\202\350\277\275\345\212\240\343\200\202" }, { "line" => 65, "raw" => " * dd059b7 'role' should be here :p\n", "style" => "*", "text" => "dd059b7 'role' should be here :p" }, { "line" => 66, "raw" => " * 97e332b \343\203\215\343\202\271\343\203\210\343\201\227\343\201\237for\343\203\253\343\203\274\343\203\227\343\201\256\347\275\240\343\201\253\343\203\217\343\203\236\343\201\243\343\201\237\n", "style" => "*", "text" => "97e332b \343\203\215\343\202\271\343\203\210\343\201\227\343\201\237for\343\203\253\343\203\274\343\203\227\343\201\256\347\275\240\343\201\253\343\203\217\343\203\236\343\201\243\343\201\237" }, { "line" => 67, "raw" => " * 2dcb78c fixed log level.\n", "style" => "*", "text" => "2dcb78c fixed log level." }, { "line" => 68, "raw" => " * 2277280 added with option for do deploy with skip_default tasks.\n", "style" => "*", "text" => "2277280 added with option for do deploy with skip_default tasks." }, { "line" => 69, "raw" => " * 9cc7ea9 added skip_default setting for none-always-need task.\n", "style" => "*", "text" => "9cc7ea9 added skip_default setting for none-always-need task." }, { "line" => 70, "raw" => " * 7cc348c not \$plugin but \$args.\n", "style" => "*", "text" => "7cc348c not \$plugin but \$args." }, { "line" => 71, "raw" => " * 62d4b85 fixed indent.\n", "style" => "*", "text" => "62d4b85 fixed indent." }, { "line" => 72, "raw" => " * afbe53f added --log_level option for debuging setting.\n", "style" => "*", "text" => "afbe53f added --log_level option for debuging setting." }, { "line" => 73, "raw" => " * 6e6a6ef added only feature.\n", "style" => "*", "text" => "6e6a6ef added only feature." }, { "line" => 74, "raw" => " * 2fc1822 Added project filter for project only task. Tweaked info message.\n\n", "style" => "*", "text" => "2fc1822 Added project filter for project only task. Tweaked info message." } ], "line" => 60, "raw" => "0.07\n\n", "version" => "0.07" }, { "entries" => [ { "line" => 78, "raw" => " - added YAML::Syck support\n", "style" => "-", "text" => "added YAML::Syck support" }, { "line" => 79, "raw" => " - specify assets path in config.yaml\n\n", "style" => "-", "text" => "specify assets path in config.yaml" } ], "line" => 76, "raw" => "0.06\n\n", "version" => "0.06" }, { "entries" => [ { "line" => 83, "raw" => " - Plugin::Flock: added\n", "style" => "-", "text" => "Plugin::Flock: added" }, { "line" => 84, "raw" => " - Plugin::Confirm: support timeout\n", "style" => "-", "text" => "Plugin::Confirm: support timeout" }, { "line" => 85, "raw" => " - Plugin::Exec::Remote: do not use sudo when does not specify user name in configuration(by mizzy++)\n", "style" => "-", "text" => "Plugin::Exec::Remote: do not use sudo when does not specify user name in configuration(by mizzy++)" }, { "line" => 86, "raw" => " - fixed some test problem.\n\n", "style" => "-", "text" => "fixed some test problem." } ], "line" => 81, "raw" => "0.05\n\n", "version" => "0.05" }, { "entries" => [ { "line" => 90, "raw" => " - fixed test script.\n", "style" => "-", "text" => "fixed test script." }, { "line" => 91, "raw" => " - no feature changes.\n\n", "style" => "-", "text" => "no feature changes." } ], "line" => 88, "raw" => "0.04\n\n", "version" => "0.04" }, { "entries" => [ { "line" => 95, "raw" => " - fixed test.\n", "style" => "-", "text" => "fixed test." }, { "line" => 96, "raw" => " - no feature changes.\n\n", "style" => "-", "text" => "no feature changes." } ], "line" => 93, "raw" => "0.03\n\n", "version" => "0.03" }, { "entries" => [ { "line" => 100, "raw" => " - initial cpan release.\n\n", "style" => "-", "text" => "initial cpan release." } ], "line" => 98, "raw" => "0.02\n\n", "version" => "0.02" }, { "date" => "2006-10-06T12:38:02Z", "entries" => [ { "line" => 103, "raw" => " Initial release.\n\n", "style" => "", "text" => "Initial release." } ], "line" => 102, "raw" => "0.01 Fri Oct 6 12:38:02 2006\n", "raw_date" => "Fri Oct 6 12:38:02 2006", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/Ouch.parsed000644 000000 000000 00000014053 14472651645 016760 0ustar00000000 000000 { "raw_preamble" => "", "releases" => [ { "entries" => [ { "line" => 2, "raw" => " - Catch subclasses of Ouch as well Thanks to Graham Knop.\n\n", "style" => "-", "text" => "Catch subclasses of Ouch as well Thanks to Graham Knop." } ], "line" => 1, "note" => "September 23, 2013", "raw" => "0.0407 - September 23, 2013\n", "version" => "0.0407" }, { "entries" => [ { "line" => 5, "raw" => " - Ouch doesn't need 5.12 afterall. Just needed to include the correct prereqs for the pragmas. Thanks to MidLifeXis and Ether.\n\n", "style" => "-", "text" => "Ouch doesn't need 5.12 afterall. Just needed to include the correct prereqs for the pragmas. Thanks to MidLifeXis and Ether." } ], "line" => 4, "note" => "September 13, 2013", "raw" => "0.0406 - September 13, 2013\n", "version" => "0.0406" }, { "entries" => [ { "line" => 8, "raw" => " - worr submitted a patch fixing some a POD error\n\n", "style" => "-", "text" => "worr submitted a patch fixing some a POD error" } ], "line" => 7, "note" => "August 19, 2013", "raw" => "0.0405 - August 19, 2013\n", "version" => "0.0405" }, { "entries" => [ { "line" => 11, "raw" => " - Made Ouch explicitly require Perl 5.12 due to use of \"use overload\" and \"use parent\".\n\n", "style" => "-", "text" => "Made Ouch explicitly require Perl 5.12 due to use of \"use overload\" and \"use parent\"." } ], "line" => 10, "note" => "August 19, 2013", "raw" => "0.0404 - August 19, 2013\n", "version" => "0.0404" }, { "entries" => [ { "line" => 14, "raw" => " - Fixed documentation misspellings. \@richdouglasevans\n\n", "style" => "-", "text" => "Fixed documentation misspellings. \@richdouglasevans" } ], "line" => 13, "note" => "July 11, 2013", "raw" => "0.0403 - July 11, 2013\n", "version" => "0.0403" }, { "entries" => [ { "line" => 17, "raw" => " - Fixed missing documentation for \"barf\".\n", "style" => "-", "text" => "Fixed missing documentation for \"barf\"." }, { "line" => 18, "raw" => " - Depricated :traditional in favor of Try::Tiny.\n", "style" => "-", "text" => "Depricated :traditional in favor of Try::Tiny." }, { "line" => 19, "raw" => " - Documented rethrowing Ouches. \n", "style" => "-", "text" => "Documented rethrowing Ouches." }, { "line" => 20, "raw" => " - Added more docs for the :trytiny aliases\n\n", "style" => "-", "text" => "Added more docs for the :trytiny aliases" } ], "line" => 16, "note" => "June 18, 2013", "raw" => "0.0402 - June 18, 2013\n", "version" => "0.0402" }, { "entries" => [ { "line" => 23, "raw" => " - beppu pointed out there was no \$VERSION. Told Dist::Zilla to add that.\n\n", "style" => "-", "text" => "beppu pointed out there was no \$VERSION. Told Dist::Zilla to add that." } ], "line" => 22, "note" => "April 30, 2011", "raw" => "0.0401 - April 30, 2011\n", "version" => "0.0401" }, { "entries" => [ { "line" => 26, "raw" => " - Merged barf() from William Orr.\n", "style" => "-", "text" => "Merged barf() from William Orr." }, { "line" => 27, "raw" => " - Added an export called \":trytiny\" which exports throw(), caught(), and caught_all().\n\n", "style" => "-", "text" => "Added an export called \":trytiny\" which exports throw(), caught(), and caught_all()." } ], "line" => 25, "note" => "April 30, 2011", "raw" => "0.0400 - April 30, 2011\n", "version" => "0.0400" }, { "entries" => [ { "line" => 30, "raw" => " - Added hug() as a catch all.\n\n", "style" => "-", "text" => "Added hug() as a catch all." }, { "line" => 32, "raw" => " By popular demand: http://blogs.perl.org/users/jt_smith/2011/04/ouch---exceptions-that-dont-hurt.html#comments\n", "style" => "", "text" => "By popular demand: http://blogs.perl.org/users/jt_smith/2011/04/ouch---exceptions-that-dont-hurt.html#comments" }, { "line" => 33, "raw" => " - Codes can now be strings.\n", "style" => "-", "text" => "Codes can now be strings." }, { "line" => 34, "raw" => " - Added an export called 'traditional' which gives you more traditional names like try(), catch(), throw(), and catch_all().\n\n", "style" => "-", "text" => "Added an export called 'traditional' which gives you more traditional names like try(), catch(), throw(), and catch_all()." } ], "line" => 29, "note" => "April 14, 2011", "raw" => "0.0300 - April 14, 2011\n", "version" => "0.0300" }, { "entries" => [ { "line" => 37, "raw" => " - Added 'bleep'.\n\n", "style" => "-", "text" => "Added 'bleep'." } ], "line" => 36, "note" => "April 14, 2011", "raw" => "0.0200 - April 14, 2011\n", "version" => "0.0200" }, { "entries" => [ { "line" => 40, "raw" => " - Initial public release.\n\n", "style" => "-", "text" => "Initial public release." } ], "line" => 39, "note" => "April 13, 2011", "raw" => "0.0100 - April 13, 2011\n", "version" => "0.0100" } ] } CPAN-Changes-0.500005/corpus/dists/Digest-MD5.parsed000644 000000 000000 00000117167 14472651645 017676 0ustar00000000 000000 { "preamble" => "2013-07-02 Gisle Aas \n\n Release 2.53\n\n Drop File::Spec dependency and don't override installation location\n for perl-5.12++\n\n Documentation tweaks.\n\n\n\n2012-06-08 Gisle Aas \n\n Release 2.52\n\n Gisle Aas (3):\n Wrong version number in the changelog\n The t/threads.t was missing from the MANIFEST\n Update expected digests for files\n\n Andrew Fresh (1):\n Remove double the\n\n Lyle Hopkins (1):\n Digest::Perl::MD5 OO fallback didn't work [RT#66634]\n\n Peter J. Acklam (1):\n Fix typos (spelling errors) in cpan/Digest-MD5/*\n\n Shlomi Fish (1):\n Modernize the code in the POD.\n\n Zefram (1):\n Makes Digest::MD5 work on Perl 5.6 [RT#75032]\n\n\n\n2010-09-30 Gisle Aas \n\n Release 2.51\n\n Florian Ragwitz (1):\n Fix compilation with c++ compilers\n\n Gisle Aas (1):\n Fix repository specification in META.yml\n\n\n\n2010-09-25 Gisle Aas \n\n Release 2.50\n\n Chris 'BinGOs' Williams (1):\n Amended tests to work with perl core.\n\n Florian Ragwitz (3):\n Attach context pointers using sv magic\n Add failing test for thread cloning\n Clone MD5 contexts on thread cloning\n get_md5_ctx should never return anything but a valid pointer\n\n Gisle Aas (1):\n perl-5.6 no longer supported\n\n Jesse Vincent (1):\n Preserve utf8ness of argument [RT#44927]\n\n\n\n2010-07-03 Gisle Aas \n\n Release 2.40\n\n Marc Pignat (1):\n Safer alignment test [RT#35823]\n\n Robin Barker (1):\n consting in new ext/\n\n Gisle Aas (1):\n Remove the MacOS branch of this test\n\n\n\n2009-06-09 Gisle Aas \n\n Release 2.39\n\n Nicholas Clark (2):\n Get rid of the PERL_CORE hacks\n Sync core: Rename ext/Digest/MD5 to ext/Digest-MD5\n\n Jerry Hedden (1):\n Handle non-numeric version numbers in ext/Digest/MD5/Makefile.PL\n\n\n\n2008-11-14 Gisle Aas \n\n Release 2.38\n\n The 2.37 tarball was infected by various '._*' files.\n Thank you, Mac OS X!\n\n Applied warning fix from Geoff Richards [RT#19643]\n\n Applied compatibility fix from Alexandr Ciornii [RT#30348]\n\n\n\n2008-11-12 Gisle Aas \n\n Release 2.37\n\n Sync up with consting changes from the perl core.\n\n\n\n2005-11-30 Gisle Aas \n\n Release 2.36\n\n Fix documentation typo.\n\n\n\n2005-11-26 Gisle Aas \n\n Release 2.35\n\n Forgot to incorporate fixes already applied to bleadperl :-(\n - doc typo\n - consting\n - unused my_na\n - USE_HEAP_INSTEAD_OF_STACK for Symbian\n\n\n\n2005-11-26 Gisle Aas \n\n Release 2.34\n\n Document that it is now easy to generate different messages that produce the\n same MD5 digest.\n\n Use XSLoader; perl-5.6 is now required.\n\n Tweaks to the processing of \$? after running the test program.\n\n\n\n2003-12-07 Gisle Aas \n\n Release 2.33\n \n Enable explicit context passing for slight performance\n improvement in threaded perls.\n \n Tweaks to the Makefile.PL so that it is suitable both for\n core and CPAN use.\n\n\n\n2003-12-05 Gisle Aas \n\n Release 2.32\n\n Don't run u32align test program on HP-UX 10.20 as it\n will hang. Patch by H.Merijn Brand .\n\n Fixed documentation typo.\n\n\n\n2003-11-28 Gisle Aas \n\n Release 2.31\n\n Inherit add_bits() from Digest::base if available.\n\n\n\n2003-10-09 Gisle Aas \n\n Release 2.30\n\n Some tweaks to make the module build on perl-5.004 and\n perl-5.005 again.\n\n\n\n2003-10-06 Gisle Aas \n\n Release 2.29\n\n Another try. Forgot to update the test checksums.\n\n\n\n2003-10-06 Gisle Aas \n\n Release 2.28\n\n Fix minor documentation typo.\n\n\n\n2003-08-04 Gisle Aas \n\n Release 2.27\n\n Avoid having to figure how to compile alignment test program\n on MS-Windows by just assume free alignment as for i386. Source\n builds on Windows was apparently broken.\n\n\n\n2003-07-21 Gisle Aas \n\n Release 2.26\n\n Don't assume PerlIO_read() works like fread() even though\n it was documented like that for perl 5.6. It returns negative\n on read failure.\n\n Kill test #3 in t/badfile.t. I don't know a reliable way\n to test read failures on a file handle. Seems better not to\n test than to make many worry.\n\n\n\n2003-07-04 Gisle Aas \n\n Release 2.25\n\n The \$md5->addfile method now croaks if it discovers\n errors on the handle after reading from it. This should\n make it more difficult to end up with the wrong digest\n just because you are to lazy to check the error status\n on your file handles after reading from them.\n\n Improved documentation.\n\n Sync up with bleadperl; even safer patchlevel include.\n\n\n\n2003-03-09 Gisle Aas \n\n Release 2.24\n\n Don't let the \$^W test get confused by lexical warnings.\n\n Sync up with bleadperl; safer patchlevel include.\n\n\n\n2003-01-18 Gisle Aas \n\n Release 2.23\n\n Override INSTALLDIRS for 5.8 as suggested by\n Guido Ostkamp .\n\n\n\n2003-01-04 Gisle Aas \n\n Release 2.22.\n\n Added clone method.\n Contributed by Holger Smolinski \n\n\n\n2002-12-27 Gisle Aas \n\n Release 2.21\n\n Minor tweaks sync up with bleadperl:\n - VMS optimizer tweaks to the Makefile.PL\n - MacOS support\n - Added alignment test\n\n Added example to the MD5 POD that shows how to calculate the\n digest of Unicode strings.\n\n\n\n2002-05-05 Gisle Aas \n\n Release 2.20\n\n More synchronization with tweaks Jarkko have done to the\n bleadperl test suite. This time various EBCDIC hacks.\n\n Outside PERL_CORE the md5-aaa.t test loaded the wrong version of\n the module (and would fail if no previous Digest::MD5 was installed).\n Patch by Mike Stok \n\n\n\n2002-05-01 Gisle Aas \n\n Release 2.19\n\n One more test suite update from Jarkko to sync it\n even better with bleadperl.\n\n\n\n2002-05-01 Gisle Aas \n\n Release 2.18\n\n Changes #12954 and #16173 from bleadperl. Documentation typo fix\n and some signed/unsigned mismatches that Microsoft's C compiler\n complained about.\n\n The EBCDIC-aware md5-aaa.t from bleadperl.\n\n\n\n2002-04-25 Gisle Aas \n\n Release 2.17\n\n The SvPVbyte in perl-5.6.1 is buggy. Use the one from 5.7.3\n instead.\n\n Give warning if the function interface is used as instance\n methods: \$md5->md5_hex().\n\n\n\n2001-09-07 Gisle Aas \n\n Release 2.16\n\n Sync up with the bleadperl version:\n - use SvPVbyte() if available\n - fixes to make the code 'gcc -Wall'-clean\n\n\n\n2001-08-27 Gisle Aas \n\n Release 2.15\n\n Avoid exit() in Makefile.PL and bleadperl redefinition of printf\n in the alignment test program.\n Patch by Doug MacEachern .\n\n\n\n2001-07-18 Gisle Aas \n\n Release 2.14\n\n Try to warn if the functional interface is used as methods,\n i.e. Digest::MD5->md5_hex(\"foo\") will make noise if -w is\n enabled.\n\n Document the missing padding for the base64 digests.\n\n If both XS bootstrap and locating Digest::Perl::MD5 fails\n re-raise the original XS bootstrap exception.\n\n\n\n2001-03-13 Gisle Aas \n\n Release 2.13\n\n Moved all other Digest:: modules out of the Digest-MD5 dist.\n\n\n\n2000-09-18 Gisle Aas \n\n Release 2.12\n\n Avoid pointer cast warning for machines with bigger ints\n than pointers. Patch by Robin Barker .\n\n\n\n2000-08-19 Gisle Aas \n\n Release 2.11\n \n The fallback code introduced in 2.10 did only work for\n perl-5.6.0. It should now for for perl5.004 and 5.005\n as well. Patch by Ville Skytt\303\244 .\n\n\n\n2000-08-18 Gisle Aas \n\n Release 2.10\n\n Digest::MD5 will now try to fallback to the pure perl\n implementation of Digest::Perl::MD5 if bootstrap fails.\n\n Added a bit internal paranoia about casting the IV\n in the Digest::MD5 object to the MD5_CTX* pointer.\n\n\n\n1999-08-06 Gisle Aas \n\n Release 2.09\n\n Documentation update.\n\n\n\n1999-07-28 Gisle Aas \n\n Release 2.08\n\n The addfile() methods could trigger a core dump when passed\n a filehandle that had failed to open.\n\n\n\n1999-04-26 Gisle Aas \n\n Release 2.07\n\n The Digest::SHA1 module failed on some 64-bit systems, because I\n assumed there was a correspondence between the U32 size and\n BYTEORDER. This version use 'unsigned long' as Uwe's original\n SHA module did.\n\n The module should now work better when liked statically with perl,\n because we now use a safer module-loaded test in Digest.pm.\n\n Assume we know the outcome of the alignment test on VMS. Patch by\n Chuck Lane \n\n\n\n1999-03-26 Gisle Aas \n\n Release 2.06\n\n Avoid LONG and BYTE types in SHA.xs as they was in conflict\n with similar definitions in .\n\n Patch by Marko Asplund to make the alignment\n test program link successfully with sfio-perl.\n\n Fixed a typo in MD5.xs that might have affected 64-bit systems.\n Spotted by Nick Ing-Simmons\n\n\n\n1999-03-15 Gisle Aas \n\n Release 2.05\n\n Included Digest::SHA1 based on Uwe Hollerbach's SHA module.\n\n\n\n1999-03-05 Gisle Aas \n\n Release 2.04\n\n Avoid the -o option when compiling alignment test program\n for Win32 as suggested by Gurusamy Sarathy.\n\n DEC Compiler bug workaround. Contributed by D Roland Walker\n \n\n Having references to a local variable called \"na\" was not\n very safe either. Some older versions of Perl can apparently\n macroize this into something completely different.\n\n\n\n1999-02-27 Gisle Aas \n\n Release 2.03\n\n Patch from Christopher J. Madsen that\n should help getting the u32align test program to compile with\n Visual C++ 5 on Windows NT.\n\n Got rid of references to PL_na.\n\n\n\n1999-01-31 Gisle Aas \n\n Release 2.02\n\n Added a hints file as workaround for an IRIX compiler bug.\n Contributed by D Roland Walker .\n\n Note that the rfc2202 test can still fail on some DEC Alpha,\n because of a compiler bug that affects the perl 'x' operator.\n The Digest:: modules should work and be safe to install anyway.\n\n\n\n1998-12-18 Gisle Aas \n\n Release 2.01\n\n Some casts and tweaks to make picky compilers more happy.\n\n\n\n1998-11-04 Gisle Aas \n\n Release 2.00.\n\n Taken out Digest::SHA1 as this module will be provided from Uwe\n Hollerbach later.\n\n Some tweaks to MD2.xs and MD5.xs since \"na\" disappeared in\n perl5.005_53\n\n\n\n1998-10-30 Gisle Aas \n\n Release 1.99_60\n\n The 1.99_59 release introduced compilation problems for big-endian\n systems with free U32 alignment. Bug reported, and fix suggested\n by Paul J. Schinder .\n\n\n\n1998-10-28 Gisle Aas \n\n Release 1.99_59\n\n Makefile.PL will run a test program to find out if U32 values can\n be aligned anywhere. This hopefully cures the core dumps reported\n on Solaris and other big endian systems. Thanks to Graham Barr for\n debugging this.\n\n\n\n1998-10-28 Gisle Aas \n\n Release 1.99_58\n\n Should be very close to a 2.00 release now. Need some success\n reports from people running on big-endian machines first I think.\n\n Added a Digest::MD2 implementation.\n\n Wrote Digest.pm documentation. This define the interface that all\n Digest:: modules should provide.\n\n Avoided some code duplication in MD5.xs\n\n Fixed typo, that prevented Digest::SHA1::sha1_base64() from working.\n\n\n\n1998-10-27 Gisle Aas \n\n Release 1.99_57\n\n Rewritten most of the MD5 C code to make it real fast (especially\n on little-endian machines without alignment restrictions for U32).\n Compared to MD5-1.7 we can process files 4 times as fast and we\n digest small stuff in memory 7 times faster. I came to these\n conclusions after these tests (gcc -O2, i586, Linux):\n\n First tested calculation of the digest of a 31 MB file, using\n perl -le 'print Digest::MD5->new->addfile(*STDIN)->hexdigest'\n and similar stuff:\n\n MD5-1.7: 21.06s\n Digest::MD5-1.99_57: 5.23s\n md5sum (GNU textutils): 4.90s\n\n As you can see, we do nearly as good as the md5sum program. I\n think the reason we don't beat md5sum is that perl always insist on\n loading extra modules like Config.pm, Carp.pm, strict.pm, vars.pm,\n AutoLoader.pm and DynaLoader.pm. When I simply wrapped the MD5.xs\n hasher code in a C program I managed to process the file in 4.68s.\n\n Then we calculated the digest of the same 6 byte sting, 20000\n times:\n\n MD5-1.7: 11.81s\n Digest::MD5-1.99_57: 1.68s\n\n Digest::MD5 benefit from making this into a plain procedure call\n instead of a static method call.\n\n\n Other changes in this release are:\n\n Documentation update\n\n Internal MD5.xs cleanup.\n\n \$md5->digest will automatically reset now.\n\n Digest::HMAC methods add() and addfile() did not return the\n correct object.\n\n Added Digest.pm loading module. I am not sure this is a good idea.\n\n Added Digest::SHA1 and Digest::HMAC_SHA1 module. The Digest::SHA1\n module is just a wrapper around SHA.pm. I hope to get the author\n of SHA.pm to move his module to the Digest:: category.\n\n\n\n1998-10-25 Gisle Aas \n\n Release 1.99_56\n\n Fix memcpy_byteswap() function in MD5.xs. Must be careful with\n htovl() as it might evaluate its arguments more than once.\n\n\n\n1998-10-25 Gisle Aas \n\n Release 1.99_55\n\n Grahams HMAC_MD5.pm split into two modules. Digest::HMAC and\n Digest::HMAC_MD5. Also provide functional interface. Documentation\n is still lacking.\n\n Included RFC 2202 based test for HMAC-MD5.\n\n\n\n1998-10-24 Gisle Aas \n\n Release 1.99_54\n\n Included HMAC_MD5.pm, contributed by Graham Barr .\n\n I have a hard time to make up my mind :-) md5_bin() renamed back\n to md5(). Functions are not exported by default any more.\n\n Try to Encode/Decode with memcpy_byteswap for 32-bit big-endian\n machines.\n\n\n\n1998-10-23 Gisle Aas \n\n Release 1.99_53\n\n Renamed core module as Digest::MD5. Leave a MD5.pm stub for\n legacy code.\n\n The md5() function renamed as md5_bin().\n\n The constructor, Digest::MD5->new, no longer takes any extra\n arguments.\n\n Added some new tests.\n\n Updated the documentation.\n\n \$md5->b64digest implemented with same base64 encoder as md5_base64.\n\n\n\n1998-10-23 Gisle Aas \n\n Release 1.99_52\n\n Patch from Graham Barr which make it work for big-endian machines\n again.\n\n\n\n1998-10-22 Gisle Aas \n\n Release 1.99_51\n\n The MD5 class is now subclassable.\n\n The add() and addfile() methods now return \$self.\n\n The reset() method is just an alias for new().\n\n The constructor (MD5->new) now takes optional arguments which are\n automatically added. It means that we can now write:\n\n MD5->new(\$data)->hexdigest;\n\n New \$md5->b64digest method.\n\n New functions that are exported on request: md5, md5_hex, md5_base64\n\n Included RFC 1321\n\n Barely started to update the documentation.\n\n\n\n1998-10-22 Gisle Aas \n\n Release 1.99_50\n\n Much better performance (more than twice as fast now). Mostly\n because we use Copy/Zero instead of the original MD5_memcpy and\n MD5_memset functions.\n\n The addfile() and hexdigest() methods are now XS implemented.\n\n All RSA functions now included in MD5.xs and made static.\n\n Use perl's Copy/Zero.\n\n Random cleanup, simplifications and reformatting.\n Merged things better with the perl configuration.\n\n\n\nNeil Winton's versions below:\n\n\n*** 96/06/20 Version 1.7\n\nMD5 is now completely 64-bit clean (I hope). The basic MD5 code uses\n32-bit quantities and requires a typedef UINT4 to be defined in\nglobal.h. Perl configuration data (the value of BYTEORDER) is used to\ndetermine if unsigned longs have 4 or 8 bytes. On 64-bit platforms (eg\nDEC Alpha) then it assumes that \"unsigned int\" will be a 32-bit type.\nIf this is incorrect then adding -DUINT4_IS_LONG to the DEFINES line in\nMakefile.PL will override this.\n\nOn some machines (at least Cray that I know of) there is no 32-bit\ninteger type. In this case defining TRUNCATE_UINT4 (which is done\nautomatically for a Cray) will ensure that 64-bit values are masked\ndown to 32 bits. I have done my best to test this but without easy\naccess to a true 64-bit machine I can not totally guarantee it (unless\nanyone wants to lend me a spare Cray :-)\n\nThere is one remaining limitation for 64-bit enabled processors. The\namount of data passed to any single call to the underlying MD5\nroutines is limited to (2^32 - 1) bytes -- that's 4 gigabytes. I'm\nsorry if that's a real problem for you ...\n\nAnd finally, a minor compilation warning (unsigned char * used with\nfunction having char * prototype) has also been eliminated.\n\n*** 96/04/09 Version 1.6\n\nRe-generated module framework using h2xs to pick up the latest module\nconventions for versions etc. You can now say \"use MD5 1.6;\" and things\nshould work correctly. MD5.pod has been integrated into MD5.pm and\nCHANGES renamed to Changes. There is a fairly comprehensive test.pl\nwhich can be invoked via \"make test\". There are no functional changes\nto the MD5 routines themselves.\n\n*** 96/03/14 Version 1.5.3\n\nFixed addfile method to accept type-glob references for the file-handle\n(eg \\*STDOUT). This is more consistent with other routines and is now the\nrecommended way of passing file-handles. The documentation now gives more\nexamples as to how the routines might be used.\n\n*** 96/03/12 Version 1.5.2\n\nMinor fixes from Christopher J Madsen to provide\nsupport for building on OS/2 (and to work around a perl -w bug).\n\nRemove warning about possible difference between add('foo', 'bar') and\nadd('foobar'). This is not true (it may have been true in the earliest\nversion of the module but is no longer the case).\n\n*** 96/03/08 Version 1.5.1\n\nAdd CHANGES file to make it easier for people to figure out what has\nbeen going on. (Meant to do this as part of 1.5)\n\n*** 96/03/05 Version 1.5\n\nAdd hash() and hexhash() methods at the suggestion/request of Gary\nHowland before inclusion in a wider library\nof cryptography modules.\n\n*** 96/02/27 Version 1.4\n\nFinally fixed the pesky Solaris dynamic loading bug. All kudos to Ken\nPizzini !\n\n*** 95/11/29 Version 1.3.1\n\nAdd explanations of current known problems.\n\n*** 95/06/02 Version 1.3\n\nFix problems with scope resolution in addfile() reported by\nJean-Claude Giese . Basically ARGV is\nalways implicitly in package main while other filehandles aren't.\n \n*** 95/05/23 Version 1.2.1\n\n[Changes pre 1.2.1 not recorded]", "raw_preamble" => "2013-07-02 Gisle Aas \n\n Release 2.53\n\n Drop File::Spec dependency and don't override installation location\n for perl-5.12++\n\n Documentation tweaks.\n\n\n\n2012-06-08 Gisle Aas \n\n Release 2.52\n\n Gisle Aas (3):\n Wrong version number in the changelog\n The t/threads.t was missing from the MANIFEST\n Update expected digests for files\n\n Andrew Fresh (1):\n Remove double the\n\n Lyle Hopkins (1):\n Digest::Perl::MD5 OO fallback didn't work [RT#66634]\n\n Peter J. Acklam (1):\n Fix typos (spelling errors) in cpan/Digest-MD5/*\n\n Shlomi Fish (1):\n Modernize the code in the POD.\n\n Zefram (1):\n Makes Digest::MD5 work on Perl 5.6 [RT#75032]\n\n\n\n2010-09-30 Gisle Aas \n\n Release 2.51\n\n Florian Ragwitz (1):\n Fix compilation with c++ compilers\n\n Gisle Aas (1):\n Fix repository specification in META.yml\n\n\n\n2010-09-25 Gisle Aas \n\n Release 2.50\n\n Chris 'BinGOs' Williams (1):\n Amended tests to work with perl core.\n\n Florian Ragwitz (3):\n Attach context pointers using sv magic\n Add failing test for thread cloning\n Clone MD5 contexts on thread cloning\n get_md5_ctx should never return anything but a valid pointer\n\n Gisle Aas (1):\n perl-5.6 no longer supported\n\n Jesse Vincent (1):\n Preserve utf8ness of argument [RT#44927]\n\n\n\n2010-07-03 Gisle Aas \n\n Release 2.40\n\n Marc Pignat (1):\n Safer alignment test [RT#35823]\n\n Robin Barker (1):\n consting in new ext/\n\n Gisle Aas (1):\n Remove the MacOS branch of this test\n\n\n\n2009-06-09 Gisle Aas \n\n Release 2.39\n\n Nicholas Clark (2):\n Get rid of the PERL_CORE hacks\n Sync core: Rename ext/Digest/MD5 to ext/Digest-MD5\n\n Jerry Hedden (1):\n Handle non-numeric version numbers in ext/Digest/MD5/Makefile.PL\n\n\n\n2008-11-14 Gisle Aas \n\n Release 2.38\n\n The 2.37 tarball was infected by various '._*' files.\n Thank you, Mac OS X!\n\n Applied warning fix from Geoff Richards [RT#19643]\n\n Applied compatibility fix from Alexandr Ciornii [RT#30348]\n\n\n\n2008-11-12 Gisle Aas \n\n Release 2.37\n\n Sync up with consting changes from the perl core.\n\n\n\n2005-11-30 Gisle Aas \n\n Release 2.36\n\n Fix documentation typo.\n\n\n\n2005-11-26 Gisle Aas \n\n Release 2.35\n\n Forgot to incorporate fixes already applied to bleadperl :-(\n - doc typo\n - consting\n - unused my_na\n - USE_HEAP_INSTEAD_OF_STACK for Symbian\n\n\n\n2005-11-26 Gisle Aas \n\n Release 2.34\n\n Document that it is now easy to generate different messages that produce the\n same MD5 digest.\n\n Use XSLoader; perl-5.6 is now required.\n\n Tweaks to the processing of \$? after running the test program.\n\n\n\n2003-12-07 Gisle Aas \n\n Release 2.33\n \n Enable explicit context passing for slight performance\n improvement in threaded perls.\n \n Tweaks to the Makefile.PL so that it is suitable both for\n core and CPAN use.\n\n\n\n2003-12-05 Gisle Aas \n\n Release 2.32\n\n Don't run u32align test program on HP-UX 10.20 as it\n will hang. Patch by H.Merijn Brand .\n\n Fixed documentation typo.\n\n\n\n2003-11-28 Gisle Aas \n\n Release 2.31\n\n Inherit add_bits() from Digest::base if available.\n\n\n\n2003-10-09 Gisle Aas \n\n Release 2.30\n\n Some tweaks to make the module build on perl-5.004 and\n perl-5.005 again.\n\n\n\n2003-10-06 Gisle Aas \n\n Release 2.29\n\n Another try. Forgot to update the test checksums.\n\n\n\n2003-10-06 Gisle Aas \n\n Release 2.28\n\n Fix minor documentation typo.\n\n\n\n2003-08-04 Gisle Aas \n\n Release 2.27\n\n Avoid having to figure how to compile alignment test program\n on MS-Windows by just assume free alignment as for i386. Source\n builds on Windows was apparently broken.\n\n\n\n2003-07-21 Gisle Aas \n\n Release 2.26\n\n Don't assume PerlIO_read() works like fread() even though\n it was documented like that for perl 5.6. It returns negative\n on read failure.\n\n Kill test #3 in t/badfile.t. I don't know a reliable way\n to test read failures on a file handle. Seems better not to\n test than to make many worry.\n\n\n\n2003-07-04 Gisle Aas \n\n Release 2.25\n\n The \$md5->addfile method now croaks if it discovers\n errors on the handle after reading from it. This should\n make it more difficult to end up with the wrong digest\n just because you are to lazy to check the error status\n on your file handles after reading from them.\n\n Improved documentation.\n\n Sync up with bleadperl; even safer patchlevel include.\n\n\n\n2003-03-09 Gisle Aas \n\n Release 2.24\n\n Don't let the \$^W test get confused by lexical warnings.\n\n Sync up with bleadperl; safer patchlevel include.\n\n\n\n2003-01-18 Gisle Aas \n\n Release 2.23\n\n Override INSTALLDIRS for 5.8 as suggested by\n Guido Ostkamp .\n\n\n\n2003-01-04 Gisle Aas \n\n Release 2.22.\n\n Added clone method.\n Contributed by Holger Smolinski \n\n\n\n2002-12-27 Gisle Aas \n\n Release 2.21\n\n Minor tweaks sync up with bleadperl:\n - VMS optimizer tweaks to the Makefile.PL\n - MacOS support\n - Added alignment test\n\n Added example to the MD5 POD that shows how to calculate the\n digest of Unicode strings.\n\n\n\n2002-05-05 Gisle Aas \n\n Release 2.20\n\n More synchronization with tweaks Jarkko have done to the\n bleadperl test suite. This time various EBCDIC hacks.\n\n Outside PERL_CORE the md5-aaa.t test loaded the wrong version of\n the module (and would fail if no previous Digest::MD5 was installed).\n Patch by Mike Stok \n\n\n\n2002-05-01 Gisle Aas \n\n Release 2.19\n\n One more test suite update from Jarkko to sync it\n even better with bleadperl.\n\n\n\n2002-05-01 Gisle Aas \n\n Release 2.18\n\n Changes #12954 and #16173 from bleadperl. Documentation typo fix\n and some signed/unsigned mismatches that Microsoft's C compiler\n complained about.\n\n The EBCDIC-aware md5-aaa.t from bleadperl.\n\n\n\n2002-04-25 Gisle Aas \n\n Release 2.17\n\n The SvPVbyte in perl-5.6.1 is buggy. Use the one from 5.7.3\n instead.\n\n Give warning if the function interface is used as instance\n methods: \$md5->md5_hex().\n\n\n\n2001-09-07 Gisle Aas \n\n Release 2.16\n\n Sync up with the bleadperl version:\n - use SvPVbyte() if available\n - fixes to make the code 'gcc -Wall'-clean\n\n\n\n2001-08-27 Gisle Aas \n\n Release 2.15\n\n Avoid exit() in Makefile.PL and bleadperl redefinition of printf\n in the alignment test program.\n Patch by Doug MacEachern .\n\n\n\n2001-07-18 Gisle Aas \n\n Release 2.14\n\n Try to warn if the functional interface is used as methods,\n i.e. Digest::MD5->md5_hex(\"foo\") will make noise if -w is\n enabled.\n\n Document the missing padding for the base64 digests.\n\n If both XS bootstrap and locating Digest::Perl::MD5 fails\n re-raise the original XS bootstrap exception.\n\n\n\n2001-03-13 Gisle Aas \n\n Release 2.13\n\n Moved all other Digest:: modules out of the Digest-MD5 dist.\n\n\n\n2000-09-18 Gisle Aas \n\n Release 2.12\n\n Avoid pointer cast warning for machines with bigger ints\n than pointers. Patch by Robin Barker .\n\n\n\n2000-08-19 Gisle Aas \n\n Release 2.11\n \n The fallback code introduced in 2.10 did only work for\n perl-5.6.0. It should now for for perl5.004 and 5.005\n as well. Patch by Ville Skytt\303\244 .\n\n\n\n2000-08-18 Gisle Aas \n\n Release 2.10\n\n Digest::MD5 will now try to fallback to the pure perl\n implementation of Digest::Perl::MD5 if bootstrap fails.\n\n Added a bit internal paranoia about casting the IV\n in the Digest::MD5 object to the MD5_CTX* pointer.\n\n\n\n1999-08-06 Gisle Aas \n\n Release 2.09\n\n Documentation update.\n\n\n\n1999-07-28 Gisle Aas \n\n Release 2.08\n\n The addfile() methods could trigger a core dump when passed\n a filehandle that had failed to open.\n\n\n\n1999-04-26 Gisle Aas \n\n Release 2.07\n\n The Digest::SHA1 module failed on some 64-bit systems, because I\n assumed there was a correspondence between the U32 size and\n BYTEORDER. This version use 'unsigned long' as Uwe's original\n SHA module did.\n\n The module should now work better when liked statically with perl,\n because we now use a safer module-loaded test in Digest.pm.\n\n Assume we know the outcome of the alignment test on VMS. Patch by\n Chuck Lane \n\n\n\n1999-03-26 Gisle Aas \n\n Release 2.06\n\n Avoid LONG and BYTE types in SHA.xs as they was in conflict\n with similar definitions in .\n\n Patch by Marko Asplund to make the alignment\n test program link successfully with sfio-perl.\n\n Fixed a typo in MD5.xs that might have affected 64-bit systems.\n Spotted by Nick Ing-Simmons\n\n\n\n1999-03-15 Gisle Aas \n\n Release 2.05\n\n Included Digest::SHA1 based on Uwe Hollerbach's SHA module.\n\n\n\n1999-03-05 Gisle Aas \n\n Release 2.04\n\n Avoid the -o option when compiling alignment test program\n for Win32 as suggested by Gurusamy Sarathy.\n\n DEC Compiler bug workaround. Contributed by D Roland Walker\n \n\n Having references to a local variable called \"na\" was not\n very safe either. Some older versions of Perl can apparently\n macroize this into something completely different.\n\n\n\n1999-02-27 Gisle Aas \n\n Release 2.03\n\n Patch from Christopher J. Madsen that\n should help getting the u32align test program to compile with\n Visual C++ 5 on Windows NT.\n\n Got rid of references to PL_na.\n\n\n\n1999-01-31 Gisle Aas \n\n Release 2.02\n\n Added a hints file as workaround for an IRIX compiler bug.\n Contributed by D Roland Walker .\n\n Note that the rfc2202 test can still fail on some DEC Alpha,\n because of a compiler bug that affects the perl 'x' operator.\n The Digest:: modules should work and be safe to install anyway.\n\n\n\n1998-12-18 Gisle Aas \n\n Release 2.01\n\n Some casts and tweaks to make picky compilers more happy.\n\n\n\n1998-11-04 Gisle Aas \n\n Release 2.00.\n\n Taken out Digest::SHA1 as this module will be provided from Uwe\n Hollerbach later.\n\n Some tweaks to MD2.xs and MD5.xs since \"na\" disappeared in\n perl5.005_53\n\n\n\n1998-10-30 Gisle Aas \n\n Release 1.99_60\n\n The 1.99_59 release introduced compilation problems for big-endian\n systems with free U32 alignment. Bug reported, and fix suggested\n by Paul J. Schinder .\n\n\n\n1998-10-28 Gisle Aas \n\n Release 1.99_59\n\n Makefile.PL will run a test program to find out if U32 values can\n be aligned anywhere. This hopefully cures the core dumps reported\n on Solaris and other big endian systems. Thanks to Graham Barr for\n debugging this.\n\n\n\n1998-10-28 Gisle Aas \n\n Release 1.99_58\n\n Should be very close to a 2.00 release now. Need some success\n reports from people running on big-endian machines first I think.\n\n Added a Digest::MD2 implementation.\n\n Wrote Digest.pm documentation. This define the interface that all\n Digest:: modules should provide.\n\n Avoided some code duplication in MD5.xs\n\n Fixed typo, that prevented Digest::SHA1::sha1_base64() from working.\n\n\n\n1998-10-27 Gisle Aas \n\n Release 1.99_57\n\n Rewritten most of the MD5 C code to make it real fast (especially\n on little-endian machines without alignment restrictions for U32).\n Compared to MD5-1.7 we can process files 4 times as fast and we\n digest small stuff in memory 7 times faster. I came to these\n conclusions after these tests (gcc -O2, i586, Linux):\n\n First tested calculation of the digest of a 31 MB file, using\n perl -le 'print Digest::MD5->new->addfile(*STDIN)->hexdigest'\n and similar stuff:\n\n MD5-1.7: 21.06s\n Digest::MD5-1.99_57: 5.23s\n md5sum (GNU textutils): 4.90s\n\n As you can see, we do nearly as good as the md5sum program. I\n think the reason we don't beat md5sum is that perl always insist on\n loading extra modules like Config.pm, Carp.pm, strict.pm, vars.pm,\n AutoLoader.pm and DynaLoader.pm. When I simply wrapped the MD5.xs\n hasher code in a C program I managed to process the file in 4.68s.\n\n Then we calculated the digest of the same 6 byte sting, 20000\n times:\n\n MD5-1.7: 11.81s\n Digest::MD5-1.99_57: 1.68s\n\n Digest::MD5 benefit from making this into a plain procedure call\n instead of a static method call.\n\n\n Other changes in this release are:\n\n Documentation update\n\n Internal MD5.xs cleanup.\n\n \$md5->digest will automatically reset now.\n\n Digest::HMAC methods add() and addfile() did not return the\n correct object.\n\n Added Digest.pm loading module. I am not sure this is a good idea.\n\n Added Digest::SHA1 and Digest::HMAC_SHA1 module. The Digest::SHA1\n module is just a wrapper around SHA.pm. I hope to get the author\n of SHA.pm to move his module to the Digest:: category.\n\n\n\n1998-10-25 Gisle Aas \n\n Release 1.99_56\n\n Fix memcpy_byteswap() function in MD5.xs. Must be careful with\n htovl() as it might evaluate its arguments more than once.\n\n\n\n1998-10-25 Gisle Aas \n\n Release 1.99_55\n\n Grahams HMAC_MD5.pm split into two modules. Digest::HMAC and\n Digest::HMAC_MD5. Also provide functional interface. Documentation\n is still lacking.\n\n Included RFC 2202 based test for HMAC-MD5.\n\n\n\n1998-10-24 Gisle Aas \n\n Release 1.99_54\n\n Included HMAC_MD5.pm, contributed by Graham Barr .\n\n I have a hard time to make up my mind :-) md5_bin() renamed back\n to md5(). Functions are not exported by default any more.\n\n Try to Encode/Decode with memcpy_byteswap for 32-bit big-endian\n machines.\n\n\n\n1998-10-23 Gisle Aas \n\n Release 1.99_53\n\n Renamed core module as Digest::MD5. Leave a MD5.pm stub for\n legacy code.\n\n The md5() function renamed as md5_bin().\n\n The constructor, Digest::MD5->new, no longer takes any extra\n arguments.\n\n Added some new tests.\n\n Updated the documentation.\n\n \$md5->b64digest implemented with same base64 encoder as md5_base64.\n\n\n\n1998-10-23 Gisle Aas \n\n Release 1.99_52\n\n Patch from Graham Barr which make it work for big-endian machines\n again.\n\n\n\n1998-10-22 Gisle Aas \n\n Release 1.99_51\n\n The MD5 class is now subclassable.\n\n The add() and addfile() methods now return \$self.\n\n The reset() method is just an alias for new().\n\n The constructor (MD5->new) now takes optional arguments which are\n automatically added. It means that we can now write:\n\n MD5->new(\$data)->hexdigest;\n\n New \$md5->b64digest method.\n\n New functions that are exported on request: md5, md5_hex, md5_base64\n\n Included RFC 1321\n\n Barely started to update the documentation.\n\n\n\n1998-10-22 Gisle Aas \n\n Release 1.99_50\n\n Much better performance (more than twice as fast now). Mostly\n because we use Copy/Zero instead of the original MD5_memcpy and\n MD5_memset functions.\n\n The addfile() and hexdigest() methods are now XS implemented.\n\n All RSA functions now included in MD5.xs and made static.\n\n Use perl's Copy/Zero.\n\n Random cleanup, simplifications and reformatting.\n Merged things better with the perl configuration.\n\n\n\nNeil Winton's versions below:\n\n\n*** 96/06/20 Version 1.7\n\nMD5 is now completely 64-bit clean (I hope). The basic MD5 code uses\n32-bit quantities and requires a typedef UINT4 to be defined in\nglobal.h. Perl configuration data (the value of BYTEORDER) is used to\ndetermine if unsigned longs have 4 or 8 bytes. On 64-bit platforms (eg\nDEC Alpha) then it assumes that \"unsigned int\" will be a 32-bit type.\nIf this is incorrect then adding -DUINT4_IS_LONG to the DEFINES line in\nMakefile.PL will override this.\n\nOn some machines (at least Cray that I know of) there is no 32-bit\ninteger type. In this case defining TRUNCATE_UINT4 (which is done\nautomatically for a Cray) will ensure that 64-bit values are masked\ndown to 32 bits. I have done my best to test this but without easy\naccess to a true 64-bit machine I can not totally guarantee it (unless\nanyone wants to lend me a spare Cray :-)\n\nThere is one remaining limitation for 64-bit enabled processors. The\namount of data passed to any single call to the underlying MD5\nroutines is limited to (2^32 - 1) bytes -- that's 4 gigabytes. I'm\nsorry if that's a real problem for you ...\n\nAnd finally, a minor compilation warning (unsigned char * used with\nfunction having char * prototype) has also been eliminated.\n\n*** 96/04/09 Version 1.6\n\nRe-generated module framework using h2xs to pick up the latest module\nconventions for versions etc. You can now say \"use MD5 1.6;\" and things\nshould work correctly. MD5.pod has been integrated into MD5.pm and\nCHANGES renamed to Changes. There is a fairly comprehensive test.pl\nwhich can be invoked via \"make test\". There are no functional changes\nto the MD5 routines themselves.\n\n*** 96/03/14 Version 1.5.3\n\nFixed addfile method to accept type-glob references for the file-handle\n(eg \\*STDOUT). This is more consistent with other routines and is now the\nrecommended way of passing file-handles. The documentation now gives more\nexamples as to how the routines might be used.\n\n*** 96/03/12 Version 1.5.2\n\nMinor fixes from Christopher J Madsen to provide\nsupport for building on OS/2 (and to work around a perl -w bug).\n\nRemove warning about possible difference between add('foo', 'bar') and\nadd('foobar'). This is not true (it may have been true in the earliest\nversion of the module but is no longer the case).\n\n*** 96/03/08 Version 1.5.1\n\nAdd CHANGES file to make it easier for people to figure out what has\nbeen going on. (Meant to do this as part of 1.5)\n\n*** 96/03/05 Version 1.5\n\nAdd hash() and hexhash() methods at the suggestion/request of Gary\nHowland before inclusion in a wider library\nof cryptography modules.\n\n*** 96/02/27 Version 1.4\n\nFinally fixed the pesky Solaris dynamic loading bug. All kudos to Ken\nPizzini !\n\n*** 95/11/29 Version 1.3.1\n\nAdd explanations of current known problems.\n\n*** 95/06/02 Version 1.3\n\nFix problems with scope resolution in addfile() reported by\nJean-Claude Giese . Basically ARGV is\nalways implicitly in package main while other filehandles aren't.\n \n*** 95/05/23 Version 1.2.1\n\n[Changes pre 1.2.1 not recorded]\n", "releases" => [] } CPAN-Changes-0.500005/corpus/dists/Archer.changes000644 000000 000000 00000005344 14472651645 017423 0ustar00000000 000000 Revision history for Archer {{$NEXT}} 0.16 2013-07-25T06:32:29Z - fix asset_dir resolving in ConfigLoader - restore ShareDir missing in 0.14 and move asset/ to share/asset for Minilla friendly. - add error message of Archer::Util. 0.15 2013-06-18T02:20:51Z - fix dependencies - fix tests for perl5.17 or higher 0.14 2013-06-17T12:06:02Z - Switch to Minilla - Fixup dependencies - move script files to bin - fix typo in documents 0.13 - add 'ready' phase. - appropriately handling when specified several values in --skip and --with. - remove old descriptions. - refactor tests. 0.12 - add validate feature in Plugin::Exec::Local. - depend to Test::More 0.98. 0.11 - add install_script `archer` - fix shebang in archer.pl and arher - set default assets path to share_dir 0.10 - hide from pause SVN::Agent 0.09 - add feature to specify multi roles in config.yaml - use IO::Prompt::Simple instead of IO::Prompt, because IO::Prompt doesn't work in perl-5.14 after. - add feature to specify role in command line option - role support in Archer::Schell 0.08 commit 239829c5d2fd0a15abdbecbe593146c466905c3c Author: Masayuki Matsuki Date: Wed Dec 14 19:13:15 2011 +0900 stringify $rsync->out and $rsync->err for log. File::Rsync::out and File::Rsync::err retruns array in array context, and retruns array ref in scalar context. lib/Archer/Plugin/Rsync.pm | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) 0.07 * b3ab89f re-packaging * 5fbafad use_test_base sucks * 08c7ad2 shellモードの {on,with} ... do ... 形式と !task {on,with} ...形式が動くよ うにした。 テストコードも追加。 * dd059b7 'role' should be here :p * 97e332b ネストしたforループの罠にハマった * 2dcb78c fixed log level. * 2277280 added with option for do deploy with skip_default tasks. * 9cc7ea9 added skip_default setting for none-always-need task. * 7cc348c not $plugin but $args. * 62d4b85 fixed indent. * afbe53f added --log_level option for debuging setting. * 6e6a6ef added only feature. * 2fc1822 Added project filter for project only task. Tweaked info message. 0.06 - added YAML::Syck support - specify assets path in config.yaml 0.05 - Plugin::Flock: added - Plugin::Confirm: support timeout - Plugin::Exec::Remote: do not use sudo when does not specify user name in configuration(by mizzy++) - fixed some test problem. 0.04 - fixed test script. - no feature changes. 0.03 - fixed test. - no feature changes. 0.02 - initial cpan release. 0.01 Fri Oct 6 12:38:02 2006 Initial release. CPAN-Changes-0.500005/corpus/dists/if.changes000644 000000 000000 00000001037 14472651645 016610 0ustar00000000 000000 Revision history for Perl extension if. 0.01 The version of 5.7.3. 0.010001 `our' removed for backward-compatibility. test adopted for backward-compatibility 0.04 support package names which are simultaneously keywords (open). fix `require or die'. 0.0401 test was using a discipline for open.pm not supported with older versions of Perl. 0.05 Sync with perl5.12.2: Better error handling. Suggest significance of => in the docs. 0.06 Update email address. 0.0601 The update of 0.0401 was lost during update to 0.05 CPAN-Changes-0.500005/corpus/dists/Rose-HTML-Objects.parsed000644 000000 000000 00000165760 14472651645 021137 0ustar00000000 000000 { "raw_preamble" => "", "releases" => [ { "entries" => [ { "line" => 3, "raw" => " * Eliminate a perl 5.19 \"precedence issue with control flow operator\"\n warning.\n\n", "style" => "*", "text" => "Eliminate a perl 5.19 \"precedence issue with control flow operator\" warning." } ], "line" => 1, "note" => "(12.18.2013) - John Siracusa ", "raw" => "0.620 (12.18.2013) - John Siracusa \n\n", "version" => "0.620" }, { "entries" => [ { "line" => 8, "raw" => " * Fixed incorrect return statements (RT 87253) (Patch by Reini Urban)\n\n", "style" => "*", "text" => "Fixed incorrect return statements (RT 87253) (Patch by Reini Urban)" } ], "line" => 6, "note" => "(07.24.2013) - John Siracusa ", "raw" => "0.619 (07.24.2013) - John Siracusa \n\n", "version" => "0.619" }, { "entries" => [ { "line" => 12, "raw" => " * Made compatible with perl 5.17.10 (RT 84279)\n\n", "style" => "*", "text" => "Made compatible with perl 5.17.10 (RT 84279)" } ], "line" => 10, "note" => "(03.29.2013) - John Siracusa ", "raw" => "0.618 (03.29.2013) - John Siracusa \n\n", "version" => "0.618" }, { "entries" => [ { "line" => 16, "raw" => " * Added base 2.18 as a prerequisite to avoid a load-order bug that\n occurs with some older versions.\n", "style" => "*", "text" => "Added base 2.18 as a prerequisite to avoid a load-order bug that occurs with some older versions." }, { "line" => 18, "raw" => " * Preserve custom class attributes on label objects (RT 82333)\n (Patch by Tom Heady)\n\n", "style" => "*", "text" => "Preserve custom class attributes on label objects (RT 82333) (Patch by Tom Heady)" } ], "line" => 14, "note" => "(12.30.2012) - John Siracusa ", "raw" => "0.617 (12.30.2012) - John Siracusa \n\n", "version" => "0.617" }, { "entries" => [ { "line" => 23, "raw" => " * Added add_class(es) and delete_class(es) methods.\n", "style" => "*", "text" => "Added add_class(es) and delete_class(es) methods." }, { "line" => 24, "raw" => " * Added was_submitted() method to the submit button class.\n", "style" => "*", "text" => "Added was_submitted() method to the submit button class." }, { "line" => 25, "raw" => " * Calling clear() on a hidden field now clears it.\n\n", "style" => "*", "text" => "Calling clear() on a hidden field now clears it." } ], "line" => 21, "note" => "(05.09.2012) - John Siracusa ", "raw" => "0.616 (05.09.2012) - John Siracusa \n\n", "version" => "0.616" }, { "entries" => [ { "line" => 29, "raw" => " * Minor efficiency improvements in HTML generation.\n\n", "style" => "*", "text" => "Minor efficiency improvements in HTML generation." } ], "line" => 27, "note" => "(05.01.2012) - John Siracusa ", "raw" => "0.615 (05.01.2012) - John Siracusa \n\n", "version" => "0.615" }, { "entries" => [ { "line" => 33, "raw" => " * Deprecated and undocumented the form_rank_counter() method. It will\n be removed in a future release.\n", "style" => "*", "text" => "Deprecated and undocumented the form_rank_counter() method. It will be removed in a future release." }, { "line" => 35, "raw" => " * Fixed a bug that could cause a repeated form to get the wrong rank.\n\n", "style" => "*", "text" => "Fixed a bug that could cause a repeated form to get the wrong rank." } ], "line" => 31, "note" => "(04.02.2012) - John Siracusa ", "raw" => "0.614 (04.02.2012) - John Siracusa \n\n", "version" => "0.614" }, { "entries" => [ { "line" => 39, "raw" => " * Added make_next_form() method to repeatable forms.\n", "style" => "*", "text" => "Added make_next_form() method to repeatable forms." }, { "line" => 40, "raw" => " * Documented the empty_is_ok() attribute of repeatable forms.\n\n", "style" => "*", "text" => "Documented the empty_is_ok() attribute of repeatable forms." } ], "line" => 37, "note" => "(04.02.2012) - John Siracusa ", "raw" => "0.613 (04.02.2012) - John Siracusa \n\n", "version" => "0.613" }, { "entries" => [ { "line" => 44, "raw" => " * Worked around fatal error triggered by loading Rose::HTML::Form\n in the perl debugger in some older versions of perl. (e.g.,\n perl -I lib -d lib/Rose/HTML/Form.pm)\n\n", "style" => "*", "text" => "Worked around fatal error triggered by loading Rose::HTML::Form in the perl debugger in some older versions of perl. (e.g., perl -I lib -d lib/Rose/HTML/Form.pm)" } ], "line" => 42, "note" => "(03.26.2012) - John Siracusa ", "raw" => "0.612 (03.26.2012) - John Siracusa \n\n", "version" => "0.612" }, { "entries" => [ { "line" => 50, "raw" => " * Added default HTML serialization for compound fields.\n", "style" => "*", "text" => "Added default HTML serialization for compound fields." }, { "line" => 51, "raw" => " * Removed documentation for nonexistent field_names() method.\n\n", "style" => "*", "text" => "Removed documentation for nonexistent field_names() method." } ], "line" => 48, "note" => "(11.16.2010) - John Siracusa ", "raw" => "0.611 (11.16.2010) - John Siracusa \n\n", "version" => "0.611" }, { "entries" => [ { "line" => 55, "raw" => " * Fixed a bad probe in form-nested.t that was causing spurious test\n failures.\n", "style" => "*", "text" => "Fixed a bad probe in form-nested.t that was causing spurious test failures." }, { "line" => 57, "raw" => " * Attempted to fix mro-c3.t test failures that I've thus far been\n unable to reproduce locally.\n\n", "style" => "*", "text" => "Attempted to fix mro-c3.t test failures that I've thus far been unable to reproduce locally." } ], "line" => 53, "note" => "(10.02.2010) - John Siracusa ", "raw" => "0.610 (10.02.2010) - John Siracusa \n\n", "version" => "0.610" }, { "entries" => [ { "line" => 62, "raw" => " * Silenced a warning in t/form-field.t\n", "style" => "*", "text" => "Silenced a warning in t/form-field.t" }, { "line" => 63, "raw" => " * Clarified the precedence of object_from_form() initialization in cases\n where a parent form and sub-form have fields with the same local_name()\n (Reported by Christopher Masto)\n\n", "style" => "*", "text" => "Clarified the precedence of object_from_form() initialization in cases where a parent form and sub-form have fields with the same local_name() (Reported by Christopher Masto)" } ], "line" => 60, "note" => "(10.01.2010) - John Siracusa ", "raw" => "0.608 (10.01.2010) - John Siracusa \n\n", "version" => "0.608" }, { "entries" => [ { "line" => 69, "raw" => " * Moved version number back to three places after the decimal in order\n to placate Unix package management systems.\n\n", "style" => "*", "text" => "Moved version number back to three places after the decimal in order to placate Unix package management systems." } ], "line" => 67, "note" => "(04.28.2010) - John Siracusa ", "raw" => "0.607 (04.28.2010) - John Siracusa \n\n", "version" => "0.607" }, { "entries" => [ { "line" => 74, "raw" => " * Altered tests to work around strange UTF-8 errors in some installations\n of perl. (Thanks to Michael Lackhoff for help debugging.)\n\n", "style" => "*", "text" => "Altered tests to work around strange UTF-8 errors in some installations of perl. (Thanks to Michael Lackhoff for help debugging.)" } ], "line" => 72, "note" => "(11.19.2009) - John Siracusa ", "raw" => "0.6061 (11.19.2009) - John Siracusa \n\n", "version" => "0.6061" }, { "entries" => [ { "line" => 79, "raw" => " * Overhauled inheritance to fix \"Inconsistent hierarchy\" mro c3 errors\n (RT 51168)\n", "style" => "*", "text" => "Overhauled inheritance to fix \"Inconsistent hierarchy\" mro c3 errors (RT 51168)" }, { "line" => 81, "raw" => " * Added \"use utf8\" statements to ensure proper treatment of UTF-8 text\n stored in the __DATA__ sections of various modules (RT 29131)\n\n", "style" => "*", "text" => "Added \"use utf8\" statements to ensure proper treatment of UTF-8 text stored in the __DATA__ sections of various modules (RT 29131)" } ], "line" => 77, "note" => "(11.16.2009) - John Siracusa ", "raw" => "0.606 (11.16.2009) - John Siracusa \n\n", "version" => "0.606" }, { "entries" => [ { "line" => 86, "raw" => " * Updated eval blocks to avoid stomping on \$\@ from an outer scope.\n\n", "style" => "*", "text" => "Updated eval blocks to avoid stomping on \$\@ from an outer scope." } ], "line" => 84, "note" => "(10.16.2009) - John Siracusa ", "raw" => "0.605 (10.16.2009) - John Siracusa \n\n", "version" => "0.605" }, { "entries" => [ { "line" => 90, "raw" => " * Fixed a bug that caused html() to fail when called on a form that\n contained a compound field. (Reported by Will Hawes)\n", "style" => "*", "text" => "Fixed a bug that caused html() to fail when called on a form that contained a compound field. (Reported by Will Hawes)" }, { "line" => 92, "raw" => " * Make sure custom validator is called from DateTime fields.\n\n", "style" => "*", "text" => "Make sure custom validator is called from DateTime fields." } ], "line" => 88, "note" => "(09.14.2009) - John Siracusa ", "raw" => "0.604 (09.14.2009) - John Siracusa \n\n", "version" => "0.604" }, { "entries" => [ { "line" => 96, "raw" => " * Fixed a bug that cause the class attribite on label tags not to\n be cleared correctly. (Reported by Denis Moskowitz)\n\n", "style" => "*", "text" => "Fixed a bug that cause the class attribite on label tags not to be cleared correctly. (Reported by Denis Moskowitz)" } ], "line" => 94, "note" => "(05.06.2009) - John Siracusa ", "raw" => "0.603 (05.06.2009) - John Siracusa \n\n", "version" => "0.603" }, { "entries" => [ { "line" => 101, "raw" => " * Fixed an HTML escaping bug caused by overload's interaction with\n Rose::Object's Class::XSAccessor support.\n", "style" => "*", "text" => "Fixed an HTML escaping bug caused by overload's interaction with Rose::Object's Class::XSAccessor support." }, { "line" => 103, "raw" => " * Made Rose::HTML::Form's inherited html() and xhtml() methods do\n something vaguely sensible. (Inspired by Christof Kr\303\274ger)\n\n", "style" => "*", "text" => "Made Rose::HTML::Form's inherited html() and xhtml() methods do something vaguely sensible. (Inspired by Christof Kr\303\274ger)" } ], "line" => 99, "note" => "(02.22.2009) - John Siracusa ", "raw" => "0.602 (02.22.2009) - John Siracusa \n\n", "version" => "0.602" }, { "entries" => [ { "line" => 108, "raw" => " * Fixed an uninitialized value warning in Rose::HTML::Text.\n\n", "style" => "*", "text" => "Fixed an uninitialized value warning in Rose::HTML::Text." } ], "line" => 106, "note" => "(01.09.2009) - John Siracusa ", "raw" => "0.601 (01.09.2009) - John Siracusa \n\n", "version" => "0.601" }, { "entries" => [ { "line" => 112, "raw" => " * Added localization support.\n", "style" => "*", "text" => "Added localization support." }, { "line" => 113, "raw" => " * Added private library support.\n", "style" => "*", "text" => "Added private library support." }, { "line" => 114, "raw" => " * Rose::HTML::Form::Field::PopUpMenu's internal_value() is now \n unconditionally singular, and undef when no items are selected.\n", "style" => "*", "text" => "Rose::HTML::Form::Field::PopUpMenu's internal_value() is now unconditionally singular, and undef when no items are selected." }, { "line" => 116, "raw" => " * Fixed a bug in Rose::HTML::Image that made detection of image \n sizes dependent on method call order. (Reported by Sean Allen)\n", "style" => "*", "text" => "Fixed a bug in Rose::HTML::Image that made detection of image sizes dependent on method call order. (Reported by Sean Allen)" }, { "line" => 118, "raw" => " * Added mod_perl 2.x support to Rose::HTML::Image. (Reported by \n Sean Allen)\n\n", "style" => "*", "text" => "Added mod_perl 2.x support to Rose::HTML::Image. (Reported by Sean Allen)" } ], "line" => 110, "note" => "(12.13.2008) - John Siracusa ", "raw" => "0.600 (12.13.2008) - John Siracusa \n\n", "version" => "0.600" }, { "entries" => [ { "line" => 123, "raw" => " * Fixed a memory leak in group fields (RT 38837)\n", "style" => "*", "text" => "Fixed a memory leak in group fields (RT 38837)" }, { "line" => 124, "raw" => " * Corrected documentation and implementation of init_with_objects().\n\n", "style" => "*", "text" => "Corrected documentation and implementation of init_with_objects()." } ], "line" => 121, "note" => "(10.22.2008) - John Siracusa ", "raw" => "0.555 (10.22.2008) - John Siracusa \n\n", "version" => "0.555" }, { "entries" => [ { "line" => 128, "raw" => " * Added automation for repeatable sub-forms.\n", "style" => "*", "text" => "Added automation for repeatable sub-forms." }, { "line" => 129, "raw" => " * Made Rose::HTML::Object suitable for generic HTML building by adding\n parent/child/descendant and related methods.\n", "style" => "*", "text" => "Made Rose::HTML::Object suitable for generic HTML building by adding parent/child/descendant and related methods." }, { "line" => 131, "raw" => " * Extended and documented child-related methods to form and field classes.\n", "style" => "*", "text" => "Extended and documented child-related methods to form and field classes." }, { "line" => 132, "raw" => " * Added the local_fields() method. (Suggested by Zbigniew Lukasiak)\n", "style" => "*", "text" => "Added the local_fields() method. (Suggested by Zbigniew Lukasiak)" }, { "line" => 133, "raw" => " * Adding items to grouped fields (e.g., checkbox groups) inside named\n forms no longer causes an error. (Patch by Kevin McGrath)\n", "style" => "*", "text" => "Adding items to grouped fields (e.g., checkbox groups) inside named forms no longer causes an error. (Patch by Kevin McGrath)" }, { "line" => 135, "raw" => " * Fixed a bug that prevented full field detection in compound fields\n with checkable sub-fields (e.g., radio buttons and checkboxes)\n", "style" => "*", "text" => "Fixed a bug that prevented full field detection in compound fields with checkable sub-fields (e.g., radio buttons and checkboxes)" }, { "line" => 137, "raw" => " * Added empty_is_ok attribute to ease the handling of optional sub-forms.\n", "style" => "*", "text" => "Added empty_is_ok attribute to ease the handling of optional sub-forms." }, { "line" => 138, "raw" => " * Added the items_html_attr() family of methods for setting HTML \n attributes on items in radio button, checkbox, and select box \n group fields. (Suggested by Jason Gottshall)\n", "style" => "*", "text" => "Added the items_html_attr() family of methods for setting HTML attributes on items in radio button, checkbox, and select box group fields. (Suggested by Jason Gottshall)" }, { "line" => 141, "raw" => " * Made (x)html_error_formatter a get_set_init attribute.\n\n", "style" => "*", "text" => "Made (x)html_error_formatter a get_set_init attribute." } ], "line" => 126, "note" => "(05.28.2008) - John Siracusa ", "raw" => "0.554 (05.28.2008) - John Siracusa \n\n", "version" => "0.554" }, { "entries" => [ { "line" => 145, "raw" => " * Changed mailing list URLs.\n\n", "style" => "*", "text" => "Changed mailing list URLs." } ], "line" => 143, "note" => "(02.25.2008) - John Siracusa ", "raw" => "0.553 (02.25.2008) - John Siracusa \n\n", "version" => "0.553" }, { "entries" => [ { "line" => 149, "raw" => " * Fixed typos in Form POD.\n\n", "style" => "*", "text" => "Fixed typos in Form POD." } ], "line" => 147, "note" => "(01.30.2007) - John Siracusa ", "raw" => "0.5521 (01.30.2007) - John Siracusa \n\n", "version" => "0.5521" }, { "entries" => [ { "line" => 153, "raw" => " * Fixed handling of empty string values in the Numeric field class.\n", "style" => "*", "text" => "Fixed handling of empty string values in the Numeric field class." }, { "line" => 154, "raw" => " * Corrected some typos in the documentation.\n\n", "style" => "*", "text" => "Corrected some typos in the documentation." } ], "line" => 151, "note" => "(12.13.2007) - John Siracusa ", "raw" => "0.552 (12.13.2007) - John Siracusa \n\n", "version" => "0.552" }, { "entries" => [ { "line" => 158, "raw" => " * Added the ability to hide, show, and delete grouped items (options, \n checkboxes, radio buttons, etc.)\n", "style" => "*", "text" => "Added the ability to hide, show, and delete grouped items (options, checkboxes, radio buttons, etc.)" }, { "line" => 160, "raw" => " * Form prepare() now calls subform prepare() methods.\n", "style" => "*", "text" => "Form prepare() now calls subform prepare() methods." }, { "line" => 161, "raw" => " * Fixed a bug that caused group fields in nested forms to have incorrect\n HTML \"name\" attributes. (Reported by Daniel Koch)\n", "style" => "*", "text" => "Fixed a bug that caused group fields in nested forms to have incorrect HTML \"name\" attributes. (Reported by Daniel Koch)" }, { "line" => 163, "raw" => " * Removed dependency on Scalar::Defer due to an incompatibility with\n Scalar::Defer 0.11 See: http://rt.cpan.org/Ticket/Display.html?id=31039\n\n", "style" => "*", "text" => "Removed dependency on Scalar::Defer due to an incompatibility with Scalar::Defer 0.11 See: http://rt.cpan.org/Ticket/Display.html?id=31039" } ], "line" => 156, "note" => "(12.10.2007) - John Siracusa ", "raw" => "0.551 (12.10.2007) - John Siracusa \n\n", "version" => "0.551" }, { "entries" => [ { "line" => 168, "raw" => " * Added id and class attributes to hidden fields generated from\n non-hidden fields.\n", "style" => "*", "text" => "Added id and class attributes to hidden fields generated from non-hidden fields." }, { "line" => 170, "raw" => " * Deferred evaluation of parents for grouped items.\n", "style" => "*", "text" => "Deferred evaluation of parents for grouped items." }, { "line" => 171, "raw" => " * Corrected substring-based value coalescing in some date/time fields.\n (Reported by Tobias Kremer)\n", "style" => "*", "text" => "Corrected substring-based value coalescing in some date/time fields. (Reported by Tobias Kremer)" }, { "line" => 173, "raw" => " * Added fix for perl 5.10 (Patch by RJBS)\n\n", "style" => "*", "text" => "Added fix for perl 5.10 (Patch by RJBS)" } ], "line" => 166, "note" => "(10.16.2007) - John Siracusa ", "raw" => "0.550 (10.16.2007) - John Siracusa \n\n", "version" => "0.550" }, { "entries" => [ { "line" => 177, "raw" => " * Added Bulgarian localization, translated by Svilen Ivanov.\n", "style" => "*", "text" => "Added Bulgarian localization, translated by Svilen Ivanov." }, { "line" => 178, "raw" => " * Added a numeric field class. (Patch by Denis Moskowitz\0)\n", "style" => "*", "text" => "Added a numeric field class. (Patch by Denis Moskowitz\0)" }, { "line" => 179, "raw" => " * Corrected html_field() class HTML attribute value.\n", "style" => "*", "text" => "Corrected html_field() class HTML attribute value." }, { "line" => 180, "raw" => " * Added the set_error() and unset_error() methods.\n", "style" => "*", "text" => "Added the set_error() and unset_error() methods." }, { "line" => 181, "raw" => " * Corrected error messages for Integer fields.\n", "style" => "*", "text" => "Corrected error messages for Integer fields." }, { "line" => 182, "raw" => " * Connected Form's prepare() method with the correct implementation.\n", "style" => "*", "text" => "Connected Form's prepare() method with the correct implementation." }, { "line" => 183, "raw" => " * Made DateTime fields more flexible about handling infinity.\n", "style" => "*", "text" => "Made DateTime fields more flexible about handling infinity." }, { "line" => 184, "raw" => " * Fixed a bug that caused valid HTML attributes to be rejected by\n form objects. (Reported by Uwe Voelker)\n", "style" => "*", "text" => "Fixed a bug that caused valid HTML attributes to be rejected by form objects. (Reported by Uwe Voelker)" }, { "line" => 186, "raw" => " * Improved built-in maxlength validation.\n\n", "style" => "*", "text" => "Improved built-in maxlength validation." } ], "line" => 175, "note" => "(07.21.2007) - John Siracusa ", "raw" => "0.549 (07.21.2007) - John Siracusa \n\n", "version" => "0.549" }, { "entries" => [ { "line" => 190, "raw" => " * Added prepare() methods to Field and Form.\n", "style" => "*", "text" => "Added prepare() methods to Field and Form." }, { "line" => 191, "raw" => " * Added a was_submitted() method to Form.\n", "style" => "*", "text" => "Added a was_submitted() method to Form." }, { "line" => 192, "raw" => " * Expanded the powers of the field_value() method in the Form class.\n", "style" => "*", "text" => "Expanded the powers of the field_value() method in the Form class." }, { "line" => 193, "raw" => " * Added more flexible syntax for specifying choices in group fields\n (radio button groups, select boxes, etc.)\n", "style" => "*", "text" => "Added more flexible syntax for specifying choices in group fields (radio button groups, select boxes, etc.)" }, { "line" => 195, "raw" => " * Added maxlength limit to TextArea.\n", "style" => "*", "text" => "Added maxlength limit to TextArea." }, { "line" => 196, "raw" => " * Added a disabled() method to the Compound field base class.\n", "style" => "*", "text" => "Added a disabled() method to the Compound field base class." }, { "line" => 197, "raw" => " * Changed the behavior of internal_value() on RadioButtonGroup objects\n to return the selected value in scalar context, rather than a reference \n to an array.\n", "style" => "*", "text" => "Changed the behavior of internal_value() on RadioButtonGroup objects to return the selected value in scalar context, rather than a reference to an array." }, { "line" => 200, "raw" => " * Changed the behavior of internal_value() on SelectBox objects to\n return an array ref in scalar context only when multiple() is true.\n", "style" => "*", "text" => "Changed the behavior of internal_value() on SelectBox objects to return an array ref in scalar context only when multiple() is true." }, { "line" => 202, "raw" => " * Fixed a TextArea bug that prevented errors from showing up in\n the html() and xhtml() output. (Reported by Drew Taylor)\n", "style" => "*", "text" => "Fixed a TextArea bug that prevented errors from showing up in the html() and xhtml() output. (Reported by Drew Taylor)" }, { "line" => 204, "raw" => " * Silenced an uninitialized value warning in Rose::HTML::Form.\n (Reported by Peter Karman)\n\n", "style" => "*", "text" => "Silenced an uninitialized value warning in Rose::HTML::Form. (Reported by Peter Karman)" } ], "line" => 188, "note" => "(05.04.2007) - John Siracusa ", "raw" => "0.548 (05.04.2007) - John Siracusa \n\n", "version" => "0.548" }, { "entries" => [ { "line" => 209, "raw" => " * Eliminated redundant validation of fields in nested forms.\n", "style" => "*", "text" => "Eliminated redundant validation of fields in nested forms." }, { "line" => 210, "raw" => " * Made is_empty() smarter about honoring the trim_spaces() setting.\n", "style" => "*", "text" => "Made is_empty() smarter about honoring the trim_spaces() setting." }, { "line" => 211, "raw" => " * Pop-up menus and other group-type fields now correctly clear errors\n on reset() and clear().\n", "style" => "*", "text" => "Pop-up menus and other group-type fields now correctly clear errors on reset() and clear()." }, { "line" => 213, "raw" => " * Fixed a bug that caused option containers to fail to display hidden\n fields when a selected option had a false, but defined value.\n (Reported by Andrei Kozovski)\n", "style" => "*", "text" => "Fixed a bug that caused option containers to fail to display hidden fields when a selected option had a false, but defined value. (Reported by Andrei Kozovski)" }, { "line" => 216, "raw" => " * Fixed a bug that caused a fatal error when requesting a subfield of a\n compound field from a form that does not contain the parent field.\n", "style" => "*", "text" => "Fixed a bug that caused a fatal error when requesting a subfield of a compound field from a form that does not contain the parent field." }, { "line" => 218, "raw" => " * Fixed a bug that caused input_value() in on/off groups to treat any\n reference as an array reference. (Reported by Derek Watson)\n\n", "style" => "*", "text" => "Fixed a bug that caused input_value() in on/off groups to treat any reference as an array reference. (Reported by Derek Watson)" } ], "line" => 207, "note" => "(02.23.2007) - John Siracusa ", "raw" => "0.547 (02.23.2007) - John Siracusa \n\n", "version" => "0.547" }, { "entries" => [ { "line" => 223, "raw" => " * Fixed a bug that prevented params() from correctly cascading to\n nested forms.\n", "style" => "*", "text" => "Fixed a bug that prevented params() from correctly cascading to nested forms." }, { "line" => 225, "raw" => " * Added a field_value() method to the Compound field class.\n (Suggested by Guillermo Roditi)\n", "style" => "*", "text" => "Added a field_value() method to the Compound field class. (Suggested by Guillermo Roditi)" }, { "line" => 227, "raw" => " * Added a cascade parameter to validate(), which defaults to true.\n (Suggested by Guillermo Roditi)\n\n", "style" => "*", "text" => "Added a cascade parameter to validate(), which defaults to true. (Suggested by Guillermo Roditi)" } ], "line" => 221, "note" => "(01.15.2007) - John Siracusa ", "raw" => "0.546 (01.15.2007) - John Siracusa \n\n", "version" => "0.546" }, { "entries" => [ { "line" => 232, "raw" => " * Added param_exists_for_field() method to Rose::HTML::Form.\n", "style" => "*", "text" => "Added param_exists_for_field() method to Rose::HTML::Form." }, { "line" => 233, "raw" => " * Added positive() and negative() methods to integer fields.\n", "style" => "*", "text" => "Added positive() and negative() methods to integer fields." }, { "line" => 234, "raw" => " * Fixed a bug that caused validation to fail for certain compound \n fields with labels. (Reported by Guillermo Roditi)\n", "style" => "*", "text" => "Fixed a bug that caused validation to fail for certain compound fields with labels. (Reported by Guillermo Roditi)" }, { "line" => 236, "raw" => " * Improved error messages for empty, split datetime fields.\n", "style" => "*", "text" => "Improved error messages for empty, split datetime fields." }, { "line" => 237, "raw" => " * Added class mapping for the \"int\" and \"integer\" field types.\n", "style" => "*", "text" => "Added class mapping for the \"int\" and \"integer\" field types." }, { "line" => 238, "raw" => " * Corrected the construction of the string overflow error message.\n", "style" => "*", "text" => "Corrected the construction of the string overflow error message." }, { "line" => 239, "raw" => " * Improved importing of message constants.\n", "style" => "*", "text" => "Improved importing of message constants." }, { "line" => 240, "raw" => " * Fixed a bug that caused a field in a nested form with the same\n name as a field in its parent form to become invisible.\n", "style" => "*", "text" => "Fixed a bug that caused a field in a nested form with the same name as a field in its parent form to become invisible." }, { "line" => 242, "raw" => " * Made nested form/field name conflicts fatal.\n\n", "style" => "*", "text" => "Made nested form/field name conflicts fatal." } ], "line" => 230, "note" => "(12.08.2006) - John Siracusa ", "raw" => "0.545 (12.08.2006) - John Siracusa \n\n", "version" => "0.545" }, { "entries" => [ { "line" => 246, "raw" => " * Added a field_value() method to Rose::HTML::Form. (Suggested by\n Guillermo Roditi)\n", "style" => "*", "text" => "Added a field_value() method to Rose::HTML::Form. (Suggested by Guillermo Roditi)" }, { "line" => 248, "raw" => " * Added validation and an error message for text field input that\n exceeds maxlength. (Patch by Cees Hek)\n", "style" => "*", "text" => "Added validation and an error message for text field input that exceeds maxlength. (Patch by Cees Hek)" }, { "line" => 250, "raw" => " * Added the \"disabled\" boolean attribute to SelectBox and PopUpMenu.\n (Reported by Andrei Kozovski)\n\n", "style" => "*", "text" => "Added the \"disabled\" boolean attribute to SelectBox and PopUpMenu. (Reported by Andrei Kozovski)" } ], "line" => 244, "note" => "(11.29.2006) - John Siracusa ", "raw" => "0.544 (11.29.2006) - John Siracusa \n\n", "version" => "0.544" }, { "entries" => [ { "line" => 255, "raw" => " * Removed a stray reference to Scalar::Defer, which is not\n a prerequesite. (Reported by Sebastian Riedel)\n\n", "style" => "*", "text" => "Removed a stray reference to Scalar::Defer, which is not a prerequesite. (Reported by Sebastian Riedel)" } ], "line" => 253, "note" => "(11.22.2006) - John Siracusa ", "raw" => "0.543 (11.22.2006) - John Siracusa \n\n", "version" => "0.543" }, { "entries" => [ { "line" => 260, "raw" => " * Fixed localization inheritence for checkboxes, options, and\n other nested, labeled elements.\n\n", "style" => "*", "text" => "Fixed localization inheritence for checkboxes, options, and other nested, labeled elements." } ], "line" => 258, "note" => "(11.07.2006) - John Siracusa ", "raw" => "0.542 (11.07.2006) - John Siracusa \n\n", "version" => "0.542" }, { "entries" => [ { "line" => 265, "raw" => " * Added German localization, translated by Uwe Voelker.\n", "style" => "*", "text" => "Added German localization, translated by Uwe Voelker." }, { "line" => 266, "raw" => " * Added French localization, translated by Jacques Supcik.\n", "style" => "*", "text" => "Added French localization, translated by Jacques Supcik." }, { "line" => 267, "raw" => " * Corrected some of the English error messages.\n\n", "style" => "*", "text" => "Corrected some of the English error messages." } ], "line" => 263, "note" => "(10.20.2006) - John Siracusa ", "raw" => "0.541 (10.20.2006) - John Siracusa \n\n", "version" => "0.541" }, { "entries" => [ { "line" => 271, "raw" => " * Added the has_error() method.\n", "style" => "*", "text" => "Added the has_error() method." }, { "line" => 272, "raw" => " * Added special handling to object_from_form() for checkboxes that\n set boolean columns in Rose::DB::Object-derived objects.\n", "style" => "*", "text" => "Added special handling to object_from_form() for checkboxes that set boolean columns in Rose::DB::Object-derived objects." }, { "line" => 274, "raw" => " * The xhtml_table() method for checkbox and radio button groups now\n correctly returns XHTML markup. (Reported by Jacques Supcik)\n", "style" => "*", "text" => "The xhtml_table() method for checkbox and radio button groups now correctly returns XHTML markup. (Reported by Jacques Supcik)" }, { "line" => 276, "raw" => " * Restored the field_names() method, making it call the newly documented\n field_monikers() method. (Reported by Andrei Kozovski)\n", "style" => "*", "text" => "Restored the field_names() method, making it call the newly documented field_monikers() method. (Reported by Andrei Kozovski)" }, { "line" => 278, "raw" => " * Nesting a field or form within itself now results in a fatal error\n instead of an infinite loop.\n", "style" => "*", "text" => "Nesting a field or form within itself now results in a fatal error instead of an infinite loop." }, { "line" => 280, "raw" => " * Preliminary localization infrastructure created. (No public APIs\n are available yet.)\n\n", "style" => "*", "text" => "Preliminary localization infrastructure created. (No public APIs are available yet.)" } ], "line" => 269, "note" => "(10.06.2006) - John Siracusa ", "raw" => "0.54 (10.06.2006) - John Siracusa \n\n", "version" => "0.54" }, { "entries" => [ { "line" => 285, "raw" => " * Added Script, Link, and Anchor tag classes.\n", "style" => "*", "text" => "Added Script, Link, and Anchor tag classes." }, { "line" => 286, "raw" => " * Added missing documentation for xhtml_error().\n", "style" => "*", "text" => "Added missing documentation for xhtml_error()." }, { "line" => 287, "raw" => " * Fixed a bug that caused some compound date/time fields to consider\n empty strings as \"non-empty\" values. (Reported by Guillermo Roditi)\n\n", "style" => "*", "text" => "Fixed a bug that caused some compound date/time fields to consider empty strings as \"non-empty\" values. (Reported by Guillermo Roditi)" } ], "line" => 283, "note" => "(06.14.2006) - John Siracusa ", "raw" => "0.53 (06.14.2006) - John Siracusa \n\n", "version" => "0.53" }, { "entries" => [ { "line" => 292, "raw" => " * Added a children() method to Rose::HTML::Object and all derived \n classes to provide uniform access to sub-objects.\n", "style" => "*", "text" => "Added a children() method to Rose::HTML::Object and all derived classes to provide uniform access to sub-objects." }, { "line" => 294, "raw" => " * Added Rose::HTML::Form::Field::Integer.\n\n", "style" => "*", "text" => "Added Rose::HTML::Form::Field::Integer." } ], "line" => 290, "note" => "(03.08.2006) - John Siracusa ", "raw" => "0.52 (03.08.2006) - John Siracusa \n\n", "version" => "0.52" }, { "entries" => [ { "line" => 298, "raw" => " * Added CGI and Apache integration methods to Rose::HTML::Form: \n params_from_cgi(), params_from_apache(), init_fields_with_cgi(), \n and init_fields_with_apache().\n", "style" => "*", "text" => "Added CGI and Apache integration methods to Rose::HTML::Form: params_from_cgi(), params_from_apache(), init_fields_with_cgi(), and init_fields_with_apache()." }, { "line" => 301, "raw" => " * Tweaked the copy/reference semantics of the params() method in\n Rose::HTML::Form.\n", "style" => "*", "text" => "Tweaked the copy/reference semantics of the params() method in Rose::HTML::Form." }, { "line" => 303, "raw" => " * Made some small fixes and additions to the documentation.\n\n", "style" => "*", "text" => "Made some small fixes and additions to the documentation." } ], "line" => 296, "note" => "(03.02.2006) - John Siracusa ", "raw" => "0.51 (03.02.2006) - John Siracusa \n\n", "version" => "0.51" }, { "entries" => [ { "line" => 307, "raw" => " * Added the ability to nest forms.\n", "style" => "*", "text" => "Added the ability to nest forms." }, { "line" => 308, "raw" => " * Added a more concise syntax for adding fields to forms.\n", "style" => "*", "text" => "Added a more concise syntax for adding fields to forms." }, { "line" => 309, "raw" => " * Revised sub-field addressing to accommodate sub-form addressing.\n", "style" => "*", "text" => "Revised sub-field addressing to accommodate sub-form addressing." }, { "line" => 310, "raw" => " * Added choices() aliases for the various divergently-named \n radio_buttons(), checkboxes(), and options() methods.\n", "style" => "*", "text" => "Added choices() aliases for the various divergently-named radio_buttons(), checkboxes(), and options() methods." }, { "line" => 312, "raw" => " * Big version number bump to signify substantial progress towards 1.0.\n\n", "style" => "*", "text" => "Big version number bump to signify substantial progress towards 1.0." } ], "line" => 305, "note" => "(02.22.2006) - John Siracusa ", "raw" => "0.50 (02.22.2006) - John Siracusa \n\n", "version" => "0.50" }, { "entries" => [ { "line" => 316, "raw" => " * Added a size() attribute to the text area field.\n", "style" => "*", "text" => "Added a size() attribute to the text area field." }, { "line" => 317, "raw" => " * Corrected the POD for the start/end date fields.\n\n", "style" => "*", "text" => "Corrected the POD for the start/end date fields." } ], "line" => 314, "note" => "(01.17.2006) - John Siracusa ", "raw" => "0.34 (01.17.2006) - John Siracusa \n\n", "version" => "0.34" }, { "entries" => [ { "line" => 321, "raw" => " * Fixed a bug in input_value() on hidden fields that caused incorrect\n html() and xhtml() results. (Reported by Sean Davis)\n", "style" => "*", "text" => "Fixed a bug in input_value() on hidden fields that caused incorrect html() and xhtml() results. (Reported by Sean Davis)" }, { "line" => 323, "raw" => " * Compound datetime fields now correctly indicate invalid data when\n partially filled out. (Reported by Sean Davis)\n\n", "style" => "*", "text" => "Compound datetime fields now correctly indicate invalid data when partially filled out. (Reported by Sean Davis)" } ], "line" => 319, "note" => "(01.13.2006) - John Siracusa ", "raw" => "0.33 (01.13.2006) - John Siracusa \n\n", "version" => "0.33" }, { "entries" => [ { "line" => 328, "raw" => " * Added a rank() attribute to field objects, and a rank_counter()\n to forms. Fields are ranked in the order that they are added to\n the form. Subclasses can override compare_fields() to sort based\n on this rank.\n\n", "style" => "*", "text" => "Added a rank() attribute to field objects, and a rank_counter() to forms. Fields are ranked in the order that they are added to the form. Subclasses can override compare_fields() to sort based on this rank." } ], "line" => 326, "note" => "(12.30.2005) - John Siracusa ", "raw" => "0.32 (12.30.2005) - John Siracusa \n\n", "version" => "0.32" }, { "entries" => [ { "line" => 335, "raw" => " * Field order can now be customized in Rose::HTML::Form subclasses\n by overriding the new compare_fields() method or the revised \n field_names() method.\n\n", "style" => "*", "text" => "Field order can now be customized in Rose::HTML::Form subclasses by overriding the new compare_fields() method or the revised field_names() method." } ], "line" => 333, "note" => "(12.27.2005) - John Siracusa ", "raw" => "0.31 (12.27.2005) - John Siracusa \n\n", "version" => "0.31" }, { "entries" => [ { "line" => 341, "raw" => " * Adjusted tests to pass despite a backward-incompatible change\n in HTML::Entities as part of the HTML::Parser 3.46 release.\n", "style" => "*", "text" => "Adjusted tests to pass despite a backward-incompatible change in HTML::Entities as part of the HTML::Parser 3.46 release." }, { "line" => 343, "raw" => " * Big version number bump.\n\n", "style" => "*", "text" => "Big version number bump." } ], "line" => 339, "note" => "(11.08.2005) - John Siracusa ", "raw" => "0.30 (11.08.2005) - John Siracusa \n\n", "version" => "0.30" }, { "entries" => [ { "line" => 347, "raw" => " * Fixed a bug that caused the incorrect initialization of compound\n fields nested 3 or more levels deep.\n\n", "style" => "*", "text" => "Fixed a bug that caused the incorrect initialization of compound fields nested 3 or more levels deep." } ], "line" => 345, "note" => "(10.23.2005) - John Siracusa ", "raw" => "0.027 (10.23.2005) - John Siracusa \n\n", "version" => "0.027" }, { "entries" => [ { "line" => 352, "raw" => " * Documented value/label pair argument format for select boxes,\n pop-up menus, and checkbox and radio button groups.\n\n", "style" => "*", "text" => "Documented value/label pair argument format for select boxes, pop-up menus, and checkbox and radio button groups." } ], "line" => 350, "note" => "(10.22.2005) - John Siracusa ", "raw" => "0.026 (10.22.2005) - John Siracusa \n\n", "version" => "0.026" }, { "entries" => [ { "line" => 357, "raw" => " * Fixed a bug that caused a fatal error when passing name/value\n pairs to the options() method of option containers.\n\n", "style" => "*", "text" => "Fixed a bug that caused a fatal error when passing name/value pairs to the options() method of option containers." } ], "line" => 355, "note" => "(10.21.2005) - John Siracusa ", "raw" => "0.025 (10.21.2005) - John Siracusa \n\n", "version" => "0.025" }, { "entries" => [ { "line" => 362, "raw" => " * Fixed POD links and altered POD formatting.\n", "style" => "*", "text" => "Fixed POD links and altered POD formatting." }, { "line" => 363, "raw" => " * Added support information and links to selected modules.\n\n", "style" => "*", "text" => "Added support information and links to selected modules." } ], "line" => 360, "note" => "(10.10.2005) - John Siracusa ", "raw" => "0.024 (10.10.2005) - John Siracusa \n\n", "version" => "0.024" }, { "entries" => [ { "line" => 367, "raw" => " * Fixed compound field renaming bug.\n\n", "style" => "*", "text" => "Fixed compound field renaming bug." } ], "line" => 365, "note" => "(10.09.2005) - John Siracusa ", "raw" => "0.023 (10.09.2005) - John Siracusa \n\n", "version" => "0.023" }, { "entries" => [ { "line" => 371, "raw" => " * POD fixes.\n\n", "style" => "*", "text" => "POD fixes." } ], "line" => 369, "note" => "(08.20.2005) - John Siracusa ", "raw" => "0.022 (08.20.2005) - John Siracusa \n\n", "version" => "0.022" }, { "entries" => [ { "line" => 375, "raw" => " * Added set field.\n\n", "style" => "*", "text" => "Added set field." } ], "line" => 373, "note" => "(06.28.2005) - John Siracusa ", "raw" => "0.021 (06.28.2005) - John Siracusa \n\n", "version" => "0.021" }, { "entries" => [ { "line" => 379, "raw" => " * Added support for multi-valued internal values.\n", "style" => "*", "text" => "Added support for multi-valued internal values." }, { "line" => 380, "raw" => " * Added support for fields with partial values (e.g., a compound time \n field with just an hour and an AM/PM specifier filled out.)\n", "style" => "*", "text" => "Added support for fields with partial values (e.g., a compound time field with just an hour and an AM/PM specifier filled out.)" }, { "line" => 382, "raw" => " * Shored up support for deeply-nested compound fields.\n", "style" => "*", "text" => "Shored up support for deeply-nested compound fields." }, { "line" => 383, "raw" => " * Added hour, minute, second, start date, end date, and date range fields.\n\n", "style" => "*", "text" => "Added hour, minute, second, start date, end date, and date range fields." } ], "line" => 377, "note" => "(06.27.2005) - John Siracusa ", "raw" => "0.02 (06.27.2005) - John Siracusa \n\n", "version" => "0.02" }, { "entries" => [ { "line" => 387, "raw" => " * Added scalar context to the input_value() call in init_with_object(),\n and to the deflate_value() call in output_value().\n", "style" => "*", "text" => "Added scalar context to the input_value() call in init_with_object(), and to the deflate_value() call in output_value()." }, { "line" => 389, "raw" => " * Fixed mistakes in TextArea documentation.\n\n", "style" => "*", "text" => "Fixed mistakes in TextArea documentation." } ], "line" => 385, "note" => "(05.02.2005) - John Siracusa ", "raw" => "0.0143 (05.02.2005) - John Siracusa \n\n", "version" => "0.0143" }, { "entries" => [ { "line" => 393, "raw" => " * Added build_on_init() method to form objects.\n\n", "style" => "*", "text" => "Added build_on_init() method to form objects." } ], "line" => 391, "note" => "(04.27.2005) - John Siracusa ", "raw" => "0.0142 (04.27.2005) - John Siracusa \n\n", "version" => "0.0142" }, { "entries" => [ { "line" => 397, "raw" => " * Added class=\"required\" to the label tag of required fields.\n\n", "style" => "*", "text" => "Added class=\"required\" to the label tag of required fields." } ], "line" => 395, "note" => "(04.22.2005) - John Siracusa ", "raw" => "0.0141 (04.22.2005) - John Siracusa \n\n", "version" => "0.0141" }, { "entries" => [ { "line" => 401, "raw" => " * Added functionality to the value_label() method of on/off field \n groups and restored the original meaning of the label() method \n for those fields.\n\n", "style" => "*", "text" => "Added functionality to the value_label() method of on/off field groups and restored the original meaning of the label() method for those fields." } ], "line" => 399, "note" => "(04.22.2005) - John Siracusa ", "raw" => "0.014 (04.22.2005) - John Siracusa \n\n", "version" => "0.014" }, { "entries" => [ { "line" => 407, "raw" => " * Fixed a bug that caused a misleading error message when trying to\n select multiple items in a pop-up menu.\n\n", "style" => "*", "text" => "Fixed a bug that caused a misleading error message when trying to select multiple items in a pop-up menu." } ], "line" => 405, "note" => "(04.21.2005) - John Siracusa ", "raw" => "0.0132 (04.21.2005) - John Siracusa \n\n", "version" => "0.0132" }, { "entries" => [ { "line" => 412, "raw" => " * Added code to tests to drop back to UTC time zone if the local time\n zone cannot be determined (e.g., on Win32)\n", "style" => "*", "text" => "Added code to tests to drop back to UTC time zone if the local time zone cannot be determined (e.g., on Win32)" }, { "line" => 414, "raw" => " * Added warnings for ancient versions of DateTime.\n\n", "style" => "*", "text" => "Added warnings for ancient versions of DateTime." } ], "line" => 410, "note" => "(12.30.2004) - John Siracusa ", "raw" => "0.0131 (12.30.2004) - John Siracusa \n\n", "version" => "0.0131" }, { "entries" => [ { "line" => 418, "raw" => " * Fixed some tests that relied on keys()/values() order.\n\n", "style" => "*", "text" => "Fixed some tests that relied on keys()/values() order." } ], "line" => 416, "note" => "(12.07.2004) - John Siracusa ", "raw" => "0.013 (12.07.2004) - John Siracusa \n\n", "version" => "0.013" }, { "entries" => [ { "line" => 422, "raw" => " * Added copyright info. Versions 0.01 and 0.011 removed.\n\n", "style" => "*", "text" => "Added copyright info. Versions 0.01 and 0.011 removed." } ], "line" => 420, "note" => "(11.14.2004) - John Siracusa ", "raw" => "0.012 (11.14.2004) - John Siracusa \n\n", "version" => "0.012" }, { "entries" => [ { "line" => 426, "raw" => " * Added missing prerequisite (Rose::URI)\n\n", "style" => "*", "text" => "Added missing prerequisite (Rose::URI)" } ], "line" => 424, "note" => "(11.14.2004) - John Siracusa ", "raw" => "0.011 (11.14.2004) - John Siracusa \n\n", "version" => "0.011" }, { "entries" => [ { "line" => 430, "raw" => " * Initial release.\n", "style" => "*", "text" => "Initial release." } ], "line" => 428, "note" => "(11.13.2004) - John Siracusa ", "raw" => "0.01 (11.13.2004) - John Siracusa \n\n", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/DBIx-Class.changes000644 000000 000000 00000300664 14472651645 020053 0ustar00000000 000000 Revision history for DBIx::Class 0.08270 2014-01-30 21:54 (PST) * Fixes - Fix 0.08260 regression in DBD::SQLite bound int handling. Inserted data was not affected, but any function <=> integer comparison would have failed (originally fixed way back in 0e773352) - Fix failure to load DateTime formatter when connecting to Firebird over ODBC * Misc - All drivers based on ::Storage::DBI::Firebird::Common now return the same sqlt_type value (affects ::DBI::Interbase, ::DBI::Firebird and ::DBI::ODBC::Firebird) 0.08260 2014-01-28 18:52 (UTC) * New Features - A new zero-to-DBIC style manual: DBIx::Class::Manual::QuickStart * Notable Changes and Deprecations - Explicitly deprecate combination of distinct and selecting a non-column via $rs->get_column() * Fixes - More robust handling of circular relationship declarations by loading foreign classes less frequently (should resolve issues like http://lists.scsys.co.uk/pipermail/dbix-class/2013-June/011374.html) Note that none of this is a manifestations of a DBIC bug, but rather unexpected (but correct) behavior of load-order-dependent (hence logically broken) Resultclass hierarchies. In order to deal with this DBIC is scaling back a large number of sanity checks, which are to be reintroduce pending a better framework for source registration - Fix multiple edge cases of complex prefetch combining incorrectly with correlated subquery selections - Fix multiple edge cases stemming from interaction of a non-selecting order_by specification and distinct and/or complex prefetch - Fix unbound growth of a resultset during repeated execute/exhaust cycles (GH#29) - Work around (and be very vocal about the fact) when DBIC encounters an exception object with broken string overloading - Clarify ambiguous behavior of distinct when used with ResultSetColumn i.e. $rs->search({}, { distinct => 1 })->get_column (...) - Setting quote_names propagates to SQL::Translator when producing SQLite DDL (it is one of the few producers *NOT* quoting by default) - Fix incorrect binding of large integers on old versions of DBD::SQLite (now DBIC simply always binds SQLite ints as BIGINT) - Silence (harmless) warnings on recent DBD::SQLite versions, when inserting/updating large integers on 32bit ivsize systems (RT#76395) - Back out self-cleaning from DBIx::Class::Carp for the time being (as a side effect fixes RT#86267) - Fix incorrect internal use of implicit list context in copy() - Fix 0.08250 regression in driver determination when DBI_DSN is used - Tests no longer fail if $ENV{DBI_DSN} is set - Throw clearer exception on ->new_related() with a non-existent relationship - Fix incorrect parethesis unroll with multicolumn in, (never noticed before fixing false positive in SQLA::Test 1.77) - Fix t/storage/replicated.t class loading problem - Stop using the deprecated Class::MOP::load_class() - Fix warning in t/54taint.t with explicitly unset PERL5LIB (RT#91972) - Fix t/54taint.t failing under a local::lib with installed earlier DBIC version (RT#92486) * Misc - Massive incompatible change of ::BlockRunner internals (was never documented as usable externally, this last set of changes settles the design for proper documentation and opening up) - Adjust exceptions in tests to accommodate changes in the upcoming DBD::SQLite based on libsqlite 3.8.2 - More robust lock file naming scheme - allow tests to work on exotic MSWin32 filesystems (habitual offender being http://is.gd/iy5XVP) - Better diagnostics when File::Spec->tmpdir gives us crap in testing - Replace $row with $result in all docs to be consistent and to clarify various return values 0.08250 2013-04-29 22:00 (UTC) * New Features / Changes - Rewrite from scratch the result constructor codepath - many bugfixes and performance improvements (the current codebase is now capable of outperforming both DBIx::DataModel and Rose::DB::Object on some workloads). Some notable benefits: - Multiple has_many prefetch - Partial prefetch - you now can select only columns you are interested in, while preserving the collapse functionality (collapse is now exposed as a first-class API attribute) - Prefetch of resultsets with arbitrary order (RT#54949, RT#74024, RT#74584) - Prefetch no longer inserts right-side table order_by clauses (massively helps the deficient MySQL optimizer) - Prefetch with limit on right-side ordered resultsets now works correctly (via aggregated grouping) - No longer order the insides of a complex prefetch subquery, unless required to satisfy a limit - Stop erroneously considering order_by criteria from a join under distinct => 1 (the distinct should apply to the main source only) - Massively optimize codepath around ->cursor(), over 10x speedup on some iterating workloads. - Support standalone \[ $sql, $value ] in literal SQL with bind specifications: \[ '? + ?', 42, 69 ] is now equivalent to \[ '? + ?', [ {} => 42 ], [ {} => 69 ] ] - Changing the result_class of a ResultSet in progress is now explicitly forbidden. The behavior was undefined before, and would result in wildly differing outcomes depending on $rs attributes. - Deprecate returning of prefetched 'filter' rels as part of get_columns() and get_inflated_columns() data - Invoking get_inflated_columns() no longer fires get_columns() but instead retrieves data from individual non-inflatable columns via get_column() - Emit a warning on incorrect use of nullable columns within a primary key - Limited checks are performed on whether columns without declared is_nullable => 1 metadata do in fact sometimes fetch NULLs from the database (the check is currently very limited and is performed only on resultset collapse when the alternative is rather worse) * Fixes - Fix _dbi_attrs_for_bind() being called befor DBI has been loaded (regression in 0.08210) - Fix update/delete operations on resultsets *joining* the updated table failing on MySQL. Resolves oversights in the fixes for RT#81378 and RT#81897 - Fix open cursors silently resetting when inherited across a fork or a thread - Properly support "MySQL-style" left-side group_by with prefetch - Fix $grouped_rs->get_column($col)->func($func) producing incorrect SQL (RT#81127) - Stop Sybase ASE storage from generating invalid SQL in subselects when a limit without offset is encountered - Even more robust behavior of GenericSubQuery limit dialect - Make sure deployment_statements() and cursor_class() are called on a resolved storage subclass * Misc - Fix tests failing due to unspecified resultset retrieval order (test suite now will pass with newest SQLite libs) 0.08210 2013-04-04 15:30 (UTC) * New Features / Changes - Officially deprecate the 'cols' and 'include_columns' resultset attributes - Remove ::Storage::DBI::sth() deprecated in 0.08191 * Fixes - Work around a *critical* bug with potential for data loss in DBD::SQLite - RT#79576 - Audit and correct potential bugs associated with braindead reuse of $1 on unsuccessful matches - Fix incorrect warning/exception originator reported by carp*() and throw_exception() 0.08209 2013-03-01 12:56 (UTC) * New Features / Changes - Debugging aid - warn on invalid result objects created by what seems like an invalid inheritance hierarchy * Fixes - Fix another embarrassing regression preventing correct refining of the search criteria on a prefetched relation (broken in 0.08205) - Fix incorrect callsite reporting by DBIC::Carp 0.08208 2013-02-20 09:56 (UTC) * New Features / Changes - A bunch of nonsensically named arguments to the SQL::Translator parser have been marked as deprecated (while still fully supported) * Fixes - Fix duplicated selected columns when calling 'count' when a same aggregate function is used more than once in a 'having' clause (RT#83305) - Prevent SQL::Translator::Producer::YAML from seeing the $dbh in a potentially connected $schema instance (RT#75394) * Misc - Fixup our distbuilding process to stop creating world-writable tarball contents (implicitly fixes RT#83084) - Added strict and warnings tests for all lib and test files 0.08206 2013-02-08 * Fixes - Fix dbh_do() failing to properly reconnect (regression in 0.08205) - Extra sanity check of a fresh DBI handle ($dbh). Fixes connection coderefs returning garbage (seen in the wild) * Misc - Only allow known globals in SQL::Translator leak allowance - General cleanup of error message texts - quote names/identifiers for easier reading - Stop t/52leaks.t from failing when AUTOMATED_TESTING=1 0.08205 2013-01-22 * New Features / Changes - The emulate_limit() arbitrary limit dialect emulation mechanism is now deprecated, and will be removed when DBIx::Class migrates to Data::Query - Support for the source_bind_attributes() storage method has been removed after a lengthy deprecation cycle * Fixes - When performing resultset update/delete only strip condition qualifiers - leave the source name alone (RT#80015, RT#78844) - Fix incorrect behavior on resultset update/delete invoked on composite resultsets (e.g. as_subselect_rs) - Fix update/delete operations referencing the updated table failing on MySQL, due to its refusal to modify a table being directly queried. As a workaround induce in-memory temp-table creation (RT#81378, RT#81897) - More robust behavior under heavily threaded environments - make sure we do not have refaddr reuse in the global storage registry - Fix failing test on 5.8 under Win32 (RT#81114) - Fix hash-randomization test issues (RT#81638) - Disallow erroneous calling of connect_info on a replicated storage (RT#78436) * Misc - Improve the populate docs in ::Schema and ::ResultSet - ::Storage::DBI::source_bind_attributes() removed as announced on Jan 2011 in 0e773352a 0.08204 2012-11-08 * New Features / Changes - SQLMaker now accepts \'literal' with the 'for' rs attribute as an override to the builtin FOR options * Fixes - Fix unique constraint violations in Ordered.pm blanket movement (RT#79773, rolls back short-sighted 5e6fde33e) - Fix API mismatch between new_result() and new_related() (originally broken by fea3d045) - Fix test failure on perl 5.8 * Misc - Much more extensive diagnostics when a new RDBMS/DSN combination is encountered (RT#80431) 0.08203 2012-10-18 * Fixes - Really fix inadequate $dbh->ping SQLite implementation (what shipped in 0.08201 tickled other deficiencies in DBD::SQLite itself) 0.08202 2012-10-06 * Fixes - Replace inadequate $dbh->ping SQLite implementation with our own, fixes RT#78420 0.08200 2012-08-24 (UTC) * Fixes - Change one of the new tests for the previous release to not require SQL::Translator 0.08199 2012-08-22 (UTC) * Fixes - Roll back incomplete (and broken) internal changes - restore prefetch functionality 0.08198 2012-07-11 03:43 (UTC) * Fixes - Fix a number of Win32 Test issues - Fix silent Oracle connection failures 0.08197 2012-07-10 10:32 (UTC) * New Features / Changes - Issue a warning when DateTime objects are passed to ->search - Fast populate() in void context is now even more efficient by going directly through execute_for_fetch bypassing execute_array - Fix update()/delete() on complex resultsets to no longer fall back to silly row-by-row deletion, construct a massive OR statement instead - Allow complex update/delete operations on sources without a primary key, as long as they have at least one non-nullable unique constraint - dbicadmin now better supports catalyst-style config files, by unrolling 'config_info' hashkeys - Multiple Improvements MSSQL over DBD::ADO - Transaction support - Support for VARCHAR(MAX)/VARBINARY(MAX)/NVARCHAR(MAX) datatypes - Nomalization of retrieved GUID values * Fixes - Fix complex has_many prefetch with resultsets not selecting identity columns from the root result source - Fix SkipFirst and FirstSkip limit dialects (Informix and Firebird) - Fix "Skimming limit" dialects (Top, FetchFirst) to properly check the order_by criteria for stability - Fix "Skimming limit" dialects (Top, FetchFirst) to propagate non-selected order criteria when part of a larger subquery - Fix RowNumberOver and all "skimming limits" to correctly assemble bind values when supplied for both select and order_by - Fix all subquery-based dialects to not lose a subquery fragment when we both select and order by the result of the same subquery - Fix the Sybase hubrid limit dialect (RowCountOrGenericSubQ) losing Group/Having/Order clauses when called without an offset (RT#73244) - No longer generate incorrect SQL on ->as_query called on resultsets with software_limit enabled - A number of corner case fixes of void context populate() with \[] - Fix corner case of forked children disconnecting the parents DBI handle - Improve identity/autoinc retrieval code in MSSQL and Sybase - should reduce weird side-effects especially with populate() - Explicitly disable DBD::ODBC batch operations (as of DBD::ODBC 1.35) for the following drivers too buggy to handle the optimized path: - FreeTDS ODBC driver (when used with MSSQL) - The Firebird ODBC driver - The MSAccess ODBC driver - Explicitly disable DBD::ODBC dynamic_cursors when using freetds 0.83 or later - they made enough ODBC incompatible changes making it impossible to support sanely - Explicitly disable SCOPE_IDENTITY queries and statement caching for MSSQL on DBD::Sybase compiled against freetds 0.83 or later - way too buggy - Disable statement caching when using Sybase ASE and DBD::Sybase compiled against freetds 0.83 or later - Fix leakage of $schema on in-memory new_related() calls - Fix more cases of $schema leakage in SQLT::Parser::DBIC - Fix leakage of $storage in ::Storage::DBI::Oracle - Fix pessimization of Oracle RowNum limit dialect query when no offset has been specified - Remove useless vestigial pessimization in Ordered.pm for cases when the position column is part of a unique constraint - Fix dbicadmin to no longer ignore the documented 'config' option - The schema-resultsource entanglement is now much more robust under threads - Fix ::Schema::ddl_filename() failing miserably on paths containing certain numeric sequences - t/53lean_startup.t adjusted for new 5.15.x base.pm behavior * Misc - Centralized leak-checks for all instances of DBICTest::Schema from within any test - Now passes all tests with Test::Builder 1.005 - Codebase is now trailing-whitespace-free - Cleanup of complex resultset update/delete oprations - storage specific code moved back to ResultSet and replaced by checks of storage capabilities - Fixed carp_once only emitting one single warning per package regardless of warning content - Test suite now can be safely executed in parallel (prove -jN or HARNESS_OPTIONS=jN) 0.08196 2011-11-29 05:35 (UTC) * Fixes - Fix tests for DBD::SQLite >= 1.34. - Fix test failures with DBICTEST_SQLITE_USE_FILE set - Fix the find() condition heuristics being invoked even when the call defaults to 'primary' (i.e. when invoked with bare values) - Throw much clearer error on incorrect inflation spec - Fix incorrect storage behavior when first call on a fresh schema is with_deferred_fk_checks - Fix incorrect dependency on Test::Simple/Builder (RT#72282) - Fix uninitialized warning in ::Storage::Sybase::ASE - Improve/cache DBD-specific datatype bind checks (also solves a nasty memleak with version.pm on multiple ->VERSION invocations) - The internal carp module now correctly skips CAG frames when reporting a callsite - Fix test failures on perl < 5.8.7 and new Package::Stash::XS - Fix TxnScopeGuard not behaving correctly when $@ is set at the time of $guard instantiation - Fix the join/prefetch resolver when dealing with ''/undef/() relation specifications * Misc - No longer depend on Variable::Magic now that a pure-perl namespace::clean is available - Drop Oracle's Math::BigInt req down to 1.80 - no fixes concerning us were made since 0.08195 2011-07-27 16:20 (UTC) * Fixes - Fix horrible oversight in the Oracle sqlmaker when dealing with queries updating blobs (RT#69829) 0.08194 2011-07-20 16:10 (UTC) * Fixes - Fix $rs->populate([]) to be a no-op rather than an exception - Overhaul t/53lean_startup.t to better dodge false positives - Stop Data::Compare from loading random plugins - Oracle: Recalculate LOB bind indices for UPDATE with LOBs in WHERE (RT#69548) 0.08193 2011-07-14 17:00 (UTC) * New Features / Changes - Allow schema cloning to mutate attributes - DBIC now attempts more aggressive de-duplication of where conditions on resultset chaining - The Ordered component is now smarter wrt reordering of dirty objects, and does its job with less storage queries - Logging via DBIC_TRACE=1= no longer overwrites the logfile on every program startup, appending loglines instead * Fixes - Fix issue where the query was becoming overly mangled when trying to use pagination with a query that has a sub-select in the WHERE clause - Fix possible incorrect pagination on Oracle, when a resultset is not ordered by a unique column - Revert "Fix incorrect signature of the default sqlt_deploy_hook" from 0.08191 - documentation was in fact incorrect, not the code - Fix Sybase ASE IC::DateTime support (::Storage going out of sync with new default format expected by DateTime::Format::Sybase) - Fix a bug in update_all() resulting in the first row receiving a different dataset than the subsequent ones - Accomodate MSAccess supporting only 'INNER JOIN' (not plain 'JOIN') - InflateColumn::DateTime option datetime_undef_if_invalid no longer masks missing dependency exceptions (RT#66823) - Fix bug in Schema::Versioned failing to insert a schema version row during upgrades at the turn of the second - Fix incorrect bind of integers >= 2^^32 (bigint columns) to SQL_INTEGER, resulting in silent conversion to '-1' - Fix pre 5.10 failures of t/55namespaces_cleaned.t due to buggy require() (RT#68814) - Oracle autoinc inserts no longer leave open cursors behind 0.08192 2011-05-10 04:20 (UTC) * Fixes - Fix serious regression on SQLite, corrupting data when an alphanum value does not correspond to a stale numeric datatype in colinfo 0.08191 2011-05-02 00:45 (UTC) (deleted from CPAN) * New Features / Changes - Add quote_names connection option. When set to true automatically sets quote_char and name_sep appropriate for your RDBMS - Add retrieve_on_insert column info flag, allowing to retrieve any column value instead of just autoinc primary keys - Bring back strict ordering of selectors in complex search chains (an ill-fated attempt was made in 0.08127 to order intelligently) - All limit dialects (except for the older Top and FetchFirst) are now using bind parameters for the limits/offsets, making DBI's prepare_cached useful across paged resutsets - Support for savepoints for SQLite - Support for MS Access databases via DBD::ODBC and DBD::ADO (only Win32 support currently tested) - Support for the Firebird RDBMS over the new DBD::Firebird driver - IC::DateTime support for MSSQL over DBD::ADO - Both the ::ODBC and ::ADO dispatchers now warn if a rdbms-specific driver is not found for this connection before falling back to plain ::Storage::DBI - ::Storage::DBI::sth was mistakenly marked/documented as public, privatize and warn on deprecated use - Massive overhaul of bind values/attributes handling - slightly changes the output of as_query (should not cause compat issues) - Support ancient DB2 versions (5.4 and older), with proper limit dialect - Support sub-second precision for TIMESTAMPs for Firebird over ODBC - Support BLOBs and CLOBs in WHERE clauses for Oracle, including LIKE queries for CLOBs. * Fixes - Fix ::Storage::DBI::* MRO problems on 5.8.x perls - Disable mysql_auto_reconnect for MySQL - depending on the ENV it sometimes defaults to on and causes major borkage on older DBD::mysql versions - Fix dropped bind values in select/group_by on Oracle (omission from 0542ec57 and 4c2b30d6) - Fix remaining errors with Oracle and identifiers longer than the Oracle-imposed maximum of 30 characters (RT#66390) - Fix older oracle-specific "WhereJoins" to work properly with name quoting - Fix problems with M.A.D. under CGI::SpeedyCGI (RT#65131) - Reenable paging of cached resultsets - breakage erroneously added in 0.08127 - Better error handling when prepare() fails silently - Fixes skipped lines when a comment is followed by a statement when deploying a schema via sql file - Fix reverse_relationship_info on prototypical result sources (sources not yet registered with a schema) - Warn and skip relationships missing from a partial schema during dbic cascade_delete - Automatically require the requested cursor class before use (RT#64795) - Work around a Firebird ODBC driver bug exposed by DBD::ODBC 1.29 - Fix (to the extent allowed by the driver) transaction support in DBD::Sybase compiled against FreeTDS - Fix exiting via next warnings in ResultSource::sequence() - Fix stripping of table qualifiers in update/delete in arrayref condition elements - Change SQLMaker carp-monkeypatch to be compatible with versions of SQL::Abstract >= 1.73 - Fix using \[] literals in the from resultset attribute - Fix populate() with \[], arrays (datatype) and other exotic values - Fix handling of rollbacks in nested transactions - Fix complex limits (RNO/RowNum/FetchFirst/Top/GenSubq) with sub-selects in the selectors list (correlated subqueries) - Fix inconsistency between $rs->next with and without HRI when all the "root" columns are in fact injected from the right rs side - Fix the join optimizer to correctly preserve the non-multi path to a multi relationship ( x -> might_have y -> has_many z ) - Fix object-derived custom-relationship resultsets to resultsources with multilevel monikers (e.g. $schema->source('Foo::Bar') ) - Fix incorrect signature of the default sqlt_deploy_hook - it now matches the documentation of passing in the result source object - Fix inadequate handling of internal storage methods within ::Storage::Replicated (RT#66295) * Misc - Rewire all warnings to a new Carp-like implementation internal to DBIx::Class, and remove the Carp::Clan dependency - Only load Class::C3 and friends if necessary ($] < 5.010) - Greatly reduced loading of non-essential modules to aid startup time (mainly benefiting CGI users) - Make sure all namespaces are clean of rogue imports - Dropped DBI req 2 years back - everything works with 1.57, no point requiring something newer 0.08190-TRIAL 2011-01-24 15:35 (UTC) * New Features / Changes - Support for completely arbitrary SQL::Abstract-based conditions in all types of relationships 0.08127 2011-01-19 16:40 (UTC) * New Features / Changes - Schema/resultsource instances are now crossreferenced via a new system guaranteeing leak-free mutually assured destruction - DBIx::Class now warns when the user erroneously supplies AutoCommit => 0 to connect() - A warning is also issued before forcing the RaiseError setting of externally supplied DBI handles - Switch to a warning when find() is invoked with both a 'key' argument and a NULL-containing condition to satisfy the named constraint. Previously (starting with 0.08124) an exception was thrown - Switch to a warning when a commit is attempted with an out-of-sync transaction_depth (someone issued a begin externally to DBIC). Previously (starting with 0.08124) an exception was thrown * Fixes - A number of improvements/diagnostics of multiple active resultset handling on MSSQL over DBD::ODBC - Revert default selection to being lazy again (eagerness introduced in 0.08125) - fixes DBIx::Class::Helper::ResultSet::RemoveColumns - Fix losing order of columns provided in select/as (regression from 0.08125) - Unaliased "dark" selectors no longer throw off prefetch - Fix proper composition of bind values across all possible SQL areas ( group_by => \[ ... ] now works properly ) - Allow populate to skip empty has_many relationships which makes it easier to pass HashRefInflator data directly to ->populate - Improve freeze/thaw semantics and error messages (RT#62546) - Fix inconsistency in Manual::Features (RT#64500) - Fix incorrect SQL when using for => 'shared' with MySQL (RT#64590) - Throw comprehensible exception on erroneous $schema->source() invocation - Fix sloppy refactor of ResultSource::sequence back from 89170201 (RT#64839) - Fix incorrect error detection during populate() on Oracle - Better handling of result_source-less row objects by auto-calling result_source_instance when necessary - Fix reverse_relationship_info and sqlt deploy on partially loaded schemas (relationships point to non-existent sources) * Misc - Fix test warning on win32 - at this point the test suite is warning-free on all known OSes - Require newest namespace::clean which in turn depends on new installable Package::Stash 0.08126 2010-12-28 18:10 (UTC) * Fixes - Bump forgotten Class::Accessor::Grouped core dependency - Promote forgotten Hash::Merge optdep to a hard requirement - Skip t/storage/error.t on smokers with leaking perls - Fix t/storage/txn.t deadlocks on slower machines - Do not run on smokers if a trial Package::Stash is found 0.08125 2010-12-27 04:30 (UTC) * New Features / Changes - New method ResultSource columns_info method, returning multiple pairs of column name/info at once - $rs->search now throws when called in void context, as it makes no sense (and is nearly always a sign of a bug/misdesign) - Restore long-lost ability to supply unbalanced select/as pairs e.g. +select => \'DISTINCT(foo, bar)', +as => ['foo', 'bar'] - +columns now behaves just like columns by not stripping a fully-qualified 'as' spec (i.e. foo.bar results in $obj->foo->bar) - Deprecate legacy $rs->search( %condition ) syntax (warn once per callsite) - NULL is now supplied unquoted to all debug-objects, in order to differentiate between a real NULL and the string 'NULL' - New search() condition operator -value used to pass complex bind values to DBI: search({ array_col => { -value => [1,2,3] }}) - Add full INSERT...RETURNING support for Oracle - Deprecate use of -nest in search conditions (warn once per callsite) - Deprecate the completely useless DBIx::Class::Serialize::Storable result component * Fixes - Fixed read-only attribute set attempt in ::Storage::Replicated (RT#62642) - Fix incomplete logic while detecting correct Oracle sequence on insert - Fix detection of Oracle sequences for tables without an explicitly specified schema (RT#63493) - Major overhaul of Storage::Oracle to handle enabled quoting - Fixed incorrect composition of select/as/columns attributes during chaining (RT#61235) - Proper serialization of resultsets with open cursors - Refactor handling of RDBMS-side values during insert() - fix regression of inserts into a Postgres / ::Replicated combination - Missing dependency check in t/60core.t (RT#62635) - Fix regressions in IC::DT registration logic - Fix regression in select-associated bind value handling (RT#61025) - Simplify SQL generated by some LIMITed prefetching queries - Throw an exception when a required group_by on a complex prefetch can not be auto-constructed, instead of continuing to eventually produce invalid SQL - Fix infinite loops on old perls with a recent Try::Tiny - Improve "fork()" on Win32 by reimplementing a more robust DBIC thread support (still problematic, pending a DBI fix) - Properly quote table name on INSERT with no values - Work around possible Storage destruction warnings - Fix count of grouped resultsets using HAVING with aliases - Setting belongs_to columns/relationships no longer leaves the FK value and related object out of sync - Stop stripping newlines from SQL statements in the limit emulators as it is possible that custom sql with comments was provided - Add forgotten attributes to Admin.pm - Fix incorrect 'having' attribute documentation (RT#64129) - Improve fallback-to-master/return-to-slave reporting in ::Replicated::Balancer - Adjust txn_scope_guard code/tests to changes in $@ handling on recent blead (RT#64251) * Misc - Add extra option groups to DBIC::Optional::Depencencies, to aid users in requesting the prerequisites for a particular RDBMS - Switch all serialization to use Storable::nfreeze for portable architecture independent ice - Fix the bogus META.yml dependency injection issue for good - Refactor DBIx::Class::Storage::Statistics::debugfh() to be lazy 0.08124 2010-10-28 14:23 (UTC) * New Features / Changes - Add new -ident "function" indicating rhs is a column name { col => { -ident => 'othercol' } } vs { col => \'othercol' } - Extend 'proxy' relationship attribute - Use DBIx::Class::Storage::Debug::PrettyPrint when the environment variable DBIC_TRACE_PROFILE is set, see DBIx::Class::Storage for more information - Implemented add_unique_constraints() which delegates to add_unique_constraint() as appropriate - add_unique_constraint() now poparly throws if called with multiple constraint definitions - No longer depend on SQL::Abstract::Limit - DBIC has been doing most of the heavy lifting for a while anyway - FilterColumn now passes data through when transformations are not specified rather than throwing an exception. - Optimized RowNum based Oracle limit-dialect (RT#61277) - Requesting a pager on a resultset with cached entries now throws an exception, instead of returning a 1-page object since the amount of rows is always equal to the "pagesize" - $rs->pager now uses a lazy count to determine the amount of total entries only when really needed, instead of doing it at instantiation time - New documentation map organized by features (DBIx::Class::Manual::Features) - find( { ... }, { key => $constraint } ) now throws an exception when the supplied data does not fully specify $constraint - find( col1 => $val1, col2 => $val2, ... ) is no longer supported (it has been in deprecated state for more than 4 years) - Make sure exception_action does not allow exception-hiding due to badly-written handlers (the mechanism was never meant to be able to suppress exceptions) * Fixes - Fix memory leak during populate() on 5.8.x perls - Temporarily fixed 5.13.x failures (RT#58225) (perl-core fix still pending) - Fix result_soutrce_instance leaks on compose_namespace - Fix $_ volatility on load_namespaces (a class changing $_ at compile time no longer causes a massive fail) - Fix find() without a key attr. choosing constraints even if some of the supplied values are NULL (RT#59219) - Fixed rels ending with me breaking subqueried limit realiasing - Fixed $rs->update/delete on resutsets constrained by an -or condition - Remove rogue GROUP BY on non-multiplying prefetch-induced subqueries - Fix incorrect order_by handling with prefetch on $ordered_rs->search_related ('has_many_rel') resultsets - Oracle sequence detection now *really* works across schemas (fixed some ommissions from 0.08123) - dbicadmin now uses a /usr/bin/env shebang to work better with perlbrew and other local perl builds - bulk-inserts via $dbh->bind_array (void $rs->populate) now display properly in DBIC_TRACE - Incomplete exception thrown on relationship auto-fk-inference failures - Fixed distinct with order_by to not double-specify the same column in the GROUP BY clause - Properly support column names with symbols (e.g. single quote) via custom accessors - Fixed ::Schema::Versioned to work properly with quoting on (RT#59619) - Fixed t/54taint fails under local-lib - Fixed SELECT ... FOR UPDATE with LIMIT regression (RT#58554) - Fixed CDBICompat to preserve order of column-group additions, so that test relying on the order of %{} will no longer fail - Fixed mysterious ::Storage::DBI goto-shim failures on older perl versions - Non-blessed reference exceptions are now correctly preserved when thrown from udner DBIC (e.g. from txn_do) - No longer disconnecting database handles supplied to connect via a coderef - Fixed t/inflate/datetime_pg.t failures due to a low dependency on DateTime::Format::Pg (RT#61503) - Fix dirtyness detection on source-less objects - Fix incorrect limit_dialect assignment on Replicated pool members - Fix invalid sql on relationship attr order_by with prefetch - Fix primary key sequence detection for Oracle (first trigger instead of trigger for column) - Add various missing things to Optional::Dependencies - Skip a test that breaks due to serious bugs in current DBD::SQLite - Fix tests related to leaks and leaky perls (5.13.5, 5.13.6) * Misc - Entire test suite now passes under DBIC_TRACE=1 - Makefile.PL no longer imports GetOptions() to interoperate better with Catalyst installers - Bumped minimum Module::Install for developers - Bumped DBD::SQLite dependency and removed some TODO markers from tests (RT#59565) - Do not execute t/zzzzzzz_sqlite_deadlock.t for regular module installs - test is prone to spontaneous blow up - DT-related tests now require a DateTime >= 0.55 (RT#60324) - Makefile.PL now provides a pre-parsed DBIC version to the Opt::Dep pod generator - t/52leaks.t now performs very aggressive leak detection in author/smoker mode 0.08123 2010-06-12 14:46 (UTC) * Fixes - Make sure Oracle identifier shortener applies to auto-generated column names, so we stay within the 30-char limit (RT#58271) - Oracle sequence detection now works across schemas - Fix a Storage/$dbh leak introduced by the migration to Try::Tiny (this is *not* a Try::Tiny bug) - Fix corner case of count with group-by over a 1:1 join column where the selector ends up with column name clashes - POD fixes (RT#58247) * Misc - Test suite default on-disk database now checks for Win32 fail-conditions even when running on other OSes 0.08122 2010-06-03 17:41 (UTC) * New Features - Add DBIx::Class::FilterColumn for non-ref filtering - ::Storage::DBI now correctly preserves a parent $dbh from terminating children, even during interpreter-global out-of-order destruction - dbicadmin supports an -I option with the same semantics as perl itself - InflateColumn::DateTime support for MSSQL via DBD::Sybase - Millisecond precision support for MSSQL datetimes for InflateColumn::DateTime - Oracle-specific hierarchical query syntax support: CONNECT BY (NOCYCLE) / START WITH / ORDER SIBLINGS BY - Support connecting using $ENV{DBI_DSN} and $ENV{DBI_DRIVER} - current_source_alias method on ResultSet objects to determine the alias to use in programatically assembled search()es (originally added in 0.08100 but unmentioned) - Rewrite/unification of all subselecting limit emulations (RNO, Top, RowNum) to be much more robust wrt complex joined resultsets - MSSQL limits now don't require nearly as many applications of the unsafe_subselect_ok attribute, due to optimized queries - Support for Generic Subquery limit "emulation" - awfully slow and inefficient but works on almost any db, and is preferred to software limit emulation - Sybase ASE driver now uses SET ROWCOUNT where possible, and Generic Subquery otherwise for limit support instead of always using software limit emulation - create_ddl_dir (and derivatives) now attempt to create the given $ddl_dir if it does not already exist - deployment_statements now automatically supplies the current RDBMS version to SQLT producer_args for MySQL, Pg, SQLite and Oracle * Fixes - Fix nasty potentially data-eating bug when deleting/updating a limited resultset - Fix find() to use result_class set on object - Fix result_class setter behaviour to not mistakenly stuff attrs. - Don't try and ensure_class_loaded an object. This doesn't work. - Fix as_subselect_rs to not inject resultset class-wide where conditions outside of the resulting subquery - Fix count() failing with {for} resultset attribute (RT#56257) - Fixed incorrect detection of Limit dialect on unconnected $schema - update() on row not in_storage no longer throws an exception if there are no dirty columns to update (fixes cascaded update annoyances) - update()/delete() on prefetching resultsets no longer results in malformed SQL (some $rs attributes were erroneously left in) - Fix dbicadmin to allow deploy() on non-versioned schema - Fix dbicadmin to respect sql_dir on upgrade() (RT#57732) - Update Schema::Versioned to respect hashref style of connection_info - Do not recreate the same related object twice during MultiCreate (solves the problem of orphaned IC::FS files) - Fully qualify xp_msver selector when using DBD::Sybase with MSSQL (RT#57467) - Fix ::DBI::Storage to always be able to present a full set of connect() attributes to e.g. Schema::Versioned - Fix Oracle auto-inc trigger detection of "INSERT OR UPDATE"-type triggers * Misc - Reformatted Changelog \o/ - DBIC goes git://git.shadowcat.co.uk/dbsrgits/DBIx-Class.git - Allow developers to skip optional dependency forcing when working from a checkout - Add a warning to load_namespaces if a class in ResultSet/ is not a subclass of DBIx::Class::ResultSet - All DBIC exception-handling switched to Try::Tiny - All DBIC modules are now free of imports via namespace::clean - Depend on optimized SQL::Abstract (faster SQL generation) - Depend on new Class::Accessor::Grouped reintroducing optional use of Class::XSAccessor (just install C::XSA and get lightning fast column accessors) 0.08121 2010-04-11 18:43:00 (UTC) - Support for Firebird RDBMS with DBD::InterBase and ODBC - Add core support for INSERT RETURNING (for storages that supports this syntax, currently PostgreSQL and Firebird) - Fix spurious warnings on multiple UTF8Columns component loads - DBIx::Class::UTF8Columns entered deprecated state - DBIx::Class::InflateColumn::File entered deprecated state - DBIx::Class::Optional::Dependencies left experimental state - Add req_group_list to Opt::Deps (RT#55211) - Add support for mysql-specific STRAIGHT_JOIN (RT#55579) - Cascading delete/update are now wrapped in a transaction for atomicity - Fix accidental autovivification of ENV vars - Fix update_all and delete_all to be wrapped in a transaction - Fix multiple deficiencies when using MultiCreate with data-encoder components (e.g. ::EncodedColumn) - Fix regression where SQL files with comments were not handled properly by ::Schema::Versioned. - Fix regression on not properly throwing when $obj->relationship is unresolvable - Fix the join-optimiser to consider unqualified column names whenever possible - Fix an issue with multiple same-table joins confusing the join optimizier - Add has_relationship method to row objects - Fix regression in set_column on PK-less objects - Better error text on malformed/missing relationships - Add POD about the significance of PK columns - Fix for SQLite to ignore the (unsupported) { for => ... } attribute - Fix ambiguity in default directory handling of create_ddl_dir (RT#54063) - Support add_columns('+colname' => { ... }) to augment column definitions. 0.08120 2010-02-24 08:58:00 (UTC) - Make sure possibly overwritten deployment_statements methods in schemas get called on $schema->deploy - Fix count() with group_by aliased-function resultsets - with_deferred_fk_checks() Oracle support - Massive refactor and cleanup of primary key handling - Fixed regression losing custom result_class (really this time) (RT#54697) - Fixed regression in DBIC SQLT::Parser failing with a classname (as opposed to a schema object) - Changes to Storage::DBI::Oracle to accomodate changes in latest SQL::Translator (quote handling) - Make sure deployment_statements is per-storage overridable - Fix dbicadmin's (lack of) POD 0.08119 2010-02-15 09:36:00 (UTC) - Add $rs->is_ordered to test for existing order_by on a resultset - Add as_subselect_rs to DBIC::ResultSet from DBIC::Helper::ResultSet::VirtualView::as_virtual_view - Refactor dbicadmin adding DDL manipulation capabilities - New optional dependency manager to aid extension writers - Depend on newest bugfixed Moose - Make resultset chaining consistent wrt selection specification - Storage::DBI::Replicated cleanup - Fix autoinc PKs without an autoinc flag on Sybase ASA 0.08118 2010-02-08 11:53:00 (UTC) - Fix a bug causing UTF8 columns not to be decoded (RT#54395) - Fix bug in One->Many->One prefetch-collapse handling (RT#54039) - Cleanup handling of relationship accessor types 0.08117 2010-02-05 17:10:00 (UTC) - Perl 5.8.1 is now the minimum supported version - Massive optimization of the join resolution code - now joins will be removed from the resulting SQL if DBIC can prove they are not referenced by anything - Subqueries no longer marked experimental - Support for Informix RDBMS (limit/offset and auto-inc columns) - Support for Sybase SQLAnywhere, both native and via ODBC - might_have/has_one now warn if applied calling class's column has is_nullable set to true. - Fixed regression in deploy() with a {sources} table limit applied (RT#52812) - Views without a view_definition will throw an exception when parsed by SQL::Translator::Parser::DBIx::Class - Stop the SQLT parser from auto-adding indexes identical to the Primary Key - InflateColumn::DateTime refactoring to allow fine grained method overloads - Fix ResultSetColumn improperly selecting more than the requested column when +columns/+select is present - Fix failure when update/delete of resultsets with complex WHERE SQLA structures - Fix regression in context sensitiveness of deployment_statements - Fix regression resulting in overcomplicated query on search_related from prefetching resultsets - Fix regression on all-null returning searches (properly switch LEFT JOIN to JOIN in order to distinguish between both cases) - Fix regression in groupedresultset count() used on strict-mode MySQL connections - Better isolation of RNO-limited queries from the rest of a prefetching resultset - New MSSQL specific resultset attribute to allow hacky ordered subquery support - Fix nasty schema/dbhandle leak due to SQL::Translator - Initial implementation of a mechanism for Schema::Version to apply multiple step upgrades - Fix regression on externally supplied $dbh with AutoCommit=0 - FAQ "Custom methods in Result classes" - Cookbook POD fix for add_drop_table instead of add_drop_tables - Schema POD improvement for dclone 0.08115 2009-12-10 09:02:00 (CST) - Real limit/offset support for MSSQL server (via Row_Number) - Fix distinct => 1 with non-selecting order_by (the columns in order_by also need to be aded to the resulting group_by) - Do not attempt to deploy FK constraints pointing to a View - Fix count/objects from search_related on limited resultset - Stop propagating distinct => 1 over search_related chains - Make sure populate() inherits the resultset conditions just like create() does - Make get_inflated_columns behave identically to get_columns wrt +select/+as (RT#46953) - Fix problems with scalarrefs under InflateColumn (RT#51559) - Throw exception on delete/update of PK-less resultsets - Refactored Sybase storage driver into a central ::DBI::Sybase dispatcher, and a sybase-specific ::DBI::Sybase::ASE - Fixed an atrocious DBD::ADO bind-value bug - Cookbook/Intro POD improvements 0.08114 2009-11-14 17:45:00 (UTC) - Preliminary support for MSSQL via DBD::ADO - Fix botched 0.08113 release (invalid tarball) 0.08113 2009-11-13 23:13:00 (UTC) - Fix populate with has_many bug (RT #50828) - Fix Oracle autoincrement broken for Resultsets with scalar refs (RT #50874) - Complete Sybase RDBMS support including: - Support for TEXT/IMAGE columns - Support for the 'money' datatype - Transaction savepoints support - DateTime inflation support - Support for bind variables when connecting to a newer Sybase with OpenClient libraries - Support for connections via FreeTDS with CASTs for bind variables when needed - Support for interpolated variables with proper quoting when connecting to an older Sybase and/or via FreeTDS - bulk API support for populate() - Transaction support for MSSQL via DBD::Sybase - Add is_paged method to DBIx::Class::ResultSet so that we can check that if we want a pager - Skip versioning test on really old perls lacking Time::HiRes (RT #50209) - Fixed on_connect_do/call regression when used with a coderef connector (RT #50003) - A couple of fixes to Ordered to remedy subclassing issues - Fixed another lingering problem with PostgreSQL auto-increment support and its interaction with multiple schemas - Remove some IN workarounds, and require a recent version of SQLA instead - Improvements to populate's handling of mixed scalarref values - Fixed regression losing result_class after $rs->find (introduced in 0.08108) - Fix in_storage() to return 1|0 as per existing documentation - Centralize handling of _determine_driver calls prior to certain ::Storage::DBI methods - Fix update/delete arbitrary condition handling (RT#51409) - POD improvements 0.08112 2009-09-21 10:57:00 (UTC) - Remove the recommends from Makefile.PL, DBIx::Class is not supposed to have optional dependencies. ever. - Mangle the DBIx/Class.pm POD to be more clear about copyright and license - Put back PG's multiple autoinc per table support, accidentally dropped during the serial-autodetection rewrite - Make sure ResultSetColumn does not depend on the (undefined) return value of ->cursor->reset() - Add single() to ResultSetColumn (same semantics as ResultSet) - Make sure to turn off IDENTITY_INSERT after insert() on MSSQL tables that needed it - More informative exception on failing _resolve_relationship - Allow undef/NULL as the sole grouping value in Ordered - Fix unreported rollback exceptions in TxnScopeGuard - Fix overly-eager left-join chain enforcing code - Warn about using distinct with an existing group_by - Warn about attempting to $rs->get_column a non-unique column when has_many joins are added to resultset - Refactor of the exception handling system (now everything is a DBIx::Class::Exception object) 0.08111 2009-09-06 21:58:00 (UTC) - The hashref to connection_info now accepts a 'dbh_maker' coderef, allowing better intergration with Catalyst - Fixed a complex prefetch + regular join regression introduced in 0.08108 - Fixed insert_bulk rebless handling - Fixed Storable roundtrip regression, and general serialization cleanup - SQLT related fixes: - sqlt_type is now called on the correct storage object - hooks can now see the correct producer_type (RT#47891) - optional SQLT requirements for e.g. deploy() bumped to 0.11002 - Really fixed (and greatly cleaned up) postgresql autoinc sequence autodetection - Automatically detect MySQL v3 and use INNER JOIN instead of JOIN - POD improvements (including RT#48769) - Test suite tweaks (including fixes for recent CPANTS fails) - Better support for MSSQL IDENTITY_INSERT ON 0.08109 2009-08-18 08:35:00 (UTC) - Replication updates: - Improved the replication tests so that they are more reliable and accurate, and hopefully solve some cross platform issues. - Bugfixes related to naming particular replicants in a 'force_pool' attribute. - Lots of documentation updates, including a new Introduction.pod file. - Fixed the way we detect transaction to make this more reliable and forward looking. - Fixed some trouble with the way Moose Types are used. - Made discard_chages/get_from_storage replication aware (they now read from the master storage by default) - Refactor of MSSQL storage drivers, with some new features: - Support for placeholders for MSSQL via DBD::Sybase with proper autodetection - 'uniqueidentifier' support with auto newid() - Dynamic cursor support and other MARS options for ODBC - savepoints with auto_savepoint => 1 - Support for MSSQL 'money' type - Support for 'smalldatetime' type used in MSSQL and Sybase for InflateColumn::DateTime - Support for Postgres 'timestamp without timezone' type in InflateColumn::DateTime (RT#48389) - Added new MySQL specific on_connect_call macro 'set_strict_mode' (also known as make_mysql_not_suck_as_much) - Multiple prefetch-related fixes: - Adjust overly agressive subquery join-chain pruning - Always preserve the outer join-chain - fixes numerous problems with search_related chaining - Deal with the distinct => 1 attribute properly when using prefetch - An extension of the select-hashref syntax, allowing labeling SQL-side aliasing: select => [ { max => 'foo', -as => 'bar' } ] - Massive optimization of the DBI storage layer - reduce the amount of connected() ping-calls - Some fixes of multi-create corner cases - Multiple POD improvements - Added exception when resultset is called without an argument - Improved support for non-schema-qualified tables under Postgres (fixed last_insert_id sequence name auto-detection) 0.08108 2009-07-05 23:15:00 (UTC) - Fixed the has_many prefetch with limit/group deficiency - it is now possible to select "top 5 commenters" while prefetching all their comments - New resultsed method count_rs, returns a ::ResultSetColumn which in turn returns a single count value - Even better support of count with limit - New on_connect_call/on_disconnect_call functionality (check POD of Storage::DBI) - Automatic datetime handling environment/session setup for Oracle via connect_call_datetime_setup() - count/all on related left-joined empty resultsets now correctly returns 0/() - Fixed regression when both page and offset are specified on a resultset - Fixed HRI returning too many empty results on multilevel nonexisting prefetch - make_column_dirty() now overwrites the deflated value with an inflated one if such exists - Fixed set_$rel with where restriction deleting rows outside the restriction - populate() returns the created objects or an arrayref of the created objects depending on scalar vs. list context - Fixed find_related on 'single' relationships - the former implementation would overspecify the WHERE condition, reporting no related objects when there in fact is one - SQL::Translator::Parser::DBIx::Class now attaches tables to the central schema object in relationship dependency order - Fixed regression in set_column() preventing sourceless object manipulations - Fixed a bug in search_related doubling a join if the original $rs already joins/prefetches the same relation - Storage::DBI::connected() improvements for Oracle and Sybase - Fixed prefetch+incomplete select regression introduced in 0.08100 - MSSQL limit (TOP emulation) fixes and improvements 0.08107 2009-06-14 08:21:00 (UTC) - Fix serialization regression introduced in 0.08103 (affects Cursor::Cached) - POD fixes - Fixed incomplete ::Replicated debug output 0.08106 2009-06-11 21:42:00 (UTC) - Switched SQLite storage driver to DateTime::Format::SQLite (proper timezone handling) - Fix more test problems 0.08105 2009-06-11 19:04:00 (UTC) - Update of numeric columns now properly uses != to determine dirtyness instead of the usual eq - Fixes to IC::DT tests - Fixed exception when undef_if_invalid and timezone are both set on an invalid datetime column 0.08104 2009-06-10 13:38:00 (UTC) - order_by now can take \[$sql, @bind] as in order_by => { -desc => \['colA LIKE ?', 'somestring'] } - SQL::Abstract errors are now properly croak()ed with the correct trace - populate() now properly reports the dataset slice in case of an exception - Fixed corner case when populate() erroneously falls back to create() - Work around braindead mysql when doing subquery counts on resultsets containing identically named columns from several tables - Fixed m2m add_to_$rel to invoke find_or_create on the far side of the relation, to avoid duplicates - DBIC now properly handles empty inserts (invoking all default values from the DB, normally via INSERT INTO tbl DEFAULT VALUES - Fix find_or_new/create to stop returning random rows when default value insert is requested (RT#28875) - Make IC::DT extra warning state the column name too - It is now possible to transparrently search() on columns requiring DBI bind (i.e. PostgreSQL BLOB) - as_query is now a Storage::DBI method, so custom cursors can be seamlessly used - Fix search_related regression introduced in 0.08103 0.08103 2009-05-26 19:50:00 (UTC) - Multiple $resultset -> count/update/delete fixes. Now any of these operations will succeed, regardless of the complexity of $resultset. distinct, group_by, join, prefetch are all supported with expected results - Return value of $rs->delete is now the storage return value and not 1 as it used to be - don't pass SQL functions into GROUP BY - Remove MultiDistinctEmulation.pm, effectively deprecating { select => { distinct => [ qw/col1 col2/ ] } } - Change ->count code to work correctly with DISTINCT (distinct => 1) via GROUP BY - Removed interpolation of bind vars for as_query - placeholders are preserved and nested query bind variables are properly merged in the correct order - Refactor DBIx::Class::Storage::DBI::Sybase to automatically load a subclass, namely Microsoft_SQL_Server.pm (similar to DBIx::Class::Storage::DBI::ODBC) - Refactor InflateColumn::DateTime to allow components to circumvent DateTime parsing - Support inflation of timestamp datatype - Support BLOB and CLOB datatypes on Oracle - Storage::DBI::Replicated::Balancer::Random: added master_read_weight - Storage::DBI::Replicated: storage opts from connect_info, connect_info merging to replicants, hashref connect_info support, improved trace output, other bug fixes/cleanups - distinct => 1 with prefetch now groups by all columns - on_connect_do accepts a single string equivalent to a one element arrayref (RT#45159) - DB2 limit + offset now works correctly - Sybase now supports autoinc PKs (RT#40265) - Prefetch on joins over duplicate relations now works correctly (RT#28451) - "timestamp with time zone" columns (for Pg) now get inflated with a time zone information preserved - MSSQL Top limit-emulation improvements (GROUP BY and subquery support) - ResultSetColumn will not lose the joins infered from a parent resultset prefetch 0.08102 2009-04-30 08:29:00 (UTC) - Fixed two subtle bugs when using columns or select/as paired with a join (limited prefetch) - Fixed breakage of cdbi tests (RT#45551) - Some POD improvements 0.08101 2009-04-27 09:45:00 (UTC) - Fix +select, +as, +columns and include_columns being stripped by $rs->get_column - move load_optional_class from DBIx::Class::Componentised to Class::C3::Componentised, bump dependency - register_extra_source() now *really* fixed wrt subclassing - Added missing POD descriptions (RT#45195) - Fix insert() to not store_column() every present object column - Multiple Makefile.PL fixes 0.08100 2009-04-19 11:39:35 (UTC) - Todo out the register_extra_source test until after shipping 0.08099_08 2009-03-30 00:00:00 (UTC) - Fixed taint mode with load_namespaces - Putting IC::DateTime locale, timezone or floating_tz_ok attributes into extra => {} has been deprecated. The new way is to put these things directly into the columns definition - Switched MI code to MRO::Compat - Document db-side default_value caveats - Search_like() now warns to indicate deprecation in 0.09. - TxnScopeGuard left experimental state 0.08099_07 2009-02-27 02:00:00 (UTC) - multi-create using find_or_create rather than _related for post-insert - fix get_inflated_columns to check has_column_loaded - Add DBIC_MULTICREATE_DEBUG env var (undocumented, quasi-internal) - Fix up multi-create to: - correctly propagate columns loaded during multi-insert of rels - not try and insert things tagged on via new_related unless required - Possible to set locale in IC::DateTime extra => {} config - Calling the accessor of a belongs_to when the foreign_key was NULL and the row was not stored would unexpectedly fail - Split sql statements for deploy only if SQLT::Producer returned a scalar containing all statements to be executed - Add as_query() for ResultSet and ResultSetColumn. This makes subqueries possible. See the Cookbook for details. - Massive rewrite of Ordered to properly handle position constraints and to make it more matpath-friendly - deploy_statements called ddl_filename with the $version and $dir arguments in the wrong order. - columns/+columns attributes now support { as => select } hahsrefs - support for views both in DBIC and via deploy() in SQLT 0.08099_06 2009-01-23 07:30:00 (UTC) - Allow a scalarref to be supplied to the 'from' resultset attribute - Classes submitted as result_class for a resultsource are now automatically loaded via ensure_loaded() - 'result_class' resultset attribute, identical to result_class() - add 'undef_on_null_fk' option for relationship accessors of type 'single'. This will prevent DBIC from querying the database if one or more of the key columns IS NULL - for 'belongs_to' rels, 'undef_on_null_fk' defaults to true. - fixed scope unaware last_insert_id fetching for MSSQL (http://msdn.microsoft.com/en-us/library/ms190315.aspx) - an sqlt_deploy_hook can now be shared between result sources using a configurable callback trigger - new order_by => { -desc => 'colname' } syntax supported - PG array datatype supported - insert should use store_column, not set_column to avoid marking clean just-stored values as dirty. New test for this - regression test for source_name 0.08099_05 2008-10-30 21:30:00 (UTC) - Rewrite of Storage::DBI::connect_info(), extended with an additional argument format type - InflateColumn::DateTime: add warning about floating timezone - InflateColumn::DateTime: possible to enforce/skip inflation - delete throws exception if passed arguments to prevent drunken mishaps. - Fix storage to copy scalar conds before regexping to avoid trying to modify a constant in odd edge cases - Related resultsets on uninserted objects are now empty - Fixed up related resultsets and multi-create - Fixed superfluous connection in ODBC::_rebless - Fixed undef PK for first insert in ODBC::Microsoft_SQL_Server - Added virtual method to Versioned so a user can create upgrade path across multiple versions (jgoulah) - Better (and marginally faster) implementation of the HashRefInflator hash construction algorithm - Allow explicit specification of ON DELETE/ON UPDATE constraints when using the SQLT parser 0.08099_04 2008-07-24 01:00:00 - Functionality to storage to enable a sub to be run without FK checks - Fixed $schema->clone bug which caused clone and source to share internal hash refs - Added register_extra_source methods for additional sources - Added datetime_undef_if_invalid for InflateColumn::DateTime to return undef on invalid date/time values - Added search_related_rs method to ResultSet - add a make_column_dirty method to Row to force updates - throw a clear exception when user tries multi-has_many prefetch - SQLT parser prefixes index names with ${table}_idx_ to avoid clashes - mark ResultSetManager as deprecated and undocument it - pod fix (RT #32988) - add Test::Exception to test requirements (RT #34256) - make ash's build_requires/META.yml fixes work better - is_deferable support on relations used by the SQL::Translator parser - Refactored DBIx::Class::Schema::Versioned - Syntax errors from resultset components are now reported correctly - sqltargs respected correctly in deploy et al. - Added support for savepoints, and using them automatically in nested transactions if auto_savepoint is set in connect_info. - Changed naming scheme for constraints and keys in the sqlt parser; names should now be consistent and collision-free. - Improve handling of explicit key attr in ResultSet::find - Add warnings for non-unique ResultSet::find queries - Changed Storage::DBI::Replication to Storage::DBI::Replicated and refactored support. - By default now deploy/diff et al. will ignore constraint and index names - Add ResultSet::_is_deterministic_value, make new_result filter the values passed to new to drop values that would generate invalid SQL. - Use Sub::Name to name closures before installing them. Fixes incompatibility with Moose method modifiers on generated methods. 0.08010 2008-03-01 10:30 - Fix t/94versioning.t so it passes with latest SQL::Translator 0.08009 2008-01-20 13:30 - Made search_rs smarter about when to preserve the cache to fix mm prefetch usage - Added Storage::DBI subclass for MSSQL over ODBC. - Added freeze, thaw and dclone methods to Schema so that thawed objects will get re-attached to the schema. - Moved dbicadmin to JSON::Any wrapped JSON.pm for a sane API (also fixes RT #32393) - introduced DBIx::Class::set_inflated_columns - DBIx::Class::Row::copy uses set_inflated_columns 0.08008 2007-11-16 14:30:00 - Fixed join merging bug (test from Zby) - When adding relationships, it will throw an exception if you get the foreign and self parts the wrong way round in the condition - ResultSetColumn::func() now returns all results if called in list context; this makes things like func('DISTINCT') work as expected - Many-to-many relationships now warn if the utility methods would clash - InflateColumn::DateTime now accepts an extra parameter of timezone to set timezone on the DT object (thanks Sergio Salvi) - Added sqlt_deploy_hook to result classes so that indexes can be added. - Added startup checks to warn loudly if we appear to be running on RedHat systems from perl-5.8.8-10 and up that have the bless/overload patch applied (badly) which causes 2x -> 100x performance penalty. (Jon Schutz) - ResultSource::reverse_relationship_info can distinguish between sources using the same table - Row::insert will now not fall over if passed duplicate related objects - Row::copy will not fall over if you have two relationships to the same source with a unique constraint on it 0.08007 2007-09-04 19:36:00 - patch for Oracle datetime inflation (abram@arin.net) - added on_disconnect_do - on_connect_do and on_disconnect_do take coderefs and arrayrefs 0.08006 2007-08-12 15:12:00 - Move to using Class::C3::Componentised - Remove warn statement from DBIx::Class::Row 0.08005 2007-08-06 - add timestamp fix re rt.cpan 26978 - no test yet but change clearly should cause no regressions - provide alias for related_resultset via local() so it's set correctly at resultset construction time (fixes RestrictWithObject) - fixes bind params in debug statements (original test from abraxxa) - fixed storage->connected fork bug (test and fix from Radu Greab) - add 1; to AccessorGroup.pm for stuff that still uses it - refactor Statistics to create debugging filehandle to fix bug with closed STDERR, update docs and modify Versioned to use Statistics (original fix from diz) 0.08004 2007-08-06 19:00:00 - fix storage connect code to not trigger bug via auto-viv (test from aherzog) - fixup cursor_class to be an 'inherited' attr for per-package defaults - add default_resultset_attributes entry to Schema - optimisation in DBI::Cursor to check software_limit before falling back to base Cursor->all - fix bug with create_multi not inserting non-storage objects (test and fix from davinchi) - DBIx::Class::AccessorGroup made empty subclass of Class::Accessor::Grouped - fixed an ugly bug regarding $dbh->{AutoCommit} and transactions - ensure_class_loaded handles non-classnames better. - non-destructive hashref handling for connect_info options - count no longer returns negative values after slice (report and test from JOHANL) - rebless before building datetime_parser (patch from mattlaw / Matt Lawrence) 0.08003 2007-07-14 18:01:00 - improved populate bulk_insert mode - fixed up multi_create to be more intelligent about PK<->PK rels - fix many-many rels to not use set_columns - Unmarked deploy as experimental since it isn't anymore - Removed Cwd dep since it's not required and causes problems with debian packaging - Patch to fix ? in data for NoBindVars (from Tom Hukins) - Restored mk_classaccessor method for compatibility - Fixed group_by problem with oracle limit syntax - Fixed attr merging problem - Fixed $rs->get_column w/prefetch problem 0.08002 2007-06-20 06:10:00 - add scope guard to Row::insert to ensure rollback gets called - more heuristics in Row::insert to try and get insert order right - eliminate vestigial code in PK::Auto - more expressive DBI errors - soften errors during deploy - ensure_connected before txn_begin to catch stomping on transaction depth - new method "rethrow" for our exception objects 0.08001 2007-06-17 21:21:02 - Cleaned up on_connect handling for versioned - removed DateTime use line from multi_create test - hid DBIx::ContextualFetch::st override in CDBICompat 0.08000 2007-06-17 18:06:12 - Fixed DBIC_TRACE debug filehandles to set ->autoflush(1) - Fixed circular dbh<->storage in HandleError with weakref 0.07999_06 2007-06-13 04:45:00 - tweaked Row.pm to make last_insert_id take multiple column names - Fixed DBIC::Storage::DBI::Cursor::DESTROY bug that was messing up exception handling - added exception objects to eliminate stacktrace/Carp::Clan output redundancy - setting $ENV{DBIC_TRACE} defaults stacktrace on. - added stacktrace option to Schema, makes throw_exception use "confess" - make database handles use throw_exception by default - make database handles supplied by a coderef use our standard HandleError/RaiseError/PrintError - add "unsafe" connect_info option to suppress our setting of HandleError/RaiseError/PrintError - removed several redundant evals whose sole purpose was to provide extra debugging info - fixed page-within-page bug (reported by nilsonsfj) - fixed rare bug when database is disconnected inbetween "$dbh->prepare_cached" and "$sth->execute" 0.07999_05 2007-06-07 23:00:00 - Made source_name rw in ResultSource - Fixed up SQL::Translator test/runtime dependencies - Fixed t/60core.t in the absence of DateTime::Format::MySQL - Test cleanup and doc note (ribasushi) 0.07999_04 2007-06-01 14:04:00 - pulled in Replication storage from branch and marked EXPERIMENTAL - fixup to ensure join always LEFT after first LEFT join depthwise - converted the vendor tests to use schema objects intead of schema classes, made cleaned more reliable with END blocks - versioning support via DBIx::Class::Schema::Versioned - find/next now return undef rather than () on fail from Bernhard Graf - rewritten collapse_result to fix prefetch - moved populate to resultset - added support for creation of related rows via insert and populate - transaction support more robust now in the face of varying AutoCommit and manual txn_begin usage - unbreak back-compat for Row/ResultSet->new_result - Added Oracle/WhereJoins.pm for Oracle >= 8 to support Oracle <= 9i, and provide Oracle with a better join method for later versions. (I use the term better loosely.) - The SQL::T parser class now respects a relationship attribute of is_foreign_key_constrain to allow explicit control over wether or not a foreign constraint is needed - resultset_class/result_class now (again) auto loads the specified class; requires Class::Accessor::Grouped 0.05002+ - added get_inflated_columns to Row - %colinfo accessor and inflate_column now work together - More documentation updates - Error messages from ->deploy made more informative - connect_info will now always return the arguments it was originally given - A few small efficiency improvements for load_classes and compose_namespace 0.07006 2007-04-17 23:18:00 - Lots of documentation updates - deploy now takes an optional 'source_names' parameter (dec) - Quoting for for columns_info_for - RT#25683 fixed (multiple open sths on DBD::Sybase) - CDBI compat infers has_many from has_a (Schwern) - Fix ddl_filename transformation (Carl Vincent) 0.07999_02 2007-01-25 20:11:00 - add support for binding BYTEA and similar parameters (w/Pg impl) - add support to Ordered for multiple ordering columns - mark DB.pm and compose_connection as deprecated - switch tests to compose_namespace - ResultClass::HashRefInflator added - Changed row and rs objects to not have direct handle to a source, instead a (schema,source_name) tuple of type ResultSourceHandle 0.07005 2007-01-10 18:36:00 - fixup changes file - remove erroneous .orig files - oops 0.07004 2007-01-09 21:52:00 - fix find_related-based queries to correctly grep the unique key - fix InflateColumn to inflate/deflate all refs but scalar refs 0.07003 2006-11-16 11:52:00 - fix for rt.cpan.org #22740 (use $^X instead of hardcoded "perl") - Tweaks to resultset to allow inflate_result to return an array - Fix UTF8Columns to work under Perl <= 5.8.0 - Fix up new_result in ResultSet to avoid alias-related bugs - Made new/update/find handle 'single' rel accessor correctly - Fix NoBindVars to be safer and handle non-true bind values - Don't blow up if columns_info_for returns useless results - Documentation updates 0.07999_01 2006-10-05 21:00:00 - add connect_info option "disable_statement_caching" - create insert_bulk using execute_array, populate uses it - added DBIx::Class::Schema::load_namespaces, alternative to load_classes - added source_info method for source-level metadata (kinda like column_info) - Some of ::Storage::DBI's code/docs moved to ::Storage - DBIx::Class::Schema::txn_do code moved to ::Storage - Storage::DBI now uses exceptions instead of ->ping/->{Active} checks - Storage exceptions are thrown via the schema class's throw_exception - DBIx::Class::Schema::throw_exception's behavior can be modified via ->exception_action - columns_info_for is deprecated, and no longer runs automatically. You can make it work like before via __PACKAGE__->column_info_from_storage(1) for now - Replaced DBIx::Class::AccessorGroup and Class::Data::Accessor with Class::Accessor::Grouped. Only user noticible change is to table_class on ResultSourceProxy::Table (i.e. table objects in schemas) and, resultset_class and result_class in ResultSource. These accessors no longer automatically require the classes when set. 0.07002 2006-09-14 21:17:32 - fix quote tests for recent versions of SQLite - added reference implementation of Manual::Example - backported column_info_from_storage accessor from -current, but - fixed inflate_datetime.t tests/stringify under older Test::More - minor fixes for many-to-many relationship helpers - cleared up Relationship docs, and fixed some typos - use ref instead of eval to check limit syntax (to avoid issues with Devel::StackTrace) - update ResultSet::_cond_for_update_delete to handle more complicated queries - bugfix to Oracle columns_info_for - remove_columns now deletes columns from _columns 0.07001 2006-08-18 19:55:00 - add directory argument to deploy() - support default aliases in many_to_many accessors. - support for relationship attributes in many_to_many accessors. - stop search_rs being destructive to attrs - better error reporting when loading components - UTF8Columns changed to use "utf8" instead of "Encode" - restore automatic aliasing in ResultSet::find() on nonunique queries - allow aliases in ResultSet::find() queries (in cases of relationships with prefetch) - pass $attrs to find from update_or_create so a specific key can be provided - remove anonymous blesses to avoid major speed hit on Fedora Core 5's Perl and possibly others; for more information see: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=196836 - fix a pathological prefetch case - table case fix for Oracle in columns_info_for - stopped search_rs deleting attributes from passed hash 0.07000 2006-07-23 02:30:00 - supress warnings for possibly non-unique queries, since _is_unique_query doesn't infer properly in all cases - skip empty queries to eliminate spurious warnings on ->deploy - fixups to ORDER BY, tweaks to deepen some copies in ResultSet - fixup for RowNum limit syntax with functions 0.06999_07 2006-07-12 20:58:05 - fix issue with from attr copying introduced in last release 0.06999_06 2006-07-12 17:16:55 - documentation for new storage options, fix S::A::L hanging on to $dbh - substantial refactor of search_related code to fix alias numbering - don't generate partial unique keys in ResultSet::find() when a table has more than one unique constraint which share a column and only one is satisfied - cleanup UTF8Columns and make more efficient - rename DBIX_CLASS_STORAGE_DBI_DEBUG to DBIC_TRACE (with compat) - rename _parent_rs to _parent_source in ResultSet - new FAQ.pod! 0.06999_05 2006-07-04 14:40:01 - fix issue with incorrect $rs->{attrs}{alias} - fix subclassing issue with source_name - tweak quotes test to output text on failure - fix Schema->txn_do to not fail as a classmethod 0.06999_04 2006-06-29 20:18:47 - disable cdbi-t/02-Film.t warning tests under AS perl - fixups to MySQL tests (aka "work round mysql being retarded") - compat tweaks for Storage debug logging 0.06999_03 2006-06-26 21:04:44 - various documentation improvements - fixes to pass test suite on Windows - rewrote and cleaned up SQL::Translator tests - changed relationship helpers to only call ensure_class_loaded when the join condition is inferred - rewrote many_to_many implementation, now provides helpers for adding and deleting objects without dealing with the link table - reworked InflateColumn implementation to lazily deflate where possible; now handles passing an inflated object to new() - changed join merging to not create a rel_2 alias when adding a join that already exists in a parent resultset - Storage::DBI::deployment_statements now calls ensure_connected if it isn't passed a type - fixed Componentized::ensure_class_loaded - InflateColumn::DateTime supports date as well as datetime - split Storage::DBI::MSSQL into MSSQL and Sybase::MSSQL - fixed wrong debugging hook call in Storage::DBI - set connect_info properly before setting any ->sql_maker things 0.06999_02 2006-06-09 23:58:33 - Fixed up POD::Coverage tests, filled in some POD holes - Added a warning for incorrect component order in load_components - Fixed resultset bugs to do with related searches - added code and tests for Componentized::ensure_class_found and load_optional_class - NoBindVars + Sybase + MSSQL stuff - only rebless S::DBI if it is still S::DBI and not a subclass - Added `use' statement for DBD::Pg in Storage::DBI::Pg - stopped test relying on order of unordered search - bugfix for join-types in nested joins using the from attribute - obscure prefetch problem fixed - tightened up deep search_related - Fixed 'DBIx/Class/DB.pm did not return a true value' error - Revert change to test for deprecated find usage and swallow warnings - Slight wording change to new_related() POD - new specific test for connect_info coderefs - POD clarification and content bugfixing + a few code formatting fixes - POD::Coverage additions - fixed debugfh - Fix column_info stomping 0.06999_01 2006-05-28 17:19:30 - add automatic naming of unique constraints - marked DB.pm as deprecated and noted it will be removed by 1.0 - add ResultSetColumn - refactor ResultSet code to resolve attrs as late as possible - merge prefetch attrs into join attrs - add +select and +as attributes to ResultSet - added InflateColumn::DateTime component - refactor debugging to allow for profiling using Storage::Statistics - removed Data::UUID from deps, made other optionals required - modified SQLT parser to skip dupe table names - added remove_column(s) to ResultSource/ResultSourceProxy - added add_column alias to ResultSourceProxy - added source_name to ResultSource - load_classes now uses source_name and sets it if necessary - add update_or_create_related to Relationship::Base - add find_or_new to ResultSet/ResultSetProxy and find_or_new_related to Relationship::Base - add accessors for unique constraint names and coulums to ResultSource/ResultSourceProxy - rework ResultSet::find() to search unique constraints - CDBICompat: modify retrieve to fix column casing when ColumnCase is loaded - CDBICompat: override find_or_create to fix column casing when ColumnCase is loaded - reorganized and simplified tests - added Ordered - added the ability to set on_connect_do and the various sql_maker options as part of Storage::DBI's connect_info. 0.06003 2006-05-19 15:37:30 - make find_or_create_related check defined() instead of truth - don't unnecessarily fetch rels for cascade_update - don't set_columns explicitly in update_or_create; instead use update($hashref) so InflateColumn works - fix for has_many prefetch with 0 related rows - make limit error if rows => 0 - added memory cycle tests and a long-needed weaken call 0.06002 2006-04-20 00:42:41 - fix set_from_related to accept undef - fix to Dumper-induced hash iteration bug - fix to copy() with non-composed resultsource - fix to ->search without args to clone rs but maintain cache - grab $self->dbh once per function in Storage::DBI - nuke ResultSource caching of ->resultset for consistency reasons - fix for -and conditions when updating or deleting on a ResultSet 0.06001 - Added fix for quoting with single table - Substantial fixes and improvements to deploy - slice now uses search directly - fixes for update() on resultset - bugfix to Cursor to avoid error during DESTROY - transaction DBI operations now in debug trace output 0.06000 2006-03-25 18:03:46 - Lots of documentation improvements - Minor tweak to related_resultset to prevent it storing a searched rs - Fixup to columns_info_for when database returns type(size) - Made do_txn respect void context (on the off-chance somebody cares) - Fix exception text for nonexistent key in ResultSet::find() 0.05999_04 2006-03-18 19:20:49 - Fix for delete on full-table resultsets - Removed caching on count() and added _count for pager() - ->connection does nothing if ->storage defined and no args (and hence ->connect acts like ->clone under the same conditions) - Storage::DBI throws better exception if no connect info - columns_info_for made more robust / informative - ithreads compat added, fork compat improved - weaken result_source in all resultsets - Make pg seq extractor less sensitive. 0.05999_03 2006-03-14 01:58:10 - has_many prefetch fixes - deploy now adds drop statements before creates - deploy outputs debugging statements if DBIX_CLASS_STORAGE_DBI_DEBUG is set 0.05999_02 2006-03-10 13:31:37 - remove test dep on YAML - additional speed tweaks for C3 - allow scalarefs passed to order_by to go straight through to SQL - renamed insert_or_update to update_or_insert (with compat alias) - hidden lots of packages from the PAUSE Indexer 0.05999_01 2006-03-09 18:31:44 - renamed cols attribute to columns (cols still supported) - added has_column_loaded to Row - Storage::DBI connect_info supports coderef returning dbh as 1st arg - load_components() doesn't prepend base when comp. prefixed with + - $schema->deploy - HAVING support - prefetch for has_many - cache attr for resultsets - PK::Auto::* no longer required since Storage::DBI::* handle auto-inc - minor tweak to tests for join edge case - added cascade_copy relationship attribute (sponsored by Airspace Software, http://www.airspace.co.uk/) - clean up set_from_related - made copy() automatically null out auto-inc columns - added txn_do() method to Schema, which allows a coderef to be executed atomically 0.05007 2006-02-24 00:59:00 - tweak to Componentised for Class::C3 0.11 - fixes for auto-inc under MSSQL 0.05006 2006-02-17 15:32:40 - storage fix for fork() and workaround for Apache::DBI - made update(\%hash) work on row as well as rs - another fix for count with scalar group_by - remove dependency on Module::Find in 40resultsetmanager.t (RT #17598) 0.05005 2006-02-13 21:24:51 - remove build dependency on version.pm 0.05004 2006-02-13 20:59:00 - allow specification of related columns via cols attr when primary keys of the related table are not fetched - fix count for group_by as scalar - add horrific fix to make Oracle's retarded limit syntax work - remove Carp require - changed UUIDColumns to use new UUIDMaker classes for uuid creation using whatever module may be available 0.05003 2006-02-08 17:50:20 - add component_class accessors and use them for *_class - small fixes to Serialize and ResultSetManager - rollback on disconnect, and disconnect on DESTROY 0.05002 2006-02-06 12:12:03 - Added recommends for Class::Inspector - Added skip_all to t/40resultsetmanager.t if no Class::Inspector available 0.05001 2006-02-05 15:28:10 - debug output now prints NULL for undef params - multi-step prefetch along the same rel (e.g. for trees) now works - added multi-join (join => [ 'foo', 'foo' ]), aliases second to foo_2 - hack PK::Auto::Pg for "table" names referencing a schema - find() with attributes works - added experimental Serialize and ResultSetManager components - added code attribute recording to DBIx::Class - fix to find() for complex resultsets - added of $storage->debugcb(sub { ... }) - added $source->resultset_attributes accessor - added include_columns rs attr 0.05000 2006-02-01 16:48:30 - assorted doc fixes - remove ObjectCache, not yet working in 0.05 - let many_to_many rels have attrs - fix ID method in PK.pm to be saner for new internals - fix t/30dbicplain.t to use ::Schema instead of Catalyst::Model::DBIC::Plain 0.04999_06 2006-01-28 21:20:32 - fix Storage/DBI (tried to load deprecated ::Exception component) 0.04999_05 2006-01-28 20:13:52 - count will now work for grouped resultsets - added accessor => option to column_info to specify accessor name - added $schema->populate to load test data (similar to AR fixtures) - removed cdbi-t dependencies, only run tests if installed - Removed DBIx::Class::Exception - unified throw_exception stuff, using Carp::Clan - report query when sth generation fails. - multi-step prefetch! - inheritance fixes - test tweaks 0.04999_04 2006-01-24 21:48:21 - more documentation improvements - add columns_info_for for vendor-specific column info (Zbigniew Lukasiak) - add SQL::Translator::Producer for DBIx::Class table classes (Jess Robinson) - add unique constraint declaration (Daniel Westermann-Clark) - add new update_or_create method (Daniel Westermann-Clark) - rename ResultSetInstance class to ResultSetProxy, ResultSourceInstance to ResultSourceProxy, and TableInstance to ResultSourceProxy::Table - minor fixes to UUIDColumns - add debugfh method and ENV magic for tracing SQL (Nigel Metheringham) 0.04999_03 2006-01-20 06:05:27 - imported Jess Robinson's SQL::Translator::Parser::DBIx::Class - lots of internals cleanup to eliminate result_source_instance requirement - added register_column and register_relationship class APIs - made Storage::DBI use prepare_cached safely (thanks to Tim Bunce) - many documentation improvements (thanks guys!) - added ->connection, ->connect, ->register_source and ->clone schema methods - Use croak instead of die for user errors. 0.04999_02 2006-01-14 07:17:35 - Schema is now self-contained; no requirement for co-operation - add_relationship, relationships, relationship_info, has_relationship - relationship handling on ResultSource - all table handling now in Table.pm / ResultSource.pm - added GROUP BY and DISTINCT support - hacked around SQL::Abstract::Limit some more in DBIC::SQL::Abstract (this may have fixed complex quoting) - moved inflation to inflate_result in Row.pm - added $rs->search_related - split compose_namespace out of compose_connection in Schema - ResultSet now handles find - various *_related methods are now ->search_related->* - added new_result to ResultSet 0.04999_01 2005-12-27 03:33:42 - search and related methods moved to ResultSet - select and as added to ResultSet attrs - added DBIx::Class::Table and TableInstance for table-per-class - added DBIx::Class::ResultSetInstance which handles proxying search etc. as a superclass of DBIx::Class::DB - assorted test and code cleanup work 0.04001 2005-12-13 22:00:00 - Fix so set_inflated_column calls set_column - Syntax errors in relationship classes are now reported - Better error detection in set_primary_key and columns methods - Documentation improvements - Better transaction support with txn_* methods - belongs_to now works when $cond is a string - PK::Auto::Pg updated, only tries primary keys instead of all cols 0.04 2005-11-26 - Moved get_simple and set_simple into AccessorGroup - Made 'new' die if given invalid columns - Added has_column and column_info to Table.pm - Refactored away from direct use of _columns and _primaries - Switched from NEXT to Class::C3 0.03004 - Added an || '' to the CDBICompat stringify to avoid null warnings - Updated name section for manual pods 0.03003 2005-11-03 17:00:00 - POD fixes. - Changed use to require in Relationship/Base to avoid import. 0.03002 2005-10-20 22:35:00 - Minor bugfix to new (Row.pm) - Schema doesn't die if it can't load a class (Schema.pm) - New UUID columns plugin (UUIDColumns.pm) - Documentation improvements. 0.03001 2005-09-23 14:00:00 - Fixes to relationship helpers - IMPORTANT: prefetch/schema combination bug fix 0.03 2005-09-19 19:35:00 - Paging support - Join support on search - Prefetch support on search 0.02 2005-08-12 18:00:00 - Test fixes. - Performance improvements. - Oracle primary key support. - MS-SQL primary key support. - SQL::Abstract::Limit integration for database-agnostic limiting. 0.01 2005-08-08 17:10:00 - initial release CPAN-Changes-0.500005/corpus/dists/Module-Info.parsed000644 000000 000000 00000071335 14472651645 020206 0ustar00000000 000000 { "raw_preamble" => "", "releases" => [ { "date" => "2013-05-21T21:48:49Z", "entries" => [ { "line" => 2, "raw" => " * Replace Test::Soundex in tests with Class::Struct, since\n Text::Soundex will not be in core in Perl 5.19 and up.\n", "style" => "*", "text" => "Replace Test::Soundex in tests with Class::Struct, since Text::Soundex will not be in core in Perl 5.19 and up." }, { "line" => 4, "raw" => " * Replace ExtUtils::MY_Metafile with META_MERGE in Makefile.PL.\n\n", "style" => "*", "text" => "Replace ExtUtils::MY_Metafile with META_MERGE in Makefile.PL." } ], "line" => 1, "raw" => "0.34 Tue May 21 21:48:49 CEST 2013\n", "raw_date" => "Tue May 21 21:48:49 CEST 2013", "version" => "0.34" }, { "date" => "2013-02-09T13:12:22Z", "entries" => [ { "line" => 7, "raw" => " * Fix tests under Perl 5.6.2 when some core modules have been\n upgraded (patch by Andreas Koenig).\n\n", "style" => "*", "text" => "Fix tests under Perl 5.6.2 when some core modules have been upgraded (patch by Andreas Koenig)." } ], "line" => 6, "raw" => "0.33 Sat Feb 9 13:12:22 CET 2013\n", "raw_date" => "Sat Feb 9 13:12:22 CET 2013", "version" => "0.33" }, { "date" => "2010-09-08T23:15:13Z", "entries" => [ { "line" => 11, "raw" => " + Add archlib and privlib to the search path for core modules\n (patch by Jonas B. Nielsen).\n\n", "style" => "+", "text" => "Add archlib and privlib to the search path for core modules (patch by Jonas B. Nielsen)." } ], "line" => 10, "raw" => "0.32 Wed Sep 8 23:15:13 CEST 2010\n", "raw_date" => "Wed Sep 8 23:15:13 CEST 2010", "version" => "0.32" }, { "date" => "2010-04-12T23:53:53Z", "entries" => [ { "line" => 15, "raw" => " * Many test fixes.\n\n", "style" => "*", "text" => "Many test fixes." } ], "line" => 14, "raw" => "0.31_01 Mon Apr 12 23:53:53 CEST 2010\n", "raw_date" => "Mon Apr 12 23:53:53 CEST 2010", "version" => "0.31_01" }, { "date" => "2007-05-28T21:40:10Z", "entries" => [ { "line" => 18, "raw" => " * Fixed tests in presence of version.pm 0.72 or newer.\n", "style" => "*", "text" => "Fixed tests in presence of version.pm 0.72 or newer." }, { "line" => 19, "raw" => " - Added -h option to module_info.\n\n", "style" => "-", "text" => "Added -h option to module_info." } ], "line" => 17, "raw" => "0.31 Mon May 28 21:40:10 CEST 2007\n", "raw_date" => "Mon May 28 21:40:10 CEST 2007", "version" => "0.31" }, { "date" => "2005-12-20T20:17:09Z", "entries" => [ { "line" => 22, "raw" => " * Renamed the forked B::Utils to B::BUtils to avoid clashes\n until it is merged into the mainline.\n\n", "style" => "*", "text" => "Renamed the forked B::Utils to B::BUtils to avoid clashes until it is merged into the mainline." } ], "line" => 21, "raw" => "0.30 Tue Dec 20 20:17:09 CET 2005\n", "raw_date" => "Tue Dec 20 20:17:09 CET 2005", "version" => "0.30" }, { "date" => "2005-11-22T21:28:26Z", "entries" => [ { "line" => 26, "raw" => " * Fixed version() for complex expressions.\n", "style" => "*", "text" => "Fixed version() for complex expressions." }, { "line" => 27, "raw" => " - Corrected some POD errors in module_info.\n\n", "style" => "-", "text" => "Corrected some POD errors in module_info." } ], "line" => 25, "raw" => "0.29 Tue Nov 22 21:28:26 CET 2005\n", "raw_date" => "Tue Nov 22 21:28:26 CET 2005", "version" => "0.29" }, { "date" => "2005-07-10T21:48:19Z", "entries" => [ { "line" => 30, "raw" => " * Added support for version.pm (based upon a\n patch by John Peacock).\n", "style" => "*", "text" => "Added support for version.pm (based upon a patch by John Peacock)." }, { "line" => 32, "raw" => " * Fixed the safe() attribute to be per-object instead\n of global.\n\n", "style" => "*", "text" => "Fixed the safe() attribute to be per-object instead of global." } ], "line" => 29, "raw" => "0.28_50 Sun Jul 10 21:48:19 CEST 2005\n", "raw_date" => "Sun Jul 10 21:48:19 CEST 2005", "version" => "0.28_50" }, { "date" => "2005-04-17T17:10:33Z", "entries" => [ { "line" => 36, "raw" => " - Correct the attributions of the fixes in 0.27 (I swapped\n authors' names).\n", "style" => "-", "text" => "Correct the attributions of the fixes in 0.27 (I swapped authors' names)." }, { "line" => 38, "raw" => " * Added Module::Build support as an alternative to\n ExtUtils::MakeMaker.\n", "style" => "*", "text" => "Added Module::Build support as an alternative to ExtUtils::MakeMaker." }, { "line" => 40, "raw" => " * Added safe() option to forbid unsafe operations (currently\n executes version() code in a Safe compartment and forbids most\n other operations).\n", "style" => "*", "text" => "Added safe() option to forbid unsafe operations (currently executes version() code in a Safe compartment and forbids most other operations)." }, { "line" => 43, "raw" => " * Fixed compatibility down to Perl 5.004_04.\n\n", "style" => "*", "text" => "Fixed compatibility down to Perl 5.004_04." } ], "line" => 35, "raw" => "0.28 Sun Apr 17 17:10:33 CET 2005\n", "raw_date" => "Sun Apr 17 17:10:33 CET 2005", "version" => "0.28" }, { "date" => "2005-03-04T07:56:58Z", "entries" => [ { "line" => 46, "raw" => " - Added missing localization of \$_ in version().\n (thanks to Johan Lodin)\n", "style" => "-", "text" => "Added missing localization of \$_ in version(). (thanks to Johan Lodin)" }, { "line" => 48, "raw" => " - Fixed new_from_loaded() to return nothing when the module\n is in fact not loaded. (thanks to Boris Zentner)\n\n", "style" => "-", "text" => "Fixed new_from_loaded() to return nothing when the module is in fact not loaded. (thanks to Boris Zentner)" } ], "line" => 45, "raw" => "0.27 Fri Mar 4 07:56:58 CET 2005\n", "raw_date" => "Fri Mar 4 07:56:58 CET 2005", "version" => "0.27" }, { "date" => "2004-07-11T17:15:36Z", "entries" => [ { "line" => 52, "raw" => " - Fix tests for Perl 5.8.x and 5.6.x.\n\n", "style" => "-", "text" => "Fix tests for Perl 5.8.x and 5.6.x." } ], "line" => 51, "raw" => "0.26 Sun Jul 11 17:15:36 CEST 2004\n", "raw_date" => "Sun Jul 11 17:15:36 CEST 2004", "version" => "0.26" }, { "date" => "2004-07-11T16:36:11Z", "entries" => [ { "line" => 55, "raw" => " - Fix test to work around modules_required reporting\n different version numbers (0.25 vs. 0.250) under bleadperl.\n", "style" => "-", "text" => "Fix test to work around modules_required reporting different version numbers (0.25 vs. 0.250) under bleadperl." }, { "line" => 57, "raw" => " * Report subroutine/method calls and modules required\n inside anonymous subroutines.\n\n", "style" => "*", "text" => "Report subroutine/method calls and modules required inside anonymous subroutines." } ], "line" => 54, "raw" => "0.25 Sun Jul 11 16:36:11 CEST 2004\n", "raw_date" => "Sun Jul 11 16:36:11 CEST 2004", "version" => "0.25" }, { "date" => "2003-10-01T11:45:45Z", "entries" => [ { "line" => 61, "raw" => " - Fixed version reported by modules_required for bleadperl.\n\n", "style" => "-", "text" => "Fixed version reported by modules_required for bleadperl." } ], "line" => 60, "raw" => "0.24 Wed Oct 1 11:45:45 CEST 2003\n", "raw_date" => "Wed Oct 1 11:45:45 CEST 2003", "version" => "0.24" }, { "date" => "2003-09-04T17:44:52Z", "entries" => [ { "line" => 64, "raw" => " - Fixes for modules other than the one being examined\n loaded from paths containing spaces.\n\n", "style" => "-", "text" => "Fixes for modules other than the one being examined loaded from paths containing spaces." } ], "line" => 63, "raw" => "0.23 Thu Sep 4 17:44:52 CEST 2003\n", "raw_date" => "Thu Sep 4 17:44:52 CEST 2003", "version" => "0.23" }, { "date" => "2003-08-18T14:44:23Z", "entries" => [ { "line" => 68, "raw" => " * Fixed reporting of static method calls in Perl 5.8.1 RC4\n", "style" => "*", "text" => "Fixed reporting of static method calls in Perl 5.8.1 RC4" }, { "line" => 69, "raw" => " - Fixed reporting of module versions in Perl 5.8.1 RC4 when\n \"use Foo 1.2.3;\" is used\n\n", "style" => "-", "text" => "Fixed reporting of module versions in Perl 5.8.1 RC4 when \"use Foo 1.2.3;\" is used" } ], "line" => 67, "raw" => "0.22 Mon Aug 18 14:44:23 CEST 2003\n", "raw_date" => "Mon Aug 18 14:44:23 CEST 2003", "version" => "0.22" }, { "date" => "2003-08-15T18:48:53Z", "entries" => [ { "line" => 73, "raw" => " - Added licensing information to Module::Info POD\n", "style" => "-", "text" => "Added licensing information to Module::Info POD" }, { "line" => 74, "raw" => " * Added modules_required(). Original patch by Martyn J. Pearce,\n adapted by me (Mattia Barbon)\n\n", "style" => "*", "text" => "Added modules_required(). Original patch by Martyn J. Pearce, adapted by me (Mattia Barbon)" } ], "line" => 72, "raw" => "0.21 Fri Aug 15 18:48:53 CEST 2003\n", "raw_date" => "Fri Aug 15 18:48:53 CEST 2003", "version" => "0.21" }, { "date" => "2003-05-22T10:30:31Z", "entries" => [ { "line" => 78, "raw" => " - Fixed a warning in module_info (thanks to Nathan Torkington)\n", "style" => "-", "text" => "Fixed a warning in module_info (thanks to Nathan Torkington)" }, { "line" => 79, "raw" => " - Corrected number of skipped tests for Perl versions earlier\n than 5.6.1 (thanks to Mike Fragassi)\n", "style" => "-", "text" => "Corrected number of skipped tests for Perl versions earlier than 5.6.1 (thanks to Mike Fragassi)" }, { "line" => 81, "raw" => " - Fixed syntax error with Perl 5.004\n\n", "style" => "-", "text" => "Fixed syntax error with Perl 5.004" } ], "line" => 77, "raw" => "0.20 Thu May 22 10:30:31 CEST 2003\n", "raw_date" => "Thu May 22 10:30:31 CEST 2003", "version" => "0.20" }, { "date" => "2003-04-01T15:45:43Z", "entries" => [ { "line" => 84, "raw" => " * Added package_versions() (patch by Ken Williams)\n", "style" => "*", "text" => "Added package_versions() (patch by Ken Williams)" }, { "line" => 85, "raw" => " - Fixed handling of v-strings in use/require\n\n", "style" => "-", "text" => "Fixed handling of v-strings in use/require" } ], "line" => 83, "raw" => "0.19 Tue Apr 1 15:45:43 CEST 2003\n", "raw_date" => "Tue Apr 1 15:45:43 CEST 2003", "version" => "0.19" }, { "date" => "2003-03-08T17:44:24Z", "entries" => [ { "line" => 88, "raw" => " * Upgraded bundled B::Utils to 0.04 + Schwern patches\n", "style" => "*", "text" => "Upgraded bundled B::Utils to 0.04 + Schwern patches" }, { "line" => 89, "raw" => " - Fixed detection of require() statements in non-trivial BEGIN blocks\n\n", "style" => "-", "text" => "Fixed detection of require() statements in non-trivial BEGIN blocks" } ], "line" => 87, "raw" => "0.18 Sat Mar 8 17:44:24 CET 2003\n", "raw_date" => "Sat Mar 8 17:44:24 CET 2003", "version" => "0.18" }, { "date" => "2003-03-02T11:01:55Z", "entries" => [ { "line" => 92, "raw" => " + Added module_info\n", "style" => "+", "text" => "Added module_info" }, { "line" => 93, "raw" => " - Fixed a warning when enumerating packages\n\n", "style" => "-", "text" => "Fixed a warning when enumerating packages" } ], "line" => 91, "raw" => "0.17 Sun Mar 2 11:01:55 CET 2003\n", "raw_date" => "Sun Mar 2 11:01:55 CET 2003", "version" => "0.17" }, { "date" => "2003-01-01T21:21:31Z", "entries" => [ { "line" => 96, "raw" => " - Capture stderr output on MacOS Classic (thanks to Axel Rose for\n the patch)\n\n", "style" => "-", "text" => "Capture stderr output on MacOS Classic (thanks to Axel Rose for the patch)" } ], "line" => 95, "raw" => "0.16 Wed Jan 1 21:21:31 CET 2003\n", "raw_date" => "Wed Jan 1 21:21:31 CET 2003", "version" => "0.16" }, { "date" => "2002-12-23T15:08:14Z", "entries" => [ { "line" => 100, "raw" => " * Added die_on_compilation_error() method.\n", "style" => "*", "text" => "Added die_on_compilation_error() method." }, { "line" => 101, "raw" => " * MacOS classic: fixed methods requiring loading.\n\n", "style" => "*", "text" => "MacOS classic: fixed methods requiring loading." } ], "line" => 99, "raw" => "0.15 Mon Dec 23 15:08:14 CET 2002\n", "raw_date" => "Mon Dec 23 15:08:14 CET 2002", "version" => "0.15" }, { "date" => "2002-12-08T11:42:11Z", "entries" => [ { "line" => 104, "raw" => " - Don't show modules loaded via \$ENV{PERL5OPT}\n", "style" => "-", "text" => "Don't show modules loaded via \$ENV{PERL5OPT}" }, { "line" => 105, "raw" => " - Fixed the case where an op may be NULL when searching for require\n\n", "style" => "-", "text" => "Fixed the case where an op may be NULL when searching for require" } ], "line" => 103, "raw" => "0.14 Sun Dec 8 11:42:11 CET 2002\n", "raw_date" => "Sun Dec 8 11:42:11 CET 2002", "version" => "0.14" }, { "date" => "2002-12-07T10:29:42Z", "entries" => [ { "line" => 108, "raw" => " - pfunc can now distinguish between class and object methods\n", "style" => "-", "text" => "pfunc can now distinguish between class and object methods" }, { "line" => 109, "raw" => " - B::Utils no longer loading Exporter to avoid loading a bunch of\n modules\n", "style" => "-", "text" => "B::Utils no longer loading Exporter to avoid loading a bunch of modules" }, { "line" => 111, "raw" => " - B::Utils's fake carp/croak were broken\n", "style" => "-", "text" => "B::Utils's fake carp/croak were broken" }, { "line" => 112, "raw" => " - B::Utils::opgrep() was not finding ops properly\n", "style" => "-", "text" => "B::Utils::opgrep() was not finding ops properly" }, { "line" => 113, "raw" => " - Test made more polite for systems who's path_sep is not :\n", "style" => "-", "text" => "Test made more polite for systems who's path_sep is not :" }, { "line" => 114, "raw" => " - Fixing case where an op filter may encounter a NULL op when\n checking for entersubs\n", "style" => "-", "text" => "Fixing case where an op filter may encounter a NULL op when checking for entersubs" }, { "line" => 116, "raw" => " - Quote filename in the call to B::Module::Info, allows\n using directories with spaces\n", "style" => "-", "text" => "Quote filename in the call to B::Module::Info, allows using directories with spaces" }, { "line" => 118, "raw" => " - Fixed the case where a module does not have any BEGIN blocks\n", "style" => "-", "text" => "Fixed the case where a module does not have any BEGIN blocks" }, { "line" => 119, "raw" => " * Fixed non-bareword require in a BEGIN block\n", "style" => "*", "text" => "Fixed non-bareword require in a BEGIN block" }, { "line" => 120, "raw" => " * Fixed require \$foo\n", "style" => "*", "text" => "Fixed require \$foo" }, { "line" => 121, "raw" => " * Fixed BEGIN blocks not containing a require\n", "style" => "*", "text" => "Fixed BEGIN blocks not containing a require" }, { "line" => 122, "raw" => " * Scan subroutines when searching for required modules\n", "style" => "*", "text" => "Scan subroutines when searching for required modules" }, { "line" => 123, "raw" => " * Fixed various problems with perl 5.6.1 on Win32\n (probably due to ithreads)\n", "style" => "*", "text" => "Fixed various problems with perl 5.6.1 on Win32 (probably due to ithreads)" }, { "line" => 125, "raw" => " - Use IPC::Open3 under Windows 95/98/ME, since 2>&1 does not work\n\n", "style" => "-", "text" => "Use IPC::Open3 under Windows 95/98/ME, since 2>&1 does not work" } ], "line" => 107, "raw" => "0.13 Sat Dec 7 10:29:42 CET 2002\n", "raw_date" => "Sat Dec 7 10:29:42 CET 2002", "version" => "0.13" }, { "date" => "2002-02-02T19:41:01Z", "entries" => [ { "line" => 128, "raw" => " * Added pfunc\n", "style" => "*", "text" => "Added pfunc" }, { "line" => 129, "raw" => " - Now tested back to 5.004\n", "style" => "-", "text" => "Now tested back to 5.004" }, { "line" => 130, "raw" => " * Fixed a bug where certain modules were being ignored\n", "style" => "*", "text" => "Fixed a bug where certain modules were being ignored" }, { "line" => 131, "raw" => " - Fixed a bug in subroutines_called() with EXPR->method()\n", "style" => "-", "text" => "Fixed a bug in subroutines_called() with EXPR->method()" }, { "line" => 132, "raw" => " - subroutines_called() now reports properly on function calls\n with symbolic refs\n\n", "style" => "-", "text" => "subroutines_called() now reports properly on function calls with symbolic refs" } ], "line" => 127, "raw" => "0.12 Sat Feb 2 19:41:01 EST 2002\n", "raw_date" => "Sat Feb 2 19:41:01 EST 2002", "version" => "0.12" }, { "date" => "2002-02-02T16:54:23Z", "entries" => [ { "line" => 136, "raw" => " * Fixed B::Utils->kids\n", "style" => "*", "text" => "Fixed B::Utils->kids" }, { "line" => 137, "raw" => " * Added subroutines_called()\n", "style" => "*", "text" => "Added subroutines_called()" }, { "line" => 138, "raw" => " * Added superclasses()\n", "style" => "*", "text" => "Added superclasses()" }, { "line" => 139, "raw" => " * Added dynamic_method_calls()\n", "style" => "*", "text" => "Added dynamic_method_calls()" }, { "line" => 140, "raw" => " - Documented that it isn't just for modules.\n", "style" => "-", "text" => "Documented that it isn't just for modules." }, { "line" => 141, "raw" => " - name() can now be used to set\n", "style" => "-", "text" => "name() can now be used to set" }, { "line" => 142, "raw" => " - failures inside B::Module::Info now report their errors instead of\n failing silently\n", "style" => "-", "text" => "failures inside B::Module::Info now report their errors instead of failing silently" }, { "line" => 144, "raw" => " * Added a THANKS section.\n\n", "style" => "*", "text" => "Added a THANKS section." } ], "line" => 135, "raw" => "0.11 Sat Feb 2 16:54:23 EST 2002\n", "raw_date" => "Sat Feb 2 16:54:23 EST 2002", "version" => "0.11" }, { "date" => "2001-12-12T05:40:14Z", "entries" => [ { "line" => 147, "raw" => " * Windows filenames would cause subroutines() and modules_used() to \n choke. (Thanks to Alessandro Forghieri for the patch)\n\n", "style" => "*", "text" => "Windows filenames would cause subroutines() and modules_used() to choke. (Thanks to Alessandro Forghieri for the patch)" } ], "line" => 146, "raw" => "0.10 Wed Dec 12 05:40:14 EST 2001\n", "raw_date" => "Wed Dec 12 05:40:14 EST 2001", "version" => "0.10" }, { "date" => "2001-12-10T14:55:09Z", "entries" => [ { "line" => 151, "raw" => " - little bug in modules_used() and \"require 5.004\"\n\n", "style" => "-", "text" => "little bug in modules_used() and \"require 5.004\"" } ], "line" => 150, "raw" => "0.09 Mon Dec 10 14:55:09 EST 2001\n", "raw_date" => "Mon Dec 10 14:55:09 EST 2001", "version" => "0.09" }, { "date" => "2001-12-10T14:24:56Z", "entries" => [ { "line" => 154, "raw" => " * Implemented modules_used()\n", "style" => "*", "text" => "Implemented modules_used()" }, { "line" => 155, "raw" => " - Fixed a little bug in walkoptree_filtered() and \$B::Utils::file/line\n\n", "style" => "-", "text" => "Fixed a little bug in walkoptree_filtered() and \$B::Utils::file/line" } ], "line" => 153, "raw" => "0.08 Mon Dec 10 14:24:56 EST 2001\n", "raw_date" => "Mon Dec 10 14:24:56 EST 2001", "version" => "0.08" }, { "date" => "2001-12-10T11:09:40Z", "entries" => [ { "line" => 158, "raw" => " * Implemented subroutines(). Need help getting modules_used() done.\n", "style" => "*", "text" => "Implemented subroutines(). Need help getting modules_used() done." }, { "line" => 159, "raw" => " - Fixed up \$B::Utils::file/line handling in B::Utils.\n", "style" => "-", "text" => "Fixed up \$B::Utils::file/line handling in B::Utils." }, { "line" => 160, "raw" => " - Fixed a little bug in is_core involving cannonical paths.\n I forget who gave me the patch!\n \n", "style" => "-", "text" => "Fixed a little bug in is_core involving cannonical paths. I forget who gave me the patch!" } ], "line" => 157, "raw" => "0.07 Mon Dec 10 11:09:40 EST 2001\n", "raw_date" => "Mon Dec 10 11:09:40 EST 2001", "version" => "0.07" }, { "date" => "2001-11-24T20:45:15Z", "entries" => [ { "line" => 164, "raw" => " * Implemented packages_inside(). Need help getting the rest done.\n", "style" => "*", "text" => "Implemented packages_inside(). Need help getting the rest done." }, { "line" => 165, "raw" => " - Distributing a hacked up version of B::Utils until the main\n distribution gets fixed.\n\n", "style" => "-", "text" => "Distributing a hacked up version of B::Utils until the main distribution gets fixed." } ], "line" => 163, "raw" => "0.06 Sat Nov 24 20:45:15 EST 2001\n", "raw_date" => "Sat Nov 24 20:45:15 EST 2001", "version" => "0.06" }, { "date" => "2001-11-23T18:06:22Z", "entries" => [ { "line" => 169, "raw" => " - Rafael Garcia-Suarez noticed I forgot to deal with code refs in\n \@INC. The plan is to just skip them until someone notices.\n\n", "style" => "-", "text" => "Rafael Garcia-Suarez noticed I forgot to deal with code refs in \@INC. The plan is to just skip them until someone notices." } ], "line" => 168, "raw" => "0.05 Fri Nov 23 18:06:22 EST 2001\n", "raw_date" => "Fri Nov 23 18:06:22 EST 2001", "version" => "0.05" }, { "date" => "2001-11-23T14:49:21Z", "entries" => [ { "line" => 173, "raw" => " - Tassilo von Parseval noted warnings.pm isn't backwards compat.\n Replaced with \$^W.\n\n", "style" => "-", "text" => "Tassilo von Parseval noted warnings.pm isn't backwards compat. Replaced with \$^W." } ], "line" => 172, "raw" => "0.04 Fri Nov 23 14:49:21 EST 2001\n", "raw_date" => "Fri Nov 23 14:49:21 EST 2001", "version" => "0.04" }, { "date" => "2001-11-23T00:39:11Z", "entries" => [ { "line" => 177, "raw" => " - Testing all_installed()\n", "style" => "-", "text" => "Testing all_installed()" }, { "line" => 178, "raw" => " - Abe Timmerman fixed a little portability bug in the test.\n\n", "style" => "-", "text" => "Abe Timmerman fixed a little portability bug in the test." } ], "line" => 176, "raw" => "0.03 Fri Nov 23 00:39:11 EST 2001\n", "raw_date" => "Fri Nov 23 00:39:11 EST 2001", "version" => "0.03" }, { "date" => "2001-11-22T10:08:00Z", "entries" => [ { "line" => 181, "raw" => " * Added new_from_loaded()\n\n", "style" => "*", "text" => "Added new_from_loaded()" } ], "line" => 180, "raw" => "0.02 Thu Nov 22 10:08:00 EST 2001\n", "raw_date" => "Thu Nov 22 10:08:00 EST 2001", "version" => "0.02" }, { "date" => "2001-11-22T09:42:06Z", "entries" => [ { "line" => 184, "raw" => " * First working version\n", "style" => "*", "text" => "First working version" }, { "line" => 185, "raw" => " * From a discussion on p5p about ExtUtils::MM_Unix->parse_version\n http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2001-11/msg01263.html\n", "style" => "*", "text" => "From a discussion on p5p about ExtUtils::MM_Unix->parse_version http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2001-11/msg01263.html" } ], "line" => 183, "raw" => "0.01 Thu Nov 22 09:42:06 EST 2001\n", "raw_date" => "Thu Nov 22 09:42:06 EST 2001", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/Marpa-R2.changes000644 000000 000000 00000016016 14472651645 017536 0ustar00000000 000000 # Copyright 2013 Jeffrey Kegler # This file is part of Marpa::R2. Marpa::R2 is free software: you can # redistribute it and/or modify it under the terms of the GNU Lesser # General Public License as published by the Free Software Foundation, # either version 3 of the License, or (at your option) any later version. # # Marpa::R2 is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser # General Public License along with Marpa::R2. If not, see # http://www.gnu.org/licenses/. Revision history for Marpa::R2 2.078000 Wed Dec 25 08:38:49 PST 2013 * Allow Unicode in SLIF DSL source * New high-level ASF interface -- still alpha 2.076000 Wed Nov 20 16:22:56 PST 2013 * SLIF start rule is now optional. * SLIF character classes and strings can be case-insensitive. * ASF's documented and ready for trial, but only by adventurous users. 2.074000 Tue Oct 29 20:21:57 PDT 2013 * Minor Bug fixes in SLIF 2.072000 Wed Oct 23 17:26:49 PDT 2013 * Minor fix to error messages 2.070000 Sun Sep 8 17:52:17 PDT 2013 * Semantics docs updated for SLIF. It is now possible to become a Marpa::R2 expert without learning anything about its original interface, the NAIF. * Per-parse arg can now be specified explicitly as arg of $slr->value(). * Added semantics_package named argument to SLIF recognizer. * Fix bug: unproductive symbol in G0 sequence was causing SEGV instead of diagnostic. * Fix SLIF bug when using default action with null parse -- default action was not being called, it now is. 2.068000 Thu Aug 22 19:13:34 PDT 2013 * Better debugging and tracing for SLIF, and better documentation for it. * Fix bug discovered by Jean-Damien Durand -- discarding lexemes should take precedence over rejecting them. * Various documentaion fixes 2.066000 Fri Aug 2 17:34:47 PDT 2013 * Fix SLIF memory leak; fix for Perl 5.19.3 2.064000 Thu Jul 11 09:10:54 PDT 2013 * Fix bug in return value of lexeme_read(); Fix SEGV when terminal symbol is unused. 2.062000 Tue Jul 2 08:23:53 PDT 2013 * Added SLIF expected_terminals(), events() methods; Lexemes pauses can be now be named events, and as named events can be deactivated and reactivated 2.060000 Sat Jun 22 17:56:20 PDT 2013 * Fix bug in SLIF lexing 2.058000 Tue Jun 11 18:31:57 PDT 2013 * Added nulled and predicted events; * Added event deactivation and reactivation. 2.056000 Wed May 22 17:38:03 PDT 2013 * Rearrange POD to make SLIF primary interface * Added accessors to Scanless::R * Fix bug found by Jean-Damien: combining ambiguity and SLIF external scanning caused segment violation. 2.054000 Wed May 15 12:54:00 PDT 2013 * Added completion events 2.052000 * Add rank adverb, external scanning to SLIF 2.050000 Mon Mar 18 08:59:04 PDT 2013 * Optimizations 2.048000 Sun Mar 10 17:59:11 PDT 2013 * New options (blessed arrays) allow direct generation of AST's from SLIF * Optimization of valuator and SLIF 2.046000 Wed Feb 6 08:24:05 PST 2013 * Core logic of Scanless recognizer converted to C -- it is now more than 10 times faster. 2.044000 Mon Jan 28 19:42:06 PST 2013 * Fix 64-bit Windows failures. 2.042000 Tue Jan 22 17:15:50 PST 2013 * Scanless interface now supports Unicode. 2.040000 Sat Jan 5 08:33:52 PST 2013 * Fixed two cases in the Scanless interface. In one case, parse exhaustion at the G1 level was treated as an error. In the other, the G0 level assumed there would be at least one :discard rule, and had problems if there were none. 2.038000 Wed Jan 2 09:14:38 PST 2013 * The Scanless G0 rule order depended indirectly on the order of keys in a Perl hash. Fixed that. 2.036000 Tue Jan 1 00:54:36 PST 2013 * Documentation for the Stuifzand (BNF) and Scanless interfaces is complete. They are now in full release. 2.034000 Wed Dec 26 08:44:16 PST 2012 * Fix problem with negative rule ranks. * Stuifzand and Scanless interfaces are complete and tested. Only lack of documentation prevented them from being taken out of beta. 2.032000 Sun Dec 9 10:19:50 PST 2012 * Speed up precomputation of large grammars. 2.030000 Tue Dec 4 18:01:55 PST 2012 * Use Config::AutoConf to install on Sun's, OpenBSD. * Use legacy File::Path::mkpath() for portability 2.026000 Fri Nov 23 08:04:02 PST 2012 * Now installs in Windows, using Config::AutoConf 2.024000 Thu Nov 8 08:19:21 PST 2012 * Changing Marpa::R2, Libmarpa and Marpa::R2::Thin to full release. 2.022000 Fri Oct 19 18:27:16 PDT 2012 * Extensive revisions to internals of Marpa::R2::HTML; now requires only HTML::Parser, not HTML::PullParser; 'pseudoclass' argspec of descendants() method removed from documentation. * Make HTML::Parser a required dependency. 2.020000 Wed Sep 12 20:44:46 PDT 2012 * Make Marpa::R2::HTML a fully visible part of the distribution. * Documentation changes and fixes 2.018000 Wed Aug 22 20:46:44 PDT 2012 * Libmarpa docs now shipped with Marpa::R2 * Changed Marpa::R2 to beta. Libmarpa and Marpa::R2::Thin remain alpha. 2.016000 Sun Aug 5 17:20:13 PDT 2012 * Documentation fixes * Added marpa_r_expected_symbol_event_set() to Libmarpa * Added Marpa::R2::Recognizer::expected_symbol_event_set(), Marpa::R2::Recognizer::events(), and 'event_if_expected' recognizer named argument to Marpa::R2 2.014000 Sat Jul 21 18:18:52 PDT 2012 * Added $v->location() to thin interface * Added location step accessors to Libmarpa 2.012000 Sun Jul 15 17:43:59 PDT 2012 * Added marpa_o_rank() to Libmarpa interface * Added "if" arg to Marpa::R2::Thin::G->new() 2.010000 Thu Jul 5 20:44:07 PDT 2012 * Documented Libmarpa API and Marpa::R2::Thin. * Added context variables 2.008000 14-Jun-2012 10:42 * Documented $recce->progress() * Clean up libmarpa build 2.006000 8-Jun-2012 08:18 * Convert progress reports to C * Cleanup logic of valued/unvalued symbols * Cleanup ranking of symbols/rules * LHS of rule no longer implicitly used as action name. 2.004000 01-Jun-2012 08:20 * Fix action resolution issue; cleanup memory allocation. * Large bump in version number is to sync version numbers with libmarpa. 0.002000 26-May-2012 08:56 * First official ("indexed") release * Changes incompatible with Marpa::XS are described in Marpa::R2::Changes POD doc 0.001_000 Fri Oct 21 20:57:44 PDT 2011 * Marpa::R2 forked from Marpa::XS 0.019_002 # vim: set expandtab shiftwidth=4: CPAN-Changes-0.500005/corpus/dists/Data-Monad.parsed000644 000000 000000 00000004211 14472651645 017762 0ustar00000000 000000 { "preamble" => "Revision history for Perl extension Data::Monad", "raw_preamble" => "Revision history for Perl extension Data::Monad\n\n", "releases" => [ { "entries" => [], "line" => 3, "raw" => "{{\$NEXT}}\n\n", "version" => "{{\$NEXT}}" }, { "date" => "2013-09-08T00:23:32Z", "entries" => [ { "line" => 6, "raw" => " - Fix the bug which breaks Data::Monad::CondVar on perl 5.17.2\n\n", "style" => "-", "text" => "Fix the bug which breaks Data::Monad::CondVar on perl 5.17.2" } ], "line" => 5, "note" => "JST", "raw" => "0.05 2013-09-08 00:23:32 JST\n", "raw_date" => "2013-09-08 00:23:32", "version" => "0.05" }, { "entries" => [ { "line" => 9, "raw" => " - Fix a bug related perl contexts. \n\n", "style" => "-", "text" => "Fix a bug related perl contexts." } ], "line" => 8, "note" => "Sat, 13 Oct 2012", "raw" => "0.04 Sat, 13 Oct 2012 \n", "version" => "0.04" }, { "entries" => [ { "line" => 12, "raw" => " - Fix dependencies (reported by mschwern)\n\n", "style" => "-", "text" => "Fix dependencies (reported by mschwern)" } ], "line" => 11, "note" => "Tue, 26 Jun 2012", "raw" => "0.03 Tue, 26 Jun 2012 \n", "version" => "0.03" }, { "entries" => [ { "line" => 15, "raw" => " - Add dependencies\n\n", "style" => "-", "text" => "Add dependencies" } ], "line" => 14, "note" => "Sun, 23 Oct 2011", "raw" => "0.02 Sun, 23 Oct 2011\n", "version" => "0.02" }, { "entries" => [ { "line" => 18, "raw" => " - original version\n", "style" => "-", "text" => "original version" } ], "line" => 17, "note" => "Wed, 12 Oct 2011", "raw" => "0.01 Wed, 12 Oct 2011\n", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/Convert-BinHex.changes000644 000000 000000 00000002225 14472651645 021005 0ustar00000000 000000 Revision history for Perl module Convert::BinHex {{$NEXT}} - Fixed pod error in debinhex and added pod tests 1.122 2013-08-25 - Added unit tests for OO and CRC code 1.121 2013-08-23 - Changes file reformatted thanks to Neil Bowers (NEILB) - Moved to Dist::Zilla's OurPkgVersion for keeping $VERSIONs in sync 1.120 2013-08-22 - First CPAN release by Stephen Nelson (STEPHEN), who's now maintaining this module. 1.119 1997-06-27 - Changes unknown, but this was the last (and first?) CPAN release by ERYQ 1.118 unknown - Ready to go public (with Paul's version, patched for native Mac support)! - Warnings have been suppressed in a few places where undefined values appear. 1.115 unknown - Fixed another bug in comp2bin, related to the MARK falling on a boundary between inputs. Added testing code. 1.114 unknown - Added BIN-to-HEX conversion. Eh. It's a start. - Also, a lot of documentation additions and cleanups. - Some methods were also renamed. 1.103 unknown - Fixed bug in decompression (wasn't saving last character). - Fixed "NoComment" bug. 1.102 unknown - Initial release. CPAN-Changes-0.500005/corpus/dists/App-lookup.parsed000644 000000 000000 00000001002 14472651645 020077 0ustar00000000 000000 { "preamble" => "Revision history for App-lookup", "raw_preamble" => "Revision history for App-lookup\n\n", "releases" => [ { "entries" => [ { "line" => 4, "raw" => " First version, released on an unsuspecting world.\n\n", "style" => "", "text" => "First version, released on an unsuspecting world." } ], "line" => 3, "note" => "Date/time", "raw" => "0.01 Date/time\n", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/BreadBoard.parsed000644 000000 000000 00000146633 14472651645 020061 0ustar00000000 000000 { "preamble" => "Revision history for Bread-Board", "raw_preamble" => "Revision history for Bread-Board\n\n", "releases" => [ { "entries" => [], "line" => 3, "raw" => "{{\$NEXT}}\n\n", "version" => "{{\$NEXT}}" }, { "date" => "2014-02-02", "entries" => [ { "line" => 6, "raw" => " - fix deprecated use of Class::MOP::load_class (Caleb Cushing, #33)\n\n", "style" => "-", "text" => "fix deprecated use of Class::MOP::load_class (Caleb Cushing, #33)" } ], "line" => 5, "raw" => "0.30 2014-02-02\n", "raw_date" => "2014-02-02", "version" => "0.30" }, { "date" => "2013-11-21", "entries" => [ { "line" => 9, "raw" => " - Fix deprecated enum syntax\n\n", "style" => "-", "text" => "Fix deprecated enum syntax" } ], "line" => 8, "raw" => "0.29 2013-11-21\n", "raw_date" => "2013-11-21", "version" => "0.29" }, { "date" => "2013-08-30", "entries" => [ { "line" => 12, "raw" => " - Allow overriding of services and containers. This is useful when using\n the common pattern of \"sub BUILD { my \$self = shift; container \$self =>\n as { ... } }\" since the BUILD method in a subclass can modify existing\n services and containers that were defined in a superclass, rather than\n only being able to replace them (Florian Ragwitz, #26, #27).\n\n", "style" => "-", "text" => "Allow overriding of services and containers. This is useful when using the common pattern of \"sub BUILD { my \$self = shift; container \$self => as { ... } }\" since the BUILD method in a subclass can modify existing services and containers that were defined in a superclass, rather than only being able to replace them (Florian Ragwitz, #26, #27)." } ], "line" => 11, "raw" => "0.28 2013-08-30\n", "raw_date" => "2013-08-30", "version" => "0.28" }, { "date" => "2013-08-06", "entries" => [ { "line" => 19, "raw" => " - allow the 'container \$obj' sugar for parameterized containers (Florian\n Ragwitz, #25)\n\n", "style" => "-", "text" => "allow the 'container \$obj' sugar for parameterized containers (Florian Ragwitz, #25)" } ], "line" => 18, "raw" => "0.27 2013-08-06\n", "raw_date" => "2013-08-06", "version" => "0.27" }, { "date" => "2013-08-01", "entries" => [ { "line" => 23, "raw" => " - allow cloning containers with parameterized subcontainers (Florian\n Ragwitz, #22)\n", "style" => "-", "text" => "allow cloning containers with parameterized subcontainers (Florian Ragwitz, #22)" }, { "line" => 25, "raw" => " - allow referencing parent services from parameterized subcontainers\n (Florian Ragwitz, #23)\n", "style" => "-", "text" => "allow referencing parent services from parameterized subcontainers (Florian Ragwitz, #23)" }, { "line" => 27, "raw" => " - deprecate special case in path traversal where a path component with the\n name of the current container was ignored (doy, #20)\n", "style" => "-", "text" => "deprecate special case in path traversal where a path component with the name of the current container was ignored (doy, #20)" }, { "line" => 29, "raw" => " - fix setting the current container multiple times from outside of a\n container (doy)\n", "style" => "-", "text" => "fix setting the current container multiple times from outside of a container (doy)" }, { "line" => 31, "raw" => " - make some error messages more helpful (Jason Galea, #14)\n", "style" => "-", "text" => "make some error messages more helpful (Jason Galea, #14)" }, { "line" => 32, "raw" => " - doc improvements (Sterling Hanenkamp, zdk, Philippe Bruhat, and Gabor\n Szabo; #15, #17, #19, #21)\n", "style" => "-", "text" => "doc improvements (Sterling Hanenkamp, zdk, Philippe Bruhat, and Gabor Szabo; #15, #17, #19, #21)" }, { "line" => 34, "raw" => " - remove the (unmaintained) Bread::Board::GraphViz\n\n", "style" => "-", "text" => "remove the (unmaintained) Bread::Board::GraphViz" } ], "line" => 22, "raw" => "0.26 2013-08-01\n", "raw_date" => "2013-08-01", "version" => "0.26" }, { "date" => "2011-10-20", "entries" => [ { "entries" => [ { "line" => 38, "raw" => " - the container sugar was misbehaving\n (since April 2010 apparently), so\n we have fixed it and clarified it\n\n", "style" => "-", "text" => "the container sugar was misbehaving (since April 2010 apparently), so we have fixed it and clarified it" } ], "line" => 37, "raw" => " * Bread::Board\n", "style" => "*", "text" => "Bread::Board" } ], "line" => 36, "raw" => "0.25 2011-10-20\n", "raw_date" => "2011-10-20", "version" => "0.25" }, { "date" => "2011-10-15", "entries" => [ { "entries" => [ { "line" => 44, "raw" => " - make sure to clone subcontainers,\n this is necessary for parameterized\n containers to retain their connections\n\n", "style" => "-", "text" => "make sure to clone subcontainers, this is necessary for parameterized containers to retain their connections" } ], "line" => 43, "raw" => " * Bread::Board::Container\n", "style" => "*", "text" => "Bread::Board::Container" }, { "entries" => [ { "line" => 49, "raw" => " - add some errors, be a little more\n defensive\n\n", "style" => "-", "text" => "add some errors, be a little more defensive" } ], "line" => 48, "raw" => " * Bread::Board::Traversable\n", "style" => "*", "text" => "Bread::Board::Traversable" } ], "line" => 42, "raw" => "0.24 2011-10-15\n", "raw_date" => "2011-10-15", "version" => "0.24" }, { "date" => "2011-10-14", "entries" => [ { "entries" => [ { "entries" => [ { "line" => 57, "raw" => " - this makes these containers more\n addressable when composed into\n higher level containers\n", "style" => "-", "text" => "this makes these containers more addressable when composed into higher level containers" }, { "line" => 60, "raw" => " - this helps when subclassing\n parameterized containers\n", "style" => "-", "text" => "this helps when subclassing parameterized containers" } ], "line" => 54, "raw" => " - retain control of names of the generated\n containers, so if your the container being\n generated has a name, it keeps it.\n", "style" => "-", "text" => "retain control of names of the generated containers, so if your the container being generated has a name, it keeps it." }, { "entries" => [ { "line" => 64, "raw" => " - also helps when subclassing\n parameterized containers as well\n\n", "style" => "-", "text" => "also helps when subclassing parameterized containers as well" } ], "line" => 62, "raw" => " - switch the generated containers to be\n created with builder instead of default\n", "style" => "-", "text" => "switch the generated containers to be created with builder instead of default" } ], "line" => 53, "raw" => " * Bread::Board::Container::Parameterized\n", "style" => "*", "text" => "Bread::Board::Container::Parameterized" }, { "entries" => [ { "line" => 68, "raw" => " - fixing the error about Moose deprecations\n\n", "style" => "-", "text" => "fixing the error about Moose deprecations" } ], "line" => 67, "raw" => " * t/046_custom_parameter_service.t\n", "style" => "*", "text" => "t/046_custom_parameter_service.t" } ], "line" => 52, "raw" => "0.23 2011-10-14\n", "raw_date" => "2011-10-14", "version" => "0.23" }, { "date" => "2011-10-03", "entries" => [ { "line" => 71, "raw" => " - When inferring a service for a type, allow subclasses to fulfill\n discovered types.\n", "style" => "-", "text" => "When inferring a service for a type, allow subclasses to fulfill discovered types." }, { "line" => 73, "raw" => " - Converted to Dist::Zilla\n\n", "style" => "-", "text" => "Converted to Dist::Zilla" } ], "line" => 70, "raw" => "0.22 2011-10-03\n", "raw_date" => "2011-10-03", "version" => "0.22" }, { "date" => "2011-09-06", "entries" => [ { "entries" => [ { "entries" => [ { "line" => 80, "raw" => " - added tests for this\n", "style" => "-", "text" => "added tests for this" } ], "line" => 77, "raw" => " - Allow service() and alias() sugar functions to\n return the newly-created objects if the context\n container is not defined. (thanks to kip hampton)\n", "style" => "-", "text" => "Allow service() and alias() sugar functions to return the newly-created objects if the context container is not defined. (thanks to kip hampton)" }, { "line" => 81, "raw" => " - this module is just an exporter, so it does not\n need to 'use Moose' (thanks to Tomas Doran)\n\n", "style" => "-", "text" => "this module is just an exporter, so it does not need to 'use Moose' (thanks to Tomas Doran)" } ], "line" => 76, "raw" => " * Bread::Board\n", "style" => "*", "text" => "Bread::Board" }, { "line" => 84, "raw" => " - fixed some spelling and grammar errors\n (thanks to ben hengst and Brad Bowman)\n\n", "style" => "-", "text" => "fixed some spelling and grammar errors (thanks to ben hengst and Brad Bowman)" }, { "entries" => [ { "entries" => [ { "line" => 91, "raw" => " - added tests for this\n\n", "style" => "-", "text" => "added tests for this" } ], "line" => 88, "raw" => " - parameters attribute now has a builder instead\n of a default, so as to allow better tweaking\n in subclasses (thanks to Andre Walker)\n", "style" => "-", "text" => "parameters attribute now has a builder instead of a default, so as to allow better tweaking in subclasses (thanks to Andre Walker)" } ], "line" => 87, "raw" => " * Bread::Board::Service::WithParameters\n", "style" => "*", "text" => "Bread::Board::Service::WithParameters" } ], "line" => 75, "raw" => "0.21 2011-09-06\n", "raw_date" => "2011-09-06", "version" => "0.21" }, { "date" => "2011-06-13", "entries" => [ { "entries" => [ { "entries" => [ { "line" => 97, "raw" => " - added tests for this (thanks to perigrin)\n\n", "style" => "-", "text" => "added tests for this (thanks to perigrin)" } ], "line" => 95, "raw" => " - fix bug in singletons with circular\n refs (thanks to doy)\n", "style" => "-", "text" => "fix bug in singletons with circular refs (thanks to doy)" } ], "line" => 94, "raw" => " * Bread::Board::Lifecycle::Singleton\n", "style" => "*", "text" => "Bread::Board::Lifecycle::Singleton" } ], "line" => 93, "raw" => "0.20 2011-06-13\n", "raw_date" => "2011-06-13", "version" => "0.20" }, { "date" => "2011-06-01", "entries" => [ { "entries" => [ { "entries" => [ { "line" => 103, "raw" => " - note that this is optional and requires you\n to install optional dependencies\n\n", "style" => "-", "text" => "note that this is optional and requires you to install optional dependencies" } ], "line" => 101, "raw" => " - added by jrockway, this allows you to visualise\n a Bread::Board system using GraphViz\n", "style" => "-", "text" => "added by jrockway, this allows you to visualise a Bread::Board system using GraphViz" } ], "line" => 100, "raw" => " * Bread::Board::GraphViz\n", "style" => "*", "text" => "Bread::Board::GraphViz" }, { "entries" => [ { "entries" => [ { "line" => 109, "raw" => " - added tests for this\n\n", "style" => "-", "text" => "added tests for this" } ], "line" => 107, "raw" => " - add the ability to alias services under\n another name (thanks to doy)\n", "style" => "-", "text" => "add the ability to alias services under another name (thanks to doy)" } ], "line" => 106, "raw" => " * Bread::Board::Service::Alias\n", "style" => "*", "text" => "Bread::Board::Service::Alias" }, { "entries" => [ { "line" => 112, "raw" => " - improving edge cases (thanks to doy)\n\n", "style" => "-", "text" => "improving edge cases (thanks to doy)" } ], "line" => 111, "raw" => " * Bread::Board::Service::Inferred\n", "style" => "*", "text" => "Bread::Board::Service::Inferred" }, { "entries" => [ { "line" => 115, "raw" => " - several code improvements (thanks to doy)\n\n", "style" => "-", "text" => "several code improvements (thanks to doy)" } ], "line" => 114, "raw" => " * Bread::Board::Service::*\n", "style" => "*", "text" => "Bread::Board::Service::*" }, { "entries" => [ { "entries" => [ { "line" => 120, "raw" => " - added tests for this\n\n", "style" => "-", "text" => "added tests for this" } ], "line" => 118, "raw" => " - allow for custom Lifecycles by using the \"+\"\n prefix (thanks to jasonmay)\n", "style" => "-", "text" => "allow for custom Lifecycles by using the \"+\" prefix (thanks to jasonmay)" } ], "line" => 117, "raw" => " * Bread::Board::Service\n", "style" => "*", "text" => "Bread::Board::Service" } ], "line" => 99, "raw" => "0.19 2011-06-01\n", "raw_date" => "2011-06-01", "version" => "0.19" }, { "date" => "2011-04-13", "entries" => [ { "entries" => [ { "line" => 124, "raw" => " - added has_parameter_defaults method to check\n if a parameter has default values\n", "style" => "-", "text" => "added has_parameter_defaults method to check if a parameter has default values" } ], "line" => 123, "raw" => " * Bread::Board::Service::WithParameters\n", "style" => "*", "text" => "Bread::Board::Service::WithParameters" }, { "entries" => [ { "entries" => [ { "line" => 129, "raw" => " - added test for this (thanks to rafl)\n\n", "style" => "-", "text" => "added test for this (thanks to rafl)" } ], "line" => 127, "raw" => " - added a check for has_parameter_defaults before\n we make a Thunk\n", "style" => "-", "text" => "added a check for has_parameter_defaults before we make a Thunk" } ], "line" => 126, "raw" => " * Bread::Board::Service::WithDependencies\n", "style" => "*", "text" => "Bread::Board::Service::WithDependencies" } ], "line" => 122, "raw" => "0.18 2011-04-13\n", "raw_date" => "2011-04-13", "version" => "0.18" }, { "date" => "2011-02-22", "entries" => [ { "entries" => [ { "entries" => [ { "line" => 134, "raw" => " - add tests for this\n\n", "style" => "-", "text" => "add tests for this" } ], "line" => 133, "raw" => " - make recrusive inferrence work\n", "style" => "-", "text" => "make recrusive inferrence work" } ], "line" => 132, "raw" => " * Bread::Board::Service::Inferred\n", "style" => "*", "text" => "Bread::Board::Service::Inferred" }, { "entries" => [ { "line" => 137, "raw" => " - small doc update about subclassing and\n the name parameter, resolving RT#63124\n (thanks to Evan Haas)\n\n", "style" => "-", "text" => "small doc update about subclassing and the name parameter, resolving RT#63124 (thanks to Evan Haas)" } ], "line" => 136, "raw" => " * Bread::Board::Manual::Concepts::Advanced\n", "style" => "*", "text" => "Bread::Board::Manual::Concepts::Advanced" }, { "line" => 141, "raw" => " !! POSSIBLE BACK COMPAT BREAKAGE !!\n", "style" => "", "text" => "!! POSSIBLE BACK COMPAT BREAKAGE !!" }, { "entries" => [ { "entries" => [ { "line" => 146, "raw" => " - adjust tests accordingly\n", "style" => "-", "text" => "adjust tests accordingly" }, { "line" => 147, "raw" => " - this should fix RT#64478 as well\n\n", "style" => "-", "text" => "this should fix RT#64478 as well" } ], "line" => 143, "raw" => " - make relative parent path traversal more sane, there\n should be no more need for excessive ../../ stuff in\n dependency service paths (thanks doy)\n", "style" => "-", "text" => "make relative parent path traversal more sane, there should be no more need for excessive ../../ stuff in dependency service paths (thanks doy)" } ], "line" => 142, "raw" => " * Bread::Board::Traversal\n", "style" => "*", "text" => "Bread::Board::Traversal" } ], "line" => 131, "raw" => "0.17 2011-02-22\n", "raw_date" => "2011-02-22", "version" => "0.17" }, { "date" => "2011-01-10", "entries" => [ { "entries" => [ { "entries" => [ { "line" => 154, "raw" => " - added tests for this (062_service_class_w_sugar.t)\n\n", "style" => "-", "text" => "added tests for this (062_service_class_w_sugar.t)" } ], "line" => 151, "raw" => " - adding the 'service_class' param for the\n service sugar function which allows you\n to pass in a custom service subclass\n", "style" => "-", "text" => "adding the 'service_class' param for the service sugar function which allows you to pass in a custom service subclass" } ], "line" => 150, "raw" => " * Bread::Board::service sugar\n", "style" => "*", "text" => "Bread::Board::service sugar" }, { "entries" => [ { "entries" => [ { "line" => 160, "raw" => " - added tests for this (045_parameters_in_dependency.t)\n\n", "style" => "-", "text" => "added tests for this (045_parameters_in_dependency.t)" } ], "line" => 157, "raw" => " - added the service_params attribute here\n so that it is possible to pass in parameters\n when you depend on a service which requires them\n", "style" => "-", "text" => "added the service_params attribute here so that it is possible to pass in parameters when you depend on a service which requires them" } ], "line" => 156, "raw" => " * Bread::Board::Dependency\n", "style" => "*", "text" => "Bread::Board::Dependency" }, { "entries" => [ { "entries" => [ { "line" => 167, "raw" => " - added tests for this (079_depending_on_type.t)\n\n", "style" => "-", "text" => "added tests for this (079_depending_on_type.t)" } ], "line" => 163, "raw" => " - when a typemapped service is created it is now\n named with the special 'type:' prefix. This allows\n you to depend on a typemapped service in a\n non-typemapped service\n", "style" => "-", "text" => "when a typemapped service is created it is now named with the special 'type:' prefix. This allows you to depend on a typemapped service in a non-typemapped service" } ], "line" => 162, "raw" => " * Bread::Board::Service::Inferred\n", "style" => "*", "text" => "Bread::Board::Service::Inferred" }, { "entries" => [ { "line" => 170, "raw" => " - improving the error messages when a container/service\n is not found\n\n", "style" => "-", "text" => "improving the error messages when a container/service is not found" } ], "line" => 169, "raw" => " * Bread::Board::Traversable\n", "style" => "*", "text" => "Bread::Board::Traversable" } ], "line" => 149, "raw" => "0.16 2011-01-10\n", "raw_date" => "2011-01-10", "version" => "0.16" }, { "date" => "2010-09-30", "entries" => [ { "entries" => [ { "line" => 175, "raw" => " - removed the MooseX::Param dependency\n and implemented it internally so that\n we have more control\n\n", "style" => "-", "text" => "removed the MooseX::Param dependency and implemented it internally so that we have more control" } ], "line" => 174, "raw" => " * Bread::Board::Service\n", "style" => "*", "text" => "Bread::Board::Service" }, { "entries" => [ { "line" => 180, "raw" => " - the Bread::Board::Service::Dependencies\n type now can also coerce ArrayRef[Str]\n and HashRef[Str] types correctly (doy)\n\n", "style" => "-", "text" => "the Bread::Board::Service::Dependencies type now can also coerce ArrayRef[Str] and HashRef[Str] types correctly (doy)" } ], "line" => 179, "raw" => " * Bread::Board::Types\n", "style" => "*", "text" => "Bread::Board::Types" }, { "entries" => [ { "line" => 185, "raw" => " - we now only create a ::Deferred::Thunk\n object if we have non-optional params\n", "style" => "-", "text" => "we now only create a ::Deferred::Thunk object if we have non-optional params" } ], "line" => 184, "raw" => " * Bread::Board::Service::WithDependencies\n", "style" => "*", "text" => "Bread::Board::Service::WithDependencies" }, { "entries" => [ { "entries" => [ { "line" => 191, "raw" => " - added tests for both the above\n\n", "style" => "-", "text" => "added tests for both the above" } ], "line" => 188, "raw" => " - added the has_required_parameters\n method, to see if there are any\n non-optional parameters\n", "style" => "-", "text" => "added the has_required_parameters method, to see if there are any non-optional parameters" } ], "line" => 187, "raw" => " * Bread::Board::Service::WithParameters\n", "style" => "*", "text" => "Bread::Board::Service::WithParameters" }, { "line" => 193, "raw" => " !! NEW EXPERIMENTAL FEATURE !!\n\n", "style" => "", "text" => "!! NEW EXPERIMENTAL FEATURE !!" }, { "entries" => [ { "entries" => [ { "line" => 199, "raw" => " - added tests for this\n\n", "style" => "-", "text" => "added tests for this" } ], "line" => 196, "raw" => " - added the typemap and infer keyword\n to help in the mapping of types and\n construction of inferred services\n", "style" => "-", "text" => "added the typemap and infer keyword to help in the mapping of types and construction of inferred services" } ], "line" => 195, "raw" => " * Bread::Board\n", "style" => "*", "text" => "Bread::Board" }, { "entries" => [ { "entries" => [ { "line" => 204, "raw" => " - added tests for this\n\n", "style" => "-", "text" => "added tests for this" } ], "line" => 202, "raw" => " - added the typemap feature and added\n the ->resolve( type => \$type ) call\n", "style" => "-", "text" => "added the typemap feature and added the ->resolve( type => \$type ) call" } ], "line" => 201, "raw" => " * Bread::Board::Container\n", "style" => "*", "text" => "Bread::Board::Container" }, { "entries" => [ { "line" => 207, "raw" => " - added this and tests for it\n\n", "style" => "-", "text" => "added this and tests for it" } ], "line" => 206, "raw" => " * Bread::Board::Service::Inferred\n", "style" => "*", "text" => "Bread::Board::Service::Inferred" }, { "entries" => [ { "line" => 210, "raw" => " - added this to help explain the\n typemap feature\n\n", "style" => "-", "text" => "added this to help explain the typemap feature" } ], "line" => 209, "raw" => " * Bread::Board::Manual::Concepts::Typemap\n", "style" => "*", "text" => "Bread::Board::Manual::Concepts::Typemap" } ], "line" => 173, "raw" => "0.15 2010-09-30\n", "raw_date" => "2010-09-30", "version" => "0.15" }, { "date" => "2010-08-24", "entries" => [ { "entries" => [ { "entries" => [ { "line" => 218, "raw" => " - adjusted all the tests to account\n for this change.\n", "style" => "-", "text" => "adjusted all the tests to account for this change." }, { "line" => 220, "raw" => " - adjusted all the docs to now use\n this approach instead\n\n", "style" => "-", "text" => "adjusted all the docs to now use this approach instead" } ], "line" => 215, "raw" => " - added the ->resolve method to replace\n the ->fetch( \$service )->get pattern\n that annoys mst so much.\n", "style" => "-", "text" => "added the ->resolve method to replace the ->fetch( \$service )->get pattern that annoys mst so much." } ], "line" => 214, "raw" => " * Bread::Board::Container\n", "style" => "*", "text" => "Bread::Board::Container" }, { "line" => 223, "raw" => " - now using Try::Tiny for all exception\n handling (except the Deferred service)\n\n", "style" => "-", "text" => "now using Try::Tiny for all exception handling (except the Deferred service)" }, { "entries" => [ { "entries" => [ { "line" => 232, "raw" => " - added tests for this\n\n", "style" => "-", "text" => "added tests for this" } ], "line" => 227, "raw" => " - if you want to depend on a parameterized\n service, now you can and it will return\n a Bread::Board::Service::Deferred::Thunk\n that you can call ->inflate on and pass\n in the parameters for it.\n", "style" => "-", "text" => "if you want to depend on a parameterized service, now you can and it will return a Bread::Board::Service::Deferred::Thunk that you can call ->inflate on and pass in the parameters for it." } ], "line" => 226, "raw" => " * Bread::Board::Service::WithDependencies\n", "style" => "*", "text" => "Bread::Board::Service::WithDependencies" }, { "entries" => [ { "line" => 235, "raw" => " - added this + tests for it\n\n", "style" => "-", "text" => "added this + tests for it" } ], "line" => 234, "raw" => " * Bread::Board::Service::Deferred::Thunk\n", "style" => "*", "text" => "Bread::Board::Service::Deferred::Thunk" } ], "line" => 213, "raw" => "0.14 2010-08-24\n", "raw_date" => "2010-08-24", "version" => "0.14" }, { "date" => "2010-04-23", "entries" => [ { "entries" => [ { "entries" => [ { "line" => 241, "raw" => " - added test for this\n\n", "style" => "-", "text" => "added test for this" } ], "line" => 239, "raw" => " - making the include keyword handle\n compilation errors better (doy)\n", "style" => "-", "text" => "making the include keyword handle compilation errors better (doy)" } ], "line" => 238, "raw" => " * Bread::Board\n", "style" => "*", "text" => "Bread::Board" }, { "entries" => [ { "entries" => [ { "line" => 248, "raw" => " - added tests for this\n\n", "style" => "-", "text" => "added tests for this" } ], "line" => 245, "raw" => " - it is now possible to store parameterized\n containers within regular containers and\n have them behave properly\n", "style" => "-", "text" => "it is now possible to store parameterized containers within regular containers and have them behave properly" } ], "line" => 243, "raw" => " * Bread::Board::Container\n Bread::Board::Container::Parameterized\n", "style" => "*", "text" => "Bread::Board::Container Bread::Board::Container::Parameterized" }, { "entries" => [ { "entries" => [ { "line" => 253, "raw" => " - added tests to confirm they work\n\n", "style" => "-", "text" => "added tests to confirm they work" } ], "line" => 251, "raw" => " - adding some examples of ways to use\n Bread::Board to the manual\n", "style" => "-", "text" => "adding some examples of ways to use Bread::Board to the manual" } ], "line" => 250, "raw" => " * Bread::Board::Manual::Example::*\n", "style" => "*", "text" => "Bread::Board::Manual::Example::*" } ], "line" => 237, "raw" => "0.13 2010-04-23\n", "raw_date" => "2010-04-23", "version" => "0.13" }, { "date" => "2010-04-18", "entries" => [ { "entries" => [ { "entries" => [ { "line" => 260, "raw" => " - added tests for this\n", "style" => "-", "text" => "added tests for this" } ], "line" => 257, "raw" => " - added the `include` keyword which will evaluate\n an external file within your Bread::Board\n configuration\n", "style" => "-", "text" => "added the `include` keyword which will evaluate an external file within your Bread::Board configuration" }, { "entries" => [ { "line" => 262, "raw" => " - added tests for this\n", "style" => "-", "text" => "added tests for this" } ], "line" => 261, "raw" => " - added support for parameterized containers\n", "style" => "-", "text" => "added support for parameterized containers" }, { "entries" => [ { "line" => 266, "raw" => " - added tests for this\n\n", "style" => "-", "text" => "added tests for this" } ], "line" => 263, "raw" => " - the 'container' keyword will now accept an\n instance of Bread::Board::Container instead\n of the name, this makes subclassing easier\n", "style" => "-", "text" => "the 'container' keyword will now accept an instance of Bread::Board::Container instead of the name, this makes subclassing easier" } ], "line" => 256, "raw" => " * Bread::Board\n", "style" => "*", "text" => "Bread::Board" }, { "entries" => [ { "line" => 269, "raw" => " - added this module and tests\n\n", "style" => "-", "text" => "added this module and tests" } ], "line" => 268, "raw" => " + Bread::Board::Container::Parameterized\n", "style" => "+", "text" => "Bread::Board::Container::Parameterized" }, { "entries" => [ { "line" => 272, "raw" => " - moved, re-organizad and added too the docs\n that were previously in Bread::Board.pm\n\n", "style" => "-", "text" => "moved, re-organizad and added too the docs that were previously in Bread::Board.pm" } ], "line" => 271, "raw" => " + Bread::Baord::Manual\n", "style" => "+", "text" => "Bread::Baord::Manual" } ], "line" => 255, "raw" => "0.12 2010-04-18\n", "raw_date" => "2010-04-18", "version" => "0.12" }, { "date" => "2010-03-25", "entries" => [ { "line" => 276, "raw" => " * Much improved documentation.\n", "style" => "*", "text" => "Much improved documentation." }, { "line" => 277, "raw" => " * Fixed inc/ to include all used Module-Install extensions.\n\n", "style" => "*", "text" => "Fixed inc/ to include all used Module-Install extensions." } ], "line" => 275, "raw" => "0.11 2010-03-25\n", "raw_date" => "2010-03-25", "version" => "0.11" }, { "date" => "2010-02-22", "entries" => [ { "entries" => [ { "line" => 281, "raw" => " - import strict and warnings into the caller\n upon import (Florian Ragwitz)\n", "style" => "-", "text" => "import strict and warnings into the caller upon import (Florian Ragwitz)" }, { "line" => 283, "raw" => " - fixing the SYNOPSIS so that it will actually\n run (thanks to zby for spotting this)\n\n", "style" => "-", "text" => "fixing the SYNOPSIS so that it will actually run (thanks to zby for spotting this)" } ], "line" => 280, "raw" => " * Bread::Board\n", "style" => "*", "text" => "Bread::Board" }, { "entries" => [ { "line" => 287, "raw" => " - Add a constructor_name parameter for classes using\n MooseX::Traits or other things which need an alternately\n named constructor. (Tomas Doran)\n\n", "style" => "-", "text" => "Add a constructor_name parameter for classes using MooseX::Traits or other things which need an alternately named constructor. (Tomas Doran)" } ], "line" => 286, "raw" => " * Bread::Board::ConstructorInjection\n", "style" => "*", "text" => "Bread::Board::ConstructorInjection" } ], "line" => 279, "raw" => "0.10 2010-02-22\n", "raw_date" => "2010-02-22", "version" => "0.10" }, { "date" => "2009-07-29", "entries" => [ { "line" => 292, "raw" => " Add cloning support for containers and services\n", "style" => "", "text" => "Add cloning support for containers and services" }, { "entries" => [ { "line" => 294, "raw" => " - adding tests for this\n\n", "style" => "-", "text" => "adding tests for this" } ], "line" => 293, "raw" => " (thanks to jrockway for this)\n", "style" => "", "text" => "(thanks to jrockway for this)" }, { "entries" => [ { "line" => 297, "raw" => " - use meta->constructor_name instead of \"new\"\n if possible (jrockway)\n\n", "style" => "-", "text" => "use meta->constructor_name instead of \"new\" if possible (jrockway)" } ], "line" => 296, "raw" => " * Bread::Board::ConstructorInjection\n", "style" => "*", "text" => "Bread::Board::ConstructorInjection" }, { "entries" => [ { "line" => 301, "raw" => " - fixing a leak where we would hold onto\n parameters that were passed into get()\n\n", "style" => "-", "text" => "fixing a leak where we would hold onto parameters that were passed into get()" } ], "line" => 300, "raw" => " * Bread::Board::Service::WithParameters\n", "style" => "*", "text" => "Bread::Board::Service::WithParameters" } ], "line" => 291, "raw" => "0.09 2009-07-29\n", "raw_date" => "2009-07-29", "version" => "0.09" }, { "date" => "2009-07-18", "entries" => [ { "line" => 305, "raw" => " - updating dates on all files\n\n", "style" => "-", "text" => "updating dates on all files" }, { "entries" => [ { "line" => 308, "raw" => " - new module added to support the idea of a singleton\n lifecycle keyed on the parameters rather then just\n a per-instance item.\n\n", "style" => "-", "text" => "new module added to support the idea of a singleton lifecycle keyed on the parameters rather then just a per-instance item." } ], "line" => 307, "raw" => " * Bread::Board::LifeCycle::Singleton::WithParameters\n", "style" => "*", "text" => "Bread::Board::LifeCycle::Singleton::WithParameters" }, { "entries" => [ { "line" => 313, "raw" => " - fixed the is_weak_ref mis-spelling\n\n", "style" => "-", "text" => "fixed the is_weak_ref mis-spelling" } ], "line" => 312, "raw" => " * Bread::Board::Traversable\n", "style" => "*", "text" => "Bread::Board::Traversable" } ], "line" => 304, "raw" => "0.08 2009-07-18\n", "raw_date" => "2009-07-18", "version" => "0.08" }, { "date" => "2009-02-18", "entries" => [ { "line" => 316, "raw" => " - Work with new MooseX::Params::Validate\n", "style" => "-", "text" => "Work with new MooseX::Params::Validate" }, { "line" => 317, "raw" => " - Specify MX::P::Validate version number in Makefile.PL\n\n", "style" => "-", "text" => "Specify MX::P::Validate version number in Makefile.PL" } ], "line" => 315, "raw" => "0.07 2009-02-18\n", "raw_date" => "2009-02-18", "version" => "0.07" }, { "date" => "2008-11-03", "entries" => [ { "line" => 320, "raw" => " - Forgot to update MANIFEST before uploading to CPAN.\n\n", "style" => "-", "text" => "Forgot to update MANIFEST before uploading to CPAN." } ], "line" => 319, "raw" => "0.06 2008-11-03\n", "raw_date" => "2008-11-03", "version" => "0.06" }, { "date" => "2008-11-03", "entries" => [ { "line" => 323, "raw" => " - Applied immutablity to classes where applicable, and vigorously unimport\n Moose keywords when they are no longer needed. This results in\n x 2 performance as far as defining a Bread::Board model (Daisuke Maki).\n\n", "style" => "-", "text" => "Applied immutablity to classes where applicable, and vigorously unimport Moose keywords when they are no longer needed. This results in x 2 performance as far as defining a Bread::Board model (Daisuke Maki)." }, { "entries" => [ { "line" => 328, "raw" => " - Implemented unimport(), thus allowing you to remove keywords\n exported by Bread::Board (Daisuke Maki).\n\n", "style" => "-", "text" => "Implemented unimport(), thus allowing you to remove keywords exported by Bread::Board (Daisuke Maki)." } ], "line" => 327, "raw" => " * Bread::Board\n", "style" => "*", "text" => "Bread::Board" }, { "entries" => [ { "line" => 332, "raw" => " - Unrolled recursive calls to loops, and removed Sub::Current dependency\n (Daisuke Maki)\n\n", "style" => "-", "text" => "Unrolled recursive calls to loops, and removed Sub::Current dependency (Daisuke Maki)" } ], "line" => 331, "raw" => " * Bread::Board::Traversable\n", "style" => "*", "text" => "Bread::Board::Traversable" } ], "line" => 322, "raw" => "0.05 2008-11-03\n", "raw_date" => "2008-11-03", "version" => "0.05" }, { "date" => "2008-10-31", "entries" => [ { "entries" => [ { "entries" => [ { "line" => 339, "raw" => " - added tests for this\n\n", "style" => "-", "text" => "added tests for this" } ], "line" => 338, "raw" => " - fix root path handling (thanks to Daisuke Maki)\n", "style" => "-", "text" => "fix root path handling (thanks to Daisuke Maki)" } ], "line" => 336, "raw" => " * Bread::Board\n Bread::Board::Traversable\n", "style" => "*", "text" => "Bread::Board Bread::Board::Traversable" }, { "entries" => [ { "line" => 342, "raw" => " - Simple utility for dumping containers\n (thanks to Daisuke Maki)\n\n", "style" => "-", "text" => "Simple utility for dumping containers (thanks to Daisuke Maki)" } ], "line" => 341, "raw" => " * Bread::Board::Dumper\n", "style" => "*", "text" => "Bread::Board::Dumper" }, { "entries" => [ { "line" => 346, "raw" => " - fixing the plans so that new versions of\n Test::More stop complaining\n\n", "style" => "-", "text" => "fixing the plans so that new versions of Test::More stop complaining" } ], "line" => 345, "raw" => " * t/\n", "style" => "*", "text" => "t/" } ], "line" => 335, "raw" => "0.04 2008-10-31\n", "raw_date" => "2008-10-31", "version" => "0.04" }, { "date" => "2008-01-08", "entries" => [ { "entries" => [ { "entries" => [ { "line" => 355, "raw" => " - added tests for this\n\n", "style" => "-", "text" => "added tests for this" } ], "line" => 351, "raw" => " - fixed the parameter validation to\n use a custom cache key, this is so\n that it plays nicely with the new\n MooseX::Params::Validate\n", "style" => "-", "text" => "fixed the parameter validation to use a custom cache key, this is so that it plays nicely with the new MooseX::Params::Validate" } ], "line" => 350, "raw" => " * Bread::Board::Service::WithParameters\n", "style" => "*", "text" => "Bread::Board::Service::WithParameters" } ], "line" => 349, "raw" => "0.03 2008-01-08\n", "raw_date" => "2008-01-08", "version" => "0.03" }, { "date" => "2008-01-08", "entries" => [ { "line" => 358, "raw" => " - forgot a dependency, whoops.\n\n", "style" => "-", "text" => "forgot a dependency, whoops." } ], "line" => 357, "raw" => "0.02 2008-01-08\n", "raw_date" => "2008-01-08", "version" => "0.02" }, { "date" => "2008-01-07", "entries" => [ { "line" => 361, "raw" => " - Out with the old (IOC) and in with the new (Bread::Board)\n", "style" => "-", "text" => "Out with the old (IOC) and in with the new (Bread::Board)" } ], "line" => 360, "raw" => "0.01 2008-01-07\n", "raw_date" => "2008-01-07", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/Convert-BinHex.parsed000644 000000 000000 00000012674 14472651645 020664 0ustar00000000 000000 { "preamble" => "Revision history for Perl module Convert::BinHex", "raw_preamble" => "Revision history for Perl module Convert::BinHex\n\n", "releases" => [ { "entries" => [ { "line" => 4, "raw" => "\t- Fixed pod error in debinhex and added pod tests\n\n", "style" => "-", "text" => "Fixed pod error in debinhex and added pod tests" } ], "line" => 3, "raw" => "{{\$NEXT}}\n", "version" => "{{\$NEXT}}" }, { "date" => "2013-08-25", "entries" => [ { "line" => 7, "raw" => " - Added unit tests for OO and CRC code\n\n", "style" => "-", "text" => "Added unit tests for OO and CRC code" } ], "line" => 6, "raw" => "1.122 2013-08-25\n", "raw_date" => "2013-08-25", "version" => "1.122" }, { "date" => "2013-08-23", "entries" => [ { "line" => 10, "raw" => " - Changes file reformatted thanks to Neil Bowers (NEILB)\n", "style" => "-", "text" => "Changes file reformatted thanks to Neil Bowers (NEILB)" }, { "line" => 11, "raw" => " - Moved to Dist::Zilla's OurPkgVersion for keeping \$VERSIONs in sync\n\n", "style" => "-", "text" => "Moved to Dist::Zilla's OurPkgVersion for keeping \$VERSIONs in sync" } ], "line" => 9, "raw" => "1.121 2013-08-23\n", "raw_date" => "2013-08-23", "version" => "1.121" }, { "date" => "2013-08-22", "entries" => [ { "line" => 14, "raw" => " - First CPAN release by Stephen Nelson (STEPHEN),\n who's now maintaining this module.\n\n", "style" => "-", "text" => "First CPAN release by Stephen Nelson (STEPHEN), who's now maintaining this module." } ], "line" => 13, "raw" => "1.120 2013-08-22\n", "raw_date" => "2013-08-22", "version" => "1.120" }, { "date" => "1997-06-27", "entries" => [ { "line" => 18, "raw" => " - Changes unknown, but this was the last (and first?) CPAN release by ERYQ\n\n", "style" => "-", "text" => "Changes unknown, but this was the last (and first?) CPAN release by ERYQ" } ], "line" => 17, "raw" => "1.119 1997-06-27\n", "raw_date" => "1997-06-27", "version" => "1.119" }, { "date" => "unknown", "entries" => [ { "line" => 22, "raw" => " - Ready to go public (with Paul's version, patched for native Mac support)!\n", "style" => "-", "text" => "Ready to go public (with Paul's version, patched for native Mac support)!" }, { "line" => 23, "raw" => " - Warnings have been suppressed in a few places\n where undefined values appear.\n\n", "style" => "-", "text" => "Warnings have been suppressed in a few places where undefined values appear." } ], "line" => 20, "raw" => "1.118 unknown\n\n", "raw_date" => "unknown", "version" => "1.118" }, { "date" => "unknown", "entries" => [ { "line" => 28, "raw" => " - Fixed another bug in comp2bin, related to the MARK falling on a\n boundary between inputs. Added testing code.\n\n", "style" => "-", "text" => "Fixed another bug in comp2bin, related to the MARK falling on a boundary between inputs. Added testing code." } ], "line" => 26, "raw" => "1.115 unknown\n\n", "raw_date" => "unknown", "version" => "1.115" }, { "date" => "unknown", "entries" => [ { "line" => 33, "raw" => " - Added BIN-to-HEX conversion. Eh. It's a start.\n", "style" => "-", "text" => "Added BIN-to-HEX conversion. Eh. It's a start." }, { "line" => 34, "raw" => " - Also, a lot of documentation additions and cleanups.\n", "style" => "-", "text" => "Also, a lot of documentation additions and cleanups." }, { "line" => 35, "raw" => " - Some methods were also renamed.\n\n", "style" => "-", "text" => "Some methods were also renamed." } ], "line" => 31, "raw" => "1.114 unknown\n\n", "raw_date" => "unknown", "version" => "1.114" }, { "date" => "unknown", "entries" => [ { "line" => 38, "raw" => " - Fixed bug in decompression (wasn't saving last character).\n", "style" => "-", "text" => "Fixed bug in decompression (wasn't saving last character)." }, { "line" => 39, "raw" => " - Fixed \"NoComment\" bug.\n\n", "style" => "-", "text" => "Fixed \"NoComment\" bug." } ], "line" => 37, "raw" => "1.103 unknown\n", "raw_date" => "unknown", "version" => "1.103" }, { "date" => "unknown", "entries" => [ { "line" => 42, "raw" => " - Initial release.\n\n", "style" => "-", "text" => "Initial release." } ], "line" => 41, "raw" => "1.102 unknown\n", "raw_date" => "unknown", "version" => "1.102" } ] } CPAN-Changes-0.500005/corpus/dists/Data-Monad.changes000644 000000 000000 00000000637 14472651645 020124 0ustar00000000 000000 Revision history for Perl extension Data::Monad {{$NEXT}} 0.05 2013-09-08 00:23:32 JST - Fix the bug which breaks Data::Monad::CondVar on perl 5.17.2 0.04 Sat, 13 Oct 2012 - Fix a bug related perl contexts. 0.03 Tue, 26 Jun 2012 - Fix dependencies (reported by mschwern) 0.02 Sun, 23 Oct 2011 - Add dependencies 0.01 Wed, 12 Oct 2011 - original version CPAN-Changes-0.500005/corpus/dists/App-lookup.changes000644 000000 000000 00000000156 14472651645 020242 0ustar00000000 000000 Revision history for App-lookup 0.01 Date/time First version, released on an unsuspecting world. CPAN-Changes-0.500005/corpus/dists/Email-MIME-ContentType.parsed000644 000000 000000 00000012520 14472651645 022105 0ustar00000000 000000 { "preamble" => "Revision history for Perl extension Email::MIME::ContentType", "raw_preamble" => "Revision history for Perl extension Email::MIME::ContentType\n\n", "releases" => [ { "entries" => [], "line" => 3, "raw" => "{{\$NEXT}}\n\n", "version" => "{{\$NEXT}}" }, { "date" => "2013-08-10T23:19:14Z", "entries" => [ { "entries" => [ { "line" => 7, "raw" => " [rt.cpan.org #87460]\n\n", "style" => "[]", "text" => "rt.cpan.org #87460" } ], "line" => 6, "raw" => " - make \$STRICT_PARAMS actually work! (thanks, Matthew Green!)\n", "style" => "-", "text" => "make \$STRICT_PARAMS actually work! (thanks, Matthew Green!)" } ], "line" => 5, "note" => "America/New_York", "raw" => "1.017 2013-08-10 23:19:14 America/New_York\n", "raw_date" => "2013-08-10 23:19:14 America/New_York", "version" => "1.017" }, { "date" => "2013-08-10T23:14:42Z", "entries" => [ { "line" => 10, "raw" => " - correct the longstanding and embarrassing misuse of \"discrete\" and\n \"composite\" to mean \"type\" and \"subtype\"; the returned data still\n contains the wrong old names so your code shouldn't break\n\n", "style" => "-", "text" => "correct the longstanding and embarrassing misuse of \"discrete\" and \"composite\" to mean \"type\" and \"subtype\"; the returned data still contains the wrong old names so your code shouldn't break" }, { "line" => 14, "raw" => " - repackage to update bugtracker, repo, etc.\n\n", "style" => "-", "text" => "repackage to update bugtracker, repo, etc." } ], "line" => 9, "note" => "America/New_York", "raw" => "1.016 2013-08-10 23:14:42 America/New_York\n", "raw_date" => "2013-08-10 23:14:42 America/New_York", "version" => "1.016" }, { "date" => "2009-01-22", "entries" => [ { "line" => 17, "raw" => " - add repo metadata\n\n", "style" => "-", "text" => "add repo metadata" } ], "line" => 16, "raw" => "1.015 2009-01-22\n", "raw_date" => "2009-01-22", "version" => "1.015" }, { "date" => "2007-03-22", "entries" => [ { "line" => 20, "raw" => " - packaging improvements\n\n", "style" => "-", "text" => "packaging improvements" } ], "line" => 19, "raw" => "1.014 2007-03-22\n", "raw_date" => "2007-03-22", "version" => "1.014" }, { "date" => "2007-03-20", "entries" => [ { "line" => 23, "raw" => " - fix significantly broken SYNOPSIS\n\n", "style" => "-", "text" => "fix significantly broken SYNOPSIS" } ], "line" => 22, "raw" => "1.013 2007-03-20\n", "raw_date" => "2007-03-20", "version" => "1.013" }, { "date" => "2006-11-25", "entries" => [ { "line" => 26, "raw" => " - allow carp-avoidance through (ugh) package variable; bug 14076\n\n", "style" => "-", "text" => "allow carp-avoidance through (ugh) package variable; bug 14076" } ], "line" => 25, "raw" => "1.012 2006-11-25\n", "raw_date" => "2006-11-25", "version" => "1.012" }, { "date" => "2006-10-12", "entries" => [ { "line" => 29, "raw" => " - clearer special case for undef/empty content-type\n (thanks, JESSE!)\n\n", "style" => "-", "text" => "clearer special case for undef/empty content-type (thanks, JESSE!)" } ], "line" => 28, "raw" => "1.011 2006-10-12\n", "raw_date" => "2006-10-12", "version" => "1.011" }, { "entries" => [ { "line" => 33, "raw" => " - typo fix in documentation by John Linderman.\n", "style" => "-", "text" => "typo fix in documentation by John Linderman." }, { "line" => 34, "raw" => " - new author, Casey West.\n", "style" => "-", "text" => "new author, Casey West." }, { "line" => 35, "raw" => " - Fix bug with blank space following parameters.\n\n", "style" => "-", "text" => "Fix bug with blank space following parameters." } ], "line" => 32, "raw" => "1.01\n", "version" => "1.01" }, { "date" => "2004-01-07T17:38:23Z", "entries" => [ { "line" => 38, "raw" => " - original version; created by h2xs 1.22 with options\n \t-AX -b 5.6.0 -n Email::MIME::ContentType\n", "style" => "-", "text" => "original version; created by h2xs 1.22 with options -AX -b 5.6.0 -n Email::MIME::ContentType" } ], "line" => 37, "raw" => "0.01 Wed Jan 7 17:38:23 2004\n", "raw_date" => "Wed Jan 7 17:38:23 2004", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/WWW-YouTube-Download.changes000644 000000 000000 00000011246 14472651645 022040 0ustar00000000 000000 Revision history for Perl extension WWW::YouTube::Download {{$NEXT}} 0.55 2013-07-27T09:21:38Z - Changed signature encoding (kucharskim++) 0.54 2013-07-05T18:29:31Z - If unavailable video, croak with an appropriate error message. (kucharskim++) - Support encrypted signature video. (kucharskim++) 0.53 2013-06-05T16:05:56Z - Various improvements to youtube-playlists (kucharskim++) 0.52 2013-05-05T16:18:54Z - Added playlist_id() and video_id() method (kucharskim++) 0.51 2013-05-03T07:49:29Z - Support new url (mikolaj++) 0.50 2013-04-19T17:50:39Z - repackaging 0.49 2013-04-09T21:13:56Z - repacking 0.48 2013-04-09T21:09:55Z - Fixed parsing problem on youtube-playlists (mikolaj++) 0.47 Tue Apr 2 02:06:07 2013 - Added some documentation and added eg/menu.pl (polettix++) 0.46 Sun Mar 24 15:34:27 2013 - YouTube's design was changed (vjp++, yusukebe++) 0.45 Sun Feb 10 02:14:09 2013 - New substitution variable {user} (isync++) 0.44 Sat Jan 19 18:29:58 2013 - added proxy support (isync++) 0.43 Sat Jan 5 01:43:17 2013 - fixed grammar (mokko++) - using Module::Build 0.42 Fri Nov 16 21:35:31 2012 - fixed "failed to extract JSON data" (ks0608++) - fixed RT: 81068 (panic83++) 0.41 Thu Oct 4 00:44:13 2012 - follow the change of site (mikolaj++, yusukebe++) - fixed color problems on scripts (mikolaj++) - fixed RT 79931 (HMBRAND++) 0.40 Sun Jan 22 16:54:53 2012 - Fixed a problem that did not works, because YouTube's design was changed. (ks0608++, zentooo++) 0.39 Wed Jan 18 01:28:00 2012 - remove suffix from youtube-download.pl and youtube-playlists.pl (mikolaj++) 0.38 Thu Dec 8 00:44:52 2011 - fix typo (mikolaj++) - remove wrong code (mikolaj++) 0.37 Wed Dec 7 02:33:23 2011 - fix wrong characters in filename in youtube-download.pl (mikolaj++) - fix doc in youtube-download.pl (mikolaj++) - file_name option is DEPRECATED 0.36 Mon Oct 31 02:45:48 2011 - fix default filename problem in youtube-download.pl 0.35 Tue Oct 18 00:28:58 2011 - fix typo in youtube-playlists.pl (rt:71721) 0.34 Sat Oct 15 16:14:57 2011 - workaround for win32 - fix suffix problem 0.33 Wed Oct 12 01:17:34 2011 - added youtube-download.pl and youtube-playlist.pl (request by st3vil++) - fix doc 0.32 Tue Aug 23 01:52:20 2011 - added LICENSE file (no code change) 0.31 Tue Aug 23 00:25:02 2011 - added fmt 38 to .mp4 (mikolaj++) 0.30 Sun Aug 7 15:25:11 2011 - cleanup (mikolaj++) 0.29 Fri Aug 5 01:29:27 2011 - fixed a problem that did not works, becouse changed YouTube's design. (katsuhito konishi++) 0.28 Thu Aug 4 00:03:58 2011 - fixed a problem that did not works, becouse changed YouTube's design. (mikolaj++) 0.27 Sun May 29 23:32:31 2011 - fixed garbled (akiym++) - fixed typo (akiym++) 0.26 Wed Apr 20 01:34:55 2011 - fixed scrape problem (reported by Octavian++) 0.25 Sat Mar 19 00:39:41 2011 - added few more match URLs (mikolaj++) 0.24 Fri Mar 4 01:45:20 2011 - fixed could not fetch json data problem (akiym++) 0.23 Tue Feb 22 00:00:22 2011 - supported any video urls (mikolaj++) 0.22 Wed Jan 5 00:17:54 2011 - Fixed a problem that can not download videos there. (reported by Octavian) 0.21 Thu Dec 30 15:28:51 2010 - fixed bug for _video_id(). If already had $1 is defined, was returned $1 without matches. (woremacx++) 0.20 Wed Dec 15 00:57:43 2010 - YouTube's API had change, maybe fixed it. 0.16 Sun Oct 17 18:17:57 2010 - Required Text::More 0.96 later - fixed POD spell miss 0.15 Wed Aug 11 00:14:53 2010 - YouTube's API has changed so I fixed it. (reported by Bruce David) 0.14 Fri May 7 02:50:42 2010 - typo fix - wrote pod 0.13 Sat Apr 10 18:20:05 2010 - Each instance to create a LWP::UserAgent. # thx kuniyoshi 0.12 Sat Apr 3 16:06:33 2010 - upload miss X( 0.11 Sat Apr 3 15:02:25 2010 - added ua setter/getter. using CGI. 0.10 Sat Apr 3 02:56:18 2010 - rewrite all 0.07 Mon Mar 1 00:11:55 2010 - supported FULL HD quality 0.06 Sun Nov 8 00:46:55 2009 - Youtube respond to changes in 0.05 Mon Oct 12 14:58:23 2009 - Youtube respond to changes in 0.03 ~ 0.04 lost X( 0.02 Sat Jun 6 21:04:17 2009 - added 'fmt' field 0.01 Sat Apr 4 16:26:29 2009 - original version CPAN-Changes-0.500005/corpus/dists/Crypt-SaltedHash.changes000644 000000 000000 00000001033 14472651645 021325 0ustar00000000 000000 Revision history for Perl extension Crypt::SaltedHash. 0.06 Sun Feb 28 01:55:22 2010 - added clear method - add returns now $self 0.05 Thu Aug 10 03:04:33 2006 - switched to Module::Build 0.04 Thu Jan 26 04:56:56 2006 - algorithm recognition fixed 0.03 Mon Nov 14 23:59:59 2005 - spelling fixed 0.02 Mon Nov 14 17:54:00 2005 - fixed some bugs; added tests and documentation 0.01 Sun Nov 13 05:41:23 2005 - original version; created by h2xs 1.23 with options -XA -n Crypt::SaltedHash CPAN-Changes-0.500005/corpus/dists/Module-Info.changes000644 000000 000000 00000015657 14472651645 020345 0ustar00000000 000000 0.34 Tue May 21 21:48:49 CEST 2013 * Replace Test::Soundex in tests with Class::Struct, since Text::Soundex will not be in core in Perl 5.19 and up. * Replace ExtUtils::MY_Metafile with META_MERGE in Makefile.PL. 0.33 Sat Feb 9 13:12:22 CET 2013 * Fix tests under Perl 5.6.2 when some core modules have been upgraded (patch by Andreas Koenig). 0.32 Wed Sep 8 23:15:13 CEST 2010 + Add archlib and privlib to the search path for core modules (patch by Jonas B. Nielsen). 0.31_01 Mon Apr 12 23:53:53 CEST 2010 * Many test fixes. 0.31 Mon May 28 21:40:10 CEST 2007 * Fixed tests in presence of version.pm 0.72 or newer. - Added -h option to module_info. 0.30 Tue Dec 20 20:17:09 CET 2005 * Renamed the forked B::Utils to B::BUtils to avoid clashes until it is merged into the mainline. 0.29 Tue Nov 22 21:28:26 CET 2005 * Fixed version() for complex expressions. - Corrected some POD errors in module_info. 0.28_50 Sun Jul 10 21:48:19 CEST 2005 * Added support for version.pm (based upon a patch by John Peacock). * Fixed the safe() attribute to be per-object instead of global. 0.28 Sun Apr 17 17:10:33 CET 2005 - Correct the attributions of the fixes in 0.27 (I swapped authors' names). * Added Module::Build support as an alternative to ExtUtils::MakeMaker. * Added safe() option to forbid unsafe operations (currently executes version() code in a Safe compartment and forbids most other operations). * Fixed compatibility down to Perl 5.004_04. 0.27 Fri Mar 4 07:56:58 CET 2005 - Added missing localization of $_ in version(). (thanks to Johan Lodin) - Fixed new_from_loaded() to return nothing when the module is in fact not loaded. (thanks to Boris Zentner) 0.26 Sun Jul 11 17:15:36 CEST 2004 - Fix tests for Perl 5.8.x and 5.6.x. 0.25 Sun Jul 11 16:36:11 CEST 2004 - Fix test to work around modules_required reporting different version numbers (0.25 vs. 0.250) under bleadperl. * Report subroutine/method calls and modules required inside anonymous subroutines. 0.24 Wed Oct 1 11:45:45 CEST 2003 - Fixed version reported by modules_required for bleadperl. 0.23 Thu Sep 4 17:44:52 CEST 2003 - Fixes for modules other than the one being examined loaded from paths containing spaces. 0.22 Mon Aug 18 14:44:23 CEST 2003 * Fixed reporting of static method calls in Perl 5.8.1 RC4 - Fixed reporting of module versions in Perl 5.8.1 RC4 when "use Foo 1.2.3;" is used 0.21 Fri Aug 15 18:48:53 CEST 2003 - Added licensing information to Module::Info POD * Added modules_required(). Original patch by Martyn J. Pearce, adapted by me (Mattia Barbon) 0.20 Thu May 22 10:30:31 CEST 2003 - Fixed a warning in module_info (thanks to Nathan Torkington) - Corrected number of skipped tests for Perl versions earlier than 5.6.1 (thanks to Mike Fragassi) - Fixed syntax error with Perl 5.004 0.19 Tue Apr 1 15:45:43 CEST 2003 * Added package_versions() (patch by Ken Williams) - Fixed handling of v-strings in use/require 0.18 Sat Mar 8 17:44:24 CET 2003 * Upgraded bundled B::Utils to 0.04 + Schwern patches - Fixed detection of require() statements in non-trivial BEGIN blocks 0.17 Sun Mar 2 11:01:55 CET 2003 + Added module_info - Fixed a warning when enumerating packages 0.16 Wed Jan 1 21:21:31 CET 2003 - Capture stderr output on MacOS Classic (thanks to Axel Rose for the patch) 0.15 Mon Dec 23 15:08:14 CET 2002 * Added die_on_compilation_error() method. * MacOS classic: fixed methods requiring loading. 0.14 Sun Dec 8 11:42:11 CET 2002 - Don't show modules loaded via $ENV{PERL5OPT} - Fixed the case where an op may be NULL when searching for require 0.13 Sat Dec 7 10:29:42 CET 2002 - pfunc can now distinguish between class and object methods - B::Utils no longer loading Exporter to avoid loading a bunch of modules - B::Utils's fake carp/croak were broken - B::Utils::opgrep() was not finding ops properly - Test made more polite for systems who's path_sep is not : - Fixing case where an op filter may encounter a NULL op when checking for entersubs - Quote filename in the call to B::Module::Info, allows using directories with spaces - Fixed the case where a module does not have any BEGIN blocks * Fixed non-bareword require in a BEGIN block * Fixed require $foo * Fixed BEGIN blocks not containing a require * Scan subroutines when searching for required modules * Fixed various problems with perl 5.6.1 on Win32 (probably due to ithreads) - Use IPC::Open3 under Windows 95/98/ME, since 2>&1 does not work 0.12 Sat Feb 2 19:41:01 EST 2002 * Added pfunc - Now tested back to 5.004 * Fixed a bug where certain modules were being ignored - Fixed a bug in subroutines_called() with EXPR->method() - subroutines_called() now reports properly on function calls with symbolic refs 0.11 Sat Feb 2 16:54:23 EST 2002 * Fixed B::Utils->kids * Added subroutines_called() * Added superclasses() * Added dynamic_method_calls() - Documented that it isn't just for modules. - name() can now be used to set - failures inside B::Module::Info now report their errors instead of failing silently * Added a THANKS section. 0.10 Wed Dec 12 05:40:14 EST 2001 * Windows filenames would cause subroutines() and modules_used() to choke. (Thanks to Alessandro Forghieri for the patch) 0.09 Mon Dec 10 14:55:09 EST 2001 - little bug in modules_used() and "require 5.004" 0.08 Mon Dec 10 14:24:56 EST 2001 * Implemented modules_used() - Fixed a little bug in walkoptree_filtered() and $B::Utils::file/line 0.07 Mon Dec 10 11:09:40 EST 2001 * Implemented subroutines(). Need help getting modules_used() done. - Fixed up $B::Utils::file/line handling in B::Utils. - Fixed a little bug in is_core involving cannonical paths. I forget who gave me the patch! 0.06 Sat Nov 24 20:45:15 EST 2001 * Implemented packages_inside(). Need help getting the rest done. - Distributing a hacked up version of B::Utils until the main distribution gets fixed. 0.05 Fri Nov 23 18:06:22 EST 2001 - Rafael Garcia-Suarez noticed I forgot to deal with code refs in @INC. The plan is to just skip them until someone notices. 0.04 Fri Nov 23 14:49:21 EST 2001 - Tassilo von Parseval noted warnings.pm isn't backwards compat. Replaced with $^W. 0.03 Fri Nov 23 00:39:11 EST 2001 - Testing all_installed() - Abe Timmerman fixed a little portability bug in the test. 0.02 Thu Nov 22 10:08:00 EST 2001 * Added new_from_loaded() 0.01 Thu Nov 22 09:42:06 EST 2001 * First working version * From a discussion on p5p about ExtUtils::MM_Unix->parse_version http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2001-11/msg01263.html CPAN-Changes-0.500005/corpus/dists/Digest-MD5.changes000644 000000 000000 00000045613 14472651645 020024 0ustar00000000 000000 2013-07-02 Gisle Aas Release 2.53 Drop File::Spec dependency and don't override installation location for perl-5.12++ Documentation tweaks. 2012-06-08 Gisle Aas Release 2.52 Gisle Aas (3): Wrong version number in the changelog The t/threads.t was missing from the MANIFEST Update expected digests for files Andrew Fresh (1): Remove double the Lyle Hopkins (1): Digest::Perl::MD5 OO fallback didn't work [RT#66634] Peter J. Acklam (1): Fix typos (spelling errors) in cpan/Digest-MD5/* Shlomi Fish (1): Modernize the code in the POD. Zefram (1): Makes Digest::MD5 work on Perl 5.6 [RT#75032] 2010-09-30 Gisle Aas Release 2.51 Florian Ragwitz (1): Fix compilation with c++ compilers Gisle Aas (1): Fix repository specification in META.yml 2010-09-25 Gisle Aas Release 2.50 Chris 'BinGOs' Williams (1): Amended tests to work with perl core. Florian Ragwitz (3): Attach context pointers using sv magic Add failing test for thread cloning Clone MD5 contexts on thread cloning get_md5_ctx should never return anything but a valid pointer Gisle Aas (1): perl-5.6 no longer supported Jesse Vincent (1): Preserve utf8ness of argument [RT#44927] 2010-07-03 Gisle Aas Release 2.40 Marc Pignat (1): Safer alignment test [RT#35823] Robin Barker (1): consting in new ext/ Gisle Aas (1): Remove the MacOS branch of this test 2009-06-09 Gisle Aas Release 2.39 Nicholas Clark (2): Get rid of the PERL_CORE hacks Sync core: Rename ext/Digest/MD5 to ext/Digest-MD5 Jerry Hedden (1): Handle non-numeric version numbers in ext/Digest/MD5/Makefile.PL 2008-11-14 Gisle Aas Release 2.38 The 2.37 tarball was infected by various '._*' files. Thank you, Mac OS X! Applied warning fix from Geoff Richards [RT#19643] Applied compatibility fix from Alexandr Ciornii [RT#30348] 2008-11-12 Gisle Aas Release 2.37 Sync up with consting changes from the perl core. 2005-11-30 Gisle Aas Release 2.36 Fix documentation typo. 2005-11-26 Gisle Aas Release 2.35 Forgot to incorporate fixes already applied to bleadperl :-( - doc typo - consting - unused my_na - USE_HEAP_INSTEAD_OF_STACK for Symbian 2005-11-26 Gisle Aas Release 2.34 Document that it is now easy to generate different messages that produce the same MD5 digest. Use XSLoader; perl-5.6 is now required. Tweaks to the processing of $? after running the test program. 2003-12-07 Gisle Aas Release 2.33 Enable explicit context passing for slight performance improvement in threaded perls. Tweaks to the Makefile.PL so that it is suitable both for core and CPAN use. 2003-12-05 Gisle Aas Release 2.32 Don't run u32align test program on HP-UX 10.20 as it will hang. Patch by H.Merijn Brand . Fixed documentation typo. 2003-11-28 Gisle Aas Release 2.31 Inherit add_bits() from Digest::base if available. 2003-10-09 Gisle Aas Release 2.30 Some tweaks to make the module build on perl-5.004 and perl-5.005 again. 2003-10-06 Gisle Aas Release 2.29 Another try. Forgot to update the test checksums. 2003-10-06 Gisle Aas Release 2.28 Fix minor documentation typo. 2003-08-04 Gisle Aas Release 2.27 Avoid having to figure how to compile alignment test program on MS-Windows by just assume free alignment as for i386. Source builds on Windows was apparently broken. 2003-07-21 Gisle Aas Release 2.26 Don't assume PerlIO_read() works like fread() even though it was documented like that for perl 5.6. It returns negative on read failure. Kill test #3 in t/badfile.t. I don't know a reliable way to test read failures on a file handle. Seems better not to test than to make many worry. 2003-07-04 Gisle Aas Release 2.25 The $md5->addfile method now croaks if it discovers errors on the handle after reading from it. This should make it more difficult to end up with the wrong digest just because you are to lazy to check the error status on your file handles after reading from them. Improved documentation. Sync up with bleadperl; even safer patchlevel include. 2003-03-09 Gisle Aas Release 2.24 Don't let the $^W test get confused by lexical warnings. Sync up with bleadperl; safer patchlevel include. 2003-01-18 Gisle Aas Release 2.23 Override INSTALLDIRS for 5.8 as suggested by Guido Ostkamp . 2003-01-04 Gisle Aas Release 2.22. Added clone method. Contributed by Holger Smolinski 2002-12-27 Gisle Aas Release 2.21 Minor tweaks sync up with bleadperl: - VMS optimizer tweaks to the Makefile.PL - MacOS support - Added alignment test Added example to the MD5 POD that shows how to calculate the digest of Unicode strings. 2002-05-05 Gisle Aas Release 2.20 More synchronization with tweaks Jarkko have done to the bleadperl test suite. This time various EBCDIC hacks. Outside PERL_CORE the md5-aaa.t test loaded the wrong version of the module (and would fail if no previous Digest::MD5 was installed). Patch by Mike Stok 2002-05-01 Gisle Aas Release 2.19 One more test suite update from Jarkko to sync it even better with bleadperl. 2002-05-01 Gisle Aas Release 2.18 Changes #12954 and #16173 from bleadperl. Documentation typo fix and some signed/unsigned mismatches that Microsoft's C compiler complained about. The EBCDIC-aware md5-aaa.t from bleadperl. 2002-04-25 Gisle Aas Release 2.17 The SvPVbyte in perl-5.6.1 is buggy. Use the one from 5.7.3 instead. Give warning if the function interface is used as instance methods: $md5->md5_hex(). 2001-09-07 Gisle Aas Release 2.16 Sync up with the bleadperl version: - use SvPVbyte() if available - fixes to make the code 'gcc -Wall'-clean 2001-08-27 Gisle Aas Release 2.15 Avoid exit() in Makefile.PL and bleadperl redefinition of printf in the alignment test program. Patch by Doug MacEachern . 2001-07-18 Gisle Aas Release 2.14 Try to warn if the functional interface is used as methods, i.e. Digest::MD5->md5_hex("foo") will make noise if -w is enabled. Document the missing padding for the base64 digests. If both XS bootstrap and locating Digest::Perl::MD5 fails re-raise the original XS bootstrap exception. 2001-03-13 Gisle Aas Release 2.13 Moved all other Digest:: modules out of the Digest-MD5 dist. 2000-09-18 Gisle Aas Release 2.12 Avoid pointer cast warning for machines with bigger ints than pointers. Patch by Robin Barker . 2000-08-19 Gisle Aas Release 2.11 The fallback code introduced in 2.10 did only work for perl-5.6.0. It should now for for perl5.004 and 5.005 as well. Patch by Ville Skyttä . 2000-08-18 Gisle Aas Release 2.10 Digest::MD5 will now try to fallback to the pure perl implementation of Digest::Perl::MD5 if bootstrap fails. Added a bit internal paranoia about casting the IV in the Digest::MD5 object to the MD5_CTX* pointer. 1999-08-06 Gisle Aas Release 2.09 Documentation update. 1999-07-28 Gisle Aas Release 2.08 The addfile() methods could trigger a core dump when passed a filehandle that had failed to open. 1999-04-26 Gisle Aas Release 2.07 The Digest::SHA1 module failed on some 64-bit systems, because I assumed there was a correspondence between the U32 size and BYTEORDER. This version use 'unsigned long' as Uwe's original SHA module did. The module should now work better when liked statically with perl, because we now use a safer module-loaded test in Digest.pm. Assume we know the outcome of the alignment test on VMS. Patch by Chuck Lane 1999-03-26 Gisle Aas Release 2.06 Avoid LONG and BYTE types in SHA.xs as they was in conflict with similar definitions in . Patch by Marko Asplund to make the alignment test program link successfully with sfio-perl. Fixed a typo in MD5.xs that might have affected 64-bit systems. Spotted by Nick Ing-Simmons 1999-03-15 Gisle Aas Release 2.05 Included Digest::SHA1 based on Uwe Hollerbach's SHA module. 1999-03-05 Gisle Aas Release 2.04 Avoid the -o option when compiling alignment test program for Win32 as suggested by Gurusamy Sarathy. DEC Compiler bug workaround. Contributed by D Roland Walker Having references to a local variable called "na" was not very safe either. Some older versions of Perl can apparently macroize this into something completely different. 1999-02-27 Gisle Aas Release 2.03 Patch from Christopher J. Madsen that should help getting the u32align test program to compile with Visual C++ 5 on Windows NT. Got rid of references to PL_na. 1999-01-31 Gisle Aas Release 2.02 Added a hints file as workaround for an IRIX compiler bug. Contributed by D Roland Walker . Note that the rfc2202 test can still fail on some DEC Alpha, because of a compiler bug that affects the perl 'x' operator. The Digest:: modules should work and be safe to install anyway. 1998-12-18 Gisle Aas Release 2.01 Some casts and tweaks to make picky compilers more happy. 1998-11-04 Gisle Aas Release 2.00. Taken out Digest::SHA1 as this module will be provided from Uwe Hollerbach later. Some tweaks to MD2.xs and MD5.xs since "na" disappeared in perl5.005_53 1998-10-30 Gisle Aas Release 1.99_60 The 1.99_59 release introduced compilation problems for big-endian systems with free U32 alignment. Bug reported, and fix suggested by Paul J. Schinder . 1998-10-28 Gisle Aas Release 1.99_59 Makefile.PL will run a test program to find out if U32 values can be aligned anywhere. This hopefully cures the core dumps reported on Solaris and other big endian systems. Thanks to Graham Barr for debugging this. 1998-10-28 Gisle Aas Release 1.99_58 Should be very close to a 2.00 release now. Need some success reports from people running on big-endian machines first I think. Added a Digest::MD2 implementation. Wrote Digest.pm documentation. This define the interface that all Digest:: modules should provide. Avoided some code duplication in MD5.xs Fixed typo, that prevented Digest::SHA1::sha1_base64() from working. 1998-10-27 Gisle Aas Release 1.99_57 Rewritten most of the MD5 C code to make it real fast (especially on little-endian machines without alignment restrictions for U32). Compared to MD5-1.7 we can process files 4 times as fast and we digest small stuff in memory 7 times faster. I came to these conclusions after these tests (gcc -O2, i586, Linux): First tested calculation of the digest of a 31 MB file, using perl -le 'print Digest::MD5->new->addfile(*STDIN)->hexdigest' and similar stuff: MD5-1.7: 21.06s Digest::MD5-1.99_57: 5.23s md5sum (GNU textutils): 4.90s As you can see, we do nearly as good as the md5sum program. I think the reason we don't beat md5sum is that perl always insist on loading extra modules like Config.pm, Carp.pm, strict.pm, vars.pm, AutoLoader.pm and DynaLoader.pm. When I simply wrapped the MD5.xs hasher code in a C program I managed to process the file in 4.68s. Then we calculated the digest of the same 6 byte sting, 20000 times: MD5-1.7: 11.81s Digest::MD5-1.99_57: 1.68s Digest::MD5 benefit from making this into a plain procedure call instead of a static method call. Other changes in this release are: Documentation update Internal MD5.xs cleanup. $md5->digest will automatically reset now. Digest::HMAC methods add() and addfile() did not return the correct object. Added Digest.pm loading module. I am not sure this is a good idea. Added Digest::SHA1 and Digest::HMAC_SHA1 module. The Digest::SHA1 module is just a wrapper around SHA.pm. I hope to get the author of SHA.pm to move his module to the Digest:: category. 1998-10-25 Gisle Aas Release 1.99_56 Fix memcpy_byteswap() function in MD5.xs. Must be careful with htovl() as it might evaluate its arguments more than once. 1998-10-25 Gisle Aas Release 1.99_55 Grahams HMAC_MD5.pm split into two modules. Digest::HMAC and Digest::HMAC_MD5. Also provide functional interface. Documentation is still lacking. Included RFC 2202 based test for HMAC-MD5. 1998-10-24 Gisle Aas Release 1.99_54 Included HMAC_MD5.pm, contributed by Graham Barr . I have a hard time to make up my mind :-) md5_bin() renamed back to md5(). Functions are not exported by default any more. Try to Encode/Decode with memcpy_byteswap for 32-bit big-endian machines. 1998-10-23 Gisle Aas Release 1.99_53 Renamed core module as Digest::MD5. Leave a MD5.pm stub for legacy code. The md5() function renamed as md5_bin(). The constructor, Digest::MD5->new, no longer takes any extra arguments. Added some new tests. Updated the documentation. $md5->b64digest implemented with same base64 encoder as md5_base64. 1998-10-23 Gisle Aas Release 1.99_52 Patch from Graham Barr which make it work for big-endian machines again. 1998-10-22 Gisle Aas Release 1.99_51 The MD5 class is now subclassable. The add() and addfile() methods now return $self. The reset() method is just an alias for new(). The constructor (MD5->new) now takes optional arguments which are automatically added. It means that we can now write: MD5->new($data)->hexdigest; New $md5->b64digest method. New functions that are exported on request: md5, md5_hex, md5_base64 Included RFC 1321 Barely started to update the documentation. 1998-10-22 Gisle Aas Release 1.99_50 Much better performance (more than twice as fast now). Mostly because we use Copy/Zero instead of the original MD5_memcpy and MD5_memset functions. The addfile() and hexdigest() methods are now XS implemented. All RSA functions now included in MD5.xs and made static. Use perl's Copy/Zero. Random cleanup, simplifications and reformatting. Merged things better with the perl configuration. Neil Winton's versions below: *** 96/06/20 Version 1.7 MD5 is now completely 64-bit clean (I hope). The basic MD5 code uses 32-bit quantities and requires a typedef UINT4 to be defined in global.h. Perl configuration data (the value of BYTEORDER) is used to determine if unsigned longs have 4 or 8 bytes. On 64-bit platforms (eg DEC Alpha) then it assumes that "unsigned int" will be a 32-bit type. If this is incorrect then adding -DUINT4_IS_LONG to the DEFINES line in Makefile.PL will override this. On some machines (at least Cray that I know of) there is no 32-bit integer type. In this case defining TRUNCATE_UINT4 (which is done automatically for a Cray) will ensure that 64-bit values are masked down to 32 bits. I have done my best to test this but without easy access to a true 64-bit machine I can not totally guarantee it (unless anyone wants to lend me a spare Cray :-) There is one remaining limitation for 64-bit enabled processors. The amount of data passed to any single call to the underlying MD5 routines is limited to (2^32 - 1) bytes -- that's 4 gigabytes. I'm sorry if that's a real problem for you ... And finally, a minor compilation warning (unsigned char * used with function having char * prototype) has also been eliminated. *** 96/04/09 Version 1.6 Re-generated module framework using h2xs to pick up the latest module conventions for versions etc. You can now say "use MD5 1.6;" and things should work correctly. MD5.pod has been integrated into MD5.pm and CHANGES renamed to Changes. There is a fairly comprehensive test.pl which can be invoked via "make test". There are no functional changes to the MD5 routines themselves. *** 96/03/14 Version 1.5.3 Fixed addfile method to accept type-glob references for the file-handle (eg \*STDOUT). This is more consistent with other routines and is now the recommended way of passing file-handles. The documentation now gives more examples as to how the routines might be used. *** 96/03/12 Version 1.5.2 Minor fixes from Christopher J Madsen to provide support for building on OS/2 (and to work around a perl -w bug). Remove warning about possible difference between add('foo', 'bar') and add('foobar'). This is not true (it may have been true in the earliest version of the module but is no longer the case). *** 96/03/08 Version 1.5.1 Add CHANGES file to make it easier for people to figure out what has been going on. (Meant to do this as part of 1.5) *** 96/03/05 Version 1.5 Add hash() and hexhash() methods at the suggestion/request of Gary Howland before inclusion in a wider library of cryptography modules. *** 96/02/27 Version 1.4 Finally fixed the pesky Solaris dynamic loading bug. All kudos to Ken Pizzini ! *** 95/11/29 Version 1.3.1 Add explanations of current known problems. *** 95/06/02 Version 1.3 Fix problems with scope resolution in addfile() reported by Jean-Claude Giese . Basically ARGV is always implicitly in package main while other filehandles aren't. *** 95/05/23 Version 1.2.1 [Changes pre 1.2.1 not recorded] CPAN-Changes-0.500005/corpus/dists/GraphViz2.parsed000644 000000 000000 00000226677 14472651645 017717 0ustar00000000 000000 { "preamble" => "Revision history for Perl extension GraphViz2.", "raw_preamble" => "Revision history for Perl extension GraphViz2.\n\n", "releases" => [ { "date" => "2014-02-11T13:40:00Z", "entries" => [ { "line" => 4, "raw" => "\t- Stop using bare word file handles (again).\n", "style" => "-", "text" => "Stop using bare word file handles (again)." }, { "line" => 5, "raw" => "\t- Change sub BUILD() in all sub-classes to check whether or not a 'graph' parameter was supplied to new().\n\t\tIf so, use it rather than instantiating a new GraphViz2 object.\n\t\tThis fixes a problem with those script/*.pl demos which use this feature.\n", "style" => "-", "text" => "Change sub BUILD() in all sub-classes to check whether or not a 'graph' parameter was supplied to new(). If so, use it rather than instantiating a new GraphViz2 object. This fixes a problem with those script/*.pl demos which use this feature." }, { "line" => 8, "raw" => "\t- Fiddle t/sample.recdescent.1.dat, since the original test data happened to look like HTML,\n\t\tand that stopped GraphViz2.stringify_attributes() adding double-quotes to protect the label.\n\t\tThat in turn caused dot to issue a syntax error when the generated DOT data was read.\n\n", "style" => "-", "text" => "Fiddle t/sample.recdescent.1.dat, since the original test data happened to look like HTML, and that stopped GraphViz2.stringify_attributes() adding double-quotes to protect the label. That in turn caused dot to issue a syntax error when the generated DOT data was read." } ], "line" => 3, "raw" => "2.27 Tue Feb 11 13:40:00 2014\n", "raw_date" => "Tue Feb 11 13:40:00 2014", "version" => "2.27" }, { "date" => "2014-01-30T12:44:00Z", "entries" => [ { "line" => 13, "raw" => "\t- Stop using bare word file handles.\n", "style" => "-", "text" => "Stop using bare word file handles." }, { "line" => 14, "raw" => "\t- Remove these lines from GraphViz2.pm (because utf8 is global and the others are not needed):\n\t\tuse utf8;\n\t\tuse open qw(:std :utf8); # Undeclared streams in UTF-8.\n\t\tuse charnames qw(:full :short); # Unneeded in v5.16.\n\n", "style" => "-", "text" => "Remove these lines from GraphViz2.pm (because utf8 is global and the others are not needed): use utf8; use open qw(:std :utf8); # Undeclared streams in UTF-8. use charnames qw(:full :short); # Unneeded in v5.16." } ], "line" => 12, "raw" => "2.26 Thu Jan 30 12:44:00 2014\n", "raw_date" => "Thu Jan 30 12:44:00 2014", "version" => "2.26" }, { "date" => "2014-01-06T17:06:00Z", "entries" => [ { "line" => 20, "raw" => "\t- Remove debug printing of the output of 'dot -T?' (a list of valid output formats).\n", "style" => "-", "text" => "Remove debug printing of the output of 'dot -T?' (a list of valid output formats)." }, { "line" => 21, "raw" => "\t- Fix typos in output names in rank.sub.graph.1.pl and rank.sub.graph.2.pl.\n\t\trank.sub.graph.1.pl was outputting to html/rank.sub.graph.2.svg and visa versa.\n\n", "style" => "-", "text" => "Fix typos in output names in rank.sub.graph.1.pl and rank.sub.graph.2.pl. rank.sub.graph.1.pl was outputting to html/rank.sub.graph.2.svg and visa versa." } ], "line" => 19, "raw" => "2.25 Mon Jan 6 17:06:00 2014\n", "raw_date" => "Mon Jan 6 17:06:00 2014", "version" => "2.25" }, { "date" => "2013-12-02T09:30:00Z", "entries" => [ { "line" => 25, "raw" => "\t- Rewrite scripts/extract.output.formats.pl, which used to download a page of documentation from graphviz.org,\n\t\tand parse it to build a list of output formats. The problems are:\n\t\t(1) Forgetting to run the script; (2) the on-line docs being out-of-date.\n\t\tSo, as of this version, I now parse the output of 'dot -T?', which will not just be more accurate,\n\t\tbut will also include the formats supported by locally-installed plugins. It's a win-win result.\n", "style" => "-", "text" => "Rewrite scripts/extract.output.formats.pl, which used to download a page of documentation from graphviz.org, and parse it to build a list of output formats. The problems are: (1) Forgetting to run the script; (2) the on-line docs being out-of-date. So, as of this version, I now parse the output of 'dot -T?', which will not just be more accurate, but will also include the formats supported by locally-installed plugins. It's a win-win result." }, { "line" => 30, "raw" => "\t- Put that new logic into GraphViz2's load_valid_attributes() method.\n", "style" => "-", "text" => "Put that new logic into GraphViz2's load_valid_attributes() method." }, { "line" => 31, "raw" => "\t- Expand the FAQ to discuss the above operation.\n\n", "style" => "-", "text" => "Expand the FAQ to discuss the above operation." } ], "line" => 24, "raw" => "2.24 Mon Dec 2 09:30:00 2013\n", "raw_date" => "Mon Dec 2 09:30:00 2013", "version" => "2.24" }, { "date" => "2013-12-01T09:42:00Z", "entries" => [ { "line" => 34, "raw" => "\t- Update lists of valid attibutes by running scripts/extract.*.pl, and incorporating the changes into\n\t\tthe source code of GraphViz2.pm (at the end). I use Data::Section::Simple to read this data.\n\t\tThese lists now correspond to Graphviz V 2.34. Changes:\n\t\to Remove 'aspect' as an attribute 'graph'.\n\t\to Add 'inputscale' as an attribute of 'graph'.\n\t\to Add 'overlap_shrink' as an attribute of 'graph'.\n\t\to Add 'star' as an attribute of 'node shape'.\n\t\to Add 'underline' as an attribute of 'node shape'.\n\t\to Add 'xdot1.2' as an attribute of 'output format'.\n\t\to Add 'xdot1.4' as an attribute of 'output format'.\n\t\tSee RT#91073. Many thanx for Kent Fredric for bringing this to my attention.\n", "style" => "-", "text" => "Update lists of valid attibutes by running scripts/extract.*.pl, and incorporating the changes into the source code of GraphViz2.pm (at the end). I use Data::Section::Simple to read this data. These lists now correspond to Graphviz V 2.34. Changes: o Remove 'aspect' as an attribute 'graph'. o Add 'inputscale' as an attribute of 'graph'. o Add 'overlap_shrink' as an attribute of 'graph'. o Add 'star' as an attribute of 'node shape'. o Add 'underline' as an attribute of 'node shape'. o Add 'xdot1.2' as an attribute of 'output format'. o Add 'xdot1.4' as an attribute of 'output format'. See RT#91073. Many thanx for Kent Fredric for bringing this to my attention." }, { "line" => 45, "raw" => "\t- Add t/version.t, which uses Test::Version.\n", "style" => "-", "text" => "Add t/version.t, which uses Test::Version." }, { "line" => 46, "raw" => "\t- Update pre-reqs.\n", "style" => "-", "text" => "Update pre-reqs." }, { "line" => 47, "raw" => "\t- Add use strict/warnings to Build.PL and Makefile.PL.\n\n", "style" => "-", "text" => "Add use strict/warnings to Build.PL and Makefile.PL." } ], "line" => 33, "raw" => "2.23 Sun Dec 1 09:42:00 2013\n", "raw_date" => "Sun Dec 1 09:42:00 2013", "version" => "2.23" }, { "date" => "2013-09-06T16:03:00Z", "entries" => [ { "line" => 50, "raw" => "\t- Fix handling of graph attributes which are for clusters but not for subgraphs.\n\t\tSee scripts/sub.graph.frames.pl for sample code.\n\t\tSee the demo page for the output of that script.\n\t\tSee the new FAQ item 'How do I specify attributes for clusters?' for details.\n\t\tMany thanx to Bill Hollingsworth (private email) for prompting me to investigate this bug.\n", "style" => "-", "text" => "Fix handling of graph attributes which are for clusters but not for subgraphs. See scripts/sub.graph.frames.pl for sample code. See the demo page for the output of that script. See the new FAQ item 'How do I specify attributes for clusters?' for details. Many thanx to Bill Hollingsworth (private email) for prompting me to investigate this bug." }, { "line" => 55, "raw" => "\t- Document method default_subgraph().\n\n", "style" => "-", "text" => "Document method default_subgraph()." } ], "line" => 49, "raw" => "2.22 Fri Sep 6 16:03:00 2013\n", "raw_date" => "Fri Sep 6 16:03:00 2013", "version" => "2.22" }, { "date" => "2013-09-06T13:00:00Z", "entries" => [ { "line" => 58, "raw" => "\t- Replace Path::Tiny with File::Spec, because the former's list of dependencies is soooo long :-(.\n\t\tChanged files: GraphViz2::Config, scripts/copy.config.pl, scripts/find.config.pl, Build.PL and Makefile.PL.\n\t\tSee: RT#88435 (for Tree::DAG_Node) for an explanation.\n\n", "style" => "-", "text" => "Replace Path::Tiny with File::Spec, because the former's list of dependencies is soooo long :-(. Changed files: GraphViz2::Config, scripts/copy.config.pl, scripts/find.config.pl, Build.PL and Makefile.PL. See: RT#88435 (for Tree::DAG_Node) for an explanation." } ], "line" => 57, "raw" => "2.21 Fri Sep 6 13:00:00 2013\n", "raw_date" => "Fri Sep 6 13:00:00 2013", "version" => "2.21" }, { "date" => "2013-08-27T16:22:00Z", "entries" => [ { "line" => 63, "raw" => "\t- In sub stringify_attributes(), remove leading and trailing whitespace from HTML tables like so:\n\t\ts/^\\s+(<)/\$1/ and s/(>)\\s+\$/\$1/. This is formatting sugar, but it also affects the next regexp.\n", "style" => "-", "text" => "In sub stringify_attributes(), remove leading and trailing whitespace from HTML tables like so: s/^\\s+(<)/\$1/ and s/(>)\\s+\$/\$1/. This is formatting sugar, but it also affects the next regexp." }, { "line" => 65, "raw" => "\t- In the same sub, change a regexp from /^<.+>\$/ to /^<.+>\$/s. Note trailing 's'.\n\t\tThis allows '.' to match newlines within HTML lables. This fixes a bug (not yet reported :-).\n", "style" => "-", "text" => "In the same sub, change a regexp from /^<.+>\$/ to /^<.+>\$/s. Note trailing 's'. This allows '.' to match newlines within HTML lables. This fixes a bug (not yet reported :-)." }, { "line" => 67, "raw" => "\t- Both these changes allow HTML labels to be more nicely formatted in the source code of the module\n\t\twhich uses GraphViz2 (such as MarpaX::Grammar::GraphViz2).\n", "style" => "-", "text" => "Both these changes allow HTML labels to be more nicely formatted in the source code of the module which uses GraphViz2 (such as MarpaX::Grammar::GraphViz2)." }, { "line" => 69, "raw" => "\t- Split scripts/html.labels.pl into scripts/html.labels.1.pl and scripts/html.labels.2.pl.\n\t\tThese demonstrate the 2 types of HTML labels.\n", "style" => "-", "text" => "Split scripts/html.labels.pl into scripts/html.labels.1.pl and scripts/html.labels.2.pl. These demonstrate the 2 types of HTML labels." }, { "line" => 71, "raw" => "\t- Document sub escape_some_chars().\n", "style" => "-", "text" => "Document sub escape_some_chars()." }, { "line" => 72, "raw" => "\t- Add an FAQ item on using whitespace in HTML labels.\n\n", "style" => "-", "text" => "Add an FAQ item on using whitespace in HTML labels." } ], "line" => 62, "raw" => "2.20 Tue Aug 27 16:22:00 2013\n", "raw_date" => "Tue Aug 27 16:22:00 2013", "version" => "2.20" }, { "date" => "2013-08-20T10:44:00Z", "entries" => [ { "line" => 75, "raw" => "\t- Remove the global graph attribute 'record_orientation', as forewarned in V 2.10, in June.\n", "style" => "-", "text" => "Remove the global graph attribute 'record_orientation', as forewarned in V 2.10, in June." }, { "line" => 76, "raw" => "\t- Fix handling of some global attributes.\n\t\tPreviously, some options mentioned in the call to new(...) were not set by that call.\n\t\tThe options affected were: 'driver', 'format', 'strict', 'subgraph' and 'timeout'.\n\t\tThe options 'driver', 'format', and 'timeout' could be set in the call to run(...),\n\t\tbut in new(...), the value of 'format' was ignored, and the value of 'subgraph' generated an error\n\t\treferring to '... not a valid attribute ...'.\n\t\tThanx to Larry Knibb for reporting this problem, for 'driver'.\n", "style" => "-", "text" => "Fix handling of some global attributes. Previously, some options mentioned in the call to new(...) were not set by that call. The options affected were: 'driver', 'format', 'strict', 'subgraph' and 'timeout'. The options 'driver', 'format', and 'timeout' could be set in the call to run(...), but in new(...), the value of 'format' was ignored, and the value of 'subgraph' generated an error referring to '... not a valid attribute ...'. Thanx to Larry Knibb for reporting this problem, for 'driver'." }, { "line" => 83, "raw" => "\t- Remove reference to GraphViz2::Parse::Marpa from scripts/pod2html.sh. See comment below for V 2.15.\n\t\tThis module has been replaced by MarpaX::Grammar::GraphViz2, which depends on MarpaX::Grammar::Parser.\n\n", "style" => "-", "text" => "Remove reference to GraphViz2::Parse::Marpa from scripts/pod2html.sh. See comment below for V 2.15. This module has been replaced by MarpaX::Grammar::GraphViz2, which depends on MarpaX::Grammar::Parser." } ], "line" => 74, "raw" => "2.19 Tue Aug 20 10:44:00 2013\n", "raw_date" => "Tue Aug 20 10:44:00 2013", "version" => "2.19" }, { "date" => "2013-08-07T09:22:00Z", "entries" => [ { "line" => 87, "raw" => "\t- Remove print from sub BUILD() left over from debugging.\n", "style" => "-", "text" => "Remove print from sub BUILD() left over from debugging." }, { "line" => 88, "raw" => "\t- Update Build.PL and Makefile.PL to include bugtracker and license items.\n\t\tAlso replace the Perl version checking code with a simple 'require 5.014.002; # For the utf8 stuff.'.\n\n", "style" => "-", "text" => "Update Build.PL and Makefile.PL to include bugtracker and license items. Also replace the Perl version checking code with a simple 'require 5.014.002; # For the utf8 stuff.'." } ], "line" => 86, "raw" => "2.18 Wed Aug 7 09:22:00 2013\n", "raw_date" => "Wed Aug 7 09:22:00 2013", "version" => "2.18" }, { "date" => "2013-08-03T08:58:00Z", "entries" => [ { "line" => 92, "raw" => "\t- Fix handling of record shapes. E.g. label => [] ignored global default shape 'Mrecord'.\n\t\tThanx to Kent Fredric for this report. See RT#87560.\n", "style" => "-", "text" => "Fix handling of record shapes. E.g. label => [] ignored global default shape 'Mrecord'. Thanx to Kent Fredric for this report. See RT#87560." }, { "line" => 94, "raw" => "\t- Fix handling of the graph's default name. This is used in 'digraph \$name {...}'.\n\t\tPreviously, names like '' or '0' were ignored, and such values defaulted to 'Perl'.\n", "style" => "-", "text" => "Fix handling of the graph's default name. This is used in 'digraph \$name {...}'. Previously, names like '' or '0' were ignored, and such values defaulted to 'Perl'." }, { "line" => 96, "raw" => "\t- Add scripts/record.4.pl to demonstrate setting record-style node attributes.\n", "style" => "-", "text" => "Add scripts/record.4.pl to demonstrate setting record-style node attributes." }, { "line" => 97, "raw" => "\t- Fix names of html/utf8*.svg and png files, as output by scripts/utf8*.pl.\n", "style" => "-", "text" => "Fix names of html/utf8*.svg and png files, as output by scripts/utf8*.pl." }, { "line" => 98, "raw" => "\t- Fix scripts/generate.sh.pl which generates scripts/generate.(png,svg).sh.\n\n", "style" => "-", "text" => "Fix scripts/generate.sh.pl which generates scripts/generate.(png,svg).sh." } ], "line" => 91, "raw" => "2.17 Sat Aug 3 08:58:00 2013\n", "raw_date" => "Sat Aug 3 08:58:00 2013", "version" => "2.17" }, { "date" => "2013-08-02T10:54:00Z", "entries" => [ { "line" => 101, "raw" => "\t- Patch GraphViz2.pm to handle both SVG and (eg) PNG output. I failed to test this properly.\n\t\tThanx to Kent Fredric for this report. See RT#87525.\n", "style" => "-", "text" => "Patch GraphViz2.pm to handle both SVG and (eg) PNG output. I failed to test this properly. Thanx to Kent Fredric for this report. See RT#87525." }, { "line" => 103, "raw" => "\t- Patch scripts/Heawood.pl to use font ArialMT instead of Arial when running under Darwin (OSX). Grrrr.\n\t\tThanx to David Jack Olrik for this report. See RT#87478.\n", "style" => "-", "text" => "Patch scripts/Heawood.pl to use font ArialMT instead of Arial when running under Darwin (OSX). Grrrr. Thanx to David Jack Olrik for this report. See RT#87478." }, { "line" => 105, "raw" => "\t- Remove special case code in scripts/jointed.edges.pl. It used png:gd instead of png, to work round\n\t\tan unknown Graphviz problem. Let's hope /your/ version of Graphviz is up-to-date.\n", "style" => "-", "text" => "Remove special case code in scripts/jointed.edges.pl. It used png:gd instead of png, to work round an unknown Graphviz problem. Let's hope /your/ version of Graphviz is up-to-date." }, { "line" => 107, "raw" => "\t- Patch scripts/circo.pl: Add comment searched for by t/test.t, which is used to label html/index.html.\n", "style" => "-", "text" => "Patch scripts/circo.pl: Add comment searched for by t/test.t, which is used to label html/index.html." }, { "line" => 108, "raw" => "\t- Add scripts/generate.sh.pl to generate scripts/generate.png.sh and scripts/generate.svg.sh.\n\t\tThis adds 2 tests, and 2 images to the demo page, and fixes various typos in those *.sh files.\n", "style" => "-", "text" => "Add scripts/generate.sh.pl to generate scripts/generate.png.sh and scripts/generate.svg.sh. This adds 2 tests, and 2 images to the demo page, and fixes various typos in those *.sh files." }, { "line" => 110, "raw" => "\t- Switch from Hash::FieldHash to Moo.\n", "style" => "-", "text" => "Switch from Hash::FieldHash to Moo." }, { "line" => 111, "raw" => "\t- Add config/.htgraphviz2 to help the author generate the demo.\n", "style" => "-", "text" => "Add config/.htgraphviz2 to help the author generate the demo." }, { "line" => 112, "raw" => "\t- Add GraphViz2::Config.pm, and split GraphViz2::Filer off from GraphViz2::Utils, which also helps\n\t\tgenerate the demo.\n", "style" => "-", "text" => "Add GraphViz2::Config.pm, and split GraphViz2::Filer off from GraphViz2::Utils, which also helps generate the demo." }, { "line" => 114, "raw" => "\t- Switch from Hash::FieldHash to Moo.\n", "style" => "-", "text" => "Switch from Hash::FieldHash to Moo." }, { "line" => 115, "raw" => "\t- Use File::Slurp except where I need Perl6::Slurp's utf8 option. I needed File::Slurp's write_file for\n\t\tthe new script scripts/generate.sh.pl, so I decided to use it in most places.\n", "style" => "-", "text" => "Use File::Slurp except where I need Perl6::Slurp's utf8 option. I needed File::Slurp's write_file for the new script scripts/generate.sh.pl, so I decided to use it in most places." }, { "line" => 117, "raw" => "\t- Rename scripts/utf8.pl to scripts/utf8.1.pl.\n", "style" => "-", "text" => "Rename scripts/utf8.pl to scripts/utf8.1.pl." }, { "line" => 118, "raw" => "\t- Rename scripts/utf8.test.pl to scripts/utf8.2.pl.\n", "style" => "-", "text" => "Rename scripts/utf8.test.pl to scripts/utf8.2.pl." }, { "line" => 119, "raw" => "\t- Rename html/utf8.svg to html/utf8.1.svg.\n", "style" => "-", "text" => "Rename html/utf8.svg to html/utf8.1.svg." }, { "line" => 120, "raw" => "\t- Rename html/utf8.test.svg to html/utf8.2.svg.\n\n", "style" => "-", "text" => "Rename html/utf8.test.svg to html/utf8.2.svg." } ], "line" => 100, "raw" => "2.16 Fri Aug 2 10:54:00 2013\n", "raw_date" => "Fri Aug 2 10:54:00 2013", "version" => "2.16" }, { "date" => "2013-07-29T14:42:00Z", "entries" => [ { "line" => 123, "raw" => "\t- Remove GraphViz2::Parse::Marpa, until it's re-written to use Jeffrey Kegler's code to dump a grammar.\n", "style" => "-", "text" => "Remove GraphViz2::Parse::Marpa, until it's re-written to use Jeffrey Kegler's code to dump a grammar." }, { "line" => 124, "raw" => "\t- Add scripts/circo.pl and it's output html/circo.svg.\n", "style" => "-", "text" => "Add scripts/circo.pl and it's output html/circo.svg." }, { "line" => 125, "raw" => "\t- For non-HTML labels, escape double-quotes if they are not already escaped.\n\t\tThis allows pathological labels such as '\\\"'.\n", "style" => "-", "text" => "For non-HTML labels, escape double-quotes if they are not already escaped. This allows pathological labels such as '\\\"'." }, { "line" => 127, "raw" => "\t- For all labels, escape '[' and ']' if they are not already escaped.\n\t\tThe rationale for this is shrouded in the mists of time :-(.\n", "style" => "-", "text" => "For all labels, escape '[' and ']' if they are not already escaped. The rationale for this is shrouded in the mists of time :-(." }, { "line" => 129, "raw" => "\t- Put author tests in xt/author.\n", "style" => "-", "text" => "Put author tests in xt/author." }, { "line" => 130, "raw" => "\t- Add Algorithm::Dependency::Source::HoA V 1.110 to the pre-reqs to keep my home-grown Build.PL and\n\t\tMakefile.PL checker a bit quieter.\n", "style" => "-", "text" => "Add Algorithm::Dependency::Source::HoA V 1.110 to the pre-reqs to keep my home-grown Build.PL and Makefile.PL checker a bit quieter." }, { "line" => 132, "raw" => "\t- Add Config V 0, channames V 0 and open V 0 to the pre-reqs.\n", "style" => "-", "text" => "Add Config V 0, channames V 0 and open V 0 to the pre-reqs." }, { "line" => 133, "raw" => "\t- Move t/pod.t to xt/author/.\n", "style" => "-", "text" => "Move t/pod.t to xt/author/." }, { "line" => 134, "raw" => "\t- Switch from IPC::Run to IPC::Run3. This after a discussion with Larry Knibb re the fact that his code is\n\t\thanging under Apache (mod_cgi) on Windows. He suggested using qx//, but I've gone for IPC::Run3.\n\t\tThe other reason to switch is the overly-long bug list for IPC::Run, including Larry's report RT#87397.\n\t\tI went thru the same issues with Lee when switching from system() to IPC::Run for V 2.02. See RT#76459.\n\t\tIPC::Run3 has the advantage of letting me set binmode on various file handles.\n", "style" => "-", "text" => "Switch from IPC::Run to IPC::Run3. This after a discussion with Larry Knibb re the fact that his code is hanging under Apache (mod_cgi) on Windows. He suggested using qx//, but I've gone for IPC::Run3. The other reason to switch is the overly-long bug list for IPC::Run, including Larry's report RT#87397. I went thru the same issues with Lee when switching from system() to IPC::Run for V 2.02. See RT#76459. IPC::Run3 has the advantage of letting me set binmode on various file handles." }, { "line" => 139, "raw" => "\t- For all modules and some scripts, convert:\n\t\t\tuse strict;\n\t\t\tuse warnings;\n\t\tinto:\n\t\t\tuse strict;\n\t\t\tuse utf8;\n\t\t\tuse warnings;\n\t\t\tuse warnings qw(FATAL utf8); # Fatalize encoding glitches.\n\t\t\tuse open qw(:std :utf8); # Undeclared streams in UTF-8.\n\t\t\tuse charnames qw(:full :short); # Unneeded in v5.16.\n\n", "style" => "-", "text" => "For all modules and some scripts, convert: use strict; use warnings; into: use strict; use utf8; use warnings; use warnings qw(FATAL utf8); # Fatalize encoding glitches. use open qw(:std :utf8); # Undeclared streams in UTF-8. use charnames qw(:full :short); # Unneeded in v5.16." } ], "line" => 122, "raw" => "2.15 Mon Jul 29 14:42:00 2013\n", "raw_date" => "Mon Jul 29 14:42:00 2013", "version" => "2.15" }, { "date" => "2013-07-01T10:09:00Z", "entries" => [ { "line" => 151, "raw" => "\t- Patch push_subgraph() to correctly handle the case of an unnamed subgraph.\n\t\tThe code was outputting 'subgraph \"\" {...}'. The extra \"\" are now suppressed.\n\t\tThe code also handles the case of the name being undef.\n\t\tThere are no doc changes because the docs described precisely what should have happened, thusly:\n\t\t\tSo, without \$name, 'subgraph {' is written to the output stream.\n\t\t\tWith \$name, 'subgraph \"\$name\" {' is written to the output stream.\n\t\tMany thanx (again) to Larry Marso for reporting this, with sample code.\n", "style" => "-", "text" => "Patch push_subgraph() to correctly handle the case of an unnamed subgraph. The code was outputting 'subgraph \"\" {...}'. The extra \"\" are now suppressed. The code also handles the case of the name being undef. There are no doc changes because the docs described precisely what should have happened, thusly: So, without \$name, 'subgraph {' is written to the output stream. With \$name, 'subgraph \"\$name\" {' is written to the output stream. Many thanx (again) to Larry Marso for reporting this, with sample code." }, { "line" => 158, "raw" => "\t- Add scripts/unnamed.sub.graph.pl.\n\n", "style" => "-", "text" => "Add scripts/unnamed.sub.graph.pl." } ], "line" => 150, "raw" => "2.14 Mon Jul 1 10:09:00 2013\n", "raw_date" => "Mon Jul 1 10:09:00 2013", "version" => "2.14" }, { "date" => "2013-06-28T12:02:00Z", "entries" => [ { "line" => 161, "raw" => "\t- Oops - Patch scripts/record.1.pl as was allegedly done for V 2.11.\n\n", "style" => "-", "text" => "Oops - Patch scripts/record.1.pl as was allegedly done for V 2.11." } ], "line" => 160, "raw" => "2.13 Fri Jun 28 12:02:00 2013\n", "raw_date" => "Fri Jun 28 12:02:00 2013", "version" => "2.13" }, { "date" => "2013-06-27T14:40:00Z", "entries" => [ { "line" => 164, "raw" => "\t- Add scripts/plaintext.pl, which generates a 'Use of uninitialized value...' error under V 2.11 and,\n\t\tafter the fix, does not do so under V 2.12. Many thanx to Larry Marso for the (private email) report.\n\n", "style" => "-", "text" => "Add scripts/plaintext.pl, which generates a 'Use of uninitialized value...' error under V 2.11 and, after the fix, does not do so under V 2.12. Many thanx to Larry Marso for the (private email) report." } ], "line" => 163, "raw" => "2.12 Thu Jun 27 14:40:00 2013\n", "raw_date" => "Thu Jun 27 14:40:00 2013", "version" => "2.12" }, { "date" => "2013-06-27T09:21:00Z", "entries" => [ { "line" => 168, "raw" => "\t- Correct spelling of Kent Fredric's name below, with apologies.\n", "style" => "-", "text" => "Correct spelling of Kent Fredric's name below, with apologies." }, { "line" => 169, "raw" => "\t- Patch scripts/record.1.pl and scripts/record.2.pl to use '\\\\n' to get a literal '\\n' in the output dot\n\t\tfile. The original works my Debian machine, but needs fixing in case there's someone out there not\n\t\tusing Debian :-).\n", "style" => "-", "text" => "Patch scripts/record.1.pl and scripts/record.2.pl to use '\\\\n' to get a literal '\\n' in the output dot file. The original works my Debian machine, but needs fixing in case there's someone out there not using Debian :-)." }, { "line" => 172, "raw" => "\t- Remove debug log message from add_edge().\n\n", "style" => "-", "text" => "Remove debug log message from add_edge()." } ], "line" => 167, "raw" => "2.11 Thu Jun 27 09:21:00 2013\n", "raw_date" => "Thu Jun 27 09:21:00 2013", "version" => "2.11" }, { "date" => "2013-06-24T11:05:00Z", "entries" => [ { "line" => 175, "raw" => "\t- Overview: Re-work the label and port handing code.\n", "style" => "-", "text" => "Overview: Re-work the label and port handing code." }, { "line" => 176, "raw" => "\t- Note: the global graph attribute 'record_orientation' no longer does anything. The new label syntax,\n\t\t(next, and in detail in the FAQ (https://metacpan.org/module/GraphViz2#How-labels-interact-with-ports) ),\n\t\tis now the recommended way of using labels to specify both ports and orientation.\n\t\tUsing 'record_orientation' will not cause parameter validation to fail, it just won't have any effect.\n\t\tThe attribute will be removed in a future version, so prepare now by deleting it from your code.\n", "style" => "-", "text" => "Note: the global graph attribute 'record_orientation' no longer does anything. The new label syntax, (next, and in detail in the FAQ (https://metacpan.org/module/GraphViz2#How-labels-interact-with-ports) ), is now the recommended way of using labels to specify both ports and orientation. Using 'record_orientation' will not cause parameter validation to fail, it just won't have any effect. The attribute will be removed in a future version, so prepare now by deleting it from your code." }, { "line" => 181, "raw" => "\t- Labels can be a string, an arrayref of strings, or an arrayref of hashrefs. The latter alternative\n\t\tis new. The keys to the hashrefs are 'text' and 'port', with the latter being optional.\n\t\tSee the FAQ topic mentioned above. See scripts/record.2.pl for sample code.\n\t\tMany thanx to Kent Fredric for the report (RT#85976), and the list of suggestions.\n", "style" => "-", "text" => "Labels can be a string, an arrayref of strings, or an arrayref of hashrefs. The latter alternative is new. The keys to the hashrefs are 'text' and 'port', with the latter being optional. See the FAQ topic mentioned above. See scripts/record.2.pl for sample code. Many thanx to Kent Fredric for the report (RT#85976), and the list of suggestions." }, { "line" => 185, "raw" => "\t- Add scripts/record.3.pl and add it to the demo generating code scripts/generate.*.sh.\n\t\tIt demonstrates deeply nested record structures using a string as a label. The same effect could be\n\t\tachieved by using an arrayref of hashrefs, of course. scripts/record.2.pl shows how.\n", "style" => "-", "text" => "Add scripts/record.3.pl and add it to the demo generating code scripts/generate.*.sh. It demonstrates deeply nested record structures using a string as a label. The same effect could be achieved by using an arrayref of hashrefs, of course. scripts/record.2.pl shows how." }, { "line" => 188, "raw" => "\t- Stop escaping the 2 label characters { and }, since they are used to orient fields within records.\n\t\tOn the demo page http://savage.net.au/Perl-modules/html/graphviz2/, see scripts/record.*.pl.\n\t\tExpand the FAQ discussion of escaping to cover this issue.\n", "style" => "-", "text" => "Stop escaping the 2 label characters { and }, since they are used to orient fields within records. On the demo page http://savage.net.au/Perl-modules/html/graphviz2/, see scripts/record.*.pl. Expand the FAQ discussion of escaping to cover this issue." }, { "line" => 191, "raw" => "\t- Remove restriction that port names in calls to add_edge() had to start with 'port'.\n\t\tThis was due to my misreading of the Graphviz docs, where all examples used a 'port' prefix.\n\t\tThe code also now checks for '*::*', in case the program is using Perl classes for node names,\n\t\tin which case we don't want the first ':' to be taken as the introduction for a port name.\n", "style" => "-", "text" => "Remove restriction that port names in calls to add_edge() had to start with 'port'. This was due to my misreading of the Graphviz docs, where all examples used a 'port' prefix. The code also now checks for '*::*', in case the program is using Perl classes for node names, in which case we don't want the first ':' to be taken as the introduction for a port name." }, { "line" => 195, "raw" => "\t- Update words/tokens (arrow shapes etc) stored within the source code, by running scripts/extract.*.pl\n\t\tand storing the output in lib/GraphViz2.pm after the __DATA__ token. Yes, I know this is hard-coding.\n\t\tSee the amazing module Data::Section::Simple for details.\n\t\tThe set of words/tokens matches Graphviz 2.30.1, as of today, 2013-06-24.\n", "style" => "-", "text" => "Update words/tokens (arrow shapes etc) stored within the source code, by running scripts/extract.*.pl and storing the output in lib/GraphViz2.pm after the __DATA__ token. Yes, I know this is hard-coding. See the amazing module Data::Section::Simple for details. The set of words/tokens matches Graphviz 2.30.1, as of today, 2013-06-24." }, { "line" => 199, "raw" => "\t- Rename CHANGES to Changes as per CPAN::Changes::SPEC.\n", "style" => "-", "text" => "Rename CHANGES to Changes as per CPAN::Changes::SPEC." }, { "line" => 200, "raw" => "\t- Reformat the POD in lib/GraphViz2.pm slightly.\n", "style" => "-", "text" => "Reformat the POD in lib/GraphViz2.pm slightly." }, { "line" => 201, "raw" => "\t- Remove scripts/parse.marpa.pl and t/sample.marpa.1.dat, as a step in removing all Marpa-related material,\n\t\tbecause it uses the deprecated NAIF interface. All new Marpa work should use the scanless interface (SCIF).\n", "style" => "-", "text" => "Remove scripts/parse.marpa.pl and t/sample.marpa.1.dat, as a step in removing all Marpa-related material, because it uses the deprecated NAIF interface. All new Marpa work should use the scanless interface (SCIF)." }, { "line" => 203, "raw" => "\t- Change Build.PL and Makefile.PL to check for Perl being at least V 5.14.0. If you are using an earlier\n\t\tversion, you can forgo utf8 support by editing the files to relax this restriction.\n\t\tSome tests (utf8.pl, utf8.test.pl) will presumably fail as a consequence.\n\t\tLastly, my attention has been drawn to Unicode::Semantics::up(), but I've chosen not to use it.\n\n", "style" => "-", "text" => "Change Build.PL and Makefile.PL to check for Perl being at least V 5.14.0. If you are using an earlier version, you can forgo utf8 support by editing the files to relax this restriction. Some tests (utf8.pl, utf8.test.pl) will presumably fail as a consequence. Lastly, my attention has been drawn to Unicode::Semantics::up(), but I've chosen not to use it." } ], "line" => 174, "raw" => "2.10 Mon Jun 24 11:05:00 2013\n", "raw_date" => "Mon Jun 24 11:05:00 2013", "version" => "2.10" }, { "date" => "2013-05-31T09:57:00Z", "entries" => [ { "line" => 209, "raw" => "\t- Re-write the code in Build.PL and Makefile.PL which checks for Graphviz (dot) being installed,\n\t\tsince the previous code, using a pipe, was failing on some versions of Windows.\n", "style" => "-", "text" => "Re-write the code in Build.PL and Makefile.PL which checks for Graphviz (dot) being installed, since the previous code, using a pipe, was failing on some versions of Windows." }, { "line" => 211, "raw" => "\t- Assume Config.pm is installed, and hence remove it from the pre-reqs.\n\t\tThis also stops a warning message generated because Config's version # is undef.\n", "style" => "-", "text" => "Assume Config.pm is installed, and hence remove it from the pre-reqs. This also stops a warning message generated because Config's version # is undef." }, { "line" => 213, "raw" => "\t- Likewise assume File::Spec and File::Temp are installed, and 'recent enough'.\n\t\tThis is because the new code uses these 3 modules before specifying the pre-reqs.\n", "style" => "-", "text" => "Likewise assume File::Spec and File::Temp are installed, and 'recent enough'. This is because the new code uses these 3 modules before specifying the pre-reqs." }, { "line" => 215, "raw" => "\t- Bump the pre-req for Perl from 5.10.0 to 5.14, since we 'use feature qw/unicode_strings/.\n", "style" => "-", "text" => "Bump the pre-req for Perl from 5.10.0 to 5.14, since we 'use feature qw/unicode_strings/." }, { "line" => 216, "raw" => "\t- Re-write the code in Build.PL and Makefile.PL which checks for Perl being 'recent enough',\n\t\tsince the previous code, using a pre-req of \"perl => '5.10.0'\" generates a warning message\n\t\twhen using Makefile.PL (for my current Perl V 5.14.2). Now we analyze \$Config{version}.\n", "style" => "-", "text" => "Re-write the code in Build.PL and Makefile.PL which checks for Perl being 'recent enough', since the previous code, using a pre-req of \"perl => '5.10.0'\" generates a warning message when using Makefile.PL (for my current Perl V 5.14.2). Now we analyze \$Config{version}." }, { "line" => 219, "raw" => "\t- One CPAN Tester found tests failing even though Graphviz was installed.\n\t\tThe problem was that the Times font was missing. The new code should fail during 'perl Build.PL',\n\t\tor 'perl Makefile.PL', rather than during testing, which is good.\n\n", "style" => "-", "text" => "One CPAN Tester found tests failing even though Graphviz was installed. The problem was that the Times font was missing. The new code should fail during 'perl Build.PL', or 'perl Makefile.PL', rather than during testing, which is good." } ], "line" => 208, "raw" => "2.09 Fri May 31 09:57:00 2013\n", "raw_date" => "Fri May 31 09:57:00 2013", "version" => "2.09" }, { "date" => "2013-03-21T13:16:00Z", "entries" => [ { "line" => 224, "raw" => "\t- Add \$ENV{DBI_SCHEMA} to scripts/dbi.schema.pl.\n", "style" => "-", "text" => "Add \$ENV{DBI_SCHEMA} to scripts/dbi.schema.pl." }, { "line" => 225, "raw" => "\t- For the MusicBrainz database, use DBI_SCHEMA=musicbrainz,cover_art_archive,report,statistics.\n\t\tSee http://musicbrainz.org/doc/MusicBrainz_Database for details.\n\t\tUsers of cpanm will want 'cpanm Carton' instead of 'sudo cpan Carton' in Perl dependencies.\n\t\tSee https://github.com/metabrainz/musicbrainz-server/blob/master/INSTALL.md for details.\n\n", "style" => "-", "text" => "For the MusicBrainz database, use DBI_SCHEMA=musicbrainz,cover_art_archive,report,statistics. See http://musicbrainz.org/doc/MusicBrainz_Database for details. Users of cpanm will want 'cpanm Carton' instead of 'sudo cpan Carton' in Perl dependencies. See https://github.com/metabrainz/musicbrainz-server/blob/master/INSTALL.md for details." } ], "line" => 223, "raw" => "2.08 Thu Mar 21 13:16:00 2013\n", "raw_date" => "Thu Mar 21 13:16:00 2013", "version" => "2.08" }, { "date" => "2013-03-13T13:24:00Z", "entries" => [ { "line" => 231, "raw" => "\t- Extend GraphViz2::DBI to handle SQLite using pragma foreign_key_list(\$table_name).\n", "style" => "-", "text" => "Extend GraphViz2::DBI to handle SQLite using pragma foreign_key_list(\$table_name)." }, { "line" => 232, "raw" => "\t- Add scripts/sqlite.foreign.keys.pl to help analyze that pragma's output.\n", "style" => "-", "text" => "Add scripts/sqlite.foreign.keys.pl to help analyze that pragma's output." }, { "line" => 233, "raw" => "\t- Remove the string 'App-Office-CMS' from scripts/dbi.schema.pl. That is, the create() method is\n\t\tcalled as \$g -> create(name => ''). This has the effect of removing the global node from the\n\t\tresultant graph. All tables were descendents of this node, but with schemas of dozens or hundreds\n\t\tof tables, it became confusing.\n", "style" => "-", "text" => "Remove the string 'App-Office-CMS' from scripts/dbi.schema.pl. That is, the create() method is called as \$g -> create(name => ''). This has the effect of removing the global node from the resultant graph. All tables were descendents of this node, but with schemas of dozens or hundreds of tables, it became confusing." }, { "line" => 237, "raw" => "\t- Patch dbi.schema.pl to set the DBI connect attr sqlite_unicode and foreign_keys pragma if using SQLite.\n\n", "style" => "-", "text" => "Patch dbi.schema.pl to set the DBI connect attr sqlite_unicode and foreign_keys pragma if using SQLite." } ], "line" => 230, "raw" => "2.07 Wed Mar 13 13:24:00 2013\n", "raw_date" => "Wed Mar 13 13:24:00 2013", "version" => "2.07" }, { "date" => "2012-11-08T12:38:00Z", "entries" => [ { "line" => 240, "raw" => "\t- No code changes.\n", "style" => "-", "text" => "No code changes." }, { "line" => 241, "raw" => "\t- For pre-reqs such as strict, warnings, etc, which ship with Perl, set the version # to 0.\n\t\tReported as RT#80663 by Father Chrysostomos for Tree::DAG_Node.\n\n", "style" => "-", "text" => "For pre-reqs such as strict, warnings, etc, which ship with Perl, set the version # to 0. Reported as RT#80663 by Father Chrysostomos for Tree::DAG_Node." } ], "line" => 239, "raw" => "2.06 Thu Nov 8 12:38:00 2012\n", "raw_date" => "Thu Nov 8 12:38:00 2012", "version" => "2.06" }, { "date" => "2012-10-02T10:20:00Z", "entries" => [ { "line" => 245, "raw" => "\t- No fundamental code changes, so no need to upgrade, unless you need the following new features.\n", "style" => "-", "text" => "No fundamental code changes, so no need to upgrade, unless you need the following new features." }, { "line" => 246, "raw" => "\t- After a request from Jack Maney, author of the Perl module Hypatia:\n\t\to Document the mutator node_hash(), which returns a hashref keyed by node name.\n\t\t\tUse this to get a list of all nodes and their attributes.\n\t\to Add a new mutator, edge_hash(), which also returns a hashref keyed by node name.\n\t\t\tThe node is the one at the arrow/tail/ end of the edge, i.e. where the edge starts from.\n\t\t\tUse this to learn all sorts of things about the edge.\n\t\to Add scripts/report.nodes.and.edges.pl (a version of scripts/html.labels.pl) to demonstrate\n\t\t\thow to access this data.\n\t\to Update to POD to match.\n\n", "style" => "-", "text" => "After a request from Jack Maney, author of the Perl module Hypatia: o Document the mutator node_hash(), which returns a hashref keyed by node name. Use this to get a list of all nodes and their attributes. o Add a new mutator, edge_hash(), which also returns a hashref keyed by node name. The node is the one at the arrow/tail/ end of the edge, i.e. where the edge starts from. Use this to learn all sorts of things about the edge. o Add scripts/report.nodes.and.edges.pl (a version of scripts/html.labels.pl) to demonstrate how to access this data. o Update to POD to match." } ], "line" => 244, "raw" => "2.05 Tue Oct 2 10:20:00 2012\n", "raw_date" => "Tue Oct 2 10:20:00 2012", "version" => "2.05" }, { "date" => "2012-08-17T10:48:00Z", "entries" => [ { "line" => 257, "raw" => "\t- Add Perl V 5.14.2 to the pre-reqs, for the utf8 stuff.\n", "style" => "-", "text" => "Add Perl V 5.14.2 to the pre-reqs, for the utf8 stuff." }, { "line" => 258, "raw" => "\t- Re-write the subgraph handling code, which was broken up to V 2.03.\n\t\tAdd samples, script/rank.sub.graph.[1234].pl, to demonstrate subgraph name effects and node rankings.\n\t\tscript/rank.sub.graph.[12].pl use subgraphs to force a set of nodes to be horizontally aligned.\n\t\tscript/rank.sub.graph.[34].pl show the effects of subgraph name changes on the same data.\n\n", "style" => "-", "text" => "Re-write the subgraph handling code, which was broken up to V 2.03. Add samples, script/rank.sub.graph.[1234].pl, to demonstrate subgraph name effects and node rankings. script/rank.sub.graph.[12].pl use subgraphs to force a set of nodes to be horizontally aligned. script/rank.sub.graph.[34].pl show the effects of subgraph name changes on the same data." } ], "line" => 256, "raw" => "2.04 Fri Aug 17 10:48:00 2012\n", "raw_date" => "Fri Aug 17 10:48:00 2012", "version" => "2.04" }, { "date" => "2012-06-18T9:47:00Z", "entries" => [ { "line" => 264, "raw" => "\t- Switch from double to single quotes in line 22 of GraphViz2::Parse::Regexp, so the resultant string,\n\t\ttreated as Perl code, runs on Windows. Reported by Max Maischein as RT#77869.\n", "style" => "-", "text" => "Switch from double to single quotes in line 22 of GraphViz2::Parse::Regexp, so the resultant string, treated as Perl code, runs on Windows. Reported by Max Maischein as RT#77869." }, { "line" => 266, "raw" => "\t- Also, slightly reformat line 39 of that module.\n\n", "style" => "-", "text" => "Also, slightly reformat line 39 of that module." } ], "line" => 263, "raw" => "2.03 Mon Jun 18 9:47:00 2012\n", "raw_date" => "Mon Jun 18 9:47:00 2012", "version" => "2.03" }, { "date" => "2012-04-19T11:51:00Z", "entries" => [ { "line" => 269, "raw" => "\t- Accept patch from Lee as in RT#76459, to replace the code which writes the dot input file to\n\t\ta file with binmode, and just pass the data to dot via IPC::Run.\n\t\tHappily, this allows me to eliminate 'use open qw/:encoding(UTF-8) :std/;' in t/test.t.\n", "style" => "-", "text" => "Accept patch from Lee as in RT#76459, to replace the code which writes the dot input file to a file with binmode, and just pass the data to dot via IPC::Run. Happily, this allows me to eliminate 'use open qw/:encoding(UTF-8) :std/;' in t/test.t." }, { "line" => 272, "raw" => "\t- Update the pre-reqs in Build.PL and Makefile.PL.\n", "style" => "-", "text" => "Update the pre-reqs in Build.PL and Makefile.PL." }, { "line" => 273, "raw" => "\t- Add scripts/utf8.test.pl to the list of scripts shipped with this module.\n", "style" => "-", "text" => "Add scripts/utf8.test.pl to the list of scripts shipped with this module." }, { "line" => 274, "raw" => "\t- Add scripts/utf8* to scripts/generate.*.sh.\n", "style" => "-", "text" => "Add scripts/utf8* to scripts/generate.*.sh." }, { "line" => 275, "raw" => "\t- Make scripts/generate.*.sh emit a warning when DBI_DSN is not set.\n\n", "style" => "-", "text" => "Make scripts/generate.*.sh emit a warning when DBI_DSN is not set." } ], "line" => 268, "raw" => "2.02 Thu Apr 19 11:51:00 2012\n", "raw_date" => "Thu Apr 19 11:51:00 2012", "version" => "2.02" }, { "date" => "2012-03-07T08:50:00Z", "entries" => [ { "line" => 278, "raw" => "\t - I only tested V 2.00 by outputting to SVG (a text format), but outputting to a binary format such as PNG was broken.\n\t \tSo, remove the 'use open qw/:encoding(UTF-8) :std/;', and restore binmode, in GraphViz2.pm.\n", "style" => "-", "text" => "I only tested V 2.00 by outputting to SVG (a text format), but outputting to a binary format such as PNG was broken. So, remove the 'use open qw/:encoding(UTF-8) :std/;', and restore binmode, in GraphViz2.pm." }, { "line" => 280, "raw" => "\t - Remove log to screen in utf8.pl, since Log::Handler doesn't accept utf8 as a logger option.\n", "style" => "-", "text" => "Remove log to screen in utf8.pl, since Log::Handler doesn't accept utf8 as a logger option." }, { "line" => 281, "raw" => "\t - Copy scripts/utf8.pl to scripts/utf8.test.pl and edit to display just 5 delta characters. See html/utf8.test.svg. PNG is ok too.\n\t\tThis demonstrates (hopefully) we can get the correct output on a binary format despite the 'Wide character in print...' message.\n", "style" => "-", "text" => "Copy scripts/utf8.pl to scripts/utf8.test.pl and edit to display just 5 delta characters. See html/utf8.test.svg. PNG is ok too. This demonstrates (hopefully) we can get the correct output on a binary format despite the 'Wide character in print...' message." }, { "line" => 283, "raw" => "\t - Add FAQ topic regarding this 'Wide character in print...' problem.\n\n", "style" => "-", "text" => "Add FAQ topic regarding this 'Wide character in print...' problem." } ], "line" => 277, "raw" => "2.01 Wed Mar 7 08:50:00 2012\n", "raw_date" => "Wed Mar 7 08:50:00 2012", "version" => "2.01" }, { "date" => "2012-03-06T16:02:00Z", "entries" => [ { "line" => 286, "raw" => "\t - Support utf8 in labels. This required changes to GraphViz2.pm. See scripts/utf8.pl and html/utf8.svg. I'm using Perl V 5.14.2.\n\t \tSample output is online at http://savage.net.au/Perl-modules/html/graphviz2/utf8.svg.\n", "style" => "-", "text" => "Support utf8 in labels. This required changes to GraphViz2.pm. See scripts/utf8.pl and html/utf8.svg. I'm using Perl V 5.14.2. Sample output is online at http://savage.net.au/Perl-modules/html/graphviz2/utf8.svg." }, { "line" => 288, "raw" => "\t - Add an item to the FAQ about how to write scripts using utf8.\n", "style" => "-", "text" => "Add an item to the FAQ about how to write scripts using utf8." }, { "line" => 289, "raw" => "\t - Re-write GraphViz2::Parse::ISA to draw multiple class hierarchies on 1 graph. This means the API for that class has changed.\n\t \tSpecifically, create() no longer exists. Call add() 1 or more times instead. Then, call generate_graph(). See the docs for details.\n\t\tSample output is online at http://savage.net.au/Perl-modules/html/graphviz2/parse.isa.svg.\n\n", "style" => "-", "text" => "Re-write GraphViz2::Parse::ISA to draw multiple class hierarchies on 1 graph. This means the API for that class has changed. Specifically, create() no longer exists. Call add() 1 or more times instead. Then, call generate_graph(). See the docs for details. Sample output is online at http://savage.net.au/Perl-modules/html/graphviz2/parse.isa.svg." } ], "line" => 285, "raw" => "2.00 Tue Mar 6 16:02:00 2012\n", "raw_date" => "Tue Mar 6 16:02:00 2012", "version" => "2.00" }, { "date" => "2011-12-25T10:33:00Z", "entries" => [ { "line" => 294, "raw" => "\t - Change to in the demo creation code, to keep poor old FireFox happy.\n", "style" => "-", "text" => "Change to in the demo creation code, to keep poor old FireFox happy." }, { "line" => 295, "raw" => "\t - Change various things in html/graphviz2.index.tx to we validate as XHTML 1.0 Strict.\n", "style" => "-", "text" => "Change various things in html/graphviz2.index.tx to we validate as XHTML 1.0 Strict." }, { "line" => 296, "raw" => "\t - Unreleased.\n\n", "style" => "-", "text" => "Unreleased." } ], "line" => 293, "raw" => "1.13 Sun Dec 25 10:33:00 2011\n", "raw_date" => "Sun Dec 25 10:33:00 2011", "version" => "1.13" }, { "date" => "2011-12-14T11:22:00Z", "entries" => [ { "line" => 299, "raw" => "\t - Add 5 scripts, scripts/macro.*.pl, to demonstrate using a Perl sub as a macro to generate both cluster and non-cluster sub-graphs.\n", "style" => "-", "text" => "Add 5 scripts, scripts/macro.*.pl, to demonstrate using a Perl sub as a macro to generate both cluster and non-cluster sub-graphs." }, { "line" => 300, "raw" => "\t - Update the TODO in GraphViz2.pm, since it erroneously gave the impression the current code did not handle compound clusters.\n", "style" => "-", "text" => "Update the TODO in GraphViz2.pm, since it erroneously gave the impression the current code did not handle compound clusters." }, { "line" => 301, "raw" => "\t - Re-generate the demo. See: http://savage.net.au/Perl-modules/html/graphviz2/.\n", "style" => "-", "text" => "Re-generate the demo. See: http://savage.net.au/Perl-modules/html/graphviz2/." }, { "line" => 302, "raw" => "\t - Adopt Flavio Poletti's suggestion of trying to pipe to dot, in Build.PL/Makefile.PL, rather than using File::Which,\n\t \tto see if dot (Graphviz) is installed. This (hopefully) solves the problem of using File::Which on systems where it is\n\t\tnot installed, before Build.PL/Makefile.PL has a chance to tell the user that File::Which is required. See: RT#73077.\n", "style" => "-", "text" => "Adopt Flavio Poletti's suggestion of trying to pipe to dot, in Build.PL/Makefile.PL, rather than using File::Which, to see if dot (Graphviz) is installed. This (hopefully) solves the problem of using File::Which on systems where it is not installed, before Build.PL/Makefile.PL has a chance to tell the user that File::Which is required. See: RT#73077." }, { "line" => 305, "raw" => "\t - No code changes in *.pm files.\n\n", "style" => "-", "text" => "No code changes in *.pm files." } ], "line" => 298, "raw" => "1.12 Wed Dec 14 11:22:00 2011\n", "raw_date" => "Wed Dec 14 11:22:00 2011", "version" => "1.12" }, { "date" => "2011-11-08T10:21:00Z", "entries" => [ { "line" => 308, "raw" => "\t - Fix bug where double quotes in HTML labels were being escaped and should not have been.\n\t \tMany thanx to Fitz Elliott for the report and initial patch. See https://rt.cpan.org/Ticket/Display.html?id=72259.\n", "style" => "-", "text" => "Fix bug where double quotes in HTML labels were being escaped and should not have been. Many thanx to Fitz Elliott for the report and initial patch. See https://rt.cpan.org/Ticket/Display.html?id=72259." }, { "line" => 310, "raw" => "\t - Patched scripts/html.labels.pl as per Fitz's suggested test code.\n", "style" => "-", "text" => "Patched scripts/html.labels.pl as per Fitz's suggested test code." }, { "line" => 311, "raw" => "\t - Rename t/lib/Parent.pm to t/lib/Adult.pm to avoid a reported problem with \"use parent 'Parent';\" under Windows.\n\t \tThis affect various files. See https://rt.cpan.org/Public/Bug/Display.html?id=69076.\n\n", "style" => "-", "text" => "Rename t/lib/Parent.pm to t/lib/Adult.pm to avoid a reported problem with \"use parent 'Parent';\" under Windows. This affect various files. See https://rt.cpan.org/Public/Bug/Display.html?id=69076." } ], "line" => 307, "raw" => "1.11 Tue Nov 8 10:21:00 2011\n", "raw_date" => "Tue Nov 8 10:21:00 2011", "version" => "1.11" }, { "date" => "2011-09-01T10:45:00Z", "entries" => [ { "line" => 315, "raw" => "\t - Fix bug in GraphViz in handling of nodes whose shape is none or plaintext, and whose label is HTML.\n", "style" => "-", "text" => "Fix bug in GraphViz in handling of nodes whose shape is none or plaintext, and whose label is HTML." }, { "line" => 316, "raw" => "\t - Fix bug in scripts/generate.png.sh to add png parameter to 'perl -Ilib scripts/generate.demo.pl png'.\n", "style" => "-", "text" => "Fix bug in scripts/generate.png.sh to add png parameter to 'perl -Ilib scripts/generate.demo.pl png'." }, { "line" => 317, "raw" => "\t - HTML labels work without any code changes, so references to them not working have been removed from the docs.\n", "style" => "-", "text" => "HTML labels work without any code changes, so references to them not working have been removed from the docs." }, { "line" => 318, "raw" => "\t - GraphViz2 is called by the now-released Graph::Easy::Marpa, so remove that item from the TODO list.\n", "style" => "-", "text" => "GraphViz2 is called by the now-released Graph::Easy::Marpa, so remove that item from the TODO list." }, { "line" => 319, "raw" => "\t - Fix doc referring to scripts/generate.index.pl. It now refers to scripts/generate.demo.pl.\n", "style" => "-", "text" => "Fix doc referring to scripts/generate.index.pl. It now refers to scripts/generate.demo.pl." }, { "line" => 320, "raw" => "\t - Add DOCTYPE and Content-type to html/graphviz.index.tx. Output by scripts/generate.demo.pl, html/index.html, now handles UTF-8 properly.\n", "style" => "-", "text" => "Add DOCTYPE and Content-type to html/graphviz.index.tx. Output by scripts/generate.demo.pl, html/index.html, now handles UTF-8 properly." }, { "line" => 321, "raw" => "\t - Add alt to the tags output by scripts/generate.demo.pl.\n", "style" => "-", "text" => "Add alt to the tags output by scripts/generate.demo.pl." }, { "line" => 322, "raw" => "\t - Add scripts/html.labels.pl. This code includes a demo of using ports.\n", "style" => "-", "text" => "Add scripts/html.labels.pl. This code includes a demo of using ports." }, { "line" => 323, "raw" => "\t - Reorder methods in GraphViz2::Utils to be in alphabetical order.\n\n", "style" => "-", "text" => "Reorder methods in GraphViz2::Utils to be in alphabetical order." } ], "line" => 314, "raw" => "1.10 Thu Sep 1 10:45:00 2011\n", "raw_date" => "Thu Sep 1 10:45:00 2011", "version" => "1.10" }, { "date" => "2011-07-21T14:13:00Z", "entries" => [ { "line" => 326, "raw" => "\t - Patch parameter validation to allow for output image types such as png:gd etc.\n\t \tOnly the prefix before the first ':' is validated.\n\n", "style" => "-", "text" => "Patch parameter validation to allow for output image types such as png:gd etc. Only the prefix before the first ':' is validated." } ], "line" => 325, "raw" => "1.09 Thu Jul 21 14:13:00 2011\n", "raw_date" => "Thu Jul 21 14:13:00 2011", "version" => "1.09" }, { "date" => "2011-07-21T11:53:00Z", "entries" => [ { "line" => 330, "raw" => "\t - Change the behaviour of sub log() in GraphViz.pm. Now if called with \$level eq 'error', it dies with \$message.\n", "style" => "-", "text" => "Change the behaviour of sub log() in GraphViz.pm. Now if called with \$level eq 'error', it dies with \$message." }, { "line" => 331, "raw" => "\t - Change references to the color darkblue to blue, so it's compatible with both the X11 and SVG color schemes.\n", "style" => "-", "text" => "Change references to the color darkblue to blue, so it's compatible with both the X11 and SVG color schemes." }, { "line" => 332, "raw" => "\t - Likewise change chartreuse to lawngreen.\n", "style" => "-", "text" => "Likewise change chartreuse to lawngreen." }, { "line" => 333, "raw" => "\t - Rename scripts/generate.index.pl to scripts/generate.demo.pl, as a more meaningful name.\n", "style" => "-", "text" => "Rename scripts/generate.index.pl to scripts/generate.demo.pl, as a more meaningful name." }, { "line" => 334, "raw" => "\t - Patch scripts/generate.demo.pl to accept the output image type as a command line parameter.\n", "style" => "-", "text" => "Patch scripts/generate.demo.pl to accept the output image type as a command line parameter." }, { "line" => 335, "raw" => "\t - Use this new feature to generate png files, and upload them to the demo site\n\t \thttp://savage.net.au/Perl-modules/html/graphviz2/ even though png is often uglier than svg.\n\t\tI did this because Iceweasel (Firefox) V 3.5.16 was not displaying svgs within the index file,\n\t\teven though they are fine when displayed directly.\n", "style" => "-", "text" => "Use this new feature to generate png files, and upload them to the demo site http://savage.net.au/Perl-modules/html/graphviz2/ even though png is often uglier than svg. I did this because Iceweasel (Firefox) V 3.5.16 was not displaying svgs within the index file, even though they are fine when displayed directly." }, { "line" => 339, "raw" => "\t - Add scripts/generate.png.sh.\n", "style" => "-", "text" => "Add scripts/generate.png.sh." }, { "line" => 340, "raw" => "\t - Note: scripts/jointed.edges.pl must call dot with -Tpng:gd and not -Tpng, for unknown reasons.\n", "style" => "-", "text" => "Note: scripts/jointed.edges.pl must call dot with -Tpng:gd and not -Tpng, for unknown reasons." }, { "line" => 341, "raw" => "\t - Make both scripts/generate.png.sh and scripts/generate.svg.sh redirect their log files to /tmp,\n\t \tso that we don't have to ship the logs, and also so they don't keep changing and hence need checking in.\n", "style" => "-", "text" => "Make both scripts/generate.png.sh and scripts/generate.svg.sh redirect their log files to /tmp, so that we don't have to ship the logs, and also so they don't keep changing and hence need checking in." }, { "line" => 343, "raw" => "\t - Remove ./dbi.schema.log from the distro.\n\n", "style" => "-", "text" => "Remove ./dbi.schema.log from the distro." } ], "line" => 329, "raw" => "1.08 Thu Jul 21 11:53:00 2011\n", "raw_date" => "Thu Jul 21 11:53:00 2011", "version" => "1.08" }, { "date" => "2011-07-04T15:46:00Z", "entries" => [ { "line" => 346, "raw" => "\t - Use Date::Format to add a date stamp at the end of html/index.html, as output by generate.index.pl.\n\n", "style" => "-", "text" => "Use Date::Format to add a date stamp at the end of html/index.html, as output by generate.index.pl." } ], "line" => 345, "raw" => "1.07 Mon Jul 4 15:46:00 2011\n", "raw_date" => "Mon Jul 4 15:46:00 2011", "version" => "1.07" }, { "date" => "2011-06-28T11:10:00Z", "entries" => [ { "line" => 349, "raw" => "\t - Change usage of File::Temp -> newdir to fix problems testing on BSD-based systems.\n", "style" => "-", "text" => "Change usage of File::Temp -> newdir to fix problems testing on BSD-based systems." }, { "line" => 350, "raw" => "\t - Add scripts/jointed.edges.pl.\n\t \tThis demo - in Graph::Easy syntax - ships with Graph::Easy::Marpa.\n", "style" => "-", "text" => "Add scripts/jointed.edges.pl. This demo - in Graph::Easy syntax - ships with Graph::Easy::Marpa." }, { "line" => 352, "raw" => "\t - Re-write generate.index.pl to put all demo data (where available) and images on 1 page.\n", "style" => "-", "text" => "Re-write generate.index.pl to put all demo data (where available) and images on 1 page." }, { "line" => 353, "raw" => "\t - Upload demo to (new location) http://savage.net.au/Perl-modules/html/graphviz2/index.html.\n\n", "style" => "-", "text" => "Upload demo to (new location) http://savage.net.au/Perl-modules/html/graphviz2/index.html." } ], "line" => 348, "raw" => "1.06 Tue Jun 28 11:10:00 2011\n", "raw_date" => "Tue Jun 28 11:10:00 2011", "version" => "1.06" }, { "date" => "2011-06-24T12:40:00Z", "entries" => [ { "line" => 356, "raw" => "\t - Implement GraphViz2::Parse::Marpa, along with scripts/parse.marpa.pl and t/sample.marpa.1.dat.\n\t \tThe output is html/parse.marpa.svg.\n", "style" => "-", "text" => "Implement GraphViz2::Parse::Marpa, along with scripts/parse.marpa.pl and t/sample.marpa.1.dat. The output is html/parse.marpa.svg." }, { "line" => 358, "raw" => "\t - Implement GraphViz2::Parse::STT, along with scripts/parse.stt.pl and t/sample.stt.1.dat.\n\t \tThe output is html/parse.stt.svg.\n", "style" => "-", "text" => "Implement GraphViz2::Parse::STT, along with scripts/parse.stt.pl and t/sample.stt.1.dat. The output is html/parse.stt.svg." }, { "line" => 360, "raw" => "\t - Add use File::Spec to t/test.t\n\n", "style" => "-", "text" => "Add use File::Spec to t/test.t" } ], "line" => 355, "raw" => "1.05 Fri Jun 24 12:40:00 2011\n", "raw_date" => "Fri Jun 24 12:40:00 2011", "version" => "1.05" }, { "date" => "2011-06-22T9:36:00Z", "entries" => [ { "line" => 363, "raw" => "\t - Reduce required version of File::Basename to 2.77, which came with Perl 5.10.1.\n", "style" => "-", "text" => "Reduce required version of File::Basename to 2.77, which came with Perl 5.10.1." }, { "line" => 364, "raw" => "\t - Stop trying to write to t/html/, and use File::Temp for a directory instead.\n\t \tThat way, it doesn't matter who owns t/html/, nor whether or not it's writable.\n\n", "style" => "-", "text" => "Stop trying to write to t/html/, and use File::Temp for a directory instead. That way, it doesn't matter who owns t/html/, nor whether or not it's writable." } ], "line" => 362, "raw" => "1.04 Wed Jun 22 9:36:00 2011\n", "raw_date" => "Wed Jun 22 9:36:00 2011", "version" => "1.04" }, { "date" => "2011-06-19T16:27:00Z", "entries" => [ { "line" => 368, "raw" => "\t - Tweak File::Temp -> new to be File::Temp ->new(EXLOCK => 0) for BSD-based systems.\n\n", "style" => "-", "text" => "Tweak File::Temp -> new to be File::Temp ->new(EXLOCK => 0) for BSD-based systems." } ], "line" => 367, "raw" => "1.03 Sun Jun 19 16:27:00 2011\n", "raw_date" => "Sun Jun 19 16:27:00 2011", "version" => "1.03" }, { "date" => "2011-06-17T8:36:00Z", "entries" => [ { "line" => 371, "raw" => "\t - Add the pre-requisite Log::Handler to Build.PL and Makefile.PL.\n", "style" => "-", "text" => "Add the pre-requisite Log::Handler to Build.PL and Makefile.PL." }, { "line" => 372, "raw" => "\t - Release HTML::Entities::Interpolate V 1.04 and Set::Array V 0.23 to CPAN.\n", "style" => "-", "text" => "Release HTML::Entities::Interpolate V 1.04 and Set::Array V 0.23 to CPAN." }, { "line" => 373, "raw" => "\t - Add README file.\n", "style" => "-", "text" => "Add README file." }, { "line" => 374, "raw" => "\t - Clean up TODO list.\n\n", "style" => "-", "text" => "Clean up TODO list." } ], "line" => 370, "raw" => "1.02 Fri Jun 17 8:36:00 2011\n", "raw_date" => "Fri Jun 17 8:36:00 2011", "version" => "1.02" }, { "date" => "2011-06-15T15:00:00Z", "entries" => [ { "line" => 377, "raw" => "\t - Quote cluster/subgraph names so they may contain weird characters.\n", "style" => "-", "text" => "Quote cluster/subgraph names so they may contain weird characters." }, { "line" => 378, "raw" => "\t - Add method dependency(data => \$depend) to GraphViz2.pm, which accepts an object of type\n\t \tAlgorithm::Dependency. See scripts/dependency.pl and html/dependency.svg.\n", "style" => "-", "text" => "Add method dependency(data => \$depend) to GraphViz2.pm, which accepts an object of type Algorithm::Dependency. See scripts/dependency.pl and html/dependency.svg." }, { "line" => 380, "raw" => "\t - Add GraphViz2::Parse::ISA, and scripts/parse.isa.pl, and the t/lib/Parent hierarchy.\n\n", "style" => "-", "text" => "Add GraphViz2::Parse::ISA, and scripts/parse.isa.pl, and the t/lib/Parent hierarchy." } ], "line" => 376, "raw" => "1.01 Wed Jun 15 15:00:00 2011\n", "raw_date" => "Wed Jun 15 15:00:00 2011", "version" => "1.01" }, { "date" => "2011-06-15T14:26:00Z", "entries" => [ { "line" => 383, "raw" => "\t - This is a re-write of GraphViz. The method parameter lists are incompatible.\n\t \tSorry, but it now supports all options and attributes in Graphviz V 2.23.6.\n", "style" => "-", "text" => "This is a re-write of GraphViz. The method parameter lists are incompatible. Sorry, but it now supports all options and attributes in Graphviz V 2.23.6." }, { "line" => 385, "raw" => "\t - Rewrite GraphViz, GraphViz::Data::Grapher, GraphViz::Parse::RecDescent, GraphViz::Parse::Yacc and GraphViz::Parse::Yapp.\n\t \tThe core code of *::RecDescent, *::Yacc and *::Yapp has been copied from GraphViz, with tiny changes.\n", "style" => "-", "text" => "Rewrite GraphViz, GraphViz::Data::Grapher, GraphViz::Parse::RecDescent, GraphViz::Parse::Yacc and GraphViz::Parse::Yapp. The core code of *::RecDescent, *::Yacc and *::Yapp has been copied from GraphViz, with tiny changes." }, { "line" => 387, "raw" => "\t - GraphViz2::Data::Grapher uses Tree::DAG_Node to hold information, before calling external plotting programs.\n\t \tThe tree is available for you to process whether or not you actually plot the graph.\n", "style" => "-", "text" => "GraphViz2::Data::Grapher uses Tree::DAG_Node to hold information, before calling external plotting programs. The tree is available for you to process whether or not you actually plot the graph." }, { "line" => 389, "raw" => "\t - GraphViz::Regex renamed GraphViz2::Parse::Regexp.\n", "style" => "-", "text" => "GraphViz::Regex renamed GraphViz2::Parse::Regexp." }, { "line" => 390, "raw" => "\t - GraphViz::XML renamed GraphViz2::Parse::XML. And it uses XML::Tiny by default.\n\t \tOne demo shows how to use XML::Bare instead.\n", "style" => "-", "text" => "GraphViz::XML renamed GraphViz2::Parse::XML. And it uses XML::Tiny by default. One demo shows how to use XML::Bare instead." }, { "line" => 392, "raw" => "\t - All new documentation.\n", "style" => "-", "text" => "All new documentation." }, { "line" => 393, "raw" => "\t - All new demos, in scripts/*.pl. These are documented in GraphViz's POD.\n", "style" => "-", "text" => "All new demos, in scripts/*.pl. These are documented in GraphViz's POD." }, { "line" => 394, "raw" => "\t - All demo output included, in html/*.html and html/*.svg.\n", "style" => "-", "text" => "All demo output included, in html/*.html and html/*.svg." } ], "line" => 382, "raw" => "1.00 Wed Jun 15 14:26:00 2011\n", "raw_date" => "Wed Jun 15 14:26:00 2011", "version" => "1.00" } ] } CPAN-Changes-0.500005/corpus/dists/XML-LibXSLT.parsed000644 000000 000000 00000124361 14472651645 017745 0ustar00000000 000000 { "preamble" => "Revision history for Perl extension XML::LibXSLT.", "raw_preamble" => "Revision history for Perl extension XML::LibXSLT.\n\n", "releases" => [ { "entries" => [ { "entries" => [ { "line" => 5, "raw" => " - Setting it as 1.1.28 did not fix the failures, and now we have\n some more tests to test against it.\n", "style" => "-", "text" => "Setting it as 1.1.28 did not fix the failures, and now we have some more tests to test against it." }, { "line" => 7, "raw" => " - https://rt.cpan.org/Ticket/Display.html?id=92659\n", "style" => "-", "text" => "https://rt.cpan.org/Ticket/Display.html?id=92659" }, { "line" => 8, "raw" => " - Thanks to Slaven Rezic for the report.\n\n", "style" => "-", "text" => "Thanks to Slaven Rezic for the report." } ], "line" => 4, "raw" => " - Decrease the minimum libxslt version again.\n", "style" => "-", "text" => "Decrease the minimum libxslt version again." } ], "line" => 3, "note" => "Mon 3 Feb 10:07:31 IST 2014", "raw" => "1.87 Mon 3 Feb 10:07:31 IST 2014\n", "version" => "1.87" }, { "entries" => [ { "entries" => [ { "line" => 12, "raw" => " - Add some data files for it under t/data/*.\n", "style" => "-", "text" => "Add some data files for it under t/data/*." }, { "line" => 13, "raw" => " - This fails on FreeBSD 9.2 currently.\n\n", "style" => "-", "text" => "This fails on FreeBSD 9.2 currently." } ], "line" => 11, "raw" => " - Add t/xml-grammar-failures.t to catch test failures in dependent modules.\n", "style" => "-", "text" => "Add t/xml-grammar-failures.t to catch test failures in dependent modules." } ], "line" => 10, "note" => "Sun 2 Feb 17:06:07 IST 2014", "raw" => "1.86 Sun 2 Feb 17:06:07 IST 2014\n", "version" => "1.86" }, { "entries" => [ { "line" => 16, "raw" => " - Add \"use strict;\" and \"use warnings;\" globally (CPANTS).\n", "style" => "-", "text" => "Add \"use strict;\" and \"use warnings;\" globally (CPANTS)." }, { "line" => 17, "raw" => " - Add LICENSE to the MANIFEST.\n\n", "style" => "-", "text" => "Add LICENSE to the MANIFEST." } ], "line" => 15, "note" => "Sat 1 Feb 16:23:43 IST 2014", "raw" => "1.85 Sat 1 Feb 16:23:43 IST 2014\n", "version" => "1.85" }, { "entries" => [ { "entries" => [ { "line" => 21, "raw" => " - https://rt.cpan.org/Ticket/Display.html?id=91652\n", "style" => "-", "text" => "https://rt.cpan.org/Ticket/Display.html?id=91652" }, { "line" => 22, "raw" => " - Thanks to Alexandr Ciornii for the report, and to Nikolay Sivov\n for providing help.\n\n", "style" => "-", "text" => "Thanks to Alexandr Ciornii for the report, and to Nikolay Sivov for providing help." } ], "line" => 20, "raw" => " - Hopefully fix a segmentation fault on Win32 introduced in the last ver.\n", "style" => "-", "text" => "Hopefully fix a segmentation fault on Win32 introduced in the last ver." } ], "line" => 19, "note" => "Thu 26 Dec 14:19:19 IST 2013", "raw" => "1.84 Thu 26 Dec 14:19:19 IST 2013\n", "version" => "1.84" }, { "entries" => [ { "entries" => [ { "line" => 27, "raw" => " - https://rt.cpan.org/Public/Bug/Display.html?id=91118\n", "style" => "-", "text" => "https://rt.cpan.org/Public/Bug/Display.html?id=91118" }, { "line" => 28, "raw" => " - Thanks to Daniel Macks for the report.\n\n", "style" => "-", "text" => "Thanks to Daniel Macks for the report." } ], "line" => 26, "raw" => " - Get rid of compiler warnings when compiling using CLANG.\n", "style" => "-", "text" => "Get rid of compiler warnings when compiling using CLANG." } ], "line" => 25, "note" => "Sun 22 Dec 18:20:23 IST 2013", "raw" => "1.83 Sun 22 Dec 18:20:23 IST 2013\n", "version" => "1.83" }, { "entries" => [ { "entries" => [ { "line" => 32, "raw" => " - https://rt.cpan.org/Ticket/Display.html?id=90085\n", "style" => "-", "text" => "https://rt.cpan.org/Ticket/Display.html?id=90085" }, { "line" => 33, "raw" => " - Thanks to David Schmidt for the report, and to joel and brother\n from the channel #perl-help for analysis.\n\n", "style" => "-", "text" => "Thanks to David Schmidt for the report, and to joel and brother from the channel #perl-help for analysis." } ], "line" => 31, "raw" => " - Makefile.PL: Report LibXSLT mismatch correctly.\n", "style" => "-", "text" => "Makefile.PL: Report LibXSLT mismatch correctly." } ], "line" => 30, "note" => "Wed 6 Nov 13:17:39 IST 2013", "raw" => "1.82 Wed 6 Nov 13:17:39 IST 2013\n", "version" => "1.82" }, { "entries" => [ { "entries" => [ { "line" => 38, "raw" => " - https://rt.cpan.org/Ticket/Display.html?id=86689\n\n", "style" => "-", "text" => "https://rt.cpan.org/Ticket/Display.html?id=86689" } ], "line" => 37, "raw" => " - Fix a typo reported by dsteinbrunner:\n", "style" => "-", "text" => "Fix a typo reported by dsteinbrunner:" } ], "line" => 36, "note" => "Fri 5 Jul 10:13:36 IDT 2013", "raw" => "1.81 Fri 5 Jul 10:13:36 IDT 2013\n", "version" => "1.81" }, { "entries" => [ { "entries" => [ { "line" => 42, "raw" => " - due to failures such as http://www.cpantesters.org/cpan/report/6f5029ee-639a-11e2-8465-2a97270fb964\n\n", "style" => "-", "text" => "due to failures such as http://www.cpantesters.org/cpan/report/6f5029ee-639a-11e2-8465-2a97270fb964" } ], "line" => 41, "raw" => " - Bump the minimum version of libxslt2 to 1.1.28.\n", "style" => "-", "text" => "Bump the minimum version of libxslt2 to 1.1.28." } ], "line" => 40, "note" => "Wed 23 Jan 07:53:57 IST 2013", "raw" => "1.80 Wed 23 Jan 07:53:57 IST 2013\n", "version" => "1.80" }, { "entries" => [ { "entries" => [ { "line" => 46, "raw" => " - Due to this bug - https://bugzilla.gnome.org/show_bug.cgi?id=684564\n\n", "style" => "-", "text" => "Due to this bug - https://bugzilla.gnome.org/show_bug.cgi?id=684564" } ], "line" => 45, "raw" => " - Die when libxslt is 1.1.27.\n", "style" => "-", "text" => "Die when libxslt is 1.1.27." } ], "line" => 44, "note" => "Mon 26 Nov 12:15:35 IST 2012", "raw" => "1.79 Mon 26 Nov 12:15:35 IST 2012\n", "version" => "1.79" }, { "entries" => [ { "entries" => [ { "line" => 51, "raw" => " - Thanks, Dorian!\n\n", "style" => "-", "text" => "Thanks, Dorian!" } ], "line" => 49, "raw" => " - Add output_method method, update documentation of media_type\n (dorian\@cpan).\n", "style" => "-", "text" => "Add output_method method, update documentation of media_type (dorian\@cpan)." } ], "line" => 48, "note" => "Thu 6 Sep 13:17:28 IDT 2012", "raw" => "1.78 Thu 6 Sep 13:17:28 IDT 2012\n", "version" => "1.78" }, { "date" => "2012-02-25T16:23:57Z", "entries" => [ { "entries" => [ { "line" => 56, "raw" => " - Thanks, Michael!\n\n", "style" => "-", "text" => "Thanks, Michael!" } ], "line" => 54, "raw" => " - Apply a patch from Michael Ludwig clarifying the quoting of string\n parameters to the XSLT transformation.\n", "style" => "-", "text" => "Apply a patch from Michael Ludwig clarifying the quoting of string parameters to the XSLT transformation." } ], "line" => 53, "raw" => "1.77 Sat Feb 25 16:23:57 IST 2012\n", "raw_date" => "Sat Feb 25 16:23:57 IST 2012", "version" => "1.77" }, { "date" => "2012-01-12T19:15:03Z", "entries" => [ { "entries" => [ { "line" => 61, "raw" => " - https://rt.cpan.org/Public/Bug/Display.html?id=73905\n", "style" => "-", "text" => "https://rt.cpan.org/Public/Bug/Display.html?id=73905" }, { "line" => 62, "raw" => " - These include Microsoft Visual C++ (in C-mode).\n\n", "style" => "-", "text" => "These include Microsoft Visual C++ (in C-mode)." } ], "line" => 59, "raw" => " - Made LibXSLT.xs compile with C compilers that don't accept declarations\n inside blocks:\n", "style" => "-", "text" => "Made LibXSLT.xs compile with C compilers that don't accept declarations inside blocks:" } ], "line" => 58, "raw" => "1.76 Thu Jan 12 19:15:03 IST 2012\n", "raw_date" => "Thu Jan 12 19:15:03 IST 2012", "version" => "1.76" }, { "date" => "2011-10-28T17:26:57Z", "entries" => [ { "entries" => [ { "line" => 66, "raw" => " - t/03input.t\n", "style" => "-", "text" => "t/03input.t" } ], "line" => 65, "raw" => " - Convert the following test scripts from Test.pm to Test::More :\n", "style" => "-", "text" => "Convert the following test scripts from Test.pm to Test::More :" }, { "entries" => [ { "line" => 69, "raw" => " - \302\253segfault in free()\302\273\n", "style" => "-", "text" => "\302\253segfault in free()\302\273" }, { "line" => 70, "raw" => " - Thanks, Tim!\n\n", "style" => "-", "text" => "Thanks, Tim!" } ], "line" => 67, "raw" => " - Fix for https://rt.cpan.org/Public/Bug/Display.html?id=71345 by Tim\n Brody:\n", "style" => "-", "text" => "Fix for https://rt.cpan.org/Public/Bug/Display.html?id=71345 by Tim Brody:" } ], "line" => 64, "raw" => "1.75 Fri Oct 28 17:26:57 IST 2011\n", "raw_date" => "Fri Oct 28 17:26:57 IST 2011", "version" => "1.75" }, { "date" => "2011-10-25T21:48:48Z", "entries" => [ { "entries" => [ { "line" => 74, "raw" => " - t/01basic.t\n", "style" => "-", "text" => "t/01basic.t" }, { "line" => 75, "raw" => " - t/02dromeds.t\n", "style" => "-", "text" => "t/02dromeds.t" }, { "line" => 76, "raw" => " - t/04params.t\n", "style" => "-", "text" => "t/04params.t" }, { "line" => 77, "raw" => " - t/05quick.t\n", "style" => "-", "text" => "t/05quick.t" }, { "line" => 78, "raw" => " - t/06output.t\n", "style" => "-", "text" => "t/06output.t" }, { "line" => 79, "raw" => " - t/06entities.t\n", "style" => "-", "text" => "t/06entities.t" }, { "line" => 80, "raw" => " - t/07blankdoc.t\n", "style" => "-", "text" => "t/07blankdoc.t" }, { "line" => 81, "raw" => " - t/08literal.t\n", "style" => "-", "text" => "t/08literal.t" }, { "line" => 82, "raw" => " - t/09exslt.t\n", "style" => "-", "text" => "t/09exslt.t" }, { "line" => 83, "raw" => " - t/10functions.t\n", "style" => "-", "text" => "t/10functions.t" }, { "line" => 84, "raw" => " - t/11utf8.t\n", "style" => "-", "text" => "t/11utf8.t" }, { "line" => 85, "raw" => " - t/12import.t\n", "style" => "-", "text" => "t/12import.t" }, { "line" => 86, "raw" => " - t/13error.t\n", "style" => "-", "text" => "t/13error.t" }, { "line" => 87, "raw" => " - t/14security.t\n", "style" => "-", "text" => "t/14security.t" }, { "line" => 88, "raw" => " - t/15misc.t\n\n", "style" => "-", "text" => "t/15misc.t" } ], "line" => 73, "raw" => " - Convert the following test scripts from Test.pm to Test::More :\n", "style" => "-", "text" => "Convert the following test scripts from Test.pm to Test::More :" }, { "line" => 90, "raw" => " - In the process made \"Encode\" and perl-5.8.1. pre-requisites of this\n distribution.\n\n", "style" => "-", "text" => "In the process made \"Encode\" and perl-5.8.1. pre-requisites of this distribution." }, { "line" => 93, "raw" => " - Add the \"make runtest\" and \"make distruntest\" targets to test using\n Test-Run.\n\n", "style" => "-", "text" => "Add the \"make runtest\" and \"make distruntest\" targets to test using Test-Run." } ], "line" => 72, "raw" => "1.74 Tue Oct 25 21:48:48 IST 2011\n", "raw_date" => "Tue Oct 25 21:48:48 IST 2011", "version" => "1.74" }, { "date" => "2011-10-09T17:32:30Z", "entries" => [ { "entries" => [ { "line" => 98, "raw" => " - made the port reservation on t/14security.t for the non-existent\n URL more robust.\n\n", "style" => "-", "text" => "made the port reservation on t/14security.t for the non-existent URL more robust." } ], "line" => 97, "raw" => " - Possible fix for https://rt.cpan.org/Ticket/Display.html?id=71456 :\n", "style" => "-", "text" => "Possible fix for https://rt.cpan.org/Ticket/Display.html?id=71456 :" } ], "line" => 96, "raw" => "1.73 Sun Oct 9 17:32:30 IST 2011\n", "raw_date" => "Sun Oct 9 17:32:30 IST 2011", "version" => "1.73" }, { "date" => "2011-10-06T13:37:13Z", "entries" => [ { "line" => 102, "raw" => " - Moved the benchmarking code under benchmark/ so it won't be indexed\n by CPAN (Tim Brody).\n", "style" => "-", "text" => "Moved the benchmarking code under benchmark/ so it won't be indexed by CPAN (Tim Brody)." }, { "line" => 104, "raw" => " - Avoid leaking memory inside extension elements by cleaning up on\n stylesheet DESTROY (Tim Brody).\n", "style" => "-", "text" => "Avoid leaking memory inside extension elements by cleaning up on stylesheet DESTROY (Tim Brody)." }, { "line" => 106, "raw" => " - xsltInit() and xsltCleanupGlobals() to avoid leaking memory on\n init/shutdown (Tim Brody).\n", "style" => "-", "text" => "xsltInit() and xsltCleanupGlobals() to avoid leaking memory on init/shutdown (Tim Brody)." }, { "line" => 108, "raw" => " - Added support for stylesheet context functions via a\n \$stylesheet->register_function() method with the same arguments as\n XML::LibXSLT->register_function(). (Tim Brody)\n", "style" => "-", "text" => "Added support for stylesheet context functions via a \$stylesheet->register_function() method with the same arguments as XML::LibXSLT->register_function(). (Tim Brody)" }, { "line" => 111, "raw" => " - Added support for register_element() on stylesheet objects. The callback\n may leak memory though - nothing frees the _private attributes of the\n node + document owner for the passed arguments? (Tim Brody)\n\n", "style" => "-", "text" => "Added support for register_element() on stylesheet objects. The callback may leak memory though - nothing frees the _private attributes of the node + document owner for the passed arguments? (Tim Brody)" } ], "line" => 101, "raw" => "1.72 Thu Oct 6 13:37:13 IST 2011\n", "raw_date" => "Thu Oct 6 13:37:13 IST 2011", "version" => "1.72" }, { "date" => "2011-09-10T20:38:23Z", "entries" => [ { "entries" => [ { "line" => 117, "raw" => " - add a blacklist for libxslt-1.1.25 which has a deadlock that\n hangs a test.\n", "style" => "-", "text" => "add a blacklist for libxslt-1.1.25 which has a deadlock that hangs a test." } ], "line" => 116, "raw" => " - Fixed https://rt.cpan.org/Ticket/Display.html?id=50487 :\n", "style" => "-", "text" => "Fixed https://rt.cpan.org/Ticket/Display.html?id=50487 :" }, { "entries" => [ { "line" => 120, "raw" => " - Unexpected webserver dependency in test\n", "style" => "-", "text" => "Unexpected webserver dependency in test" } ], "line" => 119, "raw" => " - Fixed https://rt.cpan.org/Ticket/Display.html?id=52422 :\n", "style" => "-", "text" => "Fixed https://rt.cpan.org/Ticket/Display.html?id=52422 :" }, { "line" => 121, "raw" => " - Updated the version control instructions in the README to bitbucket.org.\n\n", "style" => "-", "text" => "Updated the version control instructions in the README to bitbucket.org." } ], "line" => 115, "raw" => "1.71 Sat Sep 10 20:38:23 IDT 2011\n", "raw_date" => "Sat Sep 10 20:38:23 IDT 2011", "version" => "1.71" }, { "entries" => [ { "line" => 124, "raw" => " - fixed various bugs\n", "style" => "-", "text" => "fixed various bugs" }, { "line" => 125, "raw" => " - documentation updates\n", "style" => "-", "text" => "documentation updates" }, { "line" => 126, "raw" => " - #48247: Win32 patch kindly provided by KMX\@cpan.org\n", "style" => "-", "text" => "#48247: Win32 patch kindly provided by KMX\@cpan.org" }, { "line" => 127, "raw" => " - sync with latest XML::LibXML ABI and add a compatibility check\n", "style" => "-", "text" => "sync with latest XML::LibXML ABI and add a compatibility check" }, { "line" => 128, "raw" => " - do not force -lgcrypt and -lgpg-error linker flags\n", "style" => "-", "text" => "do not force -lgcrypt and -lgpg-error linker flags" }, { "line" => 129, "raw" => " - fix for attribute nodes returned by user-defined XPath functions\n", "style" => "-", "text" => "fix for attribute nodes returned by user-defined XPath functions" }, { "line" => 130, "raw" => " - address #41542: restore internalDTD subset on the source\n document of a transformation (libxslt unlinks it)\n\n", "style" => "-", "text" => "address #41542: restore internalDTD subset on the source document of a transformation (libxslt unlinks it)" } ], "line" => 123, "raw" => "1.70\n", "version" => "1.70" }, { "entries" => [ { "line" => 134, "raw" => " - fix compilation problems\n", "style" => "-", "text" => "fix compilation problems" }, { "line" => 135, "raw" => " - skip exslt tests if not available\n", "style" => "-", "text" => "skip exslt tests if not available" }, { "line" => 136, "raw" => " - added XML::LibXSLT::HAVE_EXSLT() (1/0)\n\n", "style" => "-", "text" => "added XML::LibXSLT::HAVE_EXSLT() (1/0)" } ], "line" => 133, "raw" => "1.68\n", "version" => "1.68" }, { "entries" => [ { "line" => 139, "raw" => " - sync the binary internals to those of XML::LibXML 1.67\n", "style" => "-", "text" => "sync the binary internals to those of XML::LibXML 1.67" }, { "line" => 140, "raw" => " - update regression tests for compatibility with up-to-date libxslt\n\n", "style" => "-", "text" => "update regression tests for compatibility with up-to-date libxslt" } ], "line" => 138, "raw" => "1.67\n", "version" => "1.67" }, { "entries" => [ { "line" => 143, "raw" => " - bump requirements to libxslt 1.1.8\n", "style" => "-", "text" => "bump requirements to libxslt 1.1.8" }, { "line" => 144, "raw" => " - sync the binary internals to those of XML::LibXML 1.66\n\n", "style" => "-", "text" => "sync the binary internals to those of XML::LibXML 1.66" } ], "line" => 142, "raw" => "1.66\n", "version" => "1.66" }, { "entries" => [ { "line" => 147, "raw" => " - fix SIGSEGV regarding freeing nodes created by extension functions\n (reported by Elizabeth Mattijsen)\n", "style" => "-", "text" => "fix SIGSEGV regarding freeing nodes created by extension functions (reported by Elizabeth Mattijsen)" }, { "line" => 149, "raw" => " - use pkg-config to determine linker flags for libexslt\n\n", "style" => "-", "text" => "use pkg-config to determine linker flags for libexslt" } ], "line" => 146, "raw" => "1.63\n", "version" => "1.63" }, { "entries" => [ { "line" => 152, "raw" => " - security callback interface contributed by Shane Corgatelli\n", "style" => "-", "text" => "security callback interface contributed by Shane Corgatelli" }, { "line" => 153, "raw" => " - check libxslt version\n", "style" => "-", "text" => "check libxslt version" }, { "line" => 154, "raw" => " - added XML::LibXML-like API to retrieve libxslt version\n", "style" => "-", "text" => "added XML::LibXML-like API to retrieve libxslt version" }, { "line" => 155, "raw" => " - added output_as_bytes() and output_as_chars()\n", "style" => "-", "text" => "added output_as_bytes() and output_as_chars()" }, { "line" => 156, "raw" => " - added regression tests for output_as_* to 11utf8.t\n", "style" => "-", "text" => "added regression tests for output_as_* to 11utf8.t" }, { "line" => 157, "raw" => " - output_as_string documentation fixed to match reality\n", "style" => "-", "text" => "output_as_string documentation fixed to match reality" }, { "line" => 158, "raw" => " - make 06entities.t to pass with older libxml2/libxslt\n", "style" => "-", "text" => "make 06entities.t to pass with older libxml2/libxslt" }, { "line" => 159, "raw" => " - POD uses items instead of headings\n", "style" => "-", "text" => "POD uses items instead of headings" }, { "line" => 160, "raw" => " - fixed media_type and output_encoding for imported stylesheets [rt.cpan.org #23440]\n\n", "style" => "-", "text" => "fixed media_type and output_encoding for imported stylesheets [rt.cpan.org #23440]" } ], "line" => 151, "raw" => "1.62\n", "version" => "1.62" }, { "entries" => [ { "line" => 163, "raw" => " - fixed error reporting: die on fatal errors, warn otherwise\n (in particular, warn rather than die on )\n\n", "style" => "-", "text" => "fixed error reporting: die on fatal errors, warn otherwise (in particular, warn rather than die on )" } ], "line" => 162, "raw" => "1.61\n", "version" => "1.61" }, { "entries" => [ { "line" => 167, "raw" => " - fix a huge memory leak in transform_file (bug #1314)\n", "style" => "-", "text" => "fix a huge memory leak in transform_file (bug #1314)" }, { "line" => 168, "raw" => " - make it clear from the docs that output_string returns bytes (bug #8875)\n", "style" => "-", "text" => "make it clear from the docs that output_string returns bytes (bug #8875)" }, { "line" => 169, "raw" => " - added missing type-casting to fix compile-time warnings (bug #18508)\n", "style" => "-", "text" => "added missing type-casting to fix compile-time warnings (bug #18508)" }, { "line" => 170, "raw" => " - using call_* instead of perl_call_* (perl_ variants are obsolete)\n", "style" => "-", "text" => "using call_* instead of perl_call_* (perl_ variants are obsolete)" }, { "line" => 171, "raw" => " - in callbacks, POPs on error before croaking, otherwise it has no\n effect (and we probably leak)\n", "style" => "-", "text" => "in callbacks, POPs on error before croaking, otherwise it has no effect (and we probably leak)" }, { "line" => 173, "raw" => " - added test case which used to fail (provided in rt #15723)\n", "style" => "-", "text" => "added test case which used to fail (provided in rt #15723)" }, { "line" => 174, "raw" => " - apply patch for Makefile.PL for non-standard libxslt paths (bug #16224)\n", "style" => "-", "text" => "apply patch for Makefile.PL for non-standard libxslt paths (bug #16224)" }, { "line" => 175, "raw" => " - fix segfault with registered functions returning nodes\n", "style" => "-", "text" => "fix segfault with registered functions returning nodes" }, { "line" => 176, "raw" => " - fix leaks in parse_stylesheet\n", "style" => "-", "text" => "fix leaks in parse_stylesheet" }, { "line" => 177, "raw" => " - error reporting\n\n", "style" => "-", "text" => "error reporting" } ], "line" => 166, "raw" => "1.60\n", "version" => "1.60" }, { "entries" => [ { "line" => 180, "raw" => " - (revision bumped to match XML::LibXML)\n", "style" => "-", "text" => "(revision bumped to match XML::LibXML)" }, { "line" => 181, "raw" => " - adapted for new XML::LibXML::InputCallback API\n", "style" => "-", "text" => "adapted for new XML::LibXML::InputCallback API" }, { "line" => 182, "raw" => " - support for static linking against libxml2\n\n", "style" => "-", "text" => "support for static linking against libxml2" } ], "line" => 179, "raw" => "1.59\n", "version" => "1.59" }, { "entries" => [ { "line" => 185, "raw" => " - (revision bumped to match XML::LibXML)\n", "style" => "-", "text" => "(revision bumped to match XML::LibXML)" }, { "line" => 186, "raw" => " - Some minor fixes to perl extension functions support\n", "style" => "-", "text" => "Some minor fixes to perl extension functions support" }, { "line" => 187, "raw" => " - Fixed callbacks support\n", "style" => "-", "text" => "Fixed callbacks support" }, { "line" => 188, "raw" => " - Enable xinclude in XSLT files\n", "style" => "-", "text" => "Enable xinclude in XSLT files" }, { "line" => 189, "raw" => " - Fixed some memory leaks\n", "style" => "-", "text" => "Fixed some memory leaks" }, { "line" => 190, "raw" => " - Fixed some segfaults\n\n", "style" => "-", "text" => "Fixed some segfaults" } ], "line" => 184, "raw" => "1.57\n", "version" => "1.57" }, { "entries" => [ { "line" => 193, "raw" => " - Fixed ordering of params to perl extension funcs\n", "style" => "-", "text" => "Fixed ordering of params to perl extension funcs" }, { "line" => 194, "raw" => " - Implemented nodelist and other data type passing to\n extension functions, and returning nodelist and elements\n (some code from Ido Ben-Zvi)\n", "style" => "-", "text" => "Implemented nodelist and other data type passing to extension functions, and returning nodelist and elements (some code from Ido Ben-Zvi)" }, { "line" => 197, "raw" => " - Slightly better error handling\n\n", "style" => "-", "text" => "Slightly better error handling" } ], "line" => 192, "raw" => "1.53\n", "version" => "1.53" }, { "entries" => [ { "line" => 200, "raw" => " - Perl extension functions (whee!)\n\n", "style" => "-", "text" => "Perl extension functions (whee!)" } ], "line" => 199, "raw" => "1.52\n", "version" => "1.52" }, { "entries" => [ { "line" => 203, "raw" => " - Mac OS X fixes\n", "style" => "-", "text" => "Mac OS X fixes" }, { "line" => 204, "raw" => " - Cleaned up XPath quoting\n", "style" => "-", "text" => "Cleaned up XPath quoting" }, { "line" => 205, "raw" => " - Fixed document('') test (though if it still doesn't work\n in your code, see t/07blankdoc.t for details about how to\n make it work).\n\n", "style" => "-", "text" => "Fixed document('') test (though if it still doesn't work in your code, see t/07blankdoc.t for details about how to make it work)." } ], "line" => 202, "raw" => "1.51\n", "version" => "1.51" }, { "entries" => [ { "line" => 210, "raw" => " - Cleaned up media_type method so it doesn't segfault.\n\n", "style" => "-", "text" => "Cleaned up media_type method so it doesn't segfault." } ], "line" => 209, "raw" => "1.50\n", "version" => "1.50" }, { "entries" => [ { "line" => 213, "raw" => " - Migrated to new XML::LibXML 1.49 (with new memory stuff)\n\n", "style" => "-", "text" => "Migrated to new XML::LibXML 1.49 (with new memory stuff)" } ], "line" => 212, "raw" => "1.49\n", "version" => "1.49" }, { "entries" => [ { "line" => 216, "raw" => " - removed global callbacks\n", "style" => "-", "text" => "removed global callbacks" }, { "line" => 217, "raw" => " - changed callbacks to using LibXML globals\n\n", "style" => "-", "text" => "changed callbacks to using LibXML globals" } ], "line" => 215, "raw" => "1.31\n", "version" => "1.31" }, { "entries" => [ { "line" => 220, "raw" => " - Compatibility with XML::LibXML 1.30 (esp callbacks)\n", "style" => "-", "text" => "Compatibility with XML::LibXML 1.30 (esp callbacks)" }, { "line" => 221, "raw" => " - EXSLT support\n", "style" => "-", "text" => "EXSLT support" }, { "line" => 222, "raw" => " - Better test files\n\n", "style" => "-", "text" => "Better test files" } ], "line" => 219, "raw" => "1.30\n", "version" => "1.30" }, { "entries" => [ { "line" => 225, "raw" => " - Some fixes and tests for document('')\n", "style" => "-", "text" => "Some fixes and tests for document('')" }, { "line" => 226, "raw" => " - Better have_library implementation in Makefile.PL\n\n", "style" => "-", "text" => "Better have_library implementation in Makefile.PL" } ], "line" => 224, "raw" => "1.09\n", "version" => "1.09" }, { "entries" => [ { "line" => 229, "raw" => " - Fixed Makefile.PL check for libxslt > 0.7.0 to work with 1.0.0\n\n", "style" => "-", "text" => "Fixed Makefile.PL check for libxslt > 0.7.0 to work with 1.0.0" } ], "line" => 228, "raw" => "1.08\n", "version" => "1.08" }, { "entries" => [ { "line" => 232, "raw" => " - Fixes to work with XML::LibXML 0.94\n\n", "style" => "-", "text" => "Fixes to work with XML::LibXML 0.94" } ], "line" => 231, "raw" => "1.07\n", "version" => "1.07" }, { "entries" => [ { "line" => 235, "raw" => " - Support text/html defaulting for media_type when document element\n is .\n", "style" => "-", "text" => "Support text/html defaulting for media_type when document element is ." }, { "line" => 237, "raw" => " - Support building on Win32\n\n", "style" => "-", "text" => "Support building on Win32" } ], "line" => 234, "raw" => "1.06\n", "version" => "1.06" }, { "entries" => [ { "line" => 240, "raw" => " - More tests and fixes for media_type\n\n", "style" => "-", "text" => "More tests and fixes for media_type" } ], "line" => 239, "raw" => "1.05\n", "version" => "1.05" }, { "entries" => [ { "line" => 243, "raw" => " - Fixed media_type method\n\n", "style" => "-", "text" => "Fixed media_type method" } ], "line" => 242, "raw" => "1.04\n", "version" => "1.04" }, { "entries" => [ { "line" => 246, "raw" => " - Added output_encoding and media_type methods\n\n", "style" => "-", "text" => "Added output_encoding and media_type methods" } ], "line" => 245, "raw" => "1.03\n", "version" => "1.03" }, { "entries" => [ { "line" => 249, "raw" => " - Fixed Makefile.PL to work with libxslt 0.10\n\n", "style" => "-", "text" => "Fixed Makefile.PL to work with libxslt 0.10" } ], "line" => 248, "raw" => "1.02\n", "version" => "1.02" }, { "entries" => [ { "line" => 252, "raw" => " - Removed hack where we set dom->standalone = 42 to prevent\n XML::LibXML from garbage collecting\n", "style" => "-", "text" => "Removed hack where we set dom->standalone = 42 to prevent XML::LibXML from garbage collecting" }, { "line" => 254, "raw" => " - Removed XML::LibXML from the distribution. Now separate.\n\n", "style" => "-", "text" => "Removed XML::LibXML from the distribution. Now separate." } ], "line" => 251, "raw" => "1.01\n", "version" => "1.01" }, { "entries" => [ { "line" => 257, "raw" => " - More segfault fixes\n", "style" => "-", "text" => "More segfault fixes" }, { "line" => 258, "raw" => " - Benchmark updates\n\n", "style" => "-", "text" => "Benchmark updates" } ], "line" => 256, "raw" => "1.00\n", "version" => "1.00" }, { "entries" => [ { "line" => 261, "raw" => " - More segfault fixes\n\n", "style" => "-", "text" => "More segfault fixes" } ], "line" => 260, "raw" => "0.99_01\n", "version" => "0.99_01" }, { "entries" => [ { "line" => 264, "raw" => " - Fixed segfaults on 5.00503\n\n", "style" => "-", "text" => "Fixed segfaults on 5.00503" } ], "line" => 263, "raw" => "0.99\n", "version" => "0.99" }, { "entries" => [ { "line" => 267, "raw" => " - Fixed output encoding problems\n\n", "style" => "-", "text" => "Fixed output encoding problems" } ], "line" => 266, "raw" => "0.98\n", "version" => "0.98" }, { "entries" => [ { "line" => 270, "raw" => " - Now needs libxslt 0.7.0\n", "style" => "-", "text" => "Now needs libxslt 0.7.0" }, { "line" => 271, "raw" => " - Removed add_param() (now passed to transform())\n", "style" => "-", "text" => "Removed add_param() (now passed to transform())" }, { "line" => 272, "raw" => " - Makefile.PL works without gnome-config now\n\n", "style" => "-", "text" => "Makefile.PL works without gnome-config now" } ], "line" => 269, "raw" => "0.97\n", "version" => "0.97" }, { "entries" => [ { "line" => 275, "raw" => " - Various cleanups and code additions to make stable.\n\n", "style" => "-", "text" => "Various cleanups and code additions to make stable." } ], "line" => 274, "note" => "0.96", "raw" => "0.95 & 0.96\n", "version" => "0.95" }, { "date" => "2001-03-13", "entries" => [ { "line" => 278, "raw" => " - First release to CPAN\n\n", "style" => "-", "text" => "First release to CPAN" } ], "line" => 277, "raw" => "0.94 Tue Mar 13 2001\n", "raw_date" => "Tue Mar 13 2001", "version" => "0.94" }, { "date" => "2001-03-03T17:08:00Z", "entries" => [ { "line" => 281, "raw" => "\t- original version; created by h2xs 1.19\n\n", "style" => "-", "text" => "original version; created by h2xs 1.19" } ], "line" => 280, "raw" => "0.01 Sat Mar 3 17:08:00 2001\n", "raw_date" => "Sat Mar 3 17:08:00 2001", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/App-Ack.changes000644 000000 000000 00000022651 14472651645 017433 0ustar00000000 000000 History file for ack. http://beyondgrep.com/ 2.14 Wed Sep 3 22:48:00 CDT 2014 ==================================== [FIXES] The -s flag would fail to suppress certain warnings. Thanks, Kassio Borges. (GitHub ticket #439) The -w flag would fail to work properly with regex features such as alternation. Thanks to Ed Avis for the report (GitHub ticket #443) The -g flag should now work faster on larger codebases. Thanks to Manuel Meurer for the report (GitHub ticket #458) [ENHANCEMENTS] ack now ignores JavaScript and CSS source maps. Thanks, Chris Rebert. ack now ships with customized shell completion scripts for bash and zsh. 2.13_06 Sat Jan 25 23:36:09 CST 2014 ==================================== [FIXES] More fixes for Windows tests. Thanks to GitHub user @ispedals. [ENHANCEMENTS] Add docs for available colors in ack. 2.13_05 Thu Jan 9 22:41:33 CST 2014 ==================================== [FIXES] More whack-a-mole with Windows failures. This time, it's POSIX::mkfifo dying on Windows instead of returning undef like the docs implied, or at least that I inferred. [ENHANCEMENTS] --create-ackrc keeps the comments that describe each of the options, and it shows the ack version number. 2.13_04 Sat Jan 4 11:17:28 CST 2014 ==================================== [FIXES] Fixed incorrect deduping of config files under Windows. Thanks, Denis Howe. 2.13_03 Thu Jan 2 22:23:03 CST 2014 ==================================== [FIXES] More build fixes for Windows. Windows config finder fixes from James McCoy. t/ack-named-pipes.t uses POSIX::mkfifo instead of the external command, which should be more portable. Thanks, Pete Krawczyk. [ENHANCEMENTS] Now ignores Cabal (Haskell) sandboxes. Thanks, Fraser Tweedale. Added filetypes for Jade, Smarty and Stylus. Thanks, Raúl Gundín. 2.13_02 Fri Dec 27 12:54:27 CST 2013 ==================================== [FIXES] The building of ack-standalone relied on the output of `perldoc -l`, which I apparently can't rely on having been installed. I've changed the way that the squash program finds File::Next. 2.13_01 Wed Dec 25 13:36:08 CST 2013 ==================================== So this is Christmas And what have you done I'm sitting here hacking On ack 2.13_01 -- via Pete Krawczyk [FIXES] Issue #313: ack would fail when trying to check files for readability on some networked filesystems, or on Mac OS X with ACLs. Now it uses the filetest pragma. Thanks, Jonathan Perret. [INTERNALS] ack's entire test suite now runs under Perl's -T taint flag. We'll build more security tests on top of this. Added some checks to the squash program that I hope will turn up errors in the Windows builds. 2.12 Tue Dec 3 07:05:02 CST 2013 ==================================== [SECURITY FIXES] This verison of ack prevents the --pager, --regex and --output options from being used from project-level ackrc files. It is possible to execute malicious code with these options, and we want to prevent the security risk of acking through a potentially malicious codebase, such as one downloaded from an Internet site or checked out from a code repository. The --pager, --regex and --output options may still be used from the global /etc/ackrc, your own private ~/.ackrc, the ACK_OPTIONS environment variable, and of course from the command line. [ENHANCEMENTS] Now ignores Eclipse .metadata directory. Thanks, Steffen Jaeckel. [INTERNALS] Removed the Git revision tracking in the --version. 2.11_02 Sun Oct 6 12:39:21 CDT 2013 ==================================== [FIXES] 2.11_01 was mispackaged. This fixes that. 2.11_01 Sun Sep 29 13:15:41 CDT 2013 ==================================== [FIXES] Fixed a race condition in t/file-permission.t that was causing failures if tests were run in parallel. 2.10 Tue Sep 24 16:24:11 CDT 2013 ==================================== [ENHANCEMENTS] Add --perltest for *.t files. Added Matlab support. Thanks, Zertrin. [FIXES] Fix the test suite for Win32. Many thanks to Christian Walde for bringing the severity of this issue to our attention, as well as providing a Win32 development environment for us to work with. Fixed Win32-detection in the Makefile.PL. Thanks, Michael Beijen and Alexandr Ciornii. More compatibility fixes for Perl 5.8.8. 2.08 Thu Aug 22 23:11:45 CDT 2013 ==================================== [ENHANCEMENTS] ack now ignores CMake's build/cache directories by default. Thanks, Volodymyr Medvid. Add shebang matching for --lua files. Add documentation for --ackrc. Add Elixir filetype. Add --cathy option. Thanks to Joe McMahon. Add some helpful debugging tips when an invalid option is found. Thanks to Charles Lee. Ignore PDF files by default, because Perl will detect them as text. Ignore .gif, .jpg, .jpeg and .png files. They won't normally be selected, but this is an optimization so that ack doesn't have to open them to know. [FIXES] Ack's colorizing of output would get confused with multiple sets of parentheses. This has been fixed. (Issue #276) Ack would get confused when trying to colorize the output in DOS-format files. This has been fixed. (Issue #145) 2.06 ==================================== This mistake of an upload lived for only about 15 minutes. 2.05_01 Tue May 28 10:12:04 CDT 2013 ==================================== [ENHANCEMENTS] We now ignore the node_modules directories created by npm. Thanks, Konrad Borowski. --pager without an argument implies --pager=$PAGER. --perl now recognizes Plack-style .psgi files. Thanks, Ron Savage. Added filetypes for Coffescript, JSON, LESS, and Sass. [FIXES] Command-line options now override options set in ackrc files. ACK_PAGER and ACK_PAGER_COLOR now work as advertised. Fix a bug resulting in uninitialized variable warnings when more than one capture group was specified in the search pattern. Make sure ack is happy to build and test under cron and other console-less environments. Colored output is now supported and on by default on Windows. 2.04 Fri Apr 26 22:47:55 CDT 2013 ==================================== ack now runs on a standard Perl 5.8.8 install with no module updates. The minimum Perl requirement for ack is now explicitly 5.8.8. Anything before 5.8.8 will not work, and we've added checks. Thanks, Michael McClimon. [FIXES] ack was colorizing captured groups even if --nocolor was given. Thanks, Dale Sedivic. [ENHANCEMENTS] The --shell file type now recognizes the fish shell. We now ignore minified CSS or Javascript, in the form of either *.css.min or *.min.css, or *.js.min or *.min.js. Added support for the Dart language. ack 2.02 was much slower than ack 1.96, up to 8x slower in some cases. These slowdowns have been mostly eliminated, and in some cases ack 2.04 is now faster than 1.96. 2.02 Thu Apr 18 23:51:52 CDT 2013 ==================================== [ENHANCEMENTS] The firstlinematch file type detection option now only searches the first 250 characters of the first line of the file. Otherwise, ack would read entire text files that were only one line long, such as minified JavaScript, and that would be slow. Thanks, Michael McClimon. [DOCUMENTATION] Many clarifications and cleanups. Thanks, Michael McClimon. 2.00 Wed Apr 17 22:49:41 CDT 2013 ==================================== The first version of ack 2.0. # Incompatibilities with ack 1.x ack 2 makes some big changes in its behaviors that could trip up users who are used to the idiosyncracies of ack 1.x. These changes could affect your searching happiness, so please read them. * ack's default behavior is now to search all files that it identifies as being text. ack 1.x would only search files that were of a file type that it recognized. * Removed the `-a` and `-u` options since the default is to search all text files. * Removed the `--binary` option. ack 2.0 will not find and search through binary files. * Removed the `--skipped` option. * Removed the `--invert-file-match` option. `-v` now works with `-g`. To list files that do not match `/foo/` ack -g foo -v * `-g` now obeys all regex options: `-i`, `-w`, `-Q`, `-v` * Removed the `-G` switch, because it was too confusing to have two regexes specified on the command line. Now you use the `-x` switch to pipe filenames from one `ack` invocation into another. To search files with filename matching "sales" for the string "foo": ack -g sales | ack -x foo # New features in ack 2.0 ack 2.0 will: * By default searches all text files, as identified by Perl's `-T` operator * We will no longer have a `-a` switch. * improved flexibility in defining filetype selectors * name equality ($filename eq 'Makefile') * glob-style matching (`*.pl` identifies a Perl file) * regex-style matching (`/\.pl$/i` identifies a Perl file) * shebang-line matching (shebang line matching `/usr/bin/perl/` identifies a Perl file) * support for multiple ackrc files * global ackrc (/etc/ackrc) * https://github.com/petdance/ack/issues/#issue/79 * user-specific ackrc (~/.ackrc) * per-project ackrc files (~/myproject/.ackrc) * you can use --dump to figure which options are set where * all inclusion/exclusion rules will be in the ackrc files * ack 2.0 has a set of definitions for filetypes, directories to include or exclude, etc, *but* these are only included so you don't need to ship an ackrc file to a new machine. You may tell ack to disregard these defaults if you like. * In addition to the classic `--thpppt` option to draw Bill the Cat, `ack --bar` will draw (of course) Admiral Ackbar. CPAN-Changes-0.500005/corpus/dists/Perl-Critic.changes000644 000000 000000 00000253753 14472651645 020345 0ustar00000000 000000 [1.120_01] Released on 2013-10-29 * DEVELOPER RELEASE * Added new themes based on CERT guidelines. Thanks Kirk Kimmel. First release from the new GitHub repository. [1.120] Released on 2013-10-25 Bug Fixes: * Corrected "Possible precedence issue with control flow operator" warning. This fixes RT #88866 [1.119] Released on 2013-09-25 Bug Fixes: * Tests were failing with Config::Tiny 2.17 or later, due to a change in the error messages produced by that module. This fixes #16 on Github, #88679 & #88889 on RT. Policy Changes: * BuiltinFunctions::ProhibitVoidGrep and ::ProhibitVoidMap: grep and map called as functions are now allowed in slice operations. RT #79289 Thanks to Wade at Anomaly dot org for the patch. * Subroutines::RequireArgUnpacking: Most tests of the size of @_ are now allowed. RT #79138 Other Changes: * Modernized our usage of Exporter. See RT #75300. Thanks to Olivier Mengué for the patch. [1.118] Released on 2012-07-10 Policy Changes: * CodeLayout::RequireTidyCode: Revise to work with incompatible changes in Perl::Tidy 20120619. RT #77977. * TestingAndDebugging::ProhibitNoWarnings: Correct the parse of the 'no warnings' statement, so that 'no warnings "qw"' is recognized as supressing just 'qw' warnings. RT #74647. * Miscellanea::RequireRcsKeywords has been moved to the Perl-Critic-More distribution, RT #69546 Other Changes: * Make all unescaped literal "{" characters in regexps into character classes. These are deprecated, and became noisy with Perl 5.17.0. RT #77510. [1.117] Released on 2011-12-21 HAPPY HOLIDAYS! New Policies: * Variables::ProhibitAugmentedAssignmentInDeclaration reports constructs like 'my $x += 1'. Contributed by Mike O'Regan Policy Changes: * BuiltinFunctions::ProhibitLvalueSubstr: Add explicit 'use version'. RT #68498. * CodeLayout::ProhibitHardTabs: Add 'pbp' to the default_themes list. RT #71093. * ControlStructures::ProhibitMutatingListFunctions now understands that tr///r (introduced in 5.13.7) does not change its operand. * ControlStructures::ProhibitMutatingListFunctions now understands that '//=', '<<=', and '>>=' are assignment operators. RT #70901. * ErrorHandling::RequireCheckingReturnValueOfEval now allows things like grep { eval $_ }. RT #69489. * Modules::RequireExplicitPackage now has configuraion option allow_import_of, to allow the import of specified modules before the package statement. RT #72660. * RegularExpressions::ProhibitEnumeratedClasses no longer thinks that [A-Za-z_] matches \w. RT #69322. * RegularExpressions::ProhibitUnusedCaptures now skips the first block of an 'if' or 'elsif' if the regular expression is bound to its operand with the '!~' operator. RT #69867. * RegularExpressions::ProhibitUnusedCaptures now looks into lists and blocks in the replacement portion of the regular expression if /e is asserted. RT #72086. * RegularExpressions::RequireDotMatchAnything, RegularExpressions::RequireExtendedFormatting and RegularExpressions::RequireLineBoundaryMatching now honor defaults set with 'use re "/modifiers"'. RT #72151. * Subroutines::ProhibitManyArgs now recognizes '+' as a prototype character. * Variables::ProhibitPunctuationVars now recognizes bracketed variables embedded in interpolated strings (e.g. "${$}"). For the purpose of the 'allow' configuration, these are considered equivalent to the unbracketed form. RT #72910. Other Changes: * Corrected POD in Perl::Critic::PPI::Utils. RT #68898. * Perl::Critic::Violation source() method now returns the line containing the violation (not the first line) when the statement containing the violation spans multiple lines. [1.116] Released on 2011-05-15 Policy Changes: * BuiltInFunctions::ProhibitLvalueSubstr does not report violations if the document contains an explicit 'use n.nnn;' where the version is before 5.005. RT #59112 * Documentation::RequirePodSections no longer blows up on code having POD but no =head1. This problem was introduced with RT #59268. RT #67231 * RegularExpressions::ProhibitUnusedCapture should more reliably find things like s/(a)/${1}2/. RT #67273. * ValuesAndExpressions::ProhibitMagicNumbers and Module::RequireVersionVar now treat versions passed as the second argument of a 'package' statement the same as versions declared as 'our $VERSION ...'. RT #67159 * Variables::RequireLexicalLoopIterators does not report violations if the document contains an explicit 'use n.nnn;' where the version is before 5.004. RT #67760 [1.115] Released on 2011-03-31 Minor bits: * Fatal error in RegularExpressions::ProhibitUnusedCapture here document check. RT #67116. * Internal POD error in Documentation::RequirePodLinksIncludeText. Patch by Salvatore Bonaccorso. RT #67012 [1.114] Released on 2011-03-26 Policy Changes: * Documentation::RequirePodLinksIncludeText now handles nested POD formatting. RT #65569 * Clarified relation of severity numbers to names in Perl::Critic POD. RT #66017 * Removed caveats from Variables::RequireLocalizedPunctuationVars, no longer necessary with PPI 1.208. RT #65514 * Have InputOutput::RequireBriefOpen attempt to expand scope as necessary to deal with the case where the open() and the corresponding close() are not in the same scope. RT #64437 * RegularExpressions::ProhibitUnusedCapture now looks inside double-quotish things. RT #38942. * RegularExpressions::ProhibitUnusedCapture now takes logical alternation into account, so that (e.g.) if ( /(a)/ || /(b)/ ) { say $1; } is not a violation. RT #38942. * ValuesAndExpressions::ProhibitCommaSeparatedStatements now recognizes 'return { foo => 1, bar => 2 }' as containing a hash constructor, not a block. This was fixed by PPI 1.215. RT #61301. * ValuesAndExpressions::ProhibitCommaSeparatedStatements now recognizes 'bless { foo => 1, bar => 2 }' as containing a hash constructor, not a block. This was fixed by PPI 1.215. RT #64132. [1.113] Released on 2011-02-14 New Policies: * InputOutput::RequireEncodingWithUTF8Layer recommends ':encoding(utf8)' over ':utf8' in open() and binmode(). It is severity 5 because of the bad things that can happen if invalid UTF8 gets loose in your code. * Modules::ProhibitConditionalUseStatements prohibits 'use module' inside a conditional, since the statement is executed unconditionally at compile time. Thanks to Peter Guzis for submitting the policy and tests in RT #59065. Policy Changes: * CodeLayout::RequireConsistentNewlines produces multiple undefined value errors when a violation is found. RT #65663 * ControlStructures::ProhibitMutatingListFunctions allows s///r, which was introduced in 5.13.2. * ControlStructures::ProhibitPostfixControls now looks for "when". It is treated in the same way as "if". * Documentation::RequirePodSections now honors '## no critic' annotation anywhere before the '__END__', '__DATA__', or first '=head1', whichever comes first. The line number of the offending '=head1 NAME' was added to the violation description. RT #59268. * RegularExpressions::ProhibitUnusedCapture now takes account of the use of $- and $+ (and their English equivalents under 'use English') provided the subscripts are literal integers. * RegularExpressions::ProhibitUnusedCapture now takes account of the use of capture variables in the replacement portion of s/.../.../e. * Subroutines::ProhibitUnusedPrivateSubroutines now looks inside regular expressions. * ValuesAndExpressions::ProhibitMagicNumbers now supports Const::Fast. * ValuesAndExpressions::ProhibitMagicNumbers now has a constant_creator_subroutines parameter to allow the user to configure the names of subroutines that create constants. RT #62562. * ValuesAndExpressions::ProhibitMismatchedOperators didn't handle file test operators properly. Patch by H.Merijn Brand. RT #58751 * Variables::ProhibitUnusedVariables now looks inside regular expressions. * ValuesAndExpressions::RequireInterpolationOfMetachars now detects and complains about "\b" and "\l" as documented in perlop, and "\1" through "\7", which are not documented there, but were found in toke.c. New Developer Features: * uses_module(), namespaces(), and subdocuments_for_namespace() methods on Perl::Critic::Document. * Perl::Critic::Document->new() now accepts a -filename-override argument for setting the filename when the source code comes from something other than an actual file. Other Changes: * Test::Perl::Critic::Policy no longer exports by default. * Build phase now requires Test::Deep. * Added example using Try::Tiny to documentation of ErrorHandling::RequireCheckingReturnValueOfEval. Suggested by Andy Lester on the developers mailing list. * In order to get more consistent behavior across all installations of Perl::Critic, IPC::Open2 (which actually is part of core), PPIx::Regexp, Perl::Tidy, Pod::Spell, and Text::ParseWords are no longer optional prerequisites. * Now depends upon PPIx::Utilities v1.1.0. Bug Fixes: * Build.PL/Makefile.PL didn't specify a minimum version of version.pm, but TestingAndDebugging::RequireUseStrict did. RT #58952 * Perl::Critic::Annotation needs to look inside the __END__ statement to find the true end of the document, otherwise POD policies may give false positives. RT #59176 * BuiltinFunctions::ProhibitStringyEval no longer dies on eval "#...". RT #60179 * RegularExpressions::ProhibitUnusedCapture now takes account of the %LAST_PAREN_MATCH as well as %+ if English has been loaded. RT #60002 * Subroutines::ProhibitManyArgs now interprets prototype groups (e.g. \[$@%]) as representing a single argument. * Require Exporter version 5.63 (versus version 0) to get sane handling of export tags. RT# 61071 * Prevent Subroutines::ProhibitUnusedPrivateSubroutines from failing on &_subroutine(). RT #61311 * Subroutines::ProhibitAmpersandSigils now allows references of the form \( &sub1, &sub2 ). RT #49609 [1.112_002] Released on 2011-02-09 [1.112_001] Released on 2010-12-14 Changes summarized into 1.113 above. For exact details, see Changes on BackPAN. [1.111] Released on 2010-12-14 Bug Fixes: * TestingAndDebugging::ProhibitNoStrict and ProhibitNoWarnings no longer rely on the behavior of all() when the list is empty due to change in List::MoreUtils 0.28. RT #63816 [1.110_001] Released on 2010-11-30 Changes summarized into 1.113 above. For exact details, see Changes on BackPAN. (Yes, all of this stuff was not in 1.111.) [1.109] Released on 2010-08-29 Bug Fixes: * ValuesAndExpressions::RequireInterpolationOfMetachars fix due to changes in Email::Address 1.890. Note that this may find problems in code that it didn't before, e.g. q<'@foo'>. [1.108] Released on 2010-06-22 This is the "Give Shawn Moore what we promised him a year ago and hurry up and get this out before Brad Oaks gives his YAPC::NA talk" release. New Policies: * Documentation::RequirePodLinksIncludeText * Subroutines::ProhibitUnusedPrivateSubroutines New Features: * There is a new global configuration item, 'program-extensions', which configures Perl::Critic's idea of which file name extensions represent programs. The desired extensions are specified as a space-separated list, with leading '.' on each if that is desired. Files whose names end in '.PL' will always be considered programs. This can be overridden by command option --programs-extensions, which can be specified multiple times. * There is now a perlcritic --allow-unsafe switch. Without this switch, Perl::Critic will silently refuse to load any Policy that is marked unsafe. Unsafe Policies are usually ones that may compile or execute untrusted code (see Perl::Critic::DynamicPolicy for an example); Policy authors can mark their policies as unsafe by overriding the is_safe() method. * The framework that we use to test Perl::Critic Policies has been packaged into a convenient module that you can use to test your own Policies. See Test::Perl::Critic::Policy and Perl::Critic::TestUtils for details. Policy Changes * BuiltInFunctions::ProhibitLvalueSubstr no longer complains when there is a low-precedence operator between the substr() and the assignment operator. * CodeLayout::ProhibitParensWithBuiltins now allows 'state ($foo)'. RT #52029 * ErrorHandling::RequireCarping now has an allow_in_main_if_not_in_subroutine option to allow "die" directly in the default namespace. * InputOutput::RequireBriefOpen now recognizes CORE::open(), CORE::close(), CORE::GLOBAL::open(), and CORE::GLOBAL::close(). RT #52391 * Modules::ProhibitEvilModules now complains by default about the modules deprecated by the Perl 5 Porters in 5.12. * Modules::RequireVersionVar documentation updated to make clear that "my $VERSION" does not work as a module version declaration. RT #56667 * The RegularExpressions::* policies have been converted from using Regexp::Parser to using PPIx::Regexp for their heavy lifting. * RegularExpressions::ProhibitCaptureWithoutTest now allows capture variables inside when() {}. RT #36081. * RegularExpressions::ProhibitUnusedCapture now checks for unused named captures. * Subroutines::ProhibitManyArgs revised to count only characters in the prototype that represent arguments. RT #56627 * Subroutines::ProhibitNestedSubs no longer complains about scheduled blocks (BEGIN, etc.) inside subroutines and vice versa. * Subroutines::RequireFinalReturn should now understand a final given/when statement, and declare an error if there is no 'default' block or if any branch does not return. * TestingAndDebugging::RequireUseStrict now accepts 'use 5.011' or greater as equivalent to 'use strict'. * ValuesAndExpressions::ProhibitMismatchedOperators false positive with "'foo' x 15 . 'bar'". RT #54524 * Variables::ProhibitPunctuationVars gave false positives on qr// regexp's ending in '$'. RT #55604 Bug Fixes: * The "## no critic" annotations now respect #line directives. * Annotations on statements spanning more than one line (e.g. my $foo = '$bar'; ## no critic (RequireInterpolationOfMetachars) ) are now handled as single-line annotations, not block annotations. * All instances of L in the POD have been changed to L. L and L were allowed to stand. RT #37485 * Spaces are now allowed immediately inside the enclosing parentheses in "## no critic ( Foo )". RT #52038 * With the introduction of PPIx::Regexp, Perl::Critic no longer dies when it encounters a Perl 5.010 regexp. RT #49442. * DEVELOPER.pod typo in link to ValuesAndExpressions::ProhibitConstantPragma policy. RT #57818 * Spelling errors in documentation. RT #57375 * "die" used instead of "croak". RT #56619 * Fixed regex test that caused test failures on every Perl 5.11 (credit Tom Wyant). * t/20_policy_pod_spelling.t now works (or at least no longer fails) in non-English locales (again). RT #43291 and RT #48986. * Perldoc hae broken link for McCabe score definition. RT #53219 * RT #33935 and #49679 were fixed by upgrading to PPI 1.208 Other Changes: * Perl::Critic::Utils::is_unchecked_call() updated to include chmod in the set of things covered by autodie (this happened in autodie v2.08). The primary effect of this is on InputOutput::RequireCheckedSyscalls. * Now depends upon Task::Weaken to ensure that we only install with perls where Scalar::Util::weaken() works. * Email::Address was optional, but is now required. So everyone gets the optimal behavior from RequireInterpolationOfMetachars. * Some infrastructure has been extracted to the new PPIx-Utilities distro. It is also a required dependency here. Over time a good portion of Perl::Critic::Utils* will be migrated to this distribution. * Perl::Critic::Utils::PPI::get_constant_name_element_from_declaring_statement() is deprecated because it doesn't handle multiple constants being declared within a single "use constant" statement. Use PPIx::Utilities::Statement::get_constant_name_elements_from_declaring_statement() instead. * Removed all uses of Perl::Critic::Utils::PPIRegep. Since the PPIx::Regexp update, Perl::Critic only used get_match_string() and friends, which were superseded by the corresponding PPI methods. Perl::Critic now depends on PPI-1.208 or newer. * Moved Perl::Critic::Utils::PPIRegexp to the Perl-Critic-Deprecated. * The PolicySummary.pod file is now generated when the distribution is created, rather than when you install it. This ensures the file will be available on http://search.cpan.org. Thanks to Bear Longyear for bringing this to our attention. [1.107_001] Released on 2010-06-20 Changes summarized into 1.108 above. For exact details, see Changes on BackPAN. [1.106] Released on 2010-05-10 Bug Fixes: * NamingConventions::Capitalization fix for PPI 1.212. RT #57348 [1.105_03] Released on 2010-03-21 [1.105_02] Released on 2010-01-23 [1.105_01] Released on 2010-01-16 Changes summarized into 1.108 above. For exact details, see Changes on BackPAN. [1.105] Released on 2009-09-07 Bug Fixes: * Variables::ProhibitPunctuationVars would complain about "%-" appearing anywhere in a string. RT #49016 Policy Changes: * InputOutput::RequireCheckedSyscalls now complains about unchecked "say" by default. RT #37487 [1.104] Released on 2009-08-23 This release is dedicated to Tom Wyant in appreciation of the amount of effort he put into the enhancements and bug fixes in this release, for having the patience to wait for the amount of time that it took to get them out, and for overall awesomeness. Thank you, Tom. New Policies: Objects::ProhibitIndirectSyntax ValuesAndExpressions::ProhibitComplexVersion ValuesAndExpressions::RequireConstantVersion New Optional Requirement: * Email::Address, if you want ValuesAndExpressions::ProhibitInterpolationOfLiterals to properly ignore email addresses. New Features: * Perlcritic will list the names of files with violations if given the --files-with-violations option, or the names of files without violations if given the --files-without-violations options. These have synonyms -l and -L respectively. * Perlcritic has a new --list-enabled option, which lists the Policies that will be enforced, given the current configuration. This is useful if you've written a complex command-line or modified your .perlcriticrc file and you want to see which Policies *would* be used with the current configuration, if you were actually going to critque a file with it. * Perl::Critic::Violation now takes #line directives into account in the %F, %f, and %l formats. You can get the old values via the new %G, %g, and %L formats. Policy Changes: * CodeLayout::ProhibitParensWithBuiltins was complaining in certain cases where parentheses are required due to operator precedence. RT #46862. * ControlStructures::ProhibitMutatingListFunctions no longer complains about uses of tr/// that don't modify the operand. Reported by EDAVIS, RT #44515. * Miscellanea::RequireRcsKeywords now accepts "qw$Keyword: ...$". RT #45196. * Modules::RequireFilenameMatchesPackage now respects logical filenames defined by the "#line" directives. This allows the Policy to work properly with IDEs and code generators. * NamingConventions::Capitalization now allows fully qualified subroutine declarations ( e.g. "sub Foo::Bar::baz {...}" ). However, the non-package part of the subroutine name must still conform to whatever capitalization rule you have chosen. * RegularExpressions::ProhibitCaptureWithoutTest no longer complains if the regex is followed by an "or die" or similar. Reported by EDAVIS, RT #36081. * RegularExpressions::ProhibitComplexRegexes no longer counts variable substitutions in the length. Reported by EDAVIS, RT #36098. * RegularExpressions::ProhibitUnusedCapture now considers the body of while loops and not just their condition. Reported by EDAVIS, RT #38942. * ValuesAndExpressions::ProhibitVersionStrings was getting confused by comments. Reported by Kevin Ryde, RT #44986. * ValuesAndExpressions::RequireInterpolationOfMetachars now allows sigils in the arguments to "use vars". Contributed by Kevin Ryde, RT #47318. * ValuesAndExpressions::RequireInterpolationOfMetachars now properly ignores email addesses, if you have Email::Address installed. Inspired by the Kevin Ryde contribution in RT #47318. * Variables::ProhibitPunctuationVars gained the ability to look inside interpolated strings. Doing this correctly is challenging and things may not work out right; how the policy does this can be controlled via the new "string_mode" option. Contributed by Edgar Whipple . * Variables::ProhibitPunctuationVars now ignores $] by default since there is no English.pm equivalent. Other Bug Fixes: * Perl::Critic::Utils::parse_arg_list() was slurping up the "or die ..." portion of "open my $foo, 'somefile' or die ...", causing InputOutput::ProhibitTwoArgOpen to not complain about this example. Reported by Alexandr Ciornii, RT #44554. Minor Changes * The line count emitted by the --statistics option is further broken down by line content. Minor Documentation Fixes: * ValuesAndExpressions::ProhibitInterpolationOfLiterals. Reported by Debian in http://bugs.debian.org/542814, RT #48936 Build Fixes: * There wasn't a specific version given for the List::MoreUtils dependency and we're using features that weren't avialable until 0.19. So, we now require version 0.19. Noticed by John J. Trammell, RT #48917. * Some tests were tied to the specific "true" and "false" values that some functions were returning. Reported by Michael Schwern, RT #43910. Other News: * Komodo version 5.1.1 now has built-in support for Perl-Critic, if you have the Perl::Critic and criticism modules installed. Both should be available through the ActiveState Perl Package Manager ppm(1). [1.103] Released on 2009-08-03 Fix configure_requires prerequisite on Module::Build 0.34_02. [1.102] Released on 2009-08-03 Bug fixes: * Works with PPI 1.205. Yay for 5.10 support! * Variables::RequireLexicalLoopIterators didn't work correctly on foreach loops with labels. [1.101_003] Released on 2009-07-22 [1.101_002] Released on 2009-07-21 [1.101_001] Released on 2009-07-21 Changes summarized into 1.102 above. For exact details, see Changes on BackPAN. [1.100] Released on 2009-07-17 This is a POD fix release to deal with issues identified by Test::POD 1.40. There is no functional difference between this release and 1.098. This is the last release of Perl::Critic that will be compatible with PPI 1.203. PPI's parsing of for(each)? loops is changing in its next release in an incompatible manner and there will be a release in the near future to make Perl::Critic compatible with that change. [1.099_002] Released on 2009-06-27 [1.099_001] Released on 2009-06-25 Experimental releases. For exact details, see Changes on BackPAN. [1.098] Released on 2009-03-07 Some Exciting News: The Perl Development Kit (PDK 8.0) from ActiveState now includes a very slick graphical interface to Perl-Critic. I highly recommend that you check it out. Here's a link to screenshots and docs: http://docs.activestate.com/pdk/8.0/PerlCritic_gui.html New Features: * Violation coloring is now configurable via command line or profile. The profile entries are color-severity-highest, -high, -medium, -low, or -lowest. Numbers are accepted in lieu of named severities (e.g. 'color-severity-5' for 'color-severity-highest'), and 'colour' is accepted in lieu of 'color'. * Handling of unrecognized policy configuration items is now controlled by the profile_strictness. The default is to warn about them. The previous default was that they were fatal. * -p is now a synonym for --profile. * The --verbose option for perlcritic now supports a %C format that will displays the class of PPI::Element that caused the violation. Policy Changes: * ControlStructures::ProhibitNegativeExpressionsInUnlessAndUntilConditions didn't include "pbp" in its default themes even though it is derived from the book. Now it does. :] * ErrorHandling::RequireCarping now allows a here document as the last element if the "allow_messages_ending_with_newlines" option is true. * Fix Subroutines::ProhibitAmpersandSigils so it allows "defined(&x)" as well as "defined &x". Patch from Kevin Ryde, RT #38855. * Subroutines::ProtectPrivateSubs now has an "allow" option to specify subroutines which are exempt from this policy. RT #38678. Additionally, a "private_name_regex" option has been added that allows you to specify what a private subrouting name looks like. * Subroutines::RequireArgUnpacking now has an "allow_subscripts" option to allow array slices and elements. RT #34009. * Subroutines::RequireArgUnpacking now has an "allow_delegation_to" option to allow the usual delegation idiom. Delegation to 'SUPER::' and 'NEXT::' are allowed by default. RT #33839. * Subroutines::RequireArgUnpacking no longer generates a false positive for '$$_[]', which is an obfuscated way of saying '$_->[]'. RT #37713. * ValuesAndExpressions::ProhibitMagicNumbers now has an allow_to_the_right_of_a_fat_comma option, which defaults to true. Note that it currently only works /directly/ to the right of a fat comma. * Variables::ProhibitMatchVars had its default themes changed to "core performance pbp", instead of "core bugs pbp" because, while the match variables make regular expressions slow, it doesn't cause them to not work correctly. * Variables::ProhibitPackageVars has had FindBin and Log::Log4perl added to the default exemptions. * Variables::ProhibitReusedNames now has an "allow" option to specify names that can be reused. It defaults to enabling $self and $class. RT #42767. * Variables::RequireLocalizedPunctuationVars has a customizable set of exemptions via the "allow" option. New Developer Features: * The guts of perlcritic have been moved to Perl::Critic::Command. You can invoke Perl::Critic::Command::run() to get the equivalent of running the command. (Note, however, this interface WILL change, so don't count on the current one.) * Modules have had a "INTERFACE SUPPORT" section added which states whether the Perl::Critic developers consider the particular module is public or not. Any removal of functionality from a public module will go through a deprecation cycle. Non-public modules may have their interfaces changed without notice. * P::C::Policy now has an is_enabled() method. * P::C::Violation now has an element_class() method. Bug Fixes: * CodeLayout::ProhibitTrailingWhitespace didn't notice cases where PPI would produce instances of PPI::Token::Whitespace that contained multiple lines. * Subroutines::ProtectPrivateSubs no longer regards the exportable POSIX subroutines whose names begin with underscore as private. RT #38678. * Subroutines::RequireArgUnpacking mishandled a complicated sitation with $_ being an array reference. RT #39601. * Variables::RequireLocalizedPunctuationVars now applies to subscripted names. RT #29384. Internals: * The guts of Build.PL and Makefile.PL have been rearranged. [1.097_002] Released on 2009-03-01 [1.097_001] Released on 2009-03-01 Changes summarized into 1.098 above. For exact details, see Changes on BackPAN. [1.096] Released on 2009-02-01 New Policies: * ValuesAndExpressions::ProhibitSpecialLiteralHeredocTerminator Policy Changes: * Documentation::PodSpelling now has a stop_words_file option. * Modules::ProhibitEvilModules now has a modules_file option. Bug Fixes: * ErrorHandling::RequireCarping will now allow a literal newline as well as "\n". Fixed by Kyle Hasselbacher, RT #25046 * Fix InputOutput::ProhibitTwoArgOpen so it allows '-|' or '|-' as the second of two arguments. Patches from Kyle Hasselbacher and Leland Johnson, RT #42384. * InputOutput::RequireBracedFileHandleWithPrint applies to printf as well as print. Fixed by Kyle Hasselbacher, RT #42537. * TestingAndDebugging::RequireUseStrict and TestingAndDebugging::RequireUseWarnings are no longer fooled by a block-scoped pragma. RT #42310. * ValuesAndExpressions::RequireInterpolationOfMetachars allows for escaped backslashes. Fixed by Tom Wyant, RT #38530. * Fix for problem in P::C::Document in dealing with underscores in expressions like "use 5.009_001". Patch by Kevin Ryde, RT #36570 and #42089. * Fix in extras/perlcritic.el for a radio button. Patch by Kevin Ryde, RT #42190. * Fix distclean target in Makefile.PL. Patch by Richard Soderberg, RT #42088. * Fix temporary files not being cleaned up after tests. Patch by Kyle Hasselbacher, RT #41443. * Deal with changes in Pod::Parser v1.36 in test in t/05_utils_pod.t. Documentation improvements contributed by Mark Grimes in response to RT #41942. [1.095_001] Released on 2009-01-18 Changes summarized into 1.096 above. For exact details, see Changes on BackPAN. [1.094001] Released on 2009-01-01 Bug Fixes: * Tests would fail on systems without Regexp::Parser installed. [1.094] Released on 2009-01-01 Incompatible Changes: * The way that "## no critic" markers was refactored. As a result, we discovered that the syntax for the markers was pretty vague. If you didn't do it just right, it would disable all policies, and not just the specific ones that you wanted. So we've tightened this up a bit. If you followed the examples that have been in the docs for the last couple years, then you should be fine. But if you've been using certain other variations in your "## no critic" markers, then you might suddenly find yourself violating the new ProhibtUnrestrictedNoCritic policy. To fix this, just make sure your Policy names appear in parentheses: ## no critic Foo, Bar, Baz # wrong! ## no critic Foo Bar Baz # wrong! ## no critic (Foo, Bar, Baz) # ok! ## no critic qw(Foo Bar Baz) # also ok! * The deprecated $FORMAT variables for Perl::Critic::Policy and Perl::Critic::Violation no longer exist. Use the corresponding get_format() and set_format() functions instead. New Policies: * Miscellanea::ProhibitUnrestrictedNoCritic * Miscellanea::ProhibitUselessNoCritic * NamingConventions::Capitalization * Subroutines::ProhibitReturnSort * Variables::ProhibitReusedNames Removed Policies: * NamingConventions::ProhibitMixedCaseSubs and NamingConventions::ProhibitMixedCaseVars have been moved to a separate Perl-Critic-Deprecated distribution. The NamingConventions::Capitalization policy does everything they do, plus more. Policy Changes: * BuiltinFunctions::ProhibitStringyEval now has an allow_includes option that makes it behave (mostly) like Ricardo SIGNES' Perl::Critic::Policy::Lax::ProhibitStringyEval::ExceptForRequire. * InputOutput::RequireCheckedClose, InputOutput::RequireCheckedOpen, and InputOutput::RequireCheckedSyscalls now all support autodie. Unfortunately, autodie is currently treated like a module and not a pragma, which means that the lexical scoping is not taken into account. * InputOutput::RequireCheckedSyscalls now has an exclude_functions parameter. * Modules::ProhibitEvilModules now allows you to specify what the description of a use of a bad module should be, to, say, suggest that people use autodie instead of Fatal. * Subroutine::ProhibitExcessComplexity violation descriptions now include the name of the subroutine, thanks to Andreas Koenig, RT #40070. * TestingAndDebugging::RequireUseStrict and TestingAndDebugging::RequireUseWarnings now have equivalent_modules parameters that allow you to designate other modules as being equivalent to the strict and warnings pragmata. This one is for all you Moose fans out there. :] Bug Fixes: * ControlStructures::ProhibitUnreachableCode would treat package statements as unreachable. Fixed by Kevin Ryde. RT #41734 * Fix warning from InputOutput::ProhibitOneArgSelect when select was called with no arguments. RT #41926 * Miscellanea::RequireRcsKeywords couldn't find keywords after __END__ that didn't look like part of POD. * Modules::RequireFilenameMatchesPackage would incorrectly complain about programs. Yet more greatness contributed by Schwern. RT #39024. * If a perlcriticrc file referred to a policy that wasn't installed and the profile-strictness option was set to "fatal", Perl::Critic::PolicyFactory fell over instead of reporting the problematic policy name. Miscellanea: * Perl::Critic::Violation will automatically strip trailing periods from your Policy description and explanation strings. This ensures that the punctuation is consistent with the format specified by the user via the -verbose formatting options. New Developer Features: * Perl::Critic::Policy::prepare_to_scan_document() is now checked and a Policy can disable itself for just a single document, which can speed things up. [1.093_03] Released on 2008-12-11 [1.093_02] Released on 2008-10-30 [1.093_01] Released on 2008-09-07 Changes summarized into 1.094 above. For exact details, see Changes in 1.093_003 on BackPAN. [1.092] Released on 2008-09-02 Bug Fixes: * Fixed POD errors that were causing build failures. Sorry about that. [1.091] Released on 2008-09-01 New Policies: * RegularExpressions::RequireDotMatchAnything New Features: * perlcritic now supports a -pager option, so you can more easily send the output to your favorite pager. You can set this option on the command-line or in your .perlcriticrc file. See the perlcritic perldoc for more details. Credit to Michael Schwern. * The output from "perlcritic -doc PATTERN" will be automatically sent to your pager if you have set the -pager option. Policy Changes: * CodeLayout::ProhibitQuotedWordLists no longer applies if the list contains any non-words, by default. A non-word is anything that does not match /[\w-]+/. You can restore the former behavior by setting the "strict" option. RT #37886. * CodeLayout::ProhibitQuotedWordLists also now applies to the import arguments of a C statement. RT #24467. * ErrorHandling::RequireCheckingReturnValueOfEval now recognizes ternary left-sides as valid checks. * RegularExpressions::RequireExtendedFormatting gains a minimum_regex_length_to_complain_about option. Also, regexes that contain only word and whitespace characters are now exempt from this policy, by default; you can make it complain about them by turning on the new strict option. Contributed by Michael Schwern. RT #38531. * TestingAndDebugging::ProhibitNoWarnings now supports a allow_with_category_restriction option, thanks to Michael Schwern. RT #38514. * CodeLayout::ProhibitHardTabs now allows leading tabs in qw() word lists and regexes with the /x modifier. You can still configure this policy to forbid all hard tabs, if you like. RT #32440 Bug Fixes: * perlcritic should now work under PAR. RT #38380. * URL for our repository in META.yml now works for anonymous checkout. The password is "" (empty). RT #38628. * color for high-severity violations is now magenta because it is more redable than yellow on white backgrounds. RT #38511. [1.090] Released on 2008-07-22 Bug Fixes: * Test was incorrectly failing when Regexp::Parser wasn't installed. [1.089] Released on 2008-07-21 Minor Enhancements: * -s is now a synonym for --single-policy. Policy Changes: * Subroutines::ProhibitBuiltinHomonyms now also prohibits subroutines with the same name as a Perl keyword (e.g. if, foreach, while). Inspired by RT #37632. * Subroutines::ProtectPrivateSubs now allows expressions like "shift->_some_private_method();". Note that this *only* applies to the "shift" function -- a private method call on the right of any other bareword still causes a violation. RT #34713. * Subroutines::RequireFinalReturn now includes exec in the set of things that mark a successful return. RT #37672 * ValuesAndExpressions::ProhibitInterpolationOfLiterals now takes a allow_if_string_contains_single_quote option. Contributed by Ed Avis . RT #36125. * ValuesAndExpressions::RequireInterpolationOfMetachars now supports a rcs_keywords option to allow for the common case where those require dollar signs. Bug Fixes: * BuiltinFunctions::ProhibitSleepViaSelect would complain if there were three undefs as arguments to select(), but one of them was the timeout. RT #37416. * Reduced false positives in RegularExpressions::ProhibitSingleCharAlternation. Thanks to Andy Lester and Elliot Shank test cases. * RegularExpressions::ProhibitUnusedCapture would complain if there were multiple captures used in a substitution, e.g. s/(.)(.)/$2$1/. * Subroutines::ProhibitAmpersandSigils no longer complains about "sort &foo(...)". * Makefile.PL, Build.PL and other ".PL" scripts which typically do not have a shebang are no longer mistaken as modules. This prevents spurious warnings from Modules::RequireEndWithOne. RT #20481. Internals: * Tests are now self compliant. [1.088] Released on 2008-07-04 New Policies * ErrorHandling::RequireCheckingReturnValueOfEval Policy Changes: * ValuesAndExpressions::ProhibitLeadingZeros now accepts octal numbers for the Unix permissions argument to chmod, dbmopen, mkdir, sysopen, or umask, by default. Use the "strict" option to get the old behavior. RT #31977. * Due to the consensus at YAPC::NA 2008, Variables::ProhibitUnusedVariables default severity has been raised to medium/3. Minor Changes: * The perlcritic "--Version" option is now "--version" in order to act like the rest of the world. [1.087] Released on 2008-06-21 Policy Changes: * CodeLayout::ProhibitParensWithBuiltins no longer complains about sort(foo(@x)). * TestingAndDebugging::RequireUseWarnings will not complain about files that contain a "use 5.005" statement or similar for perls prior to 5.6. Lesson of the day: computer conferences where you can meet in the real world can clarify conversations greatly. Good to finally meet you Adam. * InputOutput::ProhibitTwoArgOpen similarly will not complain if there's a "use/require 5.005" statement in the file. RT #34385. Bug fixes: * Perl::Critic can now critique a file named "0". However, PPI will give a parse error until the next version comes out. Fixes RT #36127. * Moved detection of the lack of any enabled Policies from P::C::Config to Perl::Critic. This was causing the perlcritic.t in Parrot to fail. Note, however, there are plans afoot to change how Perl::Critic is configured and things that depend upon that may break. Please contact users@perlcritic.tigris.org and tell us how you're using P::C::Config directly so that we can take your needs into account. [1.086] Released on 2008-06-12 Policy Changes: * NamingConventions::ProhibitAmbiguousNames now specifies the name that it had problems with in its violation descriptions. Bug fixes: * The color option wasn't being correctly set from a .perlcriticrc. RT #36569. Minor changes: * --colour is now a synonym for --color. [1.085] Released on 2008-06-07 New Policies: * Documentation::RequirePackageMatchesPodName Policy Changes: * Variables::ProhibitUnusedVariables detects a few more cases. It's still very limited, though. Bug fixes: * ControlStructures::ProhibitUnreachableCode didn't notice "until" was an conditional expression. Minor documentation updates. [1.084] Released on 2008-05-24 New Features: * perlcritic now supports a --list-themes option. * You can specify the maximum number of violations you want per Policy per document. Developers can give a default value for this for a Policy by overriding default_maximum_violations_per_document(). See RequireUseStrict and ProhibitMagicNumbers for examples. Policy Moved: * The ValuesAndExpressions::ProhibitMagicNumbers policy has been moved from Perl::Critic::More into the primary Perl::Critic distribution. New Policies: * Variables::ProhibitUnusedVariables (very dumb, limited initial implementation.) * ControlStructures::ProhibitLabelsWithSpecialBlockNames Contributed by Mike O'Regan. Kickin' ass, Mike. Policy Changes: * ControlStructures::ProhibitUnreachableCode now handles the perl 5.10 "//" and "err" operators. RT #36080 * InputOutput::RequireBriefOpen now ignores opens of STDIN, STDOUT, and STDERR. You're generally trying to make long-lasting global effects when manipulating these. (RT #35774) * RegularExpressions::ProhibitUnusualDelimiters now supports an "allow_all_brackets" option. * RegularExpressions::RequireBracesForMultiline now supports an "allow_all_brackets" option. * TestingAndDebugging::RequireUseStrict now accepts "use Moose::Role" as equivalent to "use strict". (RT #34838) * TestingAndDebugging::RequireUseWarnings now accepts "use Moose::Role" as equivalent to "use warnings". (RT #34838) * ValuesAndExpressions::ProhibitMagicNumbers now accepts constant subroutines. * Variables::ProhibitMatchVars no longer detects "use English;". This problem is detected in a more clear way by Modules::RequireNoMatchVarsWithUseEnglish. * Variables::ProhibitPerl4PackageNames no longer complains about $'/$POSTMATCH. RT #36059 * Variables::RequireLocalizedPunctuationVars now allows the use of "my". RT #33937 Bug Fixes: * No longer falls over if a single file has a parse error. New Developer Features: * If a document specifies a minimum perl version, e.g. "use 5.008003", P::C::Document::highest_explicit_perl_version() will tell you what it is. * The parameter to P::C::Policy::initialize_if_enabled is now a P::C::PolicyConfig object instead of a hash reference. Minor Changes: * LOTS of documentation updates. * A few more statistics are emitted by perlcritic with the --statistics option. * perlcritic --profile-proto now includes policy abstracts in its output. Prerequisites: * Now depends upon PPI 1.203. * New dependency upon version. [1.083_006] Released on 2008-05-20 [1.083_005] Released on 2008-05-19 [1.083_004] Released on 2008-05-18 [1.083_003] Released on 2008-05-17 [1.083_002] Released on 2008-05-17 [1.083_001] Released on 2008-04-13 Changes summarized into 1.084 above. For exact details, see Changes in 1.083_006 on BackPAN. [1.082] Released on 2008-03-08 New Features: * A new metadata system for defining policy parameters/options has been added. This makes the life of policy authors easier because configuration validation and parsing can be taken care of automatically, in most cases. This allows greater integration with IDEs and allows the perlcritic "--profile-proto" option to produce better output. Note: This change does NOT REQUIRE ANY CHANGES to policies outside of this distribution; they should continue to work as is. However, use of this facility can reduce the size of your code and provide the means for tools to discover more about your policy. If this change does break any of your policies, please let us know. To learn how to take advantage of this facility, read Perl::Critic::DEVELOPER and look at the source of any of the configurable policies included in this distribution. There is a discussion of the design considerations for this facility in the source repository under doc/PolicyParameter_Notes.pod. * Added support for "criticism-fatal" option in your perlcriticrc file. This will be used by the criticism pragma to cause execution to abort if the file contains any violations. New Policy: * Module::RequireNoMatchVarsWithUseEnglish Policy Changes: * Added an allow_last_statement_to_be_comma_separated_in_map_and_grep option to ValuesAndExpressions::ProhibitCommaSeparatedStatements. Partial response to http://rt.cpan.org/Public/Bug/Display.html?id=27654. * ControlStructures::ProhibitPostfixControls gains the ability to have the flow control statements allowed to be modified. This in response to RT #29540. * TestingAndDebugging::RequireUseStrict now accepts "use Moose" as equivalent to "use strict". * TestingAndDebugging::RequireUseWarnings now accepts "use Moose" as equivalent to "use warnings". Bug Fixes: * RT #31281 perlcritic doesn't recognize "#!/bin/env perl" shebang * Replace usage of Unicode property escapes with POSIX character classes order to restore 5.6 compatability. * RT #30388 ValuesAndExpressions::ProhibitVersionStrings complained about numbered directories in "use lib". * Fixed handling of badly behaved spelling programs in PodSpelling. [1.081_006] Released on 2008-03-02 [1.081_005] Released on 2007-12-29 [1.081_004] Released on 2007-12-20 [1.081_003] Released on 2007-12-16 [1.081_002] Released on 2007-12-16 [1.081_001] Released on 2007-12-15 Changes summarized into 1.082 above. For exact details, see Changes in 1.081_006 on BackPAN. [1.080] Released on 2007-11-11 New Features: * Allow a "## no critic" statement after a shebang on line 1 of a file. This allows users to block violations that apply to whole files and still allow shebangs. New Policies: (funded by a Perl Foundation grant) * InputOutput::ProhibitExplicitStdin * RegularExpressions::ProhibitFixedStringMatches * RegularExpressions::RequireBracesForMultiline * RegularExpressions::ProhibitUnusualDelimiters * RegularExpressions::ProhibitUnusedCapture * RegularExpressions::ProhibitComplexRegexes * RegularExpressions::ProhibitSingleCharAlternation * RegularExpressions::ProhibitEscapedMetacharacters * RegularExpressions::ProhibitEnumeratedClasses * InputOutput::RequireBriefOpen * InputOutput::RequireCheckedSyscalls Other New Policies * ControlStructures::ProhibitNegativeExpressionsInUnlessAndUntilConditions Policy Changes: * Variables::ProhibitConditionalDeclarations now permits you to local-ize variables in conditional declarations. This makes sense, since C is actually a variable modifier, rather than a declaration. Thanks to David Golden for reporting this. New Developer Features: * Perl::Critic::Utils::PPIRegexp encapsulates interaction with the PPI Regexp token classes. Those classes have very sparse APIs, so this package hides away the ugly fiddling with PPI internals. * Added a new optional_modules parameter for the .run syntax. Bug fixes: * PPI::Structure::List can now contain multiple children, so P::C::Utils::parse_arg_list() needs to handle it. This was done in the process of fixing http://rt.cpan.org/Ticket/Display.html?id=24924, which was a problem with TestingAndDebugging::RequireTestLabels. * ValuesAndExpressions::ProhibitLongChainsOfMethodCalls wasn't resetting chain length when it ran into the end of a sub-expression. http://rt.cpan.org/Public/Bug/Display.html?id=30040 * ValuesAndExpressions::ProhibitCommaSeparatedStatements was reporting false positives when builtins which accept both no and multiple arguments were involved. http://rt.cpan.org/Public/Bug/Display.html?id=27654 Internals: * Removed all use of Carp in favor of exceptions. Prerequisites: * Now requires PPI 1.201. A number of workarounds for PPI bugs have been removed. * New dependency upon Exception::Class. Installation: * Use Devel::CheckOS to see whether Perl::Critic is being installed on a Solaris system and warn about tar(1) chopping file names off if it is. [1.079_003] Released on 2007-10-22 [1.079_002] Released on 2007-10-21 [1.079_001] Released on 2007-10-09 Changes summarized into 1.080 above. For exact details, see Changes in 1.079_003 on BackPAN. [1.078] Released on 2007-09-19 Restore Perl::Critic::TestUtils::should_skip_author_tests() and get_author_test_skip_message(). Some Perl::Critic add-on distributions are using them. [1.077] Released on 2007-09-15 Note: if you don't have any problems installing Perl::Critic 1.076, there is no need to upgrade to this version. There are no functionality changes. This release only contains changes related to installation that a few people were experiencing. Minor changes: * Removed build-time use of Readonly, again, due to problems some people were having when trying to compile the code by hand, rather than using CPAN(PLUS)?. * Don't run author tests if there's a .svn directory present because users who grabbed the code from the source repository were executing them and getting failures. * Don't generate optional, module-hiding test wrappers if author tests are not enabled. [1.076] Released on 2007-09-07 It appears from reports on the 1.075_001 release that the subroutine sigils were indeed the problem. Release to the general populace. [1.075_001] Released on 2007-09-06 Bug Fixes: Undo the changes in 1.073 and 1.074. Instead, stop using the subroutine sigil in import and export lists. It is suspected that the problem lies with Exporter stripping off ampersands. [1.074] Released on 2007-09-04 Bug Fixes: Repeat the Makefile.PL change on t/generate_without_optional_dependencies_wrappers.PL. I love CPAN Testers. [1.073] Released on 2007-09-04 Bug Fixes: Work around problems with the combination of Exporter & Readonly in Makefile.PL on some machines. [1.072] Released on 2007-09-03 Bug Fixes: * The Makefile generated by Makefile.PL was not syntactically correct according to some versions of Solaris. Thanks to Diab Jerius (DJERIUS) for discovery and testing. * Fixed mis-definition of "quiet" value for the "--profile-strictness" option. * Enhanced testing with the absence of optional modules. [1.071] Released on 2007-08-24 The "Brown Paper Bag" Release Bug Fixes: * Tests would not pass in environments that did not have all optional dependencies installed. [1.07] Released on 2007-08-21 New Policies: (funded by a Perl Foundation grant) * BuiltinFunctions::ProhibitBooleanGrep * BuiltinFunctions::ProhibitComplexMappings * Documentation::PodSpelling * InputOutput::ProhibitJoinedReadline * Subroutines::ProhibitManyArgs * Subroutines::RequireArgUnpacking * ValuesAndExpressions::ProhibitImplicitNewlines * Variables::RequireLocalizedPunctuationVars Other New Policies * Subroutines::ProhibitNestedSubs New Features: * The "perlcritic --profile-proto" output now includes the "add_themes" parameter for each policy. * The perlcritic "--strict-profile" option has been replaced with a "--profile-strictness" option. This new option takes values of "warn" (the default), "fatal", and "quiet", which controls what happens with ignorable problems in a .perlcriticrc file. New Developer Features: * Perl::Critic::Policy now has an overridable initialize_if_enabled() method which allows a Policy to perform expensive initialization after it has been determined whether the user has it enabled or not. Also, this method allows a Policy to say that it should be disabled regardless of what the user says. Actually, use of this method is now encouraged over using a constructor. Other Stuff: * Now requires the Readonly module in order to be more self-compliant. [1.061] Released on 2007-07-24 Bug Fixes: * Fix P::C::Theme-- Exporter in Perl 5.6 does not export import(), so you must subclass it. *sigh* * Fix P::C::Config::_validate_and_save_theme()-- eval of an empty string does not reset $@/$EVAL_ERROR in Perl 5.6. Big thanks to Anirvan Chatterjee for identifying and helping debug these issues. [1.06] Released on 2007-06-27 New Features: * perlcritic now emits errors for all the problems it can find for the global options in the command-line parameters and .perlcriticrc file, rather than bailing on the first one it encounters. * perlcritic now has a "--strict-profile" option which will make warnings about problems in a profile fatal. * perlcritic now has a "--statistics-only" option which suppresses the display of individual violations and only shows the additional output produced by the "--statistics" option. Feature requests: * A value for "color" can now be specified in a .perlcriticrc. http://rt.cpan.org/Ticket/Display.html?id=24877 New Policies: * ValuesAndExpressions::ProhibitQuotesAsQuotelikeOperatorDelimiters As suggested in http://rt.cpan.org/Ticket/Display.html?id=23290. * ValuesAndExpressions::ProhibitLongChainsOfMethodCalls * Modules::ProhibitExcessMainComplexity As suggested in http://rt.cpan.org/Ticket/Display.html?id=24699 Minor changes: * The perlcritic "--profile-proto" option now emits the short names for policies, rather than the full ones. * The "-profileproto" and "-singlepolicy" options have been renamed to "-profile-proto" and "-single-policy" in order to make the growing number of command-line options comprehensible. The change of "singlepolicy" also affects your F<.perlcriticrc> file. [1.053] Released on 2007-06-02 *DEVELOPMENT RELEASE* Bug Fixes: Fixed bug in 15_statustics.t test script, which caused the build to fail on machines that don't have Perl::Tidy installed. [1.052] Released on 2007-06-01 *DEVELOPMENT RELEASE* New Features: * perlcritic now emits a summary about the scanned code when enabled by the "-statistics" option. Policy Enhancements: * InputOutput::ProhibitBacktickOperators can now be configured to only check in void contexts. Bug Fixes: * 27073: False positive in RequireUpperCaseHeredocTerminator * 27065: CodeLayout::ProhibitTrailingWhitespace breaks under Perl 5.6.1 * 26462: ControlStructures::ProhibitCascadingIfElse pod typo * ValuesAndExpressions::ProhibitCommaSeparatedStatements was complaining about multiple values in the list to be iterated over by a foreach loop. * Corrected PBP page numbers for some policies (Quinn Weaver). [1.051] Released on 2007-04-12 *DEVELOPMENT RELEASE* No new policies. No particular bug fixes. Internals: * Added several new utility functions to support the StricterSubs distro. Also, some of the existing functions in Perl-Critic-Utils have changed in ways that might break your custom policies. Miscellanea: * Updated Emacs plugin (Courtesy Josh ben Jore). See extras/perlcritic.el for details. * Added copy of BBEdit plugin (Courtesy of Josh Clark). See extras/perl_critic_for_bbedit-1_0.zip for details [1.05] Released on 2007-03-19 Bug Fixes: * 25557: t/20_policy_prohibittrailingwhitespace.t fails on Perl 5.8.0 [1.04] Released on 2007-03-18 Bug Fixes: * 25008: Subroutines::RequireFinalReturn should allow "throw" * 25085: False Positive - Heredoc terminator must be quoted * 18423: VERSION check does not notice Readonly::Scalar version * 25449: Proposal of $VERSION declaration (DUPLICATE) New Policies: * CodeLayout::ProhibitTrailingWhitespace * ValuesAndExpressions::ProhibitCommaSeparatedStatements * Variables::ProhibitPerl4PackageNames Policy Enhancements: * Subroutines::RequireFinalReturn can now be configured to recognize your custom functions that behave like "die" or "exit". * Documentation::RequirePodSections can be configured to match Module::Starter:PBP or to really match the PBP book. [1.03] Released on 2007-02-13 Bug Fixes: * Fixed a few more problems with the %f, %F, and %r format escapes. * I forgot to put Conway's perlcriticrc file in the MANIFEST. Sorry. Interface Changes: * Perl::Critic::Utils automatically exports everything. However, this is deprecated. In the future, you must request your exports. Policy Changes: * Duplicate violations of RequireExcplicitPackage are now squelched, in the same way as RequireUseStrict and RequireUseWarnings. [1.02] Released on 2007-02-11 Bug Fixes: * "undef" incorrectly triggered ProhibitMutatingListFunctions. * 24876: %f and %F escapes not working in custom "verbose" format strings. * 24875: Documentation bug in TestingAndDebugging::ProhibitNoStrict New Policies: * InputOutput::RequireCheckedOpen * InputOutput::RequireCheckedClose Other Cool Stuff: * Added Conway's own suggested Perl::Critic configuration as examples/perlcriticrc-conway. * See the examples/ directory for some neat demonstrations of using the Perl::Critic API. Contributed by Elliot Shank. Interface Changes: * Perl::Critic::Utils no longer exports anything by default. Policies outside the distribution will need to specify what exactly they need from this module. There are a number of tags that can be used in addition to individual imports. [1.01] Released on 2007-01-24 PRODUCTION RELEASE: You may now consider the public Perl::Critic API as "stable." Future minor releases will focus on bug fixes, new policies, and internal refactoring. Bug Fixes: * Fixed memory leak. This was reported by the Parrot team at http://rt.perl.org/rt3/Ticket/Display.html?id=41230 [0.23] Released on 2007-01-19 Bug Fixes: * 23994: Test 56 in t/05_utils.t of Perl::Critic v0.22 fails * 24005: test 95 in t/13_bundled_policies fails in 0.22 Groovy New Features: * Added '%F' to the Violation format specifications. This will give you just the name of file where the violation occurred (i.e. without the path). * Improved validation of .perlcriticrc file. An invalid default setting will now cause a fatal exception. A strange-looking policy name will cause a warning. Interface Changes: * The syntax for theme expressions has changed. Instead of using mathematical operators qw(+ * -) you must now use the logical operators qw(|| && !). See the Perl::Critic docs for more info. * The @GLOBALS and @BUILTINS variables are no longer exported by Perl::Critic::Utils. Use the is_perl_global() and is_perl_builtin() functions instead. * Perl::Critic::Policy::policy_parameters() has bee renamed to Perl::Critic::Policy::supported_paramters(). This was an undocumented feature anyway, so it shouldn't affect anyone. Other Internal Changes: * Perl::Critic now requires B::Keywords v1.05 or newer. * A few internal classes have been refactored. As a result, Set::Scalar is no longer a required dependency. [0.22] Released on 2006-12-15 New Features: * Introduced named severity levels: gentle, stern, harsh, cruel, brutal You can use these named levels instead of the numeric ones. For example: "perlcritic --severity=cruel MyModule.pm" Or just: "perlcritic --cruel MyModule.pm" * For perlcritic, the "-List" option has been renamed to "-profileproto". The output now includes the names of the parameters that each Policy supports, if any. * Improved validation of Policy parameters in your F<.perlcriticrc> Any invalid parameter now causes a fatal exception. Major Changes: * Reassigned themes for most policies. Now there are fewer themes and they are organized around programming concepts instead of severity levels. If you have assigned your own themes to any Policies, they should still work as expected. Policy Changes: * ErrorHandling::RequireCarping will not complain if it can figure out that the die or warn message will always end in a newline ("\n"). The idea is that, if you put the newline there, you don't indend for there to be any file/line/stack information emitted, in which case you really don't want carp/croak. You can restore the old strict behavior by giving the policy a false value for "allow_messages_ending_with_newlines" in your configuration. Misc Changes: Added single-letter uppercase alternatives for some perlcritic options. [0.21_01] Released on 2006-12-03 New Policies: * TestingAndDebugging::ProhibitProlongedStrictureOverride * ControlStructures::ProhibitMutatingListFunctions New Features: * Say "perlcritic -List" to get an expanded listing of all Policies. The format is suitable for use as your .perlcriticrc file. * Say "perlcritic -doc PATTERN" to get the documentation for all Policies that match m/PATTERN/imx. This is a little easier than typing in the full name of the Policy module with "perldoc". * Say "perlcritic --singlepolicy PATTERN" to use one and only one policy. * Can now specify exceptions to Variables::ProhibitPackageVars, for packages like File::Find that only interface through package variables. Bug Fixes: * 21713 false positive for parens used with substr and unpack. * 22890 allow Rcs keywords in POD. Internals: * Testing system overhauled. Details on the Policy/subtest framework is in t/run.t. * Added Perl::Critic::Utils::words_from_string. This is safer than plain old C. [0.21] Released on 2006-11-05 New Policies: * BuiltinFunctions::ProhibitReverseSortBlock * BuiltinFunctions::ProhibitVoidGrep * BuiltinFunctions::ProhibitVoidMap * CodeLayout::RequireConsistentNewlines * Modules::RequireFilenameMatchesPackage * TestingAndDebugging::RequireTestLabels * ValuesAndExpressions::ProhibitMismatchedOperators New Features: * Introduced policy "themes." Themes are arbitrary names that can be used to identify a group of related Policies. You can select your favorite policies by combining themes in a mathematic expression such as "pbp * (danger + risky)". See POD for details. * perlcritic output is colorized if you have Term::ANSIColor. This only works on non-Win32 platforms. Use -nocolor switch to disable. * Say "perlcritic -count" to get just the the total number of violations per file. Use this feature to quickly identify hot-spots. * Use the -only switch to choose only from policies mentioned in your .perlcriticrc file. This is useful if you usually only want to work with a small subset of the policies. * Default values for most of the perlcritic and Perl::Critic options can now be defined in your .perlcriticrc file. See POD for details. Bug Fixes: * 21236: wrong page number for "printing to filehandles" * 21916: File handle ... wrong page reference in PBP [DUPE] * 21714: false positive for capture var used in ternary condition * 21718: No skip for File::Slurp in includes.t * ProhibitBarewordFilehandles doesn't complain if you open STDIN, STDOUT or STDERR. * Parrot 40564: Subroutines::RequireFinalReturn should allow die, exit, etc. * Each "for" and "foreach" loop now adds one point to the McCabe complexity score. Other Stuff: * The internals of Perl::Critic have been significantly refactored, but should still be compatible with existing third-party Policies. * Added author-only tests to the release, but disabled by default * New Perl::Critic::Utils::shebang_line() method * Support for filename-based policies * Additional prerequisite: Set::Scalar * Now requires PPI version 1.118 [0.20] Released on 2006-09-10 Perl::Critic now requires PPI version 1.117, which fixes several bugs that were introduced in version 1.116. Bug Fixes: * 21079: grep clears @SITE_POLICIES * 21352: Test failures with PPI 1.117 * 11365: sub DESTROY detected as a builtin homonym [0.19] Released on 2006-08-20 New Policies: * BuiltinFunctions::ProhibitStringySplit * ControlStructures::ProhibitDeepNests * RegularExpressions::ProhibitCaptureWithoutTest * Variables::RequireLexicalLoopIterator New Features: * "perlcritic -quiet" suppresses the "source OK" message. * Variables::ProhibitPunctuationVars is now configurable. Bug Fixes: * 20965: "Hard tabs used at" shouldn't check __DATA__ * 21070: ProhibitNoisyQuotes hates overload * Punctuation variables are now exempt from ProhibitLocalVars Other Stuff: * Test coverage is now over 95% [0.18_01] Released on 2006-08-06 New Policies: * Variables::RequireNegativeIndices * InputOutput::ProhibitInteractiveTest * ErrorHandling::RequireCarping Bug Fixes: * RequireTidyCode tests fail if user has custom .perltidyrc file * 20612: RequirePerlTidy was ignoring HEREDOCs * 20659: __END__ statement considered "unreachable" * Fix for PPI::XS (no C support) * Support for 'goto' in ProhibitAmpersandSigils and Subroutines::RequireFinalReturn Performance Enhancements: * Introduced Perl::Critic::Document class. This is a facade for PPI::Document which internally caches search results. This reduces the running time by about 35%. The facade should be invisible, unless you are doing something really sneaky. * Extraction of the 'diagnostics' information is postponed until it is really needed. Speedup has not been measured. * Calls to helper-subs have been reordered for maximum efficiency. Other Cool Stuff: * Includes updated version of perlcritic mode for emacs. See "extras/perlcritic.el" for details. [0.18] Released on 2006-07-16 Bug Fixes: * 14855: Home discovery is dangerously naive. * 20060: Incorrect page numbers in ProhibitLeadingZeros and RequireNumberSeparator policies. * 20068: .perlrc file - inconsistent documentation * 20254: "use vars qw(@EXPORT_OK)" not recognized * 20463: No-case heredoc terminator incorrectly detected as lower case. * ProhibitOneArgBless doesn't understand "bless {} => $class;" * ProhibitExcessComplexity doesn't count 'while' and 'until' stmnts * ProhibitLeadingZeros was falsely hits '.0456' Enhancements: * If File::HomeDir is available, we use it to locate the .perlcriticrc file. This should help make Perl::Critic more portable to Win32 platforms. If File::HomeDir is not installed, we resort to looking at the usual environment variables. Other Stuff: * Added "perlcritic.el", which is a super-cool emacs minor-mode that runs perl-critic on the current buffer and returns the results in a sexy hot-linked "compiler" window. You can run it on demand, or have it run automatically every time you save the buffer. You can find this in the extras/ directory. Thanks to Josh ben Jore for contributing this. * Moved "Perl::Critic::TestUtils" into the installed build. This module is only used for unit-testing Perl::Critic, but we are putting it in the installation so folks who want to extend Perl::Critic can make use of it. [0.17] Released on 2006-06-13 Bug Fixes: * 19836: Perl-Critic0.16 fails tests during install. This was caused by a bug in version 3.01 of Module::Pluggable. See http://rt.cpan.org/Ticket/Display.html?id=19857 for details. * Fixed bug in no-critic pragma parser. New Policies: * ValuesAndExpressions::ProhibitEscapedCharacters * BuiltinFunctions::RequireSimpleSortBlock Enhancements: * Perl::Critic can export critique() as a static function. This may appeal to folks who dislike the object-oriented interface. [0.16] Released on 2006-05-14 Enhancements: * Perl::Critic->critique() now accepts a PPI::Document as the argument. This feature creates an additional dependency on Scalar::Util, but that shouldn't be a problem because it is included with List::Util, which we already use. Miscellanea: * Increased PPI dependency from v1.110 to v1.112 [0.15_03] Released on 2006-05-07 Bug Fixes: * The "## no critic" feature is now implemented without eval-ing the code. This keeps Perl::Critic pure and safe :) * 19082: Page number for AUTOLOAD is incorrect New Policies: * ControlStructures::ProhibitUnreachableCode (by Peter Guzis) * Modules::ProhibitAutomaticExportation * ValuesAndExpressions::ProhibitVersionStrings [0.15_02] Released on 2006-04-26 Bug Fixes: * Reimplemented the '##no critic' pragmas to have effect on the line where the violation is reported, not on the line where the candidate element lives. This is because some policies may report violations that are nowhere near the element that is being evaluated. * RequireUseStrict, RequireUseWarnings, and RequireExplcitPackage all emit violations for _every_ statement that violates the Policy. This closes a loophole that allowed you to circumvent the Policy by using '## no critic' on just the first statement that violated the policy. * Fixed the workaround for the magic shebang that is inserted by EU::MM and M::B. This had stopped working around version 13. * Fixed -noprofile option on 'perlcritic'. This also had stopped working at some point. [0.15_01] Released on 2006-04-16 Enhancements: * Added diagnostic messages if the .perlcriticrc contains entries for Policy modules that don't seem to exist. * Now you can specify which policies to disable with the "## no critic" pseudo-pragmas. This feature is still experimental. See docs for details. * perlcritic's directory searching now skips backup files, such as *.swp, *.bak and *~. It also ignores version control system directories, and the blib directory in module build directories. Bug Fixes: * 18386: Bad example in POD for Documentation::RequirePodSections * 18670: Test failure if Perl::Tidy is not installed * 18698: Policy idea ProhibitUniversalFunctions (see New Policies) * RequireInterpolationOfMetachars falsely hit strings like 'foo=s@' which are commonly used with Getopt::Long. New Policies: * BuiltinFunctions::ProhibitUniversalCan (by Chris Dolan) * BuiltinFunctions::ProhibitUniversalIsa (by Chris Dolan) Miscellanea: * All spurrious options for `perlcritic` are now fatal. * Changed several of the -verbose formats to be more readable. * Explicit -severity option now overrides -[12345] shortcuts instead of being the other way around. [0.15] Released on 2006-03-26 Bug Fixes: * 17964: Insists my code is not tidy (may not be fixed for all cases) [0.14_02] Released on 2006-03-19 Bug Fixes: * 15653: False positive in OneArgSelect (fixed for real this time) New Policies: * ClassHierarchies::ProhibitAutoloading * Documentation::RequirePodSections * InputOutput::RequireBracedFileHandleWithPrint * ValuesAndExpressions::ProhibitMixedBooleanOperators * Variables::RequireInitializationForLocalVars [0.14_01] Released on 2006-03-05 Bug Fixes: * 14731: False positive: Builtin function called with parens * 17554: False positive in CodeLayout::RequireTrailingCommas New Policies: * ClassHierarchies::ProhibitExplicitISA * InputOutput::ProhibitReadlineInForLoop * Miscellanea::ProhibitFormats * Miscellanea::ProhibitTies * Variables::ProhibitConditionalDeclarations [0.14] Released on 2006-01-29 More documentation edits. New Policies: * Documentation::RequirePodAtEnd * Subroutines::ProtectPrivateSubs * Variables::ProhibitMatchVars * Variables::ProtectPrivateVars Bug Fixes: * 15295: "## no critic" pragmas too aggresive on compound statements. * t/01_config.t failed in the presence of third-party policies [0.13_05] Not released More documentation edits. Implemented workaround for failing pod_coverage tests. Bug Fixes: * 16906: tr/// created false-postives with RegularExpression polices. [0.13_04] Released on 2005-12-31 Moved DEVELOPER.pod file into the Perl/Critic dir. More documentation edits. [0.13_03] Released on 20051230 perlcritic now prints 'source OK' if it doesn't find any violations. This gives folks a warm fuzzy feeling. Tweaked some test cases that were failing on my Solaris environment at work. [0.13_02] Released on 2005-12-29 Fixed Config to recognize fully-qualified module names in the .perlcriticrc file. Various documentation edits. [0.13_01] Released on 2005-12-28 Replaced 'priority' concept with 'severity'. Now each Policy module has a predefined severity level ranging from 1 to 5. By default, perlcritic only reports the most severe violations. You can adjust the severity threshold at the command line, and you can change the severity for any Policy using the config file. Chris implemented the applies_to() mechanism, which allows each Policy class to declare the types of PPI elements that it wants to examine. When traversing the document, Perl::Critic invokes the Policy only for elements that are of the correct type. This improves performance by about 33%. Perl::Critic now uses a Plugin architecture to automatically discover Policy modules. So if you have custom Policies, all you have to do is install them in the Perl::Critic::Policy namespace -- no need to add anything to your .perlcriticrc file. If you write policies in a different namespace, you can configure that too. See the Perl::Critic::Config docs for details. New Policies: * Modules::RequireEndWithOne * NamingConventions::ProhibitAmbiguousNames * References::ProhibitDoubleSigils * Subroutines::RequireFinalReturn * Subroutines::ProhibitAmpersandSigils * Subroutines::ProhibitExcessComplexity * TestingAndDebugging::ProhibitNoStrict * TestingAndDebugging::ProhibitNoWarnings Bug Fixes: * 15101: Plugin architecture improves support for 3rd-party code * 16319: Fixed incorrect PBP page number in ProhibitBarwordFilehandle * 16321: Lists of empty quotes are now allowed by ProhibitQuotedWordLists * 16288: Empty lists caused a fatal error RequireTrailingCommas * 15653: Fixed false positive in OneArgSelect. [0.13] Released on 2005-10-31 Official release of 0.12_03. No code major changes. [0.12_03] Not released Renamed -Policy option to -include. Added -exclude to give the opposite effect. Refactored constructor of Perl::Critic. Now, most of the work is delegated to Perl::Critic::Config. I'm not sure I like how this turned out, but we'll see how it goes. Renamed some Policy modules to be a bit more comprehensible. Note that you may need to change your .perlcriticrc file accordingly. I also suggest removing your current Perl::Critic installation before installing this one. Name Changes: * ProhibitUnpackagedCode => RequireExplicitPackage * RequireQuotedWords => ProhibitQuotedWordLists Improved error message when Perl::Critic dies because PPI can't parsee the input code. Changed output of -help to be more terse. Edited POD. [0.12_02] Not released Added -Policy option to perlcritic. The idea is to provide a compact interface for selecting Policy modules at the command-line. This feature is experimental and subject to change. Added a warning message if -verbose value looks strange. In most applications, the -verbose option does not require a value, so people might be puzzled when they write 'perlcritic -verbose my_file.pm' and nothing seems to happen. Command-line options to perlcritic are now case-sensitive. This makes it easier to abbreviate options that start with the same letters (e.g. 'Version' and 'verbose') Fixed the new Policy modules that were misnamed and misplaced in the previous distribution. [0.12_01] Not released Rewrote some of the ControlStructures and BuiltinFunction policies to be simpler (and probably a little faster). Edited POD. Fixed some typos. Added PREREQUISITES section to Perl::Critic documentation. Fixed the -verbose FORMAT option so that you can put metachars in the FORMAT specification. If using perlcritic, be careful to protect them from getting munged by the shell first. Replaced ProhibitRequireStatements with RequireBarewordIncludes module. Courtesy of Chris Dolan Added configuration to ProhibitInterpolationOfLiterals so that certain flavors of quotes can be exempt. This is for folks who have configured their editor to use special syntax highlighting for certain kinds of strings (SQL, for example). perlcritic now accepts multiple file arguments, so now you can critique your entire distribution in one shot. As a result, the output-formats have changed slightly. New Policy modules: * BuiltinFunctions::ProhibitLvalueSubstr * BuiltinFunctions::ProhibitSleepViaSelect * ClassHierarchies::ProhibitOneArgBless * CodeLayout::RequireTrailingCommas * CodeLayout::RequireQuotedWordLists * InputOutput::ProhibitTwoArgOpen * InputOutput::ProhibitOneArgSelect * InputOutput::ProhibitBarewordFileHandles * Miscellanea::RequireRcsKeywords * Modules::RequireVersionVar * RegularExpressions::RequireExtendedFormatting * RegularExpressions::RequireLineBoundaryMatching Bug fixes: 14923: 'require' is now permitted. See RequireBarewordIncludes. 15022: Fixed false-positives when keywords are used as hash keys. 15023: Fixed spurious Violations by removing magic shebang. 15031: Fixed spelling mistakes (and probably added some new ones). 15233: Postfix 'if' is now allowed with 'die', 'croak', etc. [0.12] Released 2005-10-10 Redesigned the 'verbose' feature. Now the output format can be user-defined using a sprintf-like specification. perlciritc also has a predefined output format that is compatible with grep mode in editors like vim and emacs. 'return' is now exempt from ProhibitParensWithBuiltins. I may extend this exemption to all unary functions. Edited POD. Added a super brief description of each policy in the main Perl::Critic documentation. Added details about editor integration. Additional Prerequisites: * String::Format [0.11] Not released The internal dynamics and API of Perl::Critic have changed considerably. The result is a 300% increase in performance. See the POD in Perl::Critic::Policy for details. New Features: * Added -verbose option to put more stuff in the output. In the extreme, you can get the POD from Policy attached to each and every violation. Additional Prerequisites: * IO::String * Pod::PlainText [0.10] Released 2005-10-05 Fixed stupid bug in newest Policy modules. They were returning PPI objects instead of Perl::Critic::Violation objects. Doh! Fixed test scripts to prevent failures if the user already has a .perlcriticrc file. 'ProhibitHardTabs' now allows leading tabs by default. Put the Changes file in reverse-chronological order, so the most recent stuff is easy to find at the top of the file [0.09] Released 2005-10-04 Fixed several bugs: * 14810: Now you are allowed to create your own 'import' function, since this is frequently done with fancy modules. * 14817: Parens, brackets, and braces are now excluded from 'ProhibitNoisyQuotes' since they look better in quotes anyway. * 14787: $1..$9 and '_' are exempt from ProhibitPunctuationVars * 14899: Object methods with the same name as a built-in can be called with parens (ProhibitParensWithBuiltins). * 14901: Normalized the exit status of perlcritic to 0, 1, or 2. See documentation for explanation. * 14855: Partially fixed home directory discovery. Still not completely portable, but at least doesn't create warnings. New features: * 14734: Limit for number separators is now configurable New Policy modules: * CodeLayout::ProhibitHardTabs * ControlStructures::ProhibitUnlessBlocks * ControlStructures::ProhibitUntilBlocks * ControlStructures::ProhibitCStyleForLoops Changed the syntax for the magic comments. Adam had the idea of using a pragma-like notation. I liked it. [0.08_2] Released 2005-09-27 Fixed problems with Perl::Critic::Config that caused File::Spec to emit 'uninitialized value' warnings during the build. Added 1 Policy module contributed by Graham TerMarsch Switched from File::Spec::Functions to plain File::Spec because I think its usage is more common. Removed 'FindBin' from the test files so I can be sure that the right libraries are getting loaded. This means I'll have to use the -l option with C. Edited more POD. [0.08_01] Not released Fixed "ProhibitParensWithBuiltins" to allow parens to be used with object method calls that have the same name as a builtin functions. Introduced magical comments that allow developers to configure Perl::Critic on-the-fly from within their code. Added META.yml files and POD tests to the build. I did this mostly just to boost the Kwalitee score on CPANTS. Switched from "Config::Std" to "Config::Tiny" because it doesn't require those fancy Damian modules that don't seem to work on some older versions of Perl. [0.07] Released on 2005-09-21 Fixed bugs in the ProhibitCascadingIfElse policy. Added ProhibitExplicitReturnUndef policy Made ProhibitUnpackagedCode configurable so you can exempt scripts, which typically don't have an explicit 'package' statement. ProhibitPackageVars policy now exempts vars in ALL_CAPS. This is to permit common package variables like @EXPORT and $VERSION. Renamed "ProhibitStringyGrep and "ProhibitStringyMap" because the so-called string form doesn't really exist. Now called "RequireBlockGrep" and "RequireBlockMap" Corrected documentation on defining Policy names within the configuration file. This still isn't very clear and needs to be rewritten. Perl::Critic now requires PPI version 1.003, which has a few bug fixes of its own. Rewrite some code just to make Perl::Critic more self-compliant. Added test cases to verify the configuration functionality. These are not completely thorough and need more work. [0.06] Released on 2005-09-17 Now called 'Perl::Critic'. Added 4 new policy modules. Fixed bugs in build process. Added support for Module::Build. [0.05] Released on 2005-09-17 End of 'Perl::Review' releases. I have changed the name to 'Perl::Critic' to avoid possible confusion with "The Perl Review" magazine. [0.04] Released on 2005-09-14 Version 0.03 was a bust because I uploaded the wrong tarball to PAUSE. [0.03] Released on 2005-09-13. Fixed some POD links. Removed test cases for missing policy module. [0.02] Released on 2005-09-13. Major overhaul based on feedback from Perl community. Factored coding standards into separate modules (known as Policies). The idea here is to allow other developers to easily contribute additional coding standards. Reworked Perl::Review into a simple engine for loading and running Policy modules. Gave perlreview a command-line interface and configuration file for selecting which Policy modules to use. [0.01] Released on 2005-08-16. Initial version. ############################################################################## # $URL: http://perlcritic.tigris.org/svn/perlcritic/trunk/distributions/Perl-Critic/Changes $ # $Date: 2013-09-25 21:18:04 -0700 (Wed, 25 Sep 2013) $ # $Author: thaljef $ # $Revision: 4169 $ ############################################################################## # ex: set ts=8 sts=4 sw=4 tw=78 ft= expandtab shiftround : CPAN-Changes-0.500005/corpus/dists/WWW-Mechanize-Cached.parsed000644 000000 000000 00000040213 14472651645 021611 0ustar00000000 000000 { "preamble" => "Revision history for Perl extension WWW::Mechanize::Cached", "raw_preamble" => "Revision history for Perl extension WWW::Mechanize::Cached\n\n", "releases" => [ { "date" => "2013-06-29", "entries" => [ { "line" => 4, "raw" => " - Allow caching w/ Content-Encoding == chunked + no size header (Kent\n Fredric)\n\n", "style" => "-", "text" => "Allow caching w/ Content-Encoding == chunked + no size header (Kent Fredric)" } ], "line" => 3, "raw" => "1.42 2013-06-29\n", "raw_date" => "2013-06-29", "version" => "1.42" }, { "date" => "2012-06-27", "entries" => [ { "line" => 8, "raw" => " - Account for content length when deciding whether to cache (Kent Fredric)\n\n", "style" => "-", "text" => "Account for content length when deciding whether to cache (Kent Fredric)" } ], "line" => 7, "raw" => "1.41 2012-06-27\n", "raw_date" => "2012-06-27", "version" => "1.41" }, { "date" => "2010-10-18", "entries" => [ { "line" => 11, "raw" => " - Fixed file prefix in cache_key.t when run under Windows\n\n", "style" => "-", "text" => "Fixed file prefix in cache_key.t when run under Windows" } ], "line" => 10, "raw" => "1.40 2010-10-18\n", "raw_date" => "2010-10-18", "version" => "1.40" }, { "date" => "2010-10-09", "entries" => [ { "line" => 14, "raw" => " - live tests now skip if we can't connect to the live URL\n", "style" => "-", "text" => "live tests now skip if we can't connect to the live URL" }, { "line" => 15, "raw" => " - Storable now has a specific version prerequisite\n\n", "style" => "-", "text" => "Storable now has a specific version prerequisite" } ], "line" => 13, "raw" => "1.39 2010-10-09\n", "raw_date" => "2010-10-09", "version" => "1.39" }, { "date" => "2010-10-07", "entries" => [ { "line" => 18, "raw" => " - cache_key test should now be portable to Windows\n", "style" => "-", "text" => "cache_key test should now be portable to Windows" }, { "line" => 19, "raw" => " - Critic test removed as Dist::Zilla runs this test automatically\n", "style" => "-", "text" => "Critic test removed as Dist::Zilla runs this test automatically" }, { "line" => 20, "raw" => " - POD tests should now only be run by author\n\n", "style" => "-", "text" => "POD tests should now only be run by author" } ], "line" => 17, "raw" => "1.38 2010-10-07\n", "raw_date" => "2010-10-07", "version" => "1.38" }, { "date" => "2010-08-30", "entries" => [ { "line" => 23, "raw" => " - Removed TestCache from Makefile. Had been automatically added\n by Dist::Zilla\n\n", "style" => "-", "text" => "Removed TestCache from Makefile. Had been automatically added by Dist::Zilla" } ], "line" => 22, "raw" => "1.37 2010-08-30\n", "raw_date" => "2010-08-30", "version" => "1.37" }, { "date" => "2010-08-30", "entries" => [ { "line" => 27, "raw" => " - Caching is now positive by default (was negative up to this point)\n", "style" => "-", "text" => "Caching is now positive by default (was negative up to this point)" }, { "line" => 28, "raw" => " - Referring URLs are now, by defaut, not used when creating cache keys.\n This reverses the behaviour of previous versions. RT #56757\n", "style" => "-", "text" => "Referring URLs are now, by defaut, not used when creating cache keys. This reverses the behaviour of previous versions. RT #56757" }, { "line" => 30, "raw" => " - Now using Moose and Dist::Zilla\n\n", "style" => "-", "text" => "Now using Moose and Dist::Zilla" } ], "line" => 26, "raw" => "1.36 2010-08-30\n", "raw_date" => "2010-08-30", "version" => "1.36" }, { "date" => "2009-11-20", "entries" => [ { "line" => 33, "raw" => " - Changed test URL, which was causing a small percentage of installs to\n fail\n", "style" => "-", "text" => "Changed test URL, which was causing a small percentage of installs to fail" }, { "line" => 35, "raw" => " - Added latest HTTP::Headers to prerequisites in order to prevent some\n failed installs\n\n", "style" => "-", "text" => "Added latest HTTP::Headers to prerequisites in order to prevent some failed installs" } ], "line" => 32, "raw" => "1.35 2009-11-20\n", "raw_date" => "2009-11-20", "version" => "1.35" }, { "date" => "2009-11-20", "entries" => [ { "line" => 39, "raw" => " - Added first example script\n", "style" => "-", "text" => "Added first example script" }, { "line" => 40, "raw" => " - Expanded documentation re: custom caches\n", "style" => "-", "text" => "Expanded documentation re: custom caches" }, { "line" => 41, "raw" => " - Removed some outdated files from distro\n\n", "style" => "-", "text" => "Removed some outdated files from distro" } ], "line" => 38, "raw" => "1.34 2009-11-20\n", "raw_date" => "2009-11-20", "version" => "1.34" }, { "date" => "2009-07-13", "entries" => [ { "line" => 44, "raw" => " - Now maintained by Olaf Alders. Thanks to Andy Lester for offering\n to let me take this on.\n", "style" => "-", "text" => "Now maintained by Olaf Alders. Thanks to Andy Lester for offering to let me take this on." }, { "line" => 46, "raw" => " - Applied patch from RT http://rt.cpan.org/Public/Bug/Display.html?id=42693\n This fixes the \"Can't store CODE items\" errors\n", "style" => "-", "text" => "Applied patch from RT http://rt.cpan.org/Public/Bug/Display.html?id=42693 This fixes the \"Can't store CODE items\" errors" }, { "line" => 48, "raw" => " - Now requires Test::Warn 0.11 (fixes errors in t/002-bad-custom-cache.t)\n", "style" => "-", "text" => "Now requires Test::Warn 0.11 (fixes errors in t/002-bad-custom-cache.t)" }, { "line" => 49, "raw" => " - Moved development to GitHub: http://github.com/oalders/www-mechanize-cached/tree/master\n", "style" => "-", "text" => "Moved development to GitHub: http://github.com/oalders/www-mechanize-cached/tree/master" }, { "line" => 50, "raw" => " - Added Perl::Critic author tests\n\n", "style" => "-", "text" => "Added Perl::Critic author tests" } ], "line" => 43, "raw" => "1.33 2009-07-13\n", "raw_date" => "2009-07-13", "version" => "1.33" }, { "date" => "2004-04-11T22:19:49Z", "entries" => [ { "entries" => [ { "line" => 55, "raw" => " * Added the \$mech->is_cached() method.\n\n", "style" => "*", "text" => "Added the \$mech->is_cached() method." }, { "line" => 57, "raw" => " * Verified that reusing an existing cache gives you the pages back.\n\n", "style" => "*", "text" => "Verified that reusing an existing cache gives you the pages back." } ], "line" => 54, "raw" => " [ENHANCEMENTS]\n", "style" => "[]", "text" => "ENHANCEMENTS" }, { "entries" => [ { "line" => 60, "raw" => " * Now requires WWW::Mechanize 1.00, because previous versions\n goofed up the HTTP headers on some requests.\n\n\n", "style" => "*", "text" => "Now requires WWW::Mechanize 1.00, because previous versions goofed up the HTTP headers on some requests." } ], "line" => 59, "raw" => " [INTERNAL]\n", "style" => "[]", "text" => "INTERNAL" } ], "line" => 52, "raw" => "1.32 Sun Apr 11 22:19:49 CDT 2004\n\n", "raw_date" => "Sun Apr 11 22:19:49 CDT 2004", "version" => "1.32" }, { "date" => "2004-03-14T02:51:19Z", "entries" => [ { "line" => 66, "raw" => " No new features.\n\n", "style" => "", "text" => "No new features." }, { "entries" => [ { "line" => 69, "raw" => " * Fixed stupid configuration problem in t/bad-cache-test.t.\n If you got 1.28 installed OK, you don't need 1.30.\n\n", "style" => "*", "text" => "Fixed stupid configuration problem in t/bad-cache-test.t. If you got 1.28 installed OK, you don't need 1.30." } ], "line" => 68, "raw" => " [FIXED]\n", "style" => "[]", "text" => "FIXED" } ], "line" => 64, "raw" => "1.30 Sun Mar 14 02:51:19 CST 2004\n\n", "raw_date" => "Sun Mar 14 02:51:19 CST 2004", "version" => "1.30" }, { "date" => "2004-03-13T22:05:26Z", "entries" => [ { "entries" => [ { "line" => 75, "raw" => " * The C parm to the constructor is no longer a set\n of parms to specify how the cache will be initialized. It\n must now be a fully-initialized cache object, probably in\n the Cache::Cache hierarchy.\n\n", "style" => "*", "text" => "The C parm to the constructor is no longer a set of parms to specify how the cache will be initialized. It must now be a fully-initialized cache object, probably in the Cache::Cache hierarchy." }, { "entries" => [ { "line" => 86, "raw" => " However, if you want to create your own cache object that\n", "style" => "", "text" => "However, if you want to create your own cache object that" }, { "line" => 87, "raw" => " writes to /tmp/FileCache/WWW::Mechanize::Cached, for\n", "style" => "", "text" => "writes to /tmp/FileCache/WWW::Mechanize::Cached, for" }, { "line" => 88, "raw" => " compatibility, you can create it and pass it in.\n\n", "style" => "", "text" => "compatibility, you can create it and pass it in." } ], "line" => 80, "raw" => " * Existing caches will not work, because I changed the\n directory that they get written to. It used to go into\n /tmp/FileCache/WWW::Mechanize::Cached, but now will go into\n /tmp/FileCache/www-mechanize-cached. This is so the Windows\n folks can use the module, too.\n\n", "style" => "*", "text" => "Existing caches will not work, because I changed the directory that they get written to. It used to go into /tmp/FileCache/WWW::Mechanize::Cached, but now will go into /tmp/FileCache/www-mechanize-cached. This is so the Windows folks can use the module, too." } ], "line" => 74, "raw" => " [THINGS THAT WILL BREAK YOUR CODE]\n", "style" => "[]", "text" => "THINGS THAT WILL BREAK YOUR CODE" }, { "entries" => [ { "line" => 91, "raw" => " * You can now specify your own Cache::Cache object to pass\n into the constructor.\n\n", "style" => "*", "text" => "You can now specify your own Cache::Cache object to pass into the constructor." } ], "line" => 90, "raw" => " [ENHANCEMENTS]\n", "style" => "[]", "text" => "ENHANCEMENTS" } ], "line" => 72, "raw" => "1.28 Sat Mar 13 22:05:26 CST 2004\n\n", "raw_date" => "Sat Mar 13 22:05:26 CST 2004", "version" => "1.28" }, { "date" => "2004-02-29T23:59:48Z", "entries" => [ { "entries" => [ { "line" => 97, "raw" => " * Removed a duplicate \$key. Cleaned up some of the internal code,\n and made the variable names more explicit.\n\n", "style" => "*", "text" => "Removed a duplicate \$key. Cleaned up some of the internal code, and made the variable names more explicit." }, { "line" => 100, "raw" => " * Added an autocheck=>1 to the t/cached.t test. Also hits\n time.gov instead of Iain's now-gone website.\n\n", "style" => "*", "text" => "Added an autocheck=>1 to the t/cached.t test. Also hits time.gov instead of Iain's now-gone website." }, { "line" => 103, "raw" => " * Removed the SIGNATURE, which I don't intend to maintain.\n\n", "style" => "*", "text" => "Removed the SIGNATURE, which I don't intend to maintain." } ], "line" => 96, "raw" => " [FIXES]\n", "style" => "[]", "text" => "FIXES" } ], "line" => 94, "raw" => "1.26 Sun Feb 29 23:59:48 CST 2004\n\n", "raw_date" => "Sun Feb 29 23:59:48 CST 2004", "version" => "1.26" }, { "date" => "2004-01-18T23:10:40Z", "entries" => [ { "line" => 107, "raw" => " NO NEW FUNCTIONALITY.\n\n", "style" => "", "text" => "NO NEW FUNCTIONALITY." }, { "line" => 109, "raw" => " On December 29th, 2003, Iain Truskett, the original author of\n", "style" => "", "text" => "On December 29th, 2003, Iain Truskett, the original author of" }, { "line" => 110, "raw" => " WWW::Mechanize::Cached passed away. I've taken over maintenance\n", "style" => "", "text" => "WWW::Mechanize::Cached passed away. I've taken over maintenance" }, { "line" => 111, "raw" => " of the module. If you're interested in carrying on Iain's work,\n", "style" => "", "text" => "of the module. If you're interested in carrying on Iain's work," }, { "line" => 112, "raw" => " let me know.\n\n\n", "style" => "", "text" => "let me know." } ], "line" => 105, "raw" => "1.24 Sun Jan 18 23:10:40 CST 2004\n\n", "raw_date" => "Sun Jan 18 23:10:40 CST 2004", "version" => "1.24" }, { "entries" => [ { "line" => 116, "raw" => " Initial version, released by Iain Truskett.\n\n", "style" => "", "text" => "Initial version, released by Iain Truskett." } ], "line" => 115, "note" => "December 1, 2003", "raw" => "1.23 December 1, 2003\n", "version" => "1.23" } ] } CPAN-Changes-0.500005/corpus/dists/Params-Dry-Declare.parsed000644 000000 000000 00000001326 14472651645 021375 0ustar00000000 000000 { "preamble" => "Revision history for Params-Dry-Declare", "raw_preamble" => "Revision history for Params-Dry-Declare\n\n", "releases" => [ { "entries" => [ { "line" => 4, "raw" => " First version, released on an unsuspecting world.\n", "style" => "", "text" => "First version, released on an unsuspecting world." } ], "line" => 3, "note" => "Date/time", "raw" => "0.99 Date/time\n", "version" => "0.99" }, { "entries" => [], "line" => 5, "note" => "Fix example (Param -> Param::Dry", "raw" => "0.9901 Fix example (Param -> Param::Dry\n\n", "version" => "0.9901" } ] } CPAN-Changes-0.500005/corpus/dists/Module-Rename.parsed000644 000000 000000 00000004341 14472651645 020513 0ustar00000000 000000 { "preamble" => "######################################################################\nRevision history for Perl extension Module::Rename", "raw_preamble" => "######################################################################\nRevision history for Perl extension Module::Rename\n\n", "releases" => [ { "entries" => [ { "line" => 5, "raw" => " (ms) [rt.cpan.org #87172] Applied changes by Jim Cochrane to add a -g \n switch, which uses \"git mv\" instead of mv. Added various fixes and \n test cases.\n\n", "style" => "", "text" => "(ms) [rt.cpan.org #87172] Applied changes by Jim Cochrane to add a -g switch, which uses \"git mv\" instead of mv. Added various fixes and test cases." } ], "line" => 4, "note" => "(2013/07/27)", "raw" => "0.04 (2013/07/27)\n", "version" => "0.04" }, { "entries" => [ { "line" => 10, "raw" => " (ms) Added sandbox/eg to MANIFEST to fix installation problem\n\n", "style" => "", "text" => "(ms) Added sandbox/eg to MANIFEST to fix installation problem" } ], "line" => 9, "note" => "(2005/04/09)", "raw" => "0.03 (2005/04/09)\n", "version" => "0.03" }, { "entries" => [ { "line" => 13, "raw" => " (ms) Replace \"Foo/Bar\" in files just like \"Foo::Bar\".\n", "style" => "", "text" => "(ms) Replace \"Foo/Bar\" in files just like \"Foo::Bar\"." }, { "line" => 14, "raw" => " (ms) Replace pm files outside the regular dir structure.\n\n", "style" => "", "text" => "(ms) Replace pm files outside the regular dir structure." } ], "line" => 12, "note" => "(2005/03/28)", "raw" => "0.02 (2005/03/28)\n", "version" => "0.02" }, { "entries" => [ { "line" => 17, "raw" => " (ms) Where it all began.\n", "style" => "", "text" => "(ms) Where it all began." } ], "line" => 16, "note" => "(2005/03/27)", "raw" => "0.01 (2005/03/27)\n", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/Rose-HTML-Objects.changes000644 000000 000000 00000042352 14472651645 021260 0ustar00000000 000000 0.620 (12.18.2013) - John Siracusa * Eliminate a perl 5.19 "precedence issue with control flow operator" warning. 0.619 (07.24.2013) - John Siracusa * Fixed incorrect return statements (RT 87253) (Patch by Reini Urban) 0.618 (03.29.2013) - John Siracusa * Made compatible with perl 5.17.10 (RT 84279) 0.617 (12.30.2012) - John Siracusa * Added base 2.18 as a prerequisite to avoid a load-order bug that occurs with some older versions. * Preserve custom class attributes on label objects (RT 82333) (Patch by Tom Heady) 0.616 (05.09.2012) - John Siracusa * Added add_class(es) and delete_class(es) methods. * Added was_submitted() method to the submit button class. * Calling clear() on a hidden field now clears it. 0.615 (05.01.2012) - John Siracusa * Minor efficiency improvements in HTML generation. 0.614 (04.02.2012) - John Siracusa * Deprecated and undocumented the form_rank_counter() method. It will be removed in a future release. * Fixed a bug that could cause a repeated form to get the wrong rank. 0.613 (04.02.2012) - John Siracusa * Added make_next_form() method to repeatable forms. * Documented the empty_is_ok() attribute of repeatable forms. 0.612 (03.26.2012) - John Siracusa * Worked around fatal error triggered by loading Rose::HTML::Form in the perl debugger in some older versions of perl. (e.g., perl -I lib -d lib/Rose/HTML/Form.pm) 0.611 (11.16.2010) - John Siracusa * Added default HTML serialization for compound fields. * Removed documentation for nonexistent field_names() method. 0.610 (10.02.2010) - John Siracusa * Fixed a bad probe in form-nested.t that was causing spurious test failures. * Attempted to fix mro-c3.t test failures that I've thus far been unable to reproduce locally. 0.608 (10.01.2010) - John Siracusa * Silenced a warning in t/form-field.t * Clarified the precedence of object_from_form() initialization in cases where a parent form and sub-form have fields with the same local_name() (Reported by Christopher Masto) 0.607 (04.28.2010) - John Siracusa * Moved version number back to three places after the decimal in order to placate Unix package management systems. 0.6061 (11.19.2009) - John Siracusa * Altered tests to work around strange UTF-8 errors in some installations of perl. (Thanks to Michael Lackhoff for help debugging.) 0.606 (11.16.2009) - John Siracusa * Overhauled inheritance to fix "Inconsistent hierarchy" mro c3 errors (RT 51168) * Added "use utf8" statements to ensure proper treatment of UTF-8 text stored in the __DATA__ sections of various modules (RT 29131) 0.605 (10.16.2009) - John Siracusa * Updated eval blocks to avoid stomping on $@ from an outer scope. 0.604 (09.14.2009) - John Siracusa * Fixed a bug that caused html() to fail when called on a form that contained a compound field. (Reported by Will Hawes) * Make sure custom validator is called from DateTime fields. 0.603 (05.06.2009) - John Siracusa * Fixed a bug that cause the class attribite on label tags not to be cleared correctly. (Reported by Denis Moskowitz) 0.602 (02.22.2009) - John Siracusa * Fixed an HTML escaping bug caused by overload's interaction with Rose::Object's Class::XSAccessor support. * Made Rose::HTML::Form's inherited html() and xhtml() methods do something vaguely sensible. (Inspired by Christof Krüger) 0.601 (01.09.2009) - John Siracusa * Fixed an uninitialized value warning in Rose::HTML::Text. 0.600 (12.13.2008) - John Siracusa * Added localization support. * Added private library support. * Rose::HTML::Form::Field::PopUpMenu's internal_value() is now unconditionally singular, and undef when no items are selected. * Fixed a bug in Rose::HTML::Image that made detection of image sizes dependent on method call order. (Reported by Sean Allen) * Added mod_perl 2.x support to Rose::HTML::Image. (Reported by Sean Allen) 0.555 (10.22.2008) - John Siracusa * Fixed a memory leak in group fields (RT 38837) * Corrected documentation and implementation of init_with_objects(). 0.554 (05.28.2008) - John Siracusa * Added automation for repeatable sub-forms. * Made Rose::HTML::Object suitable for generic HTML building by adding parent/child/descendant and related methods. * Extended and documented child-related methods to form and field classes. * Added the local_fields() method. (Suggested by Zbigniew Lukasiak) * Adding items to grouped fields (e.g., checkbox groups) inside named forms no longer causes an error. (Patch by Kevin McGrath) * Fixed a bug that prevented full field detection in compound fields with checkable sub-fields (e.g., radio buttons and checkboxes) * Added empty_is_ok attribute to ease the handling of optional sub-forms. * Added the items_html_attr() family of methods for setting HTML attributes on items in radio button, checkbox, and select box group fields. (Suggested by Jason Gottshall) * Made (x)html_error_formatter a get_set_init attribute. 0.553 (02.25.2008) - John Siracusa * Changed mailing list URLs. 0.5521 (01.30.2007) - John Siracusa * Fixed typos in Form POD. 0.552 (12.13.2007) - John Siracusa * Fixed handling of empty string values in the Numeric field class. * Corrected some typos in the documentation. 0.551 (12.10.2007) - John Siracusa * Added the ability to hide, show, and delete grouped items (options, checkboxes, radio buttons, etc.) * Form prepare() now calls subform prepare() methods. * Fixed a bug that caused group fields in nested forms to have incorrect HTML "name" attributes. (Reported by Daniel Koch) * Removed dependency on Scalar::Defer due to an incompatibility with Scalar::Defer 0.11 See: http://rt.cpan.org/Ticket/Display.html?id=31039 0.550 (10.16.2007) - John Siracusa * Added id and class attributes to hidden fields generated from non-hidden fields. * Deferred evaluation of parents for grouped items. * Corrected substring-based value coalescing in some date/time fields. (Reported by Tobias Kremer) * Added fix for perl 5.10 (Patch by RJBS) 0.549 (07.21.2007) - John Siracusa * Added Bulgarian localization, translated by Svilen Ivanov. * Added a numeric field class. (Patch by Denis Moskowitz) * Corrected html_field() class HTML attribute value. * Added the set_error() and unset_error() methods. * Corrected error messages for Integer fields. * Connected Form's prepare() method with the correct implementation. * Made DateTime fields more flexible about handling infinity. * Fixed a bug that caused valid HTML attributes to be rejected by form objects. (Reported by Uwe Voelker) * Improved built-in maxlength validation. 0.548 (05.04.2007) - John Siracusa * Added prepare() methods to Field and Form. * Added a was_submitted() method to Form. * Expanded the powers of the field_value() method in the Form class. * Added more flexible syntax for specifying choices in group fields (radio button groups, select boxes, etc.) * Added maxlength limit to TextArea. * Added a disabled() method to the Compound field base class. * Changed the behavior of internal_value() on RadioButtonGroup objects to return the selected value in scalar context, rather than a reference to an array. * Changed the behavior of internal_value() on SelectBox objects to return an array ref in scalar context only when multiple() is true. * Fixed a TextArea bug that prevented errors from showing up in the html() and xhtml() output. (Reported by Drew Taylor) * Silenced an uninitialized value warning in Rose::HTML::Form. (Reported by Peter Karman) 0.547 (02.23.2007) - John Siracusa * Eliminated redundant validation of fields in nested forms. * Made is_empty() smarter about honoring the trim_spaces() setting. * Pop-up menus and other group-type fields now correctly clear errors on reset() and clear(). * Fixed a bug that caused option containers to fail to display hidden fields when a selected option had a false, but defined value. (Reported by Andrei Kozovski) * Fixed a bug that caused a fatal error when requesting a subfield of a compound field from a form that does not contain the parent field. * Fixed a bug that caused input_value() in on/off groups to treat any reference as an array reference. (Reported by Derek Watson) 0.546 (01.15.2007) - John Siracusa * Fixed a bug that prevented params() from correctly cascading to nested forms. * Added a field_value() method to the Compound field class. (Suggested by Guillermo Roditi) * Added a cascade parameter to validate(), which defaults to true. (Suggested by Guillermo Roditi) 0.545 (12.08.2006) - John Siracusa * Added param_exists_for_field() method to Rose::HTML::Form. * Added positive() and negative() methods to integer fields. * Fixed a bug that caused validation to fail for certain compound fields with labels. (Reported by Guillermo Roditi) * Improved error messages for empty, split datetime fields. * Added class mapping for the "int" and "integer" field types. * Corrected the construction of the string overflow error message. * Improved importing of message constants. * Fixed a bug that caused a field in a nested form with the same name as a field in its parent form to become invisible. * Made nested form/field name conflicts fatal. 0.544 (11.29.2006) - John Siracusa * Added a field_value() method to Rose::HTML::Form. (Suggested by Guillermo Roditi) * Added validation and an error message for text field input that exceeds maxlength. (Patch by Cees Hek) * Added the "disabled" boolean attribute to SelectBox and PopUpMenu. (Reported by Andrei Kozovski) 0.543 (11.22.2006) - John Siracusa * Removed a stray reference to Scalar::Defer, which is not a prerequesite. (Reported by Sebastian Riedel) 0.542 (11.07.2006) - John Siracusa * Fixed localization inheritence for checkboxes, options, and other nested, labeled elements. 0.541 (10.20.2006) - John Siracusa * Added German localization, translated by Uwe Voelker. * Added French localization, translated by Jacques Supcik. * Corrected some of the English error messages. 0.54 (10.06.2006) - John Siracusa * Added the has_error() method. * Added special handling to object_from_form() for checkboxes that set boolean columns in Rose::DB::Object-derived objects. * The xhtml_table() method for checkbox and radio button groups now correctly returns XHTML markup. (Reported by Jacques Supcik) * Restored the field_names() method, making it call the newly documented field_monikers() method. (Reported by Andrei Kozovski) * Nesting a field or form within itself now results in a fatal error instead of an infinite loop. * Preliminary localization infrastructure created. (No public APIs are available yet.) 0.53 (06.14.2006) - John Siracusa * Added Script, Link, and Anchor tag classes. * Added missing documentation for xhtml_error(). * Fixed a bug that caused some compound date/time fields to consider empty strings as "non-empty" values. (Reported by Guillermo Roditi) 0.52 (03.08.2006) - John Siracusa * Added a children() method to Rose::HTML::Object and all derived classes to provide uniform access to sub-objects. * Added Rose::HTML::Form::Field::Integer. 0.51 (03.02.2006) - John Siracusa * Added CGI and Apache integration methods to Rose::HTML::Form: params_from_cgi(), params_from_apache(), init_fields_with_cgi(), and init_fields_with_apache(). * Tweaked the copy/reference semantics of the params() method in Rose::HTML::Form. * Made some small fixes and additions to the documentation. 0.50 (02.22.2006) - John Siracusa * Added the ability to nest forms. * Added a more concise syntax for adding fields to forms. * Revised sub-field addressing to accommodate sub-form addressing. * Added choices() aliases for the various divergently-named radio_buttons(), checkboxes(), and options() methods. * Big version number bump to signify substantial progress towards 1.0. 0.34 (01.17.2006) - John Siracusa * Added a size() attribute to the text area field. * Corrected the POD for the start/end date fields. 0.33 (01.13.2006) - John Siracusa * Fixed a bug in input_value() on hidden fields that caused incorrect html() and xhtml() results. (Reported by Sean Davis) * Compound datetime fields now correctly indicate invalid data when partially filled out. (Reported by Sean Davis) 0.32 (12.30.2005) - John Siracusa * Added a rank() attribute to field objects, and a rank_counter() to forms. Fields are ranked in the order that they are added to the form. Subclasses can override compare_fields() to sort based on this rank. 0.31 (12.27.2005) - John Siracusa * Field order can now be customized in Rose::HTML::Form subclasses by overriding the new compare_fields() method or the revised field_names() method. 0.30 (11.08.2005) - John Siracusa * Adjusted tests to pass despite a backward-incompatible change in HTML::Entities as part of the HTML::Parser 3.46 release. * Big version number bump. 0.027 (10.23.2005) - John Siracusa * Fixed a bug that caused the incorrect initialization of compound fields nested 3 or more levels deep. 0.026 (10.22.2005) - John Siracusa * Documented value/label pair argument format for select boxes, pop-up menus, and checkbox and radio button groups. 0.025 (10.21.2005) - John Siracusa * Fixed a bug that caused a fatal error when passing name/value pairs to the options() method of option containers. 0.024 (10.10.2005) - John Siracusa * Fixed POD links and altered POD formatting. * Added support information and links to selected modules. 0.023 (10.09.2005) - John Siracusa * Fixed compound field renaming bug. 0.022 (08.20.2005) - John Siracusa * POD fixes. 0.021 (06.28.2005) - John Siracusa * Added set field. 0.02 (06.27.2005) - John Siracusa * Added support for multi-valued internal values. * Added support for fields with partial values (e.g., a compound time field with just an hour and an AM/PM specifier filled out.) * Shored up support for deeply-nested compound fields. * Added hour, minute, second, start date, end date, and date range fields. 0.0143 (05.02.2005) - John Siracusa * Added scalar context to the input_value() call in init_with_object(), and to the deflate_value() call in output_value(). * Fixed mistakes in TextArea documentation. 0.0142 (04.27.2005) - John Siracusa * Added build_on_init() method to form objects. 0.0141 (04.22.2005) - John Siracusa * Added class="required" to the label tag of required fields. 0.014 (04.22.2005) - John Siracusa * Added functionality to the value_label() method of on/off field groups and restored the original meaning of the label() method for those fields. 0.0132 (04.21.2005) - John Siracusa * Fixed a bug that caused a misleading error message when trying to select multiple items in a pop-up menu. 0.0131 (12.30.2004) - John Siracusa * Added code to tests to drop back to UTC time zone if the local time zone cannot be determined (e.g., on Win32) * Added warnings for ancient versions of DateTime. 0.013 (12.07.2004) - John Siracusa * Fixed some tests that relied on keys()/values() order. 0.012 (11.14.2004) - John Siracusa * Added copyright info. Versions 0.01 and 0.011 removed. 0.011 (11.14.2004) - John Siracusa * Added missing prerequisite (Rose::URI) 0.01 (11.13.2004) - John Siracusa * Initial release. CPAN-Changes-0.500005/corpus/dists/Perl-Critic.parsed000644 000000 000000 00000541567 14472651645 020216 0ustar00000000 000000 { "preamble" => "[1.120_01] Released on 2013-10-29\n\n * DEVELOPER RELEASE *\n\n Added new themes based on CERT guidelines. Thanks Kirk Kimmel.\n\n First release from the new GitHub repository.\n\n[1.120] Released on 2013-10-25\n\n Bug Fixes:\n * Corrected \"Possible precedence issue with control flow operator\" \n warning. This fixes RT #88866\n\n[1.119] Released on 2013-09-25\n\n Bug Fixes:\n * Tests were failing with Config::Tiny 2.17 or later, due to a\n change in the error messages produced by that module. \n This fixes #16 on Github, #88679 & #88889 on RT.\n\n\n Policy Changes:\n * BuiltinFunctions::ProhibitVoidGrep and ::ProhibitVoidMap: grep\n and map called as functions are now allowed in slice operations.\n RT #79289\n Thanks to Wade at Anomaly dot org for the patch.\n * Subroutines::RequireArgUnpacking: Most tests of the size of \@_\n are now allowed. RT #79138\n\n Other Changes:\n * Modernized our usage of Exporter. See RT #75300. \n Thanks to Olivier Mengu\303\251 for the patch.\n\n[1.118] Released on 2012-07-10\n\n Policy Changes:\n * CodeLayout::RequireTidyCode: Revise to work with incompatible\n changes in Perl::Tidy 20120619. RT #77977.\n * TestingAndDebugging::ProhibitNoWarnings: Correct the parse of the\n 'no warnings' statement, so that 'no warnings \"qw\"' is recognized\n as supressing just 'qw' warnings. RT #74647.\n * Miscellanea::RequireRcsKeywords has been moved to the Perl-Critic-More\n distribution, RT #69546\n\n Other Changes:\n * Make all unescaped literal \"{\" characters in regexps into\n character classes. These are deprecated, and became noisy with\n Perl 5.17.0. RT #77510.\n\n[1.117] Released on 2011-12-21\n\n HAPPY HOLIDAYS!\n\n New Policies:\n * Variables::ProhibitAugmentedAssignmentInDeclaration reports\n constructs like 'my \$x += 1'. Contributed by Mike O'Regan\n\n Policy Changes:\n * BuiltinFunctions::ProhibitLvalueSubstr: Add explicit 'use version'.\n RT #68498.\n * CodeLayout::ProhibitHardTabs: Add 'pbp' to the default_themes list.\n RT #71093.\n * ControlStructures::ProhibitMutatingListFunctions now understands that\n tr///r (introduced in 5.13.7) does not change its operand.\n * ControlStructures::ProhibitMutatingListFunctions now understands that\n '//=', '<<=', and '>>=' are assignment operators. RT #70901.\n * ErrorHandling::RequireCheckingReturnValueOfEval now allows things\n like grep { eval \$_ }. RT #69489.\n * Modules::RequireExplicitPackage now has configuraion option\n allow_import_of, to allow the import of specified modules before\n the package statement. RT #72660.\n * RegularExpressions::ProhibitEnumeratedClasses no longer thinks\n that [A-Za-z_] matches \\w. RT #69322.\n * RegularExpressions::ProhibitUnusedCaptures now skips the first\n block of an 'if' or 'elsif' if the regular expression is bound to\n its operand with the '!~' operator. RT #69867.\n * RegularExpressions::ProhibitUnusedCaptures now looks into lists\n and blocks in the replacement portion of the regular expression if\n /e is asserted. RT #72086.\n * RegularExpressions::RequireDotMatchAnything,\n RegularExpressions::RequireExtendedFormatting and\n RegularExpressions::RequireLineBoundaryMatching now honor defaults\n set with 'use re \"/modifiers\"'. RT #72151.\n * Subroutines::ProhibitManyArgs now recognizes '+' as a prototype\n character.\n * Variables::ProhibitPunctuationVars now recognizes bracketed\n variables embedded in interpolated strings (e.g. \"\${\$}\"). For the\n purpose of the 'allow' configuration, these are considered\n equivalent to the unbracketed form. RT #72910.\n Other Changes:\n * Corrected POD in Perl::Critic::PPI::Utils. RT #68898.\n * Perl::Critic::Violation source() method now returns the line\n containing the violation (not the first line) when the statement\n containing the violation spans multiple lines.\n\n[1.116] Released on 2011-05-15\n\n Policy Changes:\n * BuiltInFunctions::ProhibitLvalueSubstr does not report violations\n if the document contains an explicit 'use n.nnn;' where the\n version is before 5.005. RT #59112\n * Documentation::RequirePodSections no longer blows up on code\n having POD but no =head1. This problem was introduced with RT\n #59268. RT #67231\n * RegularExpressions::ProhibitUnusedCapture should more reliably\n find things like s/(a)/\${1}2/. RT #67273.\n * ValuesAndExpressions::ProhibitMagicNumbers and\n Module::RequireVersionVar now treat versions passed as the second\n argument of a 'package' statement the same as versions declared as\n 'our \$VERSION ...'. RT #67159\n * Variables::RequireLexicalLoopIterators does not report violations\n if the document contains an explicit 'use n.nnn;' where the\n version is before 5.004. RT #67760\n\n[1.115] Released on 2011-03-31\n\n Minor bits:\n * Fatal error in RegularExpressions::ProhibitUnusedCapture here\n document check. RT #67116.\n * Internal POD error in Documentation::RequirePodLinksIncludeText. Patch\n by Salvatore Bonaccorso. RT #67012\n\n[1.114] Released on 2011-03-26\n\n Policy Changes:\n * Documentation::RequirePodLinksIncludeText now handles nested POD\n formatting. RT #65569\n * Clarified relation of severity numbers to names in Perl::Critic\n POD. RT #66017\n * Removed caveats from Variables::RequireLocalizedPunctuationVars,\n no longer necessary with PPI 1.208. RT #65514\n * Have InputOutput::RequireBriefOpen attempt to expand scope as\n necessary to deal with the case where the open() and the\n corresponding close() are not in the same scope. RT #64437\n * RegularExpressions::ProhibitUnusedCapture now looks inside\n double-quotish things. RT #38942.\n * RegularExpressions::ProhibitUnusedCapture now takes logical\n alternation into account, so that (e.g.)\n if ( /(a)/ || /(b)/ ) {\n say \$1;\n }\n is not a violation. RT #38942.\n * ValuesAndExpressions::ProhibitCommaSeparatedStatements now\n recognizes 'return { foo => 1, bar => 2 }' as containing a hash\n constructor, not a block. This was fixed by PPI 1.215. RT #61301.\n * ValuesAndExpressions::ProhibitCommaSeparatedStatements now\n recognizes 'bless { foo => 1, bar => 2 }' as containing a hash\n constructor, not a block. This was fixed by PPI 1.215. RT #64132.\n\n[1.113] Released on 2011-02-14\n\n New Policies:\n * InputOutput::RequireEncodingWithUTF8Layer recommends\n ':encoding(utf8)' over ':utf8' in open() and binmode(). It is severity 5\n because of the bad things that can happen if invalid UTF8 gets loose in\n your code.\n * Modules::ProhibitConditionalUseStatements prohibits\n 'use module' inside a conditional, since the statement is executed\n unconditionally at compile time. Thanks to Peter Guzis for submitting\n the policy and tests in RT #59065.\n\n Policy Changes:\n * CodeLayout::RequireConsistentNewlines produces multiple undefined\n value errors when a violation is found. RT #65663\n * ControlStructures::ProhibitMutatingListFunctions allows s///r,\n which was introduced in 5.13.2.\n * ControlStructures::ProhibitPostfixControls now looks for \"when\". It is\n treated in the same way as \"if\".\n * Documentation::RequirePodSections now honors '## no critic'\n annotation anywhere before the '__END__', '__DATA__', or first\n '=head1', whichever comes first. The line number of the offending\n '=head1 NAME' was added to the violation description. RT #59268.\n * RegularExpressions::ProhibitUnusedCapture now takes account of the\n use of \$- and \$+ (and their English equivalents under 'use\n English') provided the subscripts are literal integers.\n * RegularExpressions::ProhibitUnusedCapture now takes account of the\n use of capture variables in the replacement portion of\n s/.../.../e.\n * Subroutines::ProhibitUnusedPrivateSubroutines now looks inside\n regular expressions.\n * ValuesAndExpressions::ProhibitMagicNumbers now supports Const::Fast.\n * ValuesAndExpressions::ProhibitMagicNumbers now has a\n constant_creator_subroutines parameter to allow the user to\n configure the names of subroutines that create constants. RT #62562.\n * ValuesAndExpressions::ProhibitMismatchedOperators didn't handle file\n test operators properly. Patch by H.Merijn Brand. RT #58751\n * Variables::ProhibitUnusedVariables now looks inside regular\n expressions.\n * ValuesAndExpressions::RequireInterpolationOfMetachars now detects\n and complains about \"\\b\" and \"\\l\" as documented in perlop, and\n \"\\1\" through \"\\7\", which are not documented there, but were found\n in toke.c.\n\n New Developer Features:\n * uses_module(), namespaces(), and subdocuments_for_namespace() methods on\n Perl::Critic::Document.\n * Perl::Critic::Document->new() now accepts a -filename-override argument\n for setting the filename when the source code comes from something\n other than an actual file.\n\n Other Changes:\n * Test::Perl::Critic::Policy no longer exports by default.\n * Build phase now requires Test::Deep.\n * Added example using Try::Tiny to documentation of\n ErrorHandling::RequireCheckingReturnValueOfEval. Suggested by Andy\n Lester on the developers mailing list.\n * In order to get more consistent behavior across all installations of\n Perl::Critic, IPC::Open2 (which actually is part of core), PPIx::Regexp,\n Perl::Tidy, Pod::Spell, and Text::ParseWords are no longer optional\n prerequisites.\n * Now depends upon PPIx::Utilities v1.1.0.\n\n Bug Fixes:\n * Build.PL/Makefile.PL didn't specify a minimum version of version.pm, but\n TestingAndDebugging::RequireUseStrict did. RT #58952\n * Perl::Critic::Annotation needs to look inside the __END__ statement to\n find the true end of the document, otherwise POD policies may give false\n positives. RT #59176\n * BuiltinFunctions::ProhibitStringyEval no longer dies on eval\n \"#...\". RT #60179\n * RegularExpressions::ProhibitUnusedCapture now takes account of the\n %LAST_PAREN_MATCH as well as %+ if English has been loaded. RT #60002\n * Subroutines::ProhibitManyArgs now interprets prototype groups (e.g.\n \\[\$\@%]) as representing a single argument.\n * Require Exporter version 5.63 (versus version 0) to get sane handling of\n export tags. RT# 61071\n * Prevent Subroutines::ProhibitUnusedPrivateSubroutines from failing\n on &_subroutine(). RT #61311\n * Subroutines::ProhibitAmpersandSigils now allows references of the\n form \\( &sub1, &sub2 ). RT #49609\n\n[1.112_002] Released on 2011-02-09\n[1.112_001] Released on 2010-12-14\n\n Changes summarized into 1.113 above. For exact details, see Changes on\n BackPAN.\n\n[1.111] Released on 2010-12-14\n\n Bug Fixes:\n * TestingAndDebugging::ProhibitNoStrict and ProhibitNoWarnings no longer\n rely on the behavior of all() when the list is empty due to change in\n List::MoreUtils 0.28. RT #63816\n\n[1.110_001] Released on 2010-11-30\n\n Changes summarized into 1.113 above. For exact details, see Changes on\n BackPAN. (Yes, all of this stuff was not in 1.111.)\n\n[1.109] Released on 2010-08-29\n\n Bug Fixes:\n * ValuesAndExpressions::RequireInterpolationOfMetachars fix due to changes\n in Email::Address 1.890. Note that this may find problems in code that\n it didn't before, e.g. q<'\@foo'>.\n\n[1.108] Released on 2010-06-22\n\n This is the \"Give Shawn Moore what we promised him a year ago and hurry up\n and get this out before Brad Oaks gives his YAPC::NA talk\" release.\n\n New Policies:\n * Documentation::RequirePodLinksIncludeText\n * Subroutines::ProhibitUnusedPrivateSubroutines\n\n New Features:\n * There is a new global configuration item, 'program-extensions', which\n configures Perl::Critic's idea of which file name extensions represent\n programs. The desired extensions are specified as a space-separated list,\n with leading '.' on each if that is desired. Files whose names end in\n '.PL' will always be considered programs. This can be overridden by\n command option --programs-extensions, which can be specified multiple\n times.\n * There is now a perlcritic --allow-unsafe switch. Without this switch,\n Perl::Critic will silently refuse to load any Policy that is marked\n unsafe. Unsafe Policies are usually ones that may compile or execute\n untrusted code (see Perl::Critic::DynamicPolicy for an example); Policy\n authors can mark their policies as unsafe by overriding the is_safe()\n method.\n * The framework that we use to test Perl::Critic Policies has been\n packaged into a convenient module that you can use to test your own\n Policies. See Test::Perl::Critic::Policy and Perl::Critic::TestUtils\n for details.\n\n Policy Changes\n * BuiltInFunctions::ProhibitLvalueSubstr no longer complains when there\n is a low-precedence operator between the substr() and the assignment\n operator.\n * CodeLayout::ProhibitParensWithBuiltins now allows 'state (\$foo)'. RT\n #52029\n * ErrorHandling::RequireCarping now has an\n allow_in_main_if_not_in_subroutine option to allow \"die\" directly in\n the default namespace.\n * InputOutput::RequireBriefOpen now recognizes CORE::open(),\n CORE::close(), CORE::GLOBAL::open(), and CORE::GLOBAL::close(). RT\n #52391\n * Modules::ProhibitEvilModules now complains by default about the modules\n deprecated by the Perl 5 Porters in 5.12.\n * Modules::RequireVersionVar documentation updated to make clear that \"my\n \$VERSION\" does not work as a module version declaration. RT #56667\n * The RegularExpressions::* policies have been converted from using\n Regexp::Parser to using PPIx::Regexp for their heavy lifting.\n * RegularExpressions::ProhibitCaptureWithoutTest now allows capture\n variables inside when() {}. RT #36081.\n * RegularExpressions::ProhibitUnusedCapture now checks for unused named\n captures.\n * Subroutines::ProhibitManyArgs revised to count only characters in the\n prototype that represent arguments. RT #56627\n * Subroutines::ProhibitNestedSubs no longer complains about scheduled\n blocks (BEGIN, etc.) inside subroutines and vice versa.\n * Subroutines::RequireFinalReturn should now understand a final given/when\n statement, and declare an error if there is no 'default' block or if any\n branch does not return.\n * TestingAndDebugging::RequireUseStrict now accepts 'use 5.011' or greater\n as equivalent to 'use strict'.\n * ValuesAndExpressions::ProhibitMismatchedOperators false positive with\n \"'foo' x 15 . 'bar'\". RT #54524\n * Variables::ProhibitPunctuationVars gave false positives on qr// regexp's\n ending in '\$'. RT #55604\n\n Bug Fixes:\n * The \"## no critic\" annotations now respect #line directives.\n * Annotations on statements spanning more than one line (e.g.\n my \$foo =\n '\$bar'; ## no critic (RequireInterpolationOfMetachars)\n ) are now handled as single-line annotations, not block annotations.\n * All instances of L in the POD have been changed to L.\n L and L were allowed to stand. RT #37485\n * Spaces are now allowed immediately inside the enclosing parentheses in\n \"## no critic ( Foo )\". RT #52038\n * With the introduction of PPIx::Regexp, Perl::Critic no longer dies\n when it encounters a Perl 5.010 regexp. RT #49442.\n * DEVELOPER.pod typo in link to\n ValuesAndExpressions::ProhibitConstantPragma policy. RT #57818\n * Spelling errors in documentation. RT #57375\n * \"die\" used instead of \"croak\". RT #56619\n * Fixed regex test that caused test failures on every Perl 5.11\n (credit Tom Wyant).\n * t/20_policy_pod_spelling.t now works (or at least no longer fails)\n in non-English locales (again). RT #43291 and RT #48986.\n * Perldoc hae broken link for McCabe score definition. RT #53219\n * RT #33935 and #49679 were fixed by upgrading to PPI 1.208\n\n Other Changes:\n * Perl::Critic::Utils::is_unchecked_call() updated to include chmod in the\n set of things covered by autodie (this happened in autodie v2.08). The\n primary effect of this is on InputOutput::RequireCheckedSyscalls.\n * Now depends upon Task::Weaken to ensure that we only install with perls\n where Scalar::Util::weaken() works.\n * Email::Address was optional, but is now required. So everyone\n gets the optimal behavior from RequireInterpolationOfMetachars.\n * Some infrastructure has been extracted to the new PPIx-Utilities\n distro. It is also a required dependency here. Over time a good\n portion of Perl::Critic::Utils* will be migrated to this distribution.\n * Perl::Critic::Utils::PPI::get_constant_name_element_from_declaring_statement()\n is deprecated because it doesn't handle multiple constants being\n declared within a single \"use constant\" statement. Use\n PPIx::Utilities::Statement::get_constant_name_elements_from_declaring_statement()\n instead.\n * Removed all uses of Perl::Critic::Utils::PPIRegep. Since the\n PPIx::Regexp update, Perl::Critic only used get_match_string() and\n friends, which were superseded by the corresponding PPI methods.\n Perl::Critic now depends on PPI-1.208 or newer.\n * Moved Perl::Critic::Utils::PPIRegexp to the Perl-Critic-Deprecated.\n * The PolicySummary.pod file is now generated when the distribution\n is created, rather than when you install it. This ensures the file\n will be available on http://search.cpan.org. Thanks to Bear Longyear\n for bringing this to our attention.\n\n[1.107_001] Released on 2010-06-20\n\n Changes summarized into 1.108 above. For exact details, see Changes on\n BackPAN.\n\n[1.106] Released on 2010-05-10\n\n Bug Fixes:\n * NamingConventions::Capitalization fix for PPI 1.212. RT #57348\n\n[1.105_03] Released on 2010-03-21\n[1.105_02] Released on 2010-01-23\n[1.105_01] Released on 2010-01-16\n\n Changes summarized into 1.108 above. For exact details, see Changes on\n BackPAN.\n\n[1.105] Released on 2009-09-07\n\n Bug Fixes:\n * Variables::ProhibitPunctuationVars would complain about \"%-\" appearing\n anywhere in a string. RT #49016\n\n Policy Changes:\n * InputOutput::RequireCheckedSyscalls now complains about unchecked \"say\"\n by default. RT #37487\n\n[1.104] Released on 2009-08-23\n\n This release is dedicated to Tom Wyant in appreciation of the amount of\n effort he put into the enhancements and bug fixes in this release, for\n having the patience to wait for the amount of time that it took to get\n them out, and for overall awesomeness. Thank you, Tom.\n\n New Policies:\n Objects::ProhibitIndirectSyntax\n ValuesAndExpressions::ProhibitComplexVersion\n ValuesAndExpressions::RequireConstantVersion\n\n New Optional Requirement:\n * Email::Address, if you want\n ValuesAndExpressions::ProhibitInterpolationOfLiterals to properly ignore\n email addresses.\n\n New Features:\n * Perlcritic will list the names of files with violations if given the\n --files-with-violations option, or the names of files without\n violations if given the --files-without-violations options. These\n have synonyms -l and -L respectively.\n * Perlcritic has a new --list-enabled option, which lists the Policies\n that will be enforced, given the current configuration. This is\n useful if you've written a complex command-line or modified your\n .perlcriticrc file and you want to see which Policies *would*\n be used with the current configuration, if you were actually going\n to critque a file with it.\n * Perl::Critic::Violation now takes #line directives into account in the\n %F, %f, and %l formats. You can get the old values via the new %G, %g,\n and %L formats.\n\n Policy Changes:\n * CodeLayout::ProhibitParensWithBuiltins was complaining in certain cases\n where parentheses are required due to operator precedence. RT #46862.\n * ControlStructures::ProhibitMutatingListFunctions no longer complains\n about uses of tr/// that don't modify the operand. Reported by EDAVIS,\n RT #44515.\n * Miscellanea::RequireRcsKeywords now accepts \"qw\$Keyword: ...\$\". RT\n #45196.\n * Modules::RequireFilenameMatchesPackage now respects logical filenames\n defined by the \"#line\" directives. This allows the Policy to work\n properly with IDEs and code generators.\n * NamingConventions::Capitalization now allows fully qualified subroutine\n declarations ( e.g. \"sub Foo::Bar::baz {...}\" ). However, the\n non-package part of the subroutine name must still conform to whatever\n capitalization rule you have chosen.\n * RegularExpressions::ProhibitCaptureWithoutTest no longer complains if\n the regex is followed by an \"or die\" or similar. Reported by EDAVIS,\n RT #36081.\n * RegularExpressions::ProhibitComplexRegexes no longer counts variable\n substitutions in the length. Reported by EDAVIS, RT #36098.\n * RegularExpressions::ProhibitUnusedCapture now considers the body of\n while loops and not just their condition. Reported by EDAVIS, RT\n #38942.\n * ValuesAndExpressions::ProhibitVersionStrings was getting confused by\n comments. Reported by Kevin Ryde, RT #44986.\n * ValuesAndExpressions::RequireInterpolationOfMetachars now allows sigils\n in the arguments to \"use vars\". Contributed by Kevin Ryde, RT #47318.\n * ValuesAndExpressions::RequireInterpolationOfMetachars now properly\n ignores email addesses, if you have Email::Address installed. Inspired\n by the Kevin Ryde contribution in RT #47318.\n * Variables::ProhibitPunctuationVars gained the ability to look inside\n interpolated strings. Doing this correctly is challenging and things\n may not work out right; how the policy does this can be controlled via\n the new \"string_mode\" option. Contributed by Edgar Whipple\n .\n * Variables::ProhibitPunctuationVars now ignores \$] by default since there\n is no English.pm equivalent.\n\n Other Bug Fixes:\n * Perl::Critic::Utils::parse_arg_list() was slurping up the \"or die ...\"\n portion of \"open my \$foo, 'somefile' or die ...\", causing\n InputOutput::ProhibitTwoArgOpen to not complain about this example.\n Reported by Alexandr Ciornii, RT #44554.\n\n Minor Changes\n * The line count emitted by the --statistics option is further broken down\n by line content.\n\n Minor Documentation Fixes:\n * ValuesAndExpressions::ProhibitInterpolationOfLiterals. Reported by\n Debian in http://bugs.debian.org/542814, RT #48936\n\n Build Fixes:\n * There wasn't a specific version given for the List::MoreUtils dependency\n and we're using features that weren't avialable until 0.19. So, we now\n require version 0.19. Noticed by John J. Trammell, RT #48917.\n * Some tests were tied to the specific \"true\" and \"false\" values that some\n functions were returning. Reported by Michael Schwern, RT #43910.\n\n Other News:\n * Komodo version 5.1.1 now has built-in support for Perl-Critic,\n if you have the Perl::Critic and criticism modules installed.\n Both should be available through the ActiveState Perl Package\n Manager ppm(1).\n\n[1.103] Released on 2009-08-03\n\n Fix configure_requires prerequisite on Module::Build 0.34_02.\n\n[1.102] Released on 2009-08-03\n\n Bug fixes:\n * Works with PPI 1.205. Yay for 5.10 support!\n * Variables::RequireLexicalLoopIterators didn't work correctly on foreach\n loops with labels.\n\n[1.101_003] Released on 2009-07-22\n[1.101_002] Released on 2009-07-21\n[1.101_001] Released on 2009-07-21\n\n Changes summarized into 1.102 above. For exact details, see Changes on\n BackPAN.\n\n[1.100] Released on 2009-07-17\n\n This is a POD fix release to deal with issues identified by Test::POD\n 1.40. There is no functional difference between this release and 1.098.\n This is the last release of Perl::Critic that will be compatible with PPI\n 1.203. PPI's parsing of for(each)? loops is changing in its next release\n in an incompatible manner and there will be a release in the near future\n to make Perl::Critic compatible with that change.\n\n[1.099_002] Released on 2009-06-27\n[1.099_001] Released on 2009-06-25\n\n Experimental releases. For exact details, see Changes on BackPAN.\n\n[1.098] Released on 2009-03-07\n\n Some Exciting News:\n The Perl Development Kit (PDK 8.0) from ActiveState now includes a\n very slick graphical interface to Perl-Critic. I highly recommend\n that you check it out. Here's a link to screenshots and docs:\n\n http://docs.activestate.com/pdk/8.0/PerlCritic_gui.html\n\n New Features:\n * Violation coloring is now configurable via command line or profile. The\n profile entries are color-severity-highest, -high, -medium, -low, or\n -lowest. Numbers are accepted in lieu of named severities (e.g.\n 'color-severity-5' for 'color-severity-highest'), and 'colour' is\n accepted in lieu of 'color'.\n * Handling of unrecognized policy configuration items is now controlled by\n the profile_strictness. The default is to warn about them. The previous\n default was that they were fatal.\n * -p is now a synonym for --profile.\n * The --verbose option for perlcritic now supports a %C format that will\n displays the class of PPI::Element that caused the violation.\n\n Policy Changes:\n * ControlStructures::ProhibitNegativeExpressionsInUnlessAndUntilConditions\n didn't include \"pbp\" in its default themes even though it is derived\n from the book. Now it does. :]\n * ErrorHandling::RequireCarping now allows a here document as the last\n element if the \"allow_messages_ending_with_newlines\" option is true.\n * Fix Subroutines::ProhibitAmpersandSigils so it allows \"defined(&x)\" as\n well as \"defined &x\". Patch from Kevin Ryde, RT #38855.\n * Subroutines::ProtectPrivateSubs now has an \"allow\" option to specify\n subroutines which are exempt from this policy. RT #38678.\n Additionally, a \"private_name_regex\" option has been added that allows\n you to specify what a private subrouting name looks like.\n * Subroutines::RequireArgUnpacking now has an \"allow_subscripts\" option\n to allow array slices and elements. RT #34009.\n * Subroutines::RequireArgUnpacking now has an \"allow_delegation_to\" option\n to allow the usual delegation idiom. Delegation to 'SUPER::' and\n 'NEXT::' are allowed by default. RT #33839.\n * Subroutines::RequireArgUnpacking no longer generates a false positive\n for '\$\$_[]', which is an obfuscated way of saying '\$_->[]'. RT #37713.\n * ValuesAndExpressions::ProhibitMagicNumbers now has an\n allow_to_the_right_of_a_fat_comma option, which defaults to true. Note\n that it currently only works /directly/ to the right of a fat comma.\n * Variables::ProhibitMatchVars had its default themes changed to \"core\n performance pbp\", instead of \"core bugs pbp\" because, while the match\n variables make regular expressions slow, it doesn't cause them to not\n work correctly.\n * Variables::ProhibitPackageVars has had FindBin and Log::Log4perl added\n to the default exemptions.\n * Variables::ProhibitReusedNames now has an \"allow\" option to specify\n names that can be reused. It defaults to enabling \$self and \$class. RT\n #42767.\n * Variables::RequireLocalizedPunctuationVars has a customizable set of\n exemptions via the \"allow\" option.\n\n New Developer Features:\n * The guts of perlcritic have been moved to Perl::Critic::Command. You\n can invoke Perl::Critic::Command::run() to get the equivalent of running\n the command. (Note, however, this interface WILL change, so don't count\n on the current one.)\n * Modules have had a \"INTERFACE SUPPORT\" section added which states\n whether the Perl::Critic developers consider the particular module is\n public or not. Any removal of functionality from a public module will\n go through a deprecation cycle. Non-public modules may have their\n interfaces changed without notice.\n * P::C::Policy now has an is_enabled() method.\n * P::C::Violation now has an element_class() method.\n\n Bug Fixes:\n * CodeLayout::ProhibitTrailingWhitespace didn't notice cases where PPI\n would produce instances of PPI::Token::Whitespace that contained\n multiple lines.\n * Subroutines::ProtectPrivateSubs no longer regards the exportable POSIX\n subroutines whose names begin with underscore as private. RT #38678.\n * Subroutines::RequireArgUnpacking mishandled a complicated sitation with\n \$_ being an array reference. RT #39601.\n * Variables::RequireLocalizedPunctuationVars now applies to subscripted\n names. RT #29384.\n\n Internals:\n * The guts of Build.PL and Makefile.PL have been rearranged.\n\n[1.097_002] Released on 2009-03-01\n[1.097_001] Released on 2009-03-01\n\n Changes summarized into 1.098 above. For exact details, see Changes on\n BackPAN.\n\n[1.096] Released on 2009-02-01\n\n New Policies:\n * ValuesAndExpressions::ProhibitSpecialLiteralHeredocTerminator\n\n Policy Changes:\n * Documentation::PodSpelling now has a stop_words_file option.\n * Modules::ProhibitEvilModules now has a modules_file option.\n\n Bug Fixes:\n * ErrorHandling::RequireCarping will now allow a literal newline\n as well as \"\\n\". Fixed by Kyle Hasselbacher, RT #25046\n * Fix InputOutput::ProhibitTwoArgOpen so it allows '-|' or '|-' as the\n second of two arguments. Patches from Kyle Hasselbacher and Leland\n Johnson, RT #42384.\n * InputOutput::RequireBracedFileHandleWithPrint applies to printf as well\n as print. Fixed by Kyle Hasselbacher, RT #42537.\n * TestingAndDebugging::RequireUseStrict and\n TestingAndDebugging::RequireUseWarnings are no longer fooled by a\n block-scoped pragma. RT #42310.\n * ValuesAndExpressions::RequireInterpolationOfMetachars allows for escaped\n backslashes. Fixed by Tom Wyant, RT #38530.\n * Fix for problem in P::C::Document in dealing with underscores in\n expressions like \"use 5.009_001\". Patch by Kevin Ryde, RT #36570 and\n #42089.\n * Fix in extras/perlcritic.el for a radio button. Patch by Kevin Ryde, RT\n #42190.\n * Fix distclean target in Makefile.PL. Patch by Richard Soderberg,\n RT #42088.\n * Fix temporary files not being cleaned up after tests. Patch by Kyle\n Hasselbacher, RT #41443.\n * Deal with changes in Pod::Parser v1.36 in test in t/05_utils_pod.t.\n\n Documentation improvements contributed by Mark Grimes in response to RT\n #41942.\n\n[1.095_001] Released on 2009-01-18\n\n Changes summarized into 1.096 above. For exact details, see Changes on\n BackPAN.\n\n[1.094001] Released on 2009-01-01\n\n Bug Fixes:\n * Tests would fail on systems without Regexp::Parser installed.\n\n[1.094] Released on 2009-01-01\n\n Incompatible Changes:\n * The way that \"## no critic\" markers was refactored. As\n a result, we discovered that the syntax for the markers was pretty\n vague. If you didn't do it just right, it would disable all policies,\n and not just the specific ones that you wanted. So we've tightened this\n up a bit. If you followed the examples that have been in the docs for\n the last couple years, then you should be fine. But if you've been\n using certain other variations in your \"## no critic\" markers, then you\n might suddenly find yourself violating the new\n ProhibtUnrestrictedNoCritic policy. To fix this, just make sure your\n Policy names appear in parentheses:\n\n ## no critic Foo, Bar, Baz # wrong!\n ## no critic Foo Bar Baz # wrong!\n\n\n ## no critic (Foo, Bar, Baz) # ok!\n ## no critic qw(Foo Bar Baz) # also ok!\n\n * The deprecated \$FORMAT variables for Perl::Critic::Policy and\n Perl::Critic::Violation no longer exist. Use the corresponding\n get_format() and set_format() functions instead.\n\n New Policies:\n * Miscellanea::ProhibitUnrestrictedNoCritic\n * Miscellanea::ProhibitUselessNoCritic\n * NamingConventions::Capitalization\n * Subroutines::ProhibitReturnSort\n * Variables::ProhibitReusedNames\n\n Removed Policies:\n * NamingConventions::ProhibitMixedCaseSubs and\n NamingConventions::ProhibitMixedCaseVars have been moved to a separate\n Perl-Critic-Deprecated distribution. The\n NamingConventions::Capitalization policy does everything they do, plus\n more.\n\n Policy Changes:\n * BuiltinFunctions::ProhibitStringyEval now has an allow_includes option\n that makes it behave (mostly) like Ricardo SIGNES'\n Perl::Critic::Policy::Lax::ProhibitStringyEval::ExceptForRequire.\n * InputOutput::RequireCheckedClose, InputOutput::RequireCheckedOpen, and\n InputOutput::RequireCheckedSyscalls now all support autodie.\n Unfortunately, autodie is currently treated like a module and not a\n pragma, which means that the lexical scoping is not taken into account.\n * InputOutput::RequireCheckedSyscalls now has an exclude_functions\n parameter.\n * Modules::ProhibitEvilModules now allows you to specify what the\n description of a use of a bad module should be, to, say, suggest that\n people use autodie instead of Fatal.\n * Subroutine::ProhibitExcessComplexity violation descriptions now include\n the name of the subroutine, thanks to Andreas Koenig, RT #40070.\n * TestingAndDebugging::RequireUseStrict and\n TestingAndDebugging::RequireUseWarnings now have equivalent_modules\n parameters that allow you to designate other modules as being equivalent\n to the strict and warnings pragmata. This one is for all you Moose fans\n out there. :]\n\n Bug Fixes:\n * ControlStructures::ProhibitUnreachableCode would treat package\n statements as unreachable. Fixed by Kevin Ryde. RT #41734\n * Fix warning from InputOutput::ProhibitOneArgSelect when select was\n called with no arguments. RT #41926\n * Miscellanea::RequireRcsKeywords couldn't find keywords after __END__\n that didn't look like part of POD.\n * Modules::RequireFilenameMatchesPackage would incorrectly complain about\n programs. Yet more greatness contributed by Schwern. RT #39024.\n * If a perlcriticrc file referred to a policy that wasn't installed and\n the profile-strictness option was set to \"fatal\",\n Perl::Critic::PolicyFactory fell over instead of reporting the\n problematic policy name.\n\n Miscellanea:\n * Perl::Critic::Violation will automatically strip trailing periods\n from your Policy description and explanation strings. This ensures that\n the punctuation is consistent with the format specified by the user via\n the -verbose formatting options.\n\n New Developer Features:\n * Perl::Critic::Policy::prepare_to_scan_document() is now checked and a\n Policy can disable itself for just a single document, which can speed\n things up.\n\n[1.093_03] Released on 2008-12-11\n[1.093_02] Released on 2008-10-30\n[1.093_01] Released on 2008-09-07\n\n Changes summarized into 1.094 above. For exact details, see Changes in\n 1.093_003 on BackPAN.\n\n[1.092] Released on 2008-09-02\n\n Bug Fixes:\n * Fixed POD errors that were causing build failures. Sorry\n about that.\n\n[1.091] Released on 2008-09-01\n\n New Policies:\n * RegularExpressions::RequireDotMatchAnything\n\n New Features:\n * perlcritic now supports a -pager option, so you can more easily\n send the output to your favorite pager. You can set this option\n on the command-line or in your .perlcriticrc file. See the\n perlcritic perldoc for more details. Credit to Michael Schwern.\n * The output from \"perlcritic -doc PATTERN\" will be automatically\n sent to your pager if you have set the -pager option.\n\n Policy Changes:\n * CodeLayout::ProhibitQuotedWordLists no longer applies if the list\n contains any non-words, by default. A non-word is anything that does\n not match /[\\w-]+/. You can restore the former behavior by setting the\n \"strict\" option. RT #37886.\n * CodeLayout::ProhibitQuotedWordLists also now applies to the import\n arguments of a C statement. RT #24467.\n * ErrorHandling::RequireCheckingReturnValueOfEval now recognizes ternary\n left-sides as valid checks.\n * RegularExpressions::RequireExtendedFormatting gains a\n minimum_regex_length_to_complain_about option. Also, regexes that\n contain only word and whitespace characters are now exempt from this\n policy, by default; you can make it complain about them by turning on\n the new strict option. Contributed by Michael Schwern. RT #38531.\n * TestingAndDebugging::ProhibitNoWarnings now supports a\n allow_with_category_restriction option, thanks to Michael Schwern.\n RT #38514.\n * CodeLayout::ProhibitHardTabs now allows leading tabs in qw() word lists\n and regexes with the /x modifier. You can still configure this\n policy to forbid all hard tabs, if you like. RT #32440\n\n Bug Fixes:\n * perlcritic should now work under PAR. RT #38380.\n * URL for our repository in META.yml now works for anonymous\n checkout. The password is \"\" (empty). RT #38628.\n * color for high-severity violations is now magenta because\n it is more redable than yellow on white backgrounds. RT #38511.\n\n[1.090] Released on 2008-07-22\n\n Bug Fixes:\n * Test was incorrectly failing when Regexp::Parser wasn't installed.\n\n[1.089] Released on 2008-07-21\n\n Minor Enhancements:\n * -s is now a synonym for --single-policy.\n\n Policy Changes:\n * Subroutines::ProhibitBuiltinHomonyms now also prohibits subroutines\n with the same name as a Perl keyword (e.g. if, foreach, while).\n Inspired by RT #37632.\n * Subroutines::ProtectPrivateSubs now allows expressions like\n \"shift->_some_private_method();\". Note that this *only* applies\n to the \"shift\" function -- a private method call on the right of any\n other bareword still causes a violation. RT #34713.\n * Subroutines::RequireFinalReturn now includes exec in the set of things\n that mark a successful return. RT #37672\n * ValuesAndExpressions::ProhibitInterpolationOfLiterals now takes a\n allow_if_string_contains_single_quote option. Contributed by Ed\n Avis . RT #36125.\n * ValuesAndExpressions::RequireInterpolationOfMetachars now supports a\n rcs_keywords option to allow for the common case where those require\n dollar signs.\n\n Bug Fixes:\n * BuiltinFunctions::ProhibitSleepViaSelect would complain if there were\n three undefs as arguments to select(), but one of them was the timeout.\n RT #37416.\n * Reduced false positives in\n RegularExpressions::ProhibitSingleCharAlternation. Thanks to\n Andy Lester and Elliot Shank test cases.\n * RegularExpressions::ProhibitUnusedCapture would complain if there were\n multiple captures used in a substitution, e.g. s/(.)(.)/\$2\$1/.\n * Subroutines::ProhibitAmpersandSigils no longer complains about\n \"sort &foo(...)\".\n * Makefile.PL, Build.PL and other \".PL\" scripts which typically do not\n have a shebang are no longer mistaken as modules. This prevents\n spurious warnings from Modules::RequireEndWithOne. RT #20481.\n\n Internals:\n * Tests are now self compliant.\n\n[1.088] Released on 2008-07-04\n\n New Policies\n * ErrorHandling::RequireCheckingReturnValueOfEval\n\n Policy Changes:\n * ValuesAndExpressions::ProhibitLeadingZeros now accepts octal numbers\n for the Unix permissions argument to chmod, dbmopen, mkdir, sysopen, or\n umask, by default. Use the \"strict\" option to get the old behavior.\n RT #31977.\n * Due to the consensus at YAPC::NA 2008,\n Variables::ProhibitUnusedVariables default severity has been raised to\n medium/3.\n\n Minor Changes:\n * The perlcritic \"--Version\" option is now \"--version\" in order to act\n like the rest of the world.\n\n[1.087] Released on 2008-06-21\n\n Policy Changes:\n * CodeLayout::ProhibitParensWithBuiltins no longer complains about\n sort(foo(\@x)).\n * TestingAndDebugging::RequireUseWarnings will not complain about files\n that contain a \"use 5.005\" statement or similar for perls prior to 5.6.\n Lesson of the day: computer conferences where you can meet in the real\n world can clarify conversations greatly. Good to finally meet you Adam.\n * InputOutput::ProhibitTwoArgOpen similarly will not complain if there's\n a \"use/require 5.005\" statement in the file. RT #34385.\n\n Bug fixes:\n * Perl::Critic can now critique a file named \"0\". However, PPI will give\n a parse error until the next version comes out. Fixes RT #36127.\n * Moved detection of the lack of any enabled Policies from P::C::Config\n to Perl::Critic. This was causing the perlcritic.t in Parrot to fail.\n Note, however, there are plans afoot to change how Perl::Critic is\n configured and things that depend upon that may break. Please contact\n users\@perlcritic.tigris.org and tell us how you're using P::C::Config\n directly so that we can take your needs into account.\n\n[1.086] Released on 2008-06-12\n\n Policy Changes:\n * NamingConventions::ProhibitAmbiguousNames now specifies the name that\n it had problems with in its violation descriptions.\n\n Bug fixes:\n * The color option wasn't being correctly set from a .perlcriticrc.\n RT #36569.\n\n Minor changes:\n * --colour is now a synonym for --color.\n\n[1.085] Released on 2008-06-07\n\n New Policies:\n * Documentation::RequirePackageMatchesPodName\n\n Policy Changes:\n * Variables::ProhibitUnusedVariables detects a few more cases. It's\n still very limited, though.\n\n Bug fixes:\n * ControlStructures::ProhibitUnreachableCode didn't notice \"until\" was an\n conditional expression.\n\n Minor documentation updates.\n\n[1.084] Released on 2008-05-24\n\n New Features:\n * perlcritic now supports a --list-themes option.\n * You can specify the maximum number of violations you want per Policy\n per document. Developers can give a default value for this for a\n Policy by overriding default_maximum_violations_per_document().\n See RequireUseStrict and ProhibitMagicNumbers for examples.\n\n Policy Moved:\n * The ValuesAndExpressions::ProhibitMagicNumbers policy has been moved\n from Perl::Critic::More into the primary Perl::Critic distribution.\n\n New Policies:\n * Variables::ProhibitUnusedVariables (very dumb, limited initial\n implementation.)\n * ControlStructures::ProhibitLabelsWithSpecialBlockNames\n Contributed by Mike O'Regan. Kickin' ass, Mike.\n\n Policy Changes:\n * ControlStructures::ProhibitUnreachableCode now handles the perl 5.10\n \"//\" and \"err\" operators. RT #36080\n * InputOutput::RequireBriefOpen now ignores opens of STDIN, STDOUT,\n and STDERR. You're generally trying to make long-lasting global\n effects when manipulating these. (RT #35774)\n * RegularExpressions::ProhibitUnusualDelimiters now supports an\n \"allow_all_brackets\" option.\n * RegularExpressions::RequireBracesForMultiline now supports an\n \"allow_all_brackets\" option.\n * TestingAndDebugging::RequireUseStrict now accepts \"use Moose::Role\"\n as equivalent to \"use strict\". (RT #34838)\n * TestingAndDebugging::RequireUseWarnings now accepts \"use Moose::Role\"\n as equivalent to \"use warnings\". (RT #34838)\n * ValuesAndExpressions::ProhibitMagicNumbers now accepts constant\n subroutines.\n * Variables::ProhibitMatchVars no longer detects \"use English;\".\n This problem is detected in a more clear way by\n Modules::RequireNoMatchVarsWithUseEnglish.\n * Variables::ProhibitPerl4PackageNames no longer complains about\n \$'/\$POSTMATCH. RT #36059\n * Variables::RequireLocalizedPunctuationVars now allows the use of \"my\".\n RT #33937\n\n Bug Fixes:\n * No longer falls over if a single file has a parse error.\n\n New Developer Features:\n * If a document specifies a minimum perl version, e.g. \"use 5.008003\",\n P::C::Document::highest_explicit_perl_version() will tell you what it\n is.\n * The parameter to P::C::Policy::initialize_if_enabled is now a\n P::C::PolicyConfig object instead of a hash reference.\n\n Minor Changes:\n * LOTS of documentation updates.\n * A few more statistics are emitted by perlcritic with the --statistics\n option.\n * perlcritic --profile-proto now includes policy abstracts in its\n output.\n\n Prerequisites:\n * Now depends upon PPI 1.203.\n * New dependency upon version.\n\n[1.083_006] Released on 2008-05-20\n[1.083_005] Released on 2008-05-19\n[1.083_004] Released on 2008-05-18\n[1.083_003] Released on 2008-05-17\n[1.083_002] Released on 2008-05-17\n[1.083_001] Released on 2008-04-13\n\n Changes summarized into 1.084 above. For exact details, see Changes in\n 1.083_006 on BackPAN.\n\n[1.082] Released on 2008-03-08\n\n New Features:\n * A new metadata system for defining policy parameters/options has been\n added. This makes the life of policy authors easier because\n configuration validation and parsing can be taken care of\n automatically, in most cases. This allows greater integration with\n IDEs and allows the perlcritic \"--profile-proto\" option to produce\n better output.\n\n Note: This change does NOT REQUIRE ANY CHANGES to policies outside of\n this distribution; they should continue to work as is. However, use\n of this facility can reduce the size of your code and provide the\n means for tools to discover more about your policy. If this change\n does break any of your policies, please let us know.\n\n To learn how to take advantage of this facility, read\n Perl::Critic::DEVELOPER and look at the source of any of the\n configurable policies included in this distribution.\n\n There is a discussion of the design considerations for this facility in\n the source repository under doc/PolicyParameter_Notes.pod.\n\n * Added support for \"criticism-fatal\" option in your perlcriticrc\n file. This will be used by the criticism pragma to cause execution\n to abort if the file contains any violations.\n\n New Policy:\n * Module::RequireNoMatchVarsWithUseEnglish\n\n Policy Changes:\n * Added an allow_last_statement_to_be_comma_separated_in_map_and_grep\n option to ValuesAndExpressions::ProhibitCommaSeparatedStatements.\n Partial response to http://rt.cpan.org/Public/Bug/Display.html?id=27654.\n * ControlStructures::ProhibitPostfixControls gains the ability to have\n the flow control statements allowed to be modified. This in response\n to RT #29540.\n * TestingAndDebugging::RequireUseStrict now accepts \"use Moose\" as\n equivalent to \"use strict\".\n * TestingAndDebugging::RequireUseWarnings now accepts \"use Moose\" as\n equivalent to \"use warnings\".\n\n Bug Fixes:\n * RT #31281 perlcritic doesn't recognize \"#!/bin/env perl\" shebang\n * Replace usage of Unicode property escapes with POSIX character classes\n order to restore 5.6 compatability.\n * RT #30388 ValuesAndExpressions::ProhibitVersionStrings complained\n about numbered directories in \"use lib\".\n * Fixed handling of badly behaved spelling programs in PodSpelling.\n\n[1.081_006] Released on 2008-03-02\n[1.081_005] Released on 2007-12-29\n[1.081_004] Released on 2007-12-20\n[1.081_003] Released on 2007-12-16\n[1.081_002] Released on 2007-12-16\n[1.081_001] Released on 2007-12-15\n\n Changes summarized into 1.082 above. For exact details, see Changes in\n 1.081_006 on BackPAN.\n\n[1.080] Released on 2007-11-11\n\n New Features:\n * Allow a \"## no critic\" statement after a shebang on line 1 of a\n file. This allows users to block violations that apply to\n whole files and still allow shebangs.\n\n New Policies: (funded by a Perl Foundation grant)\n * InputOutput::ProhibitExplicitStdin\n * RegularExpressions::ProhibitFixedStringMatches\n * RegularExpressions::RequireBracesForMultiline\n * RegularExpressions::ProhibitUnusualDelimiters\n * RegularExpressions::ProhibitUnusedCapture\n * RegularExpressions::ProhibitComplexRegexes\n * RegularExpressions::ProhibitSingleCharAlternation\n * RegularExpressions::ProhibitEscapedMetacharacters\n * RegularExpressions::ProhibitEnumeratedClasses\n * InputOutput::RequireBriefOpen\n * InputOutput::RequireCheckedSyscalls\n\n Other New Policies\n * ControlStructures::ProhibitNegativeExpressionsInUnlessAndUntilConditions\n\n Policy Changes:\n * Variables::ProhibitConditionalDeclarations now permits you to local-ize\n variables in conditional declarations. This makes sense, since\n C is actually a variable modifier, rather than a declaration.\n Thanks to David Golden for reporting this.\n\n New Developer Features:\n * Perl::Critic::Utils::PPIRegexp encapsulates interaction with\n the PPI Regexp token classes. Those classes have very sparse\n APIs, so this package hides away the ugly fiddling with PPI\n internals.\n * Added a new optional_modules parameter for the .run syntax.\n\n Bug fixes:\n * PPI::Structure::List can now contain multiple children,\n so P::C::Utils::parse_arg_list() needs to handle it.\n\n This was done in the process of fixing\n http://rt.cpan.org/Ticket/Display.html?id=24924, which was a problem\n with TestingAndDebugging::RequireTestLabels.\n\n * ValuesAndExpressions::ProhibitLongChainsOfMethodCalls wasn't resetting\n chain length when it ran into the end of a sub-expression.\n\n http://rt.cpan.org/Public/Bug/Display.html?id=30040\n\n * ValuesAndExpressions::ProhibitCommaSeparatedStatements was reporting\n false positives when builtins which accept both no and multiple\n arguments were involved.\n\n http://rt.cpan.org/Public/Bug/Display.html?id=27654\n\n Internals:\n * Removed all use of Carp in favor of exceptions.\n\n Prerequisites:\n * Now requires PPI 1.201. A number of workarounds for PPI bugs have been\n removed.\n * New dependency upon Exception::Class.\n\n Installation:\n * Use Devel::CheckOS to see whether Perl::Critic is being installed on\n a Solaris system and warn about tar(1) chopping file names off if it\n is.\n\n[1.079_003] Released on 2007-10-22\n[1.079_002] Released on 2007-10-21\n[1.079_001] Released on 2007-10-09\n\n Changes summarized into 1.080 above. For exact details, see Changes in\n 1.079_003 on BackPAN.\n\n[1.078] Released on 2007-09-19\n\n Restore Perl::Critic::TestUtils::should_skip_author_tests() and\n get_author_test_skip_message(). Some Perl::Critic add-on distributions\n are using them.\n\n[1.077] Released on 2007-09-15\n\n Note: if you don't have any problems installing Perl::Critic 1.076, there\n is no need to upgrade to this version. There are no functionality\n changes. This release only contains changes related to installation that\n a few people were experiencing.\n\n Minor changes:\n * Removed build-time use of Readonly, again, due to problems some people\n were having when trying to compile the code by hand, rather than using\n CPAN(PLUS)?.\n * Don't run author tests if there's a .svn directory present because\n users who grabbed the code from the source repository were executing\n them and getting failures.\n * Don't generate optional, module-hiding test wrappers if author tests\n are not enabled.\n\n\n[1.076] Released on 2007-09-07\n\n It appears from reports on the 1.075_001 release that the subroutine\n sigils were indeed the problem. Release to the general populace.\n\n\n[1.075_001] Released on 2007-09-06\n\n Bug Fixes:\n Undo the changes in 1.073 and 1.074. Instead, stop using the subroutine\n sigil in import and export lists. It is suspected that the problem lies\n with Exporter stripping off ampersands.\n\n[1.074] Released on 2007-09-04\n\n Bug Fixes:\n Repeat the Makefile.PL change on\n t/generate_without_optional_dependencies_wrappers.PL.\n I love CPAN Testers.\n\n[1.073] Released on 2007-09-04\n\n Bug Fixes:\n Work around problems with the combination of Exporter & Readonly in\n Makefile.PL on some machines.\n\n[1.072] Released on 2007-09-03\n\n Bug Fixes:\n * The Makefile generated by Makefile.PL was not syntactically correct\n according to some versions of Solaris. Thanks to Diab Jerius\n (DJERIUS) for discovery and testing.\n * Fixed mis-definition of \"quiet\" value for the \"--profile-strictness\"\n option.\n * Enhanced testing with the absence of optional modules.\n\n[1.071] Released on 2007-08-24\n\n The \"Brown Paper Bag\" Release\n\n Bug Fixes:\n * Tests would not pass in environments that did not have all optional\n dependencies installed.\n\n[1.07] Released on 2007-08-21\n\n New Policies: (funded by a Perl Foundation grant)\n * BuiltinFunctions::ProhibitBooleanGrep\n * BuiltinFunctions::ProhibitComplexMappings\n * Documentation::PodSpelling\n * InputOutput::ProhibitJoinedReadline\n * Subroutines::ProhibitManyArgs\n * Subroutines::RequireArgUnpacking\n * ValuesAndExpressions::ProhibitImplicitNewlines\n * Variables::RequireLocalizedPunctuationVars\n\n Other New Policies\n * Subroutines::ProhibitNestedSubs\n\n New Features:\n * The \"perlcritic --profile-proto\" output now includes the \"add_themes\"\n parameter for each policy.\n * The perlcritic \"--strict-profile\" option has been replaced with a\n \"--profile-strictness\" option. This new option takes values of \"warn\"\n (the default), \"fatal\", and \"quiet\", which controls what happens with\n ignorable problems in a .perlcriticrc file.\n\n New Developer Features:\n * Perl::Critic::Policy now has an overridable initialize_if_enabled()\n method which allows a Policy to perform expensive initialization after\n it has been determined whether the user has it enabled or not. Also,\n this method allows a Policy to say that it should be disabled\n regardless of what the user says.\n\n Actually, use of this method is now encouraged over using a\n constructor.\n\n Other Stuff:\n * Now requires the Readonly module in order to be more self-compliant.\n\n[1.061] Released on 2007-07-24\n\n Bug Fixes:\n * Fix P::C::Theme-- Exporter in Perl 5.6 does not export import(), so you\n must subclass it. *sigh*\n * Fix P::C::Config::_validate_and_save_theme()-- eval of an empty string\n does not reset \$\@/\$EVAL_ERROR in Perl 5.6.\n\n Big thanks to Anirvan Chatterjee for identifying and helping debug these\n issues.\n\n[1.06] Released on 2007-06-27\n\n New Features:\n * perlcritic now emits errors for all the problems it can find for the\n global options in the command-line parameters and .perlcriticrc file,\n rather than bailing on the first one it encounters.\n\n * perlcritic now has a \"--strict-profile\" option which will make warnings\n about problems in a profile fatal.\n\n * perlcritic now has a \"--statistics-only\" option which suppresses the\n display of individual violations and only shows the additional output\n produced by the \"--statistics\" option.\n\n Feature requests:\n * A value for \"color\" can now be specified in a .perlcriticrc.\n http://rt.cpan.org/Ticket/Display.html?id=24877\n\n New Policies:\n * ValuesAndExpressions::ProhibitQuotesAsQuotelikeOperatorDelimiters\n As suggested in http://rt.cpan.org/Ticket/Display.html?id=23290.\n * ValuesAndExpressions::ProhibitLongChainsOfMethodCalls\n * Modules::ProhibitExcessMainComplexity\n As suggested in http://rt.cpan.org/Ticket/Display.html?id=24699\n\n Minor changes:\n * The perlcritic \"--profile-proto\" option now emits the short names for\n policies, rather than the full ones.\n\n * The \"-profileproto\" and \"-singlepolicy\" options have been renamed to\n \"-profile-proto\" and \"-single-policy\" in order to make the growing\n number of command-line options comprehensible. The change of\n \"singlepolicy\" also affects your F<.perlcriticrc> file.\n\n[1.053] Released on 2007-06-02\n\n *DEVELOPMENT RELEASE*\n\n Bug Fixes:\n Fixed bug in 15_statustics.t test script, which caused the build\n to fail on machines that don't have Perl::Tidy installed.\n\n[1.052] Released on 2007-06-01\n\n *DEVELOPMENT RELEASE*\n\n New Features:\n * perlcritic now emits a summary about the scanned code when enabled by\n the \"-statistics\" option.\n\n Policy Enhancements:\n * InputOutput::ProhibitBacktickOperators can now be configured to only\n check in void contexts.\n\n Bug Fixes:\n * 27073: False positive in RequireUpperCaseHeredocTerminator\n * 27065: CodeLayout::ProhibitTrailingWhitespace breaks under Perl 5.6.1\n * 26462: ControlStructures::ProhibitCascadingIfElse pod typo\n * ValuesAndExpressions::ProhibitCommaSeparatedStatements was complaining\n about multiple values in the list to be iterated over by a foreach loop.\n * Corrected PBP page numbers for some policies (Quinn Weaver).\n\n[1.051] Released on 2007-04-12\n\n *DEVELOPMENT RELEASE*\n\n No new policies.\n No particular bug fixes.\n\n Internals:\n * Added several new utility functions to support the StricterSubs distro.\n Also, some of the existing functions in Perl-Critic-Utils have\n changed in ways that might break your custom policies.\n\n Miscellanea:\n * Updated Emacs plugin (Courtesy Josh ben Jore).\n See extras/perlcritic.el for details.\n * Added copy of BBEdit plugin (Courtesy of Josh Clark).\n See extras/perl_critic_for_bbedit-1_0.zip for details\n\n[1.05] Released on 2007-03-19\n\n Bug Fixes:\n * 25557: t/20_policy_prohibittrailingwhitespace.t fails on Perl 5.8.0\n\n[1.04] Released on 2007-03-18\n\n Bug Fixes:\n * 25008: Subroutines::RequireFinalReturn should allow \"throw\"\n * 25085: False Positive - Heredoc terminator must be quoted\n * 18423: VERSION check does not notice Readonly::Scalar version\n * 25449: Proposal of \$VERSION declaration (DUPLICATE)\n\n New Policies:\n * CodeLayout::ProhibitTrailingWhitespace\n * ValuesAndExpressions::ProhibitCommaSeparatedStatements\n * Variables::ProhibitPerl4PackageNames\n\n Policy Enhancements:\n * Subroutines::RequireFinalReturn can now be configured to recognize\n your custom functions that behave like \"die\" or \"exit\".\n * Documentation::RequirePodSections can be configured to match\n Module::Starter:PBP or to really match the PBP book.\n\n[1.03] Released on 2007-02-13\n\n Bug Fixes:\n * Fixed a few more problems with the %f, %F, and %r format escapes.\n * I forgot to put Conway's perlcriticrc file in the MANIFEST. Sorry.\n\n Interface Changes:\n * Perl::Critic::Utils automatically exports everything. However,\n this is deprecated. In the future, you must request your exports.\n\n Policy Changes:\n * Duplicate violations of RequireExcplicitPackage are now squelched,\n in the same way as RequireUseStrict and RequireUseWarnings.\n\n[1.02] Released on 2007-02-11\n\n Bug Fixes:\n * \"undef\" incorrectly triggered ProhibitMutatingListFunctions.\n * 24876: %f and %F escapes not working in custom \"verbose\" format strings.\n * 24875: Documentation bug in TestingAndDebugging::ProhibitNoStrict\n\n New Policies:\n * InputOutput::RequireCheckedOpen\n * InputOutput::RequireCheckedClose\n\n Other Cool Stuff:\n * Added Conway's own suggested Perl::Critic configuration as\n examples/perlcriticrc-conway.\n\n * See the examples/ directory for some neat demonstrations of using\n the Perl::Critic API. Contributed by Elliot Shank.\n\n Interface Changes:\n * Perl::Critic::Utils no longer exports anything by default. Policies\n outside the distribution will need to specify what exactly they need\n from this module. There are a number of tags that can be used in\n addition to individual imports.\n\n[1.01] Released on 2007-01-24\n\n PRODUCTION RELEASE: You may now consider the public Perl::Critic\n API as \"stable.\" Future minor releases will focus on bug fixes,\n new policies, and internal refactoring.\n\n Bug Fixes:\n * Fixed memory leak. This was reported by the Parrot team at\n http://rt.perl.org/rt3/Ticket/Display.html?id=41230\n\n[0.23] Released on 2007-01-19\n\n Bug Fixes:\n * 23994: Test 56 in t/05_utils.t of Perl::Critic v0.22 fails\n * 24005: test 95 in t/13_bundled_policies fails in 0.22\n\n\n Groovy New Features:\n * Added '%F' to the Violation format specifications. This will\n give you just the name of file where the violation occurred\n (i.e. without the path).\n\n * Improved validation of .perlcriticrc file. An invalid\n default setting will now cause a fatal exception. A\n strange-looking policy name will cause a warning.\n\n\n Interface Changes:\n * The syntax for theme expressions has changed. Instead of using\n mathematical operators qw(+ * -) you must now use the logical\n operators qw(|| && !). See the Perl::Critic docs for more info.\n\n * The \@GLOBALS and \@BUILTINS variables are no longer exported by\n Perl::Critic::Utils. Use the is_perl_global() and is_perl_builtin()\n functions instead.\n\n * Perl::Critic::Policy::policy_parameters() has bee renamed to\n Perl::Critic::Policy::supported_paramters(). This was an\n undocumented feature anyway, so it shouldn't affect anyone.\n\n\n Other Internal Changes:\n * Perl::Critic now requires B::Keywords v1.05 or newer.\n\n * A few internal classes have been refactored. As a result,\n Set::Scalar is no longer a required dependency.\n\n\n[0.22] Released on 2006-12-15\n\n New Features:\n * Introduced named severity levels: gentle, stern, harsh, cruel, brutal\n You can use these named levels instead of the numeric ones.\n For example: \"perlcritic --severity=cruel MyModule.pm\"\n Or just: \"perlcritic --cruel MyModule.pm\"\n\n * For perlcritic, the \"-List\" option has been renamed to\n \"-profileproto\". The output now includes the names of the\n parameters that each Policy supports, if any.\n\n * Improved validation of Policy parameters in your F<.perlcriticrc>\n Any invalid parameter now causes a fatal exception.\n\n Major Changes:\n * Reassigned themes for most policies. Now there are fewer\n themes and they are organized around programming concepts\n instead of severity levels. If you have assigned your own\n themes to any Policies, they should still work as expected.\n\n Policy Changes:\n * ErrorHandling::RequireCarping will not complain if it can figure\n out that the die or warn message will always end in a newline\n (\"\\n\"). The idea is that, if you put the newline there, you\n don't indend for there to be any file/line/stack information\n emitted, in which case you really don't want carp/croak.\n\n You can restore the old strict behavior by giving the policy\n a false value for \"allow_messages_ending_with_newlines\" in your\n configuration.\n\n Misc Changes:\n\n Added single-letter uppercase alternatives for some perlcritic options.\n\n[0.21_01] Released on 2006-12-03\n\n New Policies:\n * TestingAndDebugging::ProhibitProlongedStrictureOverride\n * ControlStructures::ProhibitMutatingListFunctions\n\n New Features:\n * Say \"perlcritic -List\" to get an expanded listing of all Policies.\n The format is suitable for use as your .perlcriticrc file.\n * Say \"perlcritic -doc PATTERN\" to get the documentation for all\n Policies that match m/PATTERN/imx. This is a little easier than\n typing in the full name of the Policy module with \"perldoc\".\n * Say \"perlcritic --singlepolicy PATTERN\" to use one and only one\n policy.\n * Can now specify exceptions to Variables::ProhibitPackageVars,\n for packages like File::Find that only interface through\n package variables.\n\n Bug Fixes:\n * 21713 false positive for parens used with substr and unpack.\n * 22890 allow Rcs keywords in POD.\n\n Internals:\n * Testing system overhauled. Details on the Policy/subtest\n framework is in t/run.t.\n * Added Perl::Critic::Utils::words_from_string. This is safer\n than plain old C.\n\n[0.21] Released on 2006-11-05\n\n New Policies:\n * BuiltinFunctions::ProhibitReverseSortBlock\n * BuiltinFunctions::ProhibitVoidGrep\n * BuiltinFunctions::ProhibitVoidMap\n * CodeLayout::RequireConsistentNewlines\n * Modules::RequireFilenameMatchesPackage\n * TestingAndDebugging::RequireTestLabels\n * ValuesAndExpressions::ProhibitMismatchedOperators\n\n New Features:\n * Introduced policy \"themes.\" Themes are arbitrary names that can\n be used to identify a group of related Policies. You can select\n your favorite policies by combining themes in a mathematic expression\n such as \"pbp * (danger + risky)\". See POD for details.\n * perlcritic output is colorized if you have Term::ANSIColor. This\n only works on non-Win32 platforms. Use -nocolor switch to disable.\n * Say \"perlcritic -count\" to get just the the total number of\n violations per file. Use this feature to quickly identify hot-spots.\n * Use the -only switch to choose only from policies mentioned in your\n .perlcriticrc file. This is useful if you usually only want to\n work with a small subset of the policies.\n * Default values for most of the perlcritic and Perl::Critic options\n can now be defined in your .perlcriticrc file. See POD for details.\n\n Bug Fixes:\n * 21236: wrong page number for \"printing to filehandles\"\n * 21916: File handle ... wrong page reference in PBP [DUPE]\n * 21714: false positive for capture var used in ternary condition\n * 21718: No skip for File::Slurp in includes.t\n * ProhibitBarewordFilehandles doesn't complain if you open\n STDIN, STDOUT or STDERR.\n * Parrot 40564: Subroutines::RequireFinalReturn should allow die,\n exit, etc.\n * Each \"for\" and \"foreach\" loop now adds one point to the McCabe\n complexity score.\n\n Other Stuff:\n * The internals of Perl::Critic have been significantly refactored,\n but should still be compatible with existing third-party Policies.\n * Added author-only tests to the release, but disabled by default\n * New Perl::Critic::Utils::shebang_line() method\n * Support for filename-based policies\n * Additional prerequisite: Set::Scalar\n * Now requires PPI version 1.118\n\n[0.20] Released on 2006-09-10\n\n Perl::Critic now requires PPI version 1.117, which fixes\n several bugs that were introduced in version 1.116.\n\n Bug Fixes:\n * 21079: grep clears \@SITE_POLICIES\n * 21352: Test failures with PPI 1.117\n * 11365: sub DESTROY detected as a builtin homonym\n\n[0.19] Released on 2006-08-20\n\n New Policies:\n * BuiltinFunctions::ProhibitStringySplit\n * ControlStructures::ProhibitDeepNests\n * RegularExpressions::ProhibitCaptureWithoutTest\n * Variables::RequireLexicalLoopIterator\n\n New Features:\n * \"perlcritic -quiet\" suppresses the \"source OK\" message.\n * Variables::ProhibitPunctuationVars is now configurable.\n\n Bug Fixes:\n * 20965: \"Hard tabs used at\" shouldn't check __DATA__\n * 21070: ProhibitNoisyQuotes hates overload\n * Punctuation variables are now exempt from ProhibitLocalVars\n\n Other Stuff:\n * Test coverage is now over 95%\n\n[0.18_01] Released on 2006-08-06\n\n New Policies:\n * Variables::RequireNegativeIndices\n * InputOutput::ProhibitInteractiveTest\n * ErrorHandling::RequireCarping\n\n Bug Fixes:\n * RequireTidyCode tests fail if user has custom .perltidyrc file\n * 20612: RequirePerlTidy was ignoring HEREDOCs\n * 20659: __END__ statement considered \"unreachable\"\n * Fix for PPI::XS (no C support)\n * Support for 'goto' in ProhibitAmpersandSigils and\n Subroutines::RequireFinalReturn\n\n Performance Enhancements:\n * Introduced Perl::Critic::Document class. This is a facade for\n PPI::Document which internally caches search results. This\n reduces the running time by about 35%. The facade should be\n invisible, unless you are doing something really sneaky.\n * Extraction of the 'diagnostics' information is postponed\n until it is really needed. Speedup has not been measured.\n * Calls to helper-subs have been reordered for maximum efficiency.\n\n Other Cool Stuff:\n * Includes updated version of perlcritic mode for emacs. See\n \"extras/perlcritic.el\" for details.\n\n[0.18] Released on 2006-07-16\n\n Bug Fixes:\n * 14855: Home discovery is dangerously naive.\n * 20060: Incorrect page numbers in ProhibitLeadingZeros\n and RequireNumberSeparator policies.\n * 20068: .perlrc file - inconsistent documentation\n * 20254: \"use vars qw(\@EXPORT_OK)\" not recognized\n * 20463: No-case heredoc terminator incorrectly detected as lower case.\n * ProhibitOneArgBless doesn't understand \"bless {} => \$class;\"\n * ProhibitExcessComplexity doesn't count 'while' and 'until' stmnts\n * ProhibitLeadingZeros was falsely hits '.0456'\n\n Enhancements:\n * If File::HomeDir is available, we use it to locate the\n .perlcriticrc file. This should help make Perl::Critic\n more portable to Win32 platforms. If File::HomeDir is\n not installed, we resort to looking at the usual\n environment variables.\n\n Other Stuff:\n * Added \"perlcritic.el\", which is a super-cool emacs minor-mode\n that runs perl-critic on the current buffer and returns the\n results in a sexy hot-linked \"compiler\" window. You can run\n it on demand, or have it run automatically every time you\n save the buffer. You can find this in the extras/ directory.\n Thanks to Josh ben Jore for contributing this.\n\n * Moved \"Perl::Critic::TestUtils\" into the installed build. This\n module is only used for unit-testing Perl::Critic, but we\n are putting it in the installation so folks who want to\n extend Perl::Critic can make use of it.\n\n[0.17] Released on 2006-06-13\n\n Bug Fixes:\n * 19836: Perl-Critic0.16 fails tests during install. This was\n caused by a bug in version 3.01 of Module::Pluggable. See\n http://rt.cpan.org/Ticket/Display.html?id=19857 for details.\n * Fixed bug in no-critic pragma parser.\n\n New Policies:\n * ValuesAndExpressions::ProhibitEscapedCharacters\n * BuiltinFunctions::RequireSimpleSortBlock\n\n Enhancements:\n * Perl::Critic can export critique() as a static function. This\n may appeal to folks who dislike the object-oriented interface.\n\n[0.16] Released on 2006-05-14\n\n Enhancements:\n * Perl::Critic->critique() now accepts a PPI::Document as the\n argument. This feature creates an additional dependency on\n Scalar::Util, but that shouldn't be a problem because it is\n included with List::Util, which we already use.\n\n Miscellanea:\n * Increased PPI dependency from v1.110 to v1.112\n\n[0.15_03] Released on 2006-05-07\n\n Bug Fixes:\n * The \"## no critic\" feature is now implemented without eval-ing\n the code. This keeps Perl::Critic pure and safe :)\n * 19082: Page number for AUTOLOAD is incorrect\n\n New Policies:\n * ControlStructures::ProhibitUnreachableCode (by Peter Guzis)\n * Modules::ProhibitAutomaticExportation\n * ValuesAndExpressions::ProhibitVersionStrings\n\n[0.15_02] Released on 2006-04-26\n\n Bug Fixes:\n * Reimplemented the '##no critic' pragmas to have effect on the\n line where the violation is reported, not on the line where\n the candidate element lives. This is because some policies\n may report violations that are nowhere near the element that\n is being evaluated.\n * RequireUseStrict, RequireUseWarnings, and RequireExplcitPackage\n all emit violations for _every_ statement that violates the\n Policy. This closes a loophole that allowed you to circumvent\n the Policy by using '## no critic' on just the first statement\n that violated the policy.\n * Fixed the workaround for the magic shebang that is inserted\n by EU::MM and M::B. This had stopped working around version 13.\n * Fixed -noprofile option on 'perlcritic'. This also had stopped\n working at some point.\n\n[0.15_01] Released on 2006-04-16\n\n Enhancements:\n * Added diagnostic messages if the .perlcriticrc contains entries\n for Policy modules that don't seem to exist.\n * Now you can specify which policies to disable with the\n \"## no critic\" pseudo-pragmas. This feature is still\n experimental. See docs for details.\n * perlcritic's directory searching now skips backup files, such\n as *.swp, *.bak and *~. It also ignores version control system\n directories, and the blib directory in module build directories.\n\n Bug Fixes:\n * 18386: Bad example in POD for Documentation::RequirePodSections\n * 18670: Test failure if Perl::Tidy is not installed\n * 18698: Policy idea ProhibitUniversalFunctions (see New Policies)\n * RequireInterpolationOfMetachars falsely hit strings like 'foo=s\@'\n which are commonly used with Getopt::Long.\n\n New Policies:\n * BuiltinFunctions::ProhibitUniversalCan (by Chris Dolan)\n * BuiltinFunctions::ProhibitUniversalIsa (by Chris Dolan)\n\n Miscellanea:\n * All spurrious options for `perlcritic` are now fatal.\n * Changed several of the -verbose formats to be more readable.\n * Explicit -severity option now overrides -[12345] shortcuts instead\n of being the other way around.\n\n\n\n[0.15] Released on 2006-03-26\n\n Bug Fixes:\n * 17964: Insists my code is not tidy (may not be fixed for all cases)\n\n[0.14_02] Released on 2006-03-19\n\n Bug Fixes:\n * 15653: False positive in OneArgSelect (fixed for real this time)\n\n New Policies:\n * ClassHierarchies::ProhibitAutoloading\n * Documentation::RequirePodSections\n * InputOutput::RequireBracedFileHandleWithPrint\n * ValuesAndExpressions::ProhibitMixedBooleanOperators\n * Variables::RequireInitializationForLocalVars\n\n[0.14_01] Released on 2006-03-05\n\n Bug Fixes:\n * 14731: False positive: Builtin function called with parens\n * 17554: False positive in CodeLayout::RequireTrailingCommas\n\n New Policies:\n * ClassHierarchies::ProhibitExplicitISA\n * InputOutput::ProhibitReadlineInForLoop\n * Miscellanea::ProhibitFormats\n * Miscellanea::ProhibitTies\n * Variables::ProhibitConditionalDeclarations\n\n[0.14] Released on 2006-01-29\n\n More documentation edits.\n\n New Policies:\n * Documentation::RequirePodAtEnd\n * Subroutines::ProtectPrivateSubs\n * Variables::ProhibitMatchVars\n * Variables::ProtectPrivateVars\n\n Bug Fixes:\n * 15295: \"## no critic\" pragmas too aggresive on compound statements.\n * t/01_config.t failed in the presence of third-party policies\n\n[0.13_05] Not released\n\n More documentation edits.\n\n Implemented workaround for failing pod_coverage tests.\n\n Bug Fixes:\n * 16906: tr/// created false-postives with RegularExpression polices.\n\n[0.13_04] Released on 2005-12-31\n\n Moved DEVELOPER.pod file into the Perl/Critic dir.\n\n More documentation edits.\n\n[0.13_03] Released on 20051230\n\n perlcritic now prints 'source OK' if it doesn't find any\n violations. This gives folks a warm fuzzy feeling.\n\n Tweaked some test cases that were failing on my Solaris\n environment at work.\n\n[0.13_02] Released on 2005-12-29\n\n Fixed Config to recognize fully-qualified module names in the\n .perlcriticrc file.\n\n Various documentation edits.\n\n[0.13_01] Released on 2005-12-28\n\n Replaced 'priority' concept with 'severity'. Now each Policy module\n has a predefined severity level ranging from 1 to 5. By default,\n perlcritic only reports the most severe violations. You can adjust\n the severity threshold at the command line, and you can change\n the severity for any Policy using the config file.\n\n Chris implemented the applies_to() mechanism, which allows each Policy\n class to declare the types of PPI elements that it wants to examine.\n When traversing the document, Perl::Critic invokes the Policy only\n for elements that are of the correct type. This improves performance\n by about 33%.\n\n Perl::Critic now uses a Plugin architecture to automatically\n discover Policy modules. So if you have custom Policies, all you\n have to do is install them in the Perl::Critic::Policy namespace --\n no need to add anything to your .perlcriticrc file. If you write\n policies in a different namespace, you can configure that too. See\n the Perl::Critic::Config docs for details.\n\n New Policies:\n * Modules::RequireEndWithOne\n * NamingConventions::ProhibitAmbiguousNames\n * References::ProhibitDoubleSigils\n * Subroutines::RequireFinalReturn\n * Subroutines::ProhibitAmpersandSigils\n * Subroutines::ProhibitExcessComplexity\n * TestingAndDebugging::ProhibitNoStrict\n * TestingAndDebugging::ProhibitNoWarnings\n\n Bug Fixes:\n * 15101: Plugin architecture improves support for 3rd-party code\n * 16319: Fixed incorrect PBP page number in ProhibitBarwordFilehandle\n * 16321: Lists of empty quotes are now allowed by ProhibitQuotedWordLists\n * 16288: Empty lists caused a fatal error RequireTrailingCommas\n * 15653: Fixed false positive in OneArgSelect.\n\n[0.13] Released on 2005-10-31\n\n Official release of 0.12_03. No code major changes.\n\n[0.12_03] Not released\n\n Renamed -Policy option to -include. Added -exclude to give the\n opposite effect.\n\n Refactored constructor of Perl::Critic. Now, most of the work\n is delegated to Perl::Critic::Config. I'm not sure I like how\n this turned out, but we'll see how it goes.\n\n Renamed some Policy modules to be a bit more comprehensible. Note\n that you may need to change your .perlcriticrc file accordingly.\n I also suggest removing your current Perl::Critic installation\n before installing this one.\n\n Name Changes:\n * ProhibitUnpackagedCode => RequireExplicitPackage\n * RequireQuotedWords => ProhibitQuotedWordLists\n\n Improved error message when Perl::Critic dies because PPI can't\n parsee the input code.\n\n Changed output of -help to be more terse.\n\n Edited POD.\n\n[0.12_02] Not released\n\n Added -Policy option to perlcritic. The idea is to provide a\n compact interface for selecting Policy modules at the command-line.\n This feature is experimental and subject to change.\n\n Added a warning message if -verbose value looks strange. In most\n applications, the -verbose option does not require a value, so people\n might be puzzled when they write 'perlcritic -verbose my_file.pm' and\n nothing seems to happen.\n\n Command-line options to perlcritic are now case-sensitive. This\n makes it easier to abbreviate options that start with the same letters\n (e.g. 'Version' and 'verbose')\n\n Fixed the new Policy modules that were misnamed and misplaced in the\n previous distribution.\n\n[0.12_01] Not released\n\n Rewrote some of the ControlStructures and BuiltinFunction\n policies to be simpler (and probably a little faster).\n\n Edited POD. Fixed some typos. Added PREREQUISITES section\n to Perl::Critic documentation.\n\n Fixed the -verbose FORMAT option so that you can put metachars\n in the FORMAT specification. If using perlcritic, be careful to\n protect them from getting munged by the shell first.\n\n Replaced ProhibitRequireStatements with RequireBarewordIncludes\n module. Courtesy of Chris Dolan \n\n Added configuration to ProhibitInterpolationOfLiterals so that\n certain flavors of quotes can be exempt. This is for folks who\n have configured their editor to use special syntax highlighting\n for certain kinds of strings (SQL, for example).\n\n perlcritic now accepts multiple file arguments, so now you can\n critique your entire distribution in one shot. As a result, the\n output-formats have changed slightly.\n\n New Policy modules:\n * BuiltinFunctions::ProhibitLvalueSubstr\n * BuiltinFunctions::ProhibitSleepViaSelect\n * ClassHierarchies::ProhibitOneArgBless\n * CodeLayout::RequireTrailingCommas\n * CodeLayout::RequireQuotedWordLists\n * InputOutput::ProhibitTwoArgOpen\n * InputOutput::ProhibitOneArgSelect\n * InputOutput::ProhibitBarewordFileHandles\n * Miscellanea::RequireRcsKeywords\n * Modules::RequireVersionVar\n * RegularExpressions::RequireExtendedFormatting\n * RegularExpressions::RequireLineBoundaryMatching\n\n\n Bug fixes:\n 14923: 'require' is now permitted. See RequireBarewordIncludes.\n 15022: Fixed false-positives when keywords are used as hash keys.\n 15023: Fixed spurious Violations by removing magic shebang.\n 15031: Fixed spelling mistakes (and probably added some new ones).\n 15233: Postfix 'if' is now allowed with 'die', 'croak', etc.\n\n[0.12] Released 2005-10-10\n\n Redesigned the 'verbose' feature. Now the output format\n can be user-defined using a sprintf-like specification.\n perlciritc also has a predefined output format that is\n compatible with grep mode in editors like vim and emacs.\n\n 'return' is now exempt from ProhibitParensWithBuiltins. I may\n extend this exemption to all unary functions.\n\n Edited POD. Added a super brief description of each policy\n in the main Perl::Critic documentation. Added details about\n editor integration.\n\n Additional Prerequisites:\n * String::Format\n\n[0.11] Not released\n\n The internal dynamics and API of Perl::Critic have changed\n considerably. The result is a 300% increase in performance.\n See the POD in Perl::Critic::Policy for details.\n\n New Features:\n * Added -verbose option to put more stuff in the output. In the\n extreme, you can get the POD from Policy attached to each\n and every violation.\n\n Additional Prerequisites:\n * IO::String\n * Pod::PlainText\n\n[0.10] Released 2005-10-05\n\n Fixed stupid bug in newest Policy modules. They were returning\n PPI objects instead of Perl::Critic::Violation objects. Doh!\n\n Fixed test scripts to prevent failures if the user already has a\n .perlcriticrc file.\n\n 'ProhibitHardTabs' now allows leading tabs by default.\n\n Put the Changes file in reverse-chronological order, so the most\n recent stuff is easy to find at the top of the file\n\n[0.09] Released 2005-10-04\n\n Fixed several bugs:\n * 14810: Now you are allowed to create your own 'import' function,\n since this is frequently done with fancy modules.\n * 14817: Parens, brackets, and braces are now excluded from\n 'ProhibitNoisyQuotes' since they look better in quotes anyway.\n * 14787: \$1..\$9 and '_' are exempt from ProhibitPunctuationVars\n * 14899: Object methods with the same name as a built-in can\n be called with parens (ProhibitParensWithBuiltins).\n * 14901: Normalized the exit status of perlcritic to 0, 1, or 2.\n See documentation for explanation.\n * 14855: Partially fixed home directory discovery. Still not\n completely portable, but at least doesn't create warnings.\n\n New features:\n * 14734: Limit for number separators is now configurable\n\n New Policy modules:\n * CodeLayout::ProhibitHardTabs\n * ControlStructures::ProhibitUnlessBlocks\n * ControlStructures::ProhibitUntilBlocks\n * ControlStructures::ProhibitCStyleForLoops\n\n Changed the syntax for the magic comments. Adam had the\n idea of using a pragma-like notation. I liked it.\n\n[0.08_2] Released 2005-09-27\n\n Fixed problems with Perl::Critic::Config that caused File::Spec\n to emit 'uninitialized value' warnings during the build.\n\n Added 1 Policy module contributed by Graham TerMarsch\n\n Switched from File::Spec::Functions to plain File::Spec because\n I think its usage is more common.\n\n Removed 'FindBin' from the test files so I can be sure that the\n right libraries are getting loaded. This means I'll have to\n use the -l option with C.\n\n Edited more POD.\n\n[0.08_01] Not released\n\n Fixed \"ProhibitParensWithBuiltins\" to allow parens to be used with\n object method calls that have the same name as a builtin functions.\n\n Introduced magical comments that allow developers to configure\n Perl::Critic on-the-fly from within their code.\n\n Added META.yml files and POD tests to the build. I did this\n mostly just to boost the Kwalitee score on CPANTS.\n\n Switched from \"Config::Std\" to \"Config::Tiny\" because it doesn't\n require those fancy Damian modules that don't seem to work on\n some older versions of Perl.\n\n[0.07] Released on 2005-09-21\n\n Fixed bugs in the ProhibitCascadingIfElse policy.\n\n Added ProhibitExplicitReturnUndef policy\n\n Made ProhibitUnpackagedCode configurable so you can exempt scripts,\n which typically don't have an explicit 'package' statement.\n\n ProhibitPackageVars policy now exempts vars in ALL_CAPS. This\n is to permit common package variables like \@EXPORT and \$VERSION.\n\n Renamed \"ProhibitStringyGrep and \"ProhibitStringyMap\" because\n the so-called string form doesn't really exist. Now called\n \"RequireBlockGrep\" and \"RequireBlockMap\"\n\n Corrected documentation on defining Policy names within the\n configuration file. This still isn't very clear and needs\n to be rewritten.\n\n Perl::Critic now requires PPI version 1.003, which has a few bug\n fixes of its own.\n\n Rewrite some code just to make Perl::Critic more self-compliant.\n\n Added test cases to verify the configuration functionality. These\n are not completely thorough and need more work.\n\n[0.06] Released on 2005-09-17\n\n Now called 'Perl::Critic'.\n\n Added 4 new policy modules.\n\n Fixed bugs in build process.\n\n Added support for Module::Build.\n\n[0.05] Released on 2005-09-17\n\n End of 'Perl::Review' releases. I have changed the name to\n 'Perl::Critic' to avoid possible confusion with \"The Perl Review\"\n magazine.\n\n[0.04] Released on 2005-09-14\n\n Version 0.03 was a bust because I uploaded the wrong tarball to PAUSE.\n\n[0.03] Released on 2005-09-13.\n\n Fixed some POD links.\n\n Removed test cases for missing policy module.\n\n[0.02] Released on 2005-09-13.\n\n Major overhaul based on feedback from Perl community.\n\n Factored coding standards into separate modules (known as\n Policies). The idea here is to allow other developers to easily\n contribute additional coding standards.\n\n Reworked Perl::Review into a simple engine for loading and running\n Policy modules.\n\n Gave perlreview a command-line interface and configuration file\n for selecting which Policy modules to use.\n\n[0.01] Released on 2005-08-16.\n\n Initial version.\n\n##############################################################################\n# \$URL: http://perlcritic.tigris.org/svn/perlcritic/trunk/distributions/Perl-Critic/Changes \$\n# \$Date: 2013-09-25 21:18:04 -0700 (Wed, 25 Sep 2013) \$\n# \$Author: thaljef \$\n# \$Revision: 4169 \$\n##############################################################################\n\n# ex: set ts=8 sts=4 sw=4 tw=78 ft= expandtab shiftround :", "raw_preamble" => "[1.120_01] Released on 2013-10-29\n\n * DEVELOPER RELEASE *\n\n Added new themes based on CERT guidelines. Thanks Kirk Kimmel.\n\n First release from the new GitHub repository.\n\n[1.120] Released on 2013-10-25\n\n Bug Fixes:\n * Corrected \"Possible precedence issue with control flow operator\" \n warning. This fixes RT #88866\n\n[1.119] Released on 2013-09-25\n\n Bug Fixes:\n * Tests were failing with Config::Tiny 2.17 or later, due to a\n change in the error messages produced by that module. \n This fixes #16 on Github, #88679 & #88889 on RT.\n\n\n Policy Changes:\n * BuiltinFunctions::ProhibitVoidGrep and ::ProhibitVoidMap: grep\n and map called as functions are now allowed in slice operations.\n RT #79289\n Thanks to Wade at Anomaly dot org for the patch.\n * Subroutines::RequireArgUnpacking: Most tests of the size of \@_\n are now allowed. RT #79138\n\n Other Changes:\n * Modernized our usage of Exporter. See RT #75300. \n Thanks to Olivier Mengu\303\251 for the patch.\n\n[1.118] Released on 2012-07-10\n\n Policy Changes:\n * CodeLayout::RequireTidyCode: Revise to work with incompatible\n changes in Perl::Tidy 20120619. RT #77977.\n * TestingAndDebugging::ProhibitNoWarnings: Correct the parse of the\n 'no warnings' statement, so that 'no warnings \"qw\"' is recognized\n as supressing just 'qw' warnings. RT #74647.\n * Miscellanea::RequireRcsKeywords has been moved to the Perl-Critic-More\n distribution, RT #69546\n\n Other Changes:\n * Make all unescaped literal \"{\" characters in regexps into\n character classes. These are deprecated, and became noisy with\n Perl 5.17.0. RT #77510.\n\n[1.117] Released on 2011-12-21\n\n HAPPY HOLIDAYS!\n\n New Policies:\n * Variables::ProhibitAugmentedAssignmentInDeclaration reports\n constructs like 'my \$x += 1'. Contributed by Mike O'Regan\n\n Policy Changes:\n * BuiltinFunctions::ProhibitLvalueSubstr: Add explicit 'use version'.\n RT #68498.\n * CodeLayout::ProhibitHardTabs: Add 'pbp' to the default_themes list.\n RT #71093.\n * ControlStructures::ProhibitMutatingListFunctions now understands that\n tr///r (introduced in 5.13.7) does not change its operand.\n * ControlStructures::ProhibitMutatingListFunctions now understands that\n '//=', '<<=', and '>>=' are assignment operators. RT #70901.\n * ErrorHandling::RequireCheckingReturnValueOfEval now allows things\n like grep { eval \$_ }. RT #69489.\n * Modules::RequireExplicitPackage now has configuraion option\n allow_import_of, to allow the import of specified modules before\n the package statement. RT #72660.\n * RegularExpressions::ProhibitEnumeratedClasses no longer thinks\n that [A-Za-z_] matches \\w. RT #69322.\n * RegularExpressions::ProhibitUnusedCaptures now skips the first\n block of an 'if' or 'elsif' if the regular expression is bound to\n its operand with the '!~' operator. RT #69867.\n * RegularExpressions::ProhibitUnusedCaptures now looks into lists\n and blocks in the replacement portion of the regular expression if\n /e is asserted. RT #72086.\n * RegularExpressions::RequireDotMatchAnything,\n RegularExpressions::RequireExtendedFormatting and\n RegularExpressions::RequireLineBoundaryMatching now honor defaults\n set with 'use re \"/modifiers\"'. RT #72151.\n * Subroutines::ProhibitManyArgs now recognizes '+' as a prototype\n character.\n * Variables::ProhibitPunctuationVars now recognizes bracketed\n variables embedded in interpolated strings (e.g. \"\${\$}\"). For the\n purpose of the 'allow' configuration, these are considered\n equivalent to the unbracketed form. RT #72910.\n Other Changes:\n * Corrected POD in Perl::Critic::PPI::Utils. RT #68898.\n * Perl::Critic::Violation source() method now returns the line\n containing the violation (not the first line) when the statement\n containing the violation spans multiple lines.\n\n[1.116] Released on 2011-05-15\n\n Policy Changes:\n * BuiltInFunctions::ProhibitLvalueSubstr does not report violations\n if the document contains an explicit 'use n.nnn;' where the\n version is before 5.005. RT #59112\n * Documentation::RequirePodSections no longer blows up on code\n having POD but no =head1. This problem was introduced with RT\n #59268. RT #67231\n * RegularExpressions::ProhibitUnusedCapture should more reliably\n find things like s/(a)/\${1}2/. RT #67273.\n * ValuesAndExpressions::ProhibitMagicNumbers and\n Module::RequireVersionVar now treat versions passed as the second\n argument of a 'package' statement the same as versions declared as\n 'our \$VERSION ...'. RT #67159\n * Variables::RequireLexicalLoopIterators does not report violations\n if the document contains an explicit 'use n.nnn;' where the\n version is before 5.004. RT #67760\n\n[1.115] Released on 2011-03-31\n\n Minor bits:\n * Fatal error in RegularExpressions::ProhibitUnusedCapture here\n document check. RT #67116.\n * Internal POD error in Documentation::RequirePodLinksIncludeText. Patch\n by Salvatore Bonaccorso. RT #67012\n\n[1.114] Released on 2011-03-26\n\n Policy Changes:\n * Documentation::RequirePodLinksIncludeText now handles nested POD\n formatting. RT #65569\n * Clarified relation of severity numbers to names in Perl::Critic\n POD. RT #66017\n * Removed caveats from Variables::RequireLocalizedPunctuationVars,\n no longer necessary with PPI 1.208. RT #65514\n * Have InputOutput::RequireBriefOpen attempt to expand scope as\n necessary to deal with the case where the open() and the\n corresponding close() are not in the same scope. RT #64437\n * RegularExpressions::ProhibitUnusedCapture now looks inside\n double-quotish things. RT #38942.\n * RegularExpressions::ProhibitUnusedCapture now takes logical\n alternation into account, so that (e.g.)\n if ( /(a)/ || /(b)/ ) {\n say \$1;\n }\n is not a violation. RT #38942.\n * ValuesAndExpressions::ProhibitCommaSeparatedStatements now\n recognizes 'return { foo => 1, bar => 2 }' as containing a hash\n constructor, not a block. This was fixed by PPI 1.215. RT #61301.\n * ValuesAndExpressions::ProhibitCommaSeparatedStatements now\n recognizes 'bless { foo => 1, bar => 2 }' as containing a hash\n constructor, not a block. This was fixed by PPI 1.215. RT #64132.\n\n[1.113] Released on 2011-02-14\n\n New Policies:\n * InputOutput::RequireEncodingWithUTF8Layer recommends\n ':encoding(utf8)' over ':utf8' in open() and binmode(). It is severity 5\n because of the bad things that can happen if invalid UTF8 gets loose in\n your code.\n * Modules::ProhibitConditionalUseStatements prohibits\n 'use module' inside a conditional, since the statement is executed\n unconditionally at compile time. Thanks to Peter Guzis for submitting\n the policy and tests in RT #59065.\n\n Policy Changes:\n * CodeLayout::RequireConsistentNewlines produces multiple undefined\n value errors when a violation is found. RT #65663\n * ControlStructures::ProhibitMutatingListFunctions allows s///r,\n which was introduced in 5.13.2.\n * ControlStructures::ProhibitPostfixControls now looks for \"when\". It is\n treated in the same way as \"if\".\n * Documentation::RequirePodSections now honors '## no critic'\n annotation anywhere before the '__END__', '__DATA__', or first\n '=head1', whichever comes first. The line number of the offending\n '=head1 NAME' was added to the violation description. RT #59268.\n * RegularExpressions::ProhibitUnusedCapture now takes account of the\n use of \$- and \$+ (and their English equivalents under 'use\n English') provided the subscripts are literal integers.\n * RegularExpressions::ProhibitUnusedCapture now takes account of the\n use of capture variables in the replacement portion of\n s/.../.../e.\n * Subroutines::ProhibitUnusedPrivateSubroutines now looks inside\n regular expressions.\n * ValuesAndExpressions::ProhibitMagicNumbers now supports Const::Fast.\n * ValuesAndExpressions::ProhibitMagicNumbers now has a\n constant_creator_subroutines parameter to allow the user to\n configure the names of subroutines that create constants. RT #62562.\n * ValuesAndExpressions::ProhibitMismatchedOperators didn't handle file\n test operators properly. Patch by H.Merijn Brand. RT #58751\n * Variables::ProhibitUnusedVariables now looks inside regular\n expressions.\n * ValuesAndExpressions::RequireInterpolationOfMetachars now detects\n and complains about \"\\b\" and \"\\l\" as documented in perlop, and\n \"\\1\" through \"\\7\", which are not documented there, but were found\n in toke.c.\n\n New Developer Features:\n * uses_module(), namespaces(), and subdocuments_for_namespace() methods on\n Perl::Critic::Document.\n * Perl::Critic::Document->new() now accepts a -filename-override argument\n for setting the filename when the source code comes from something\n other than an actual file.\n\n Other Changes:\n * Test::Perl::Critic::Policy no longer exports by default.\n * Build phase now requires Test::Deep.\n * Added example using Try::Tiny to documentation of\n ErrorHandling::RequireCheckingReturnValueOfEval. Suggested by Andy\n Lester on the developers mailing list.\n * In order to get more consistent behavior across all installations of\n Perl::Critic, IPC::Open2 (which actually is part of core), PPIx::Regexp,\n Perl::Tidy, Pod::Spell, and Text::ParseWords are no longer optional\n prerequisites.\n * Now depends upon PPIx::Utilities v1.1.0.\n\n Bug Fixes:\n * Build.PL/Makefile.PL didn't specify a minimum version of version.pm, but\n TestingAndDebugging::RequireUseStrict did. RT #58952\n * Perl::Critic::Annotation needs to look inside the __END__ statement to\n find the true end of the document, otherwise POD policies may give false\n positives. RT #59176\n * BuiltinFunctions::ProhibitStringyEval no longer dies on eval\n \"#...\". RT #60179\n * RegularExpressions::ProhibitUnusedCapture now takes account of the\n %LAST_PAREN_MATCH as well as %+ if English has been loaded. RT #60002\n * Subroutines::ProhibitManyArgs now interprets prototype groups (e.g.\n \\[\$\@%]) as representing a single argument.\n * Require Exporter version 5.63 (versus version 0) to get sane handling of\n export tags. RT# 61071\n * Prevent Subroutines::ProhibitUnusedPrivateSubroutines from failing\n on &_subroutine(). RT #61311\n * Subroutines::ProhibitAmpersandSigils now allows references of the\n form \\( &sub1, &sub2 ). RT #49609\n\n[1.112_002] Released on 2011-02-09\n[1.112_001] Released on 2010-12-14\n\n Changes summarized into 1.113 above. For exact details, see Changes on\n BackPAN.\n\n[1.111] Released on 2010-12-14\n\n Bug Fixes:\n * TestingAndDebugging::ProhibitNoStrict and ProhibitNoWarnings no longer\n rely on the behavior of all() when the list is empty due to change in\n List::MoreUtils 0.28. RT #63816\n\n[1.110_001] Released on 2010-11-30\n\n Changes summarized into 1.113 above. For exact details, see Changes on\n BackPAN. (Yes, all of this stuff was not in 1.111.)\n\n[1.109] Released on 2010-08-29\n\n Bug Fixes:\n * ValuesAndExpressions::RequireInterpolationOfMetachars fix due to changes\n in Email::Address 1.890. Note that this may find problems in code that\n it didn't before, e.g. q<'\@foo'>.\n\n[1.108] Released on 2010-06-22\n\n This is the \"Give Shawn Moore what we promised him a year ago and hurry up\n and get this out before Brad Oaks gives his YAPC::NA talk\" release.\n\n New Policies:\n * Documentation::RequirePodLinksIncludeText\n * Subroutines::ProhibitUnusedPrivateSubroutines\n\n New Features:\n * There is a new global configuration item, 'program-extensions', which\n configures Perl::Critic's idea of which file name extensions represent\n programs. The desired extensions are specified as a space-separated list,\n with leading '.' on each if that is desired. Files whose names end in\n '.PL' will always be considered programs. This can be overridden by\n command option --programs-extensions, which can be specified multiple\n times.\n * There is now a perlcritic --allow-unsafe switch. Without this switch,\n Perl::Critic will silently refuse to load any Policy that is marked\n unsafe. Unsafe Policies are usually ones that may compile or execute\n untrusted code (see Perl::Critic::DynamicPolicy for an example); Policy\n authors can mark their policies as unsafe by overriding the is_safe()\n method.\n * The framework that we use to test Perl::Critic Policies has been\n packaged into a convenient module that you can use to test your own\n Policies. See Test::Perl::Critic::Policy and Perl::Critic::TestUtils\n for details.\n\n Policy Changes\n * BuiltInFunctions::ProhibitLvalueSubstr no longer complains when there\n is a low-precedence operator between the substr() and the assignment\n operator.\n * CodeLayout::ProhibitParensWithBuiltins now allows 'state (\$foo)'. RT\n #52029\n * ErrorHandling::RequireCarping now has an\n allow_in_main_if_not_in_subroutine option to allow \"die\" directly in\n the default namespace.\n * InputOutput::RequireBriefOpen now recognizes CORE::open(),\n CORE::close(), CORE::GLOBAL::open(), and CORE::GLOBAL::close(). RT\n #52391\n * Modules::ProhibitEvilModules now complains by default about the modules\n deprecated by the Perl 5 Porters in 5.12.\n * Modules::RequireVersionVar documentation updated to make clear that \"my\n \$VERSION\" does not work as a module version declaration. RT #56667\n * The RegularExpressions::* policies have been converted from using\n Regexp::Parser to using PPIx::Regexp for their heavy lifting.\n * RegularExpressions::ProhibitCaptureWithoutTest now allows capture\n variables inside when() {}. RT #36081.\n * RegularExpressions::ProhibitUnusedCapture now checks for unused named\n captures.\n * Subroutines::ProhibitManyArgs revised to count only characters in the\n prototype that represent arguments. RT #56627\n * Subroutines::ProhibitNestedSubs no longer complains about scheduled\n blocks (BEGIN, etc.) inside subroutines and vice versa.\n * Subroutines::RequireFinalReturn should now understand a final given/when\n statement, and declare an error if there is no 'default' block or if any\n branch does not return.\n * TestingAndDebugging::RequireUseStrict now accepts 'use 5.011' or greater\n as equivalent to 'use strict'.\n * ValuesAndExpressions::ProhibitMismatchedOperators false positive with\n \"'foo' x 15 . 'bar'\". RT #54524\n * Variables::ProhibitPunctuationVars gave false positives on qr// regexp's\n ending in '\$'. RT #55604\n\n Bug Fixes:\n * The \"## no critic\" annotations now respect #line directives.\n * Annotations on statements spanning more than one line (e.g.\n my \$foo =\n '\$bar'; ## no critic (RequireInterpolationOfMetachars)\n ) are now handled as single-line annotations, not block annotations.\n * All instances of L in the POD have been changed to L.\n L and L were allowed to stand. RT #37485\n * Spaces are now allowed immediately inside the enclosing parentheses in\n \"## no critic ( Foo )\". RT #52038\n * With the introduction of PPIx::Regexp, Perl::Critic no longer dies\n when it encounters a Perl 5.010 regexp. RT #49442.\n * DEVELOPER.pod typo in link to\n ValuesAndExpressions::ProhibitConstantPragma policy. RT #57818\n * Spelling errors in documentation. RT #57375\n * \"die\" used instead of \"croak\". RT #56619\n * Fixed regex test that caused test failures on every Perl 5.11\n (credit Tom Wyant).\n * t/20_policy_pod_spelling.t now works (or at least no longer fails)\n in non-English locales (again). RT #43291 and RT #48986.\n * Perldoc hae broken link for McCabe score definition. RT #53219\n * RT #33935 and #49679 were fixed by upgrading to PPI 1.208\n\n Other Changes:\n * Perl::Critic::Utils::is_unchecked_call() updated to include chmod in the\n set of things covered by autodie (this happened in autodie v2.08). The\n primary effect of this is on InputOutput::RequireCheckedSyscalls.\n * Now depends upon Task::Weaken to ensure that we only install with perls\n where Scalar::Util::weaken() works.\n * Email::Address was optional, but is now required. So everyone\n gets the optimal behavior from RequireInterpolationOfMetachars.\n * Some infrastructure has been extracted to the new PPIx-Utilities\n distro. It is also a required dependency here. Over time a good\n portion of Perl::Critic::Utils* will be migrated to this distribution.\n * Perl::Critic::Utils::PPI::get_constant_name_element_from_declaring_statement()\n is deprecated because it doesn't handle multiple constants being\n declared within a single \"use constant\" statement. Use\n PPIx::Utilities::Statement::get_constant_name_elements_from_declaring_statement()\n instead.\n * Removed all uses of Perl::Critic::Utils::PPIRegep. Since the\n PPIx::Regexp update, Perl::Critic only used get_match_string() and\n friends, which were superseded by the corresponding PPI methods.\n Perl::Critic now depends on PPI-1.208 or newer.\n * Moved Perl::Critic::Utils::PPIRegexp to the Perl-Critic-Deprecated.\n * The PolicySummary.pod file is now generated when the distribution\n is created, rather than when you install it. This ensures the file\n will be available on http://search.cpan.org. Thanks to Bear Longyear\n for bringing this to our attention.\n\n[1.107_001] Released on 2010-06-20\n\n Changes summarized into 1.108 above. For exact details, see Changes on\n BackPAN.\n\n[1.106] Released on 2010-05-10\n\n Bug Fixes:\n * NamingConventions::Capitalization fix for PPI 1.212. RT #57348\n\n[1.105_03] Released on 2010-03-21\n[1.105_02] Released on 2010-01-23\n[1.105_01] Released on 2010-01-16\n\n Changes summarized into 1.108 above. For exact details, see Changes on\n BackPAN.\n\n[1.105] Released on 2009-09-07\n\n Bug Fixes:\n * Variables::ProhibitPunctuationVars would complain about \"%-\" appearing\n anywhere in a string. RT #49016\n\n Policy Changes:\n * InputOutput::RequireCheckedSyscalls now complains about unchecked \"say\"\n by default. RT #37487\n\n[1.104] Released on 2009-08-23\n\n This release is dedicated to Tom Wyant in appreciation of the amount of\n effort he put into the enhancements and bug fixes in this release, for\n having the patience to wait for the amount of time that it took to get\n them out, and for overall awesomeness. Thank you, Tom.\n\n New Policies:\n Objects::ProhibitIndirectSyntax\n ValuesAndExpressions::ProhibitComplexVersion\n ValuesAndExpressions::RequireConstantVersion\n\n New Optional Requirement:\n * Email::Address, if you want\n ValuesAndExpressions::ProhibitInterpolationOfLiterals to properly ignore\n email addresses.\n\n New Features:\n * Perlcritic will list the names of files with violations if given the\n --files-with-violations option, or the names of files without\n violations if given the --files-without-violations options. These\n have synonyms -l and -L respectively.\n * Perlcritic has a new --list-enabled option, which lists the Policies\n that will be enforced, given the current configuration. This is\n useful if you've written a complex command-line or modified your\n .perlcriticrc file and you want to see which Policies *would*\n be used with the current configuration, if you were actually going\n to critque a file with it.\n * Perl::Critic::Violation now takes #line directives into account in the\n %F, %f, and %l formats. You can get the old values via the new %G, %g,\n and %L formats.\n\n Policy Changes:\n * CodeLayout::ProhibitParensWithBuiltins was complaining in certain cases\n where parentheses are required due to operator precedence. RT #46862.\n * ControlStructures::ProhibitMutatingListFunctions no longer complains\n about uses of tr/// that don't modify the operand. Reported by EDAVIS,\n RT #44515.\n * Miscellanea::RequireRcsKeywords now accepts \"qw\$Keyword: ...\$\". RT\n #45196.\n * Modules::RequireFilenameMatchesPackage now respects logical filenames\n defined by the \"#line\" directives. This allows the Policy to work\n properly with IDEs and code generators.\n * NamingConventions::Capitalization now allows fully qualified subroutine\n declarations ( e.g. \"sub Foo::Bar::baz {...}\" ). However, the\n non-package part of the subroutine name must still conform to whatever\n capitalization rule you have chosen.\n * RegularExpressions::ProhibitCaptureWithoutTest no longer complains if\n the regex is followed by an \"or die\" or similar. Reported by EDAVIS,\n RT #36081.\n * RegularExpressions::ProhibitComplexRegexes no longer counts variable\n substitutions in the length. Reported by EDAVIS, RT #36098.\n * RegularExpressions::ProhibitUnusedCapture now considers the body of\n while loops and not just their condition. Reported by EDAVIS, RT\n #38942.\n * ValuesAndExpressions::ProhibitVersionStrings was getting confused by\n comments. Reported by Kevin Ryde, RT #44986.\n * ValuesAndExpressions::RequireInterpolationOfMetachars now allows sigils\n in the arguments to \"use vars\". Contributed by Kevin Ryde, RT #47318.\n * ValuesAndExpressions::RequireInterpolationOfMetachars now properly\n ignores email addesses, if you have Email::Address installed. Inspired\n by the Kevin Ryde contribution in RT #47318.\n * Variables::ProhibitPunctuationVars gained the ability to look inside\n interpolated strings. Doing this correctly is challenging and things\n may not work out right; how the policy does this can be controlled via\n the new \"string_mode\" option. Contributed by Edgar Whipple\n .\n * Variables::ProhibitPunctuationVars now ignores \$] by default since there\n is no English.pm equivalent.\n\n Other Bug Fixes:\n * Perl::Critic::Utils::parse_arg_list() was slurping up the \"or die ...\"\n portion of \"open my \$foo, 'somefile' or die ...\", causing\n InputOutput::ProhibitTwoArgOpen to not complain about this example.\n Reported by Alexandr Ciornii, RT #44554.\n\n Minor Changes\n * The line count emitted by the --statistics option is further broken down\n by line content.\n\n Minor Documentation Fixes:\n * ValuesAndExpressions::ProhibitInterpolationOfLiterals. Reported by\n Debian in http://bugs.debian.org/542814, RT #48936\n\n Build Fixes:\n * There wasn't a specific version given for the List::MoreUtils dependency\n and we're using features that weren't avialable until 0.19. So, we now\n require version 0.19. Noticed by John J. Trammell, RT #48917.\n * Some tests were tied to the specific \"true\" and \"false\" values that some\n functions were returning. Reported by Michael Schwern, RT #43910.\n\n Other News:\n * Komodo version 5.1.1 now has built-in support for Perl-Critic,\n if you have the Perl::Critic and criticism modules installed.\n Both should be available through the ActiveState Perl Package\n Manager ppm(1).\n\n[1.103] Released on 2009-08-03\n\n Fix configure_requires prerequisite on Module::Build 0.34_02.\n\n[1.102] Released on 2009-08-03\n\n Bug fixes:\n * Works with PPI 1.205. Yay for 5.10 support!\n * Variables::RequireLexicalLoopIterators didn't work correctly on foreach\n loops with labels.\n\n[1.101_003] Released on 2009-07-22\n[1.101_002] Released on 2009-07-21\n[1.101_001] Released on 2009-07-21\n\n Changes summarized into 1.102 above. For exact details, see Changes on\n BackPAN.\n\n[1.100] Released on 2009-07-17\n\n This is a POD fix release to deal with issues identified by Test::POD\n 1.40. There is no functional difference between this release and 1.098.\n This is the last release of Perl::Critic that will be compatible with PPI\n 1.203. PPI's parsing of for(each)? loops is changing in its next release\n in an incompatible manner and there will be a release in the near future\n to make Perl::Critic compatible with that change.\n\n[1.099_002] Released on 2009-06-27\n[1.099_001] Released on 2009-06-25\n\n Experimental releases. For exact details, see Changes on BackPAN.\n\n[1.098] Released on 2009-03-07\n\n Some Exciting News:\n The Perl Development Kit (PDK 8.0) from ActiveState now includes a\n very slick graphical interface to Perl-Critic. I highly recommend\n that you check it out. Here's a link to screenshots and docs:\n\n http://docs.activestate.com/pdk/8.0/PerlCritic_gui.html\n\n New Features:\n * Violation coloring is now configurable via command line or profile. The\n profile entries are color-severity-highest, -high, -medium, -low, or\n -lowest. Numbers are accepted in lieu of named severities (e.g.\n 'color-severity-5' for 'color-severity-highest'), and 'colour' is\n accepted in lieu of 'color'.\n * Handling of unrecognized policy configuration items is now controlled by\n the profile_strictness. The default is to warn about them. The previous\n default was that they were fatal.\n * -p is now a synonym for --profile.\n * The --verbose option for perlcritic now supports a %C format that will\n displays the class of PPI::Element that caused the violation.\n\n Policy Changes:\n * ControlStructures::ProhibitNegativeExpressionsInUnlessAndUntilConditions\n didn't include \"pbp\" in its default themes even though it is derived\n from the book. Now it does. :]\n * ErrorHandling::RequireCarping now allows a here document as the last\n element if the \"allow_messages_ending_with_newlines\" option is true.\n * Fix Subroutines::ProhibitAmpersandSigils so it allows \"defined(&x)\" as\n well as \"defined &x\". Patch from Kevin Ryde, RT #38855.\n * Subroutines::ProtectPrivateSubs now has an \"allow\" option to specify\n subroutines which are exempt from this policy. RT #38678.\n Additionally, a \"private_name_regex\" option has been added that allows\n you to specify what a private subrouting name looks like.\n * Subroutines::RequireArgUnpacking now has an \"allow_subscripts\" option\n to allow array slices and elements. RT #34009.\n * Subroutines::RequireArgUnpacking now has an \"allow_delegation_to\" option\n to allow the usual delegation idiom. Delegation to 'SUPER::' and\n 'NEXT::' are allowed by default. RT #33839.\n * Subroutines::RequireArgUnpacking no longer generates a false positive\n for '\$\$_[]', which is an obfuscated way of saying '\$_->[]'. RT #37713.\n * ValuesAndExpressions::ProhibitMagicNumbers now has an\n allow_to_the_right_of_a_fat_comma option, which defaults to true. Note\n that it currently only works /directly/ to the right of a fat comma.\n * Variables::ProhibitMatchVars had its default themes changed to \"core\n performance pbp\", instead of \"core bugs pbp\" because, while the match\n variables make regular expressions slow, it doesn't cause them to not\n work correctly.\n * Variables::ProhibitPackageVars has had FindBin and Log::Log4perl added\n to the default exemptions.\n * Variables::ProhibitReusedNames now has an \"allow\" option to specify\n names that can be reused. It defaults to enabling \$self and \$class. RT\n #42767.\n * Variables::RequireLocalizedPunctuationVars has a customizable set of\n exemptions via the \"allow\" option.\n\n New Developer Features:\n * The guts of perlcritic have been moved to Perl::Critic::Command. You\n can invoke Perl::Critic::Command::run() to get the equivalent of running\n the command. (Note, however, this interface WILL change, so don't count\n on the current one.)\n * Modules have had a \"INTERFACE SUPPORT\" section added which states\n whether the Perl::Critic developers consider the particular module is\n public or not. Any removal of functionality from a public module will\n go through a deprecation cycle. Non-public modules may have their\n interfaces changed without notice.\n * P::C::Policy now has an is_enabled() method.\n * P::C::Violation now has an element_class() method.\n\n Bug Fixes:\n * CodeLayout::ProhibitTrailingWhitespace didn't notice cases where PPI\n would produce instances of PPI::Token::Whitespace that contained\n multiple lines.\n * Subroutines::ProtectPrivateSubs no longer regards the exportable POSIX\n subroutines whose names begin with underscore as private. RT #38678.\n * Subroutines::RequireArgUnpacking mishandled a complicated sitation with\n \$_ being an array reference. RT #39601.\n * Variables::RequireLocalizedPunctuationVars now applies to subscripted\n names. RT #29384.\n\n Internals:\n * The guts of Build.PL and Makefile.PL have been rearranged.\n\n[1.097_002] Released on 2009-03-01\n[1.097_001] Released on 2009-03-01\n\n Changes summarized into 1.098 above. For exact details, see Changes on\n BackPAN.\n\n[1.096] Released on 2009-02-01\n\n New Policies:\n * ValuesAndExpressions::ProhibitSpecialLiteralHeredocTerminator\n\n Policy Changes:\n * Documentation::PodSpelling now has a stop_words_file option.\n * Modules::ProhibitEvilModules now has a modules_file option.\n\n Bug Fixes:\n * ErrorHandling::RequireCarping will now allow a literal newline\n as well as \"\\n\". Fixed by Kyle Hasselbacher, RT #25046\n * Fix InputOutput::ProhibitTwoArgOpen so it allows '-|' or '|-' as the\n second of two arguments. Patches from Kyle Hasselbacher and Leland\n Johnson, RT #42384.\n * InputOutput::RequireBracedFileHandleWithPrint applies to printf as well\n as print. Fixed by Kyle Hasselbacher, RT #42537.\n * TestingAndDebugging::RequireUseStrict and\n TestingAndDebugging::RequireUseWarnings are no longer fooled by a\n block-scoped pragma. RT #42310.\n * ValuesAndExpressions::RequireInterpolationOfMetachars allows for escaped\n backslashes. Fixed by Tom Wyant, RT #38530.\n * Fix for problem in P::C::Document in dealing with underscores in\n expressions like \"use 5.009_001\". Patch by Kevin Ryde, RT #36570 and\n #42089.\n * Fix in extras/perlcritic.el for a radio button. Patch by Kevin Ryde, RT\n #42190.\n * Fix distclean target in Makefile.PL. Patch by Richard Soderberg,\n RT #42088.\n * Fix temporary files not being cleaned up after tests. Patch by Kyle\n Hasselbacher, RT #41443.\n * Deal with changes in Pod::Parser v1.36 in test in t/05_utils_pod.t.\n\n Documentation improvements contributed by Mark Grimes in response to RT\n #41942.\n\n[1.095_001] Released on 2009-01-18\n\n Changes summarized into 1.096 above. For exact details, see Changes on\n BackPAN.\n\n[1.094001] Released on 2009-01-01\n\n Bug Fixes:\n * Tests would fail on systems without Regexp::Parser installed.\n\n[1.094] Released on 2009-01-01\n\n Incompatible Changes:\n * The way that \"## no critic\" markers was refactored. As\n a result, we discovered that the syntax for the markers was pretty\n vague. If you didn't do it just right, it would disable all policies,\n and not just the specific ones that you wanted. So we've tightened this\n up a bit. If you followed the examples that have been in the docs for\n the last couple years, then you should be fine. But if you've been\n using certain other variations in your \"## no critic\" markers, then you\n might suddenly find yourself violating the new\n ProhibtUnrestrictedNoCritic policy. To fix this, just make sure your\n Policy names appear in parentheses:\n\n ## no critic Foo, Bar, Baz # wrong!\n ## no critic Foo Bar Baz # wrong!\n\n\n ## no critic (Foo, Bar, Baz) # ok!\n ## no critic qw(Foo Bar Baz) # also ok!\n\n * The deprecated \$FORMAT variables for Perl::Critic::Policy and\n Perl::Critic::Violation no longer exist. Use the corresponding\n get_format() and set_format() functions instead.\n\n New Policies:\n * Miscellanea::ProhibitUnrestrictedNoCritic\n * Miscellanea::ProhibitUselessNoCritic\n * NamingConventions::Capitalization\n * Subroutines::ProhibitReturnSort\n * Variables::ProhibitReusedNames\n\n Removed Policies:\n * NamingConventions::ProhibitMixedCaseSubs and\n NamingConventions::ProhibitMixedCaseVars have been moved to a separate\n Perl-Critic-Deprecated distribution. The\n NamingConventions::Capitalization policy does everything they do, plus\n more.\n\n Policy Changes:\n * BuiltinFunctions::ProhibitStringyEval now has an allow_includes option\n that makes it behave (mostly) like Ricardo SIGNES'\n Perl::Critic::Policy::Lax::ProhibitStringyEval::ExceptForRequire.\n * InputOutput::RequireCheckedClose, InputOutput::RequireCheckedOpen, and\n InputOutput::RequireCheckedSyscalls now all support autodie.\n Unfortunately, autodie is currently treated like a module and not a\n pragma, which means that the lexical scoping is not taken into account.\n * InputOutput::RequireCheckedSyscalls now has an exclude_functions\n parameter.\n * Modules::ProhibitEvilModules now allows you to specify what the\n description of a use of a bad module should be, to, say, suggest that\n people use autodie instead of Fatal.\n * Subroutine::ProhibitExcessComplexity violation descriptions now include\n the name of the subroutine, thanks to Andreas Koenig, RT #40070.\n * TestingAndDebugging::RequireUseStrict and\n TestingAndDebugging::RequireUseWarnings now have equivalent_modules\n parameters that allow you to designate other modules as being equivalent\n to the strict and warnings pragmata. This one is for all you Moose fans\n out there. :]\n\n Bug Fixes:\n * ControlStructures::ProhibitUnreachableCode would treat package\n statements as unreachable. Fixed by Kevin Ryde. RT #41734\n * Fix warning from InputOutput::ProhibitOneArgSelect when select was\n called with no arguments. RT #41926\n * Miscellanea::RequireRcsKeywords couldn't find keywords after __END__\n that didn't look like part of POD.\n * Modules::RequireFilenameMatchesPackage would incorrectly complain about\n programs. Yet more greatness contributed by Schwern. RT #39024.\n * If a perlcriticrc file referred to a policy that wasn't installed and\n the profile-strictness option was set to \"fatal\",\n Perl::Critic::PolicyFactory fell over instead of reporting the\n problematic policy name.\n\n Miscellanea:\n * Perl::Critic::Violation will automatically strip trailing periods\n from your Policy description and explanation strings. This ensures that\n the punctuation is consistent with the format specified by the user via\n the -verbose formatting options.\n\n New Developer Features:\n * Perl::Critic::Policy::prepare_to_scan_document() is now checked and a\n Policy can disable itself for just a single document, which can speed\n things up.\n\n[1.093_03] Released on 2008-12-11\n[1.093_02] Released on 2008-10-30\n[1.093_01] Released on 2008-09-07\n\n Changes summarized into 1.094 above. For exact details, see Changes in\n 1.093_003 on BackPAN.\n\n[1.092] Released on 2008-09-02\n\n Bug Fixes:\n * Fixed POD errors that were causing build failures. Sorry\n about that.\n\n[1.091] Released on 2008-09-01\n\n New Policies:\n * RegularExpressions::RequireDotMatchAnything\n\n New Features:\n * perlcritic now supports a -pager option, so you can more easily\n send the output to your favorite pager. You can set this option\n on the command-line or in your .perlcriticrc file. See the\n perlcritic perldoc for more details. Credit to Michael Schwern.\n * The output from \"perlcritic -doc PATTERN\" will be automatically\n sent to your pager if you have set the -pager option.\n\n Policy Changes:\n * CodeLayout::ProhibitQuotedWordLists no longer applies if the list\n contains any non-words, by default. A non-word is anything that does\n not match /[\\w-]+/. You can restore the former behavior by setting the\n \"strict\" option. RT #37886.\n * CodeLayout::ProhibitQuotedWordLists also now applies to the import\n arguments of a C statement. RT #24467.\n * ErrorHandling::RequireCheckingReturnValueOfEval now recognizes ternary\n left-sides as valid checks.\n * RegularExpressions::RequireExtendedFormatting gains a\n minimum_regex_length_to_complain_about option. Also, regexes that\n contain only word and whitespace characters are now exempt from this\n policy, by default; you can make it complain about them by turning on\n the new strict option. Contributed by Michael Schwern. RT #38531.\n * TestingAndDebugging::ProhibitNoWarnings now supports a\n allow_with_category_restriction option, thanks to Michael Schwern.\n RT #38514.\n * CodeLayout::ProhibitHardTabs now allows leading tabs in qw() word lists\n and regexes with the /x modifier. You can still configure this\n policy to forbid all hard tabs, if you like. RT #32440\n\n Bug Fixes:\n * perlcritic should now work under PAR. RT #38380.\n * URL for our repository in META.yml now works for anonymous\n checkout. The password is \"\" (empty). RT #38628.\n * color for high-severity violations is now magenta because\n it is more redable than yellow on white backgrounds. RT #38511.\n\n[1.090] Released on 2008-07-22\n\n Bug Fixes:\n * Test was incorrectly failing when Regexp::Parser wasn't installed.\n\n[1.089] Released on 2008-07-21\n\n Minor Enhancements:\n * -s is now a synonym for --single-policy.\n\n Policy Changes:\n * Subroutines::ProhibitBuiltinHomonyms now also prohibits subroutines\n with the same name as a Perl keyword (e.g. if, foreach, while).\n Inspired by RT #37632.\n * Subroutines::ProtectPrivateSubs now allows expressions like\n \"shift->_some_private_method();\". Note that this *only* applies\n to the \"shift\" function -- a private method call on the right of any\n other bareword still causes a violation. RT #34713.\n * Subroutines::RequireFinalReturn now includes exec in the set of things\n that mark a successful return. RT #37672\n * ValuesAndExpressions::ProhibitInterpolationOfLiterals now takes a\n allow_if_string_contains_single_quote option. Contributed by Ed\n Avis . RT #36125.\n * ValuesAndExpressions::RequireInterpolationOfMetachars now supports a\n rcs_keywords option to allow for the common case where those require\n dollar signs.\n\n Bug Fixes:\n * BuiltinFunctions::ProhibitSleepViaSelect would complain if there were\n three undefs as arguments to select(), but one of them was the timeout.\n RT #37416.\n * Reduced false positives in\n RegularExpressions::ProhibitSingleCharAlternation. Thanks to\n Andy Lester and Elliot Shank test cases.\n * RegularExpressions::ProhibitUnusedCapture would complain if there were\n multiple captures used in a substitution, e.g. s/(.)(.)/\$2\$1/.\n * Subroutines::ProhibitAmpersandSigils no longer complains about\n \"sort &foo(...)\".\n * Makefile.PL, Build.PL and other \".PL\" scripts which typically do not\n have a shebang are no longer mistaken as modules. This prevents\n spurious warnings from Modules::RequireEndWithOne. RT #20481.\n\n Internals:\n * Tests are now self compliant.\n\n[1.088] Released on 2008-07-04\n\n New Policies\n * ErrorHandling::RequireCheckingReturnValueOfEval\n\n Policy Changes:\n * ValuesAndExpressions::ProhibitLeadingZeros now accepts octal numbers\n for the Unix permissions argument to chmod, dbmopen, mkdir, sysopen, or\n umask, by default. Use the \"strict\" option to get the old behavior.\n RT #31977.\n * Due to the consensus at YAPC::NA 2008,\n Variables::ProhibitUnusedVariables default severity has been raised to\n medium/3.\n\n Minor Changes:\n * The perlcritic \"--Version\" option is now \"--version\" in order to act\n like the rest of the world.\n\n[1.087] Released on 2008-06-21\n\n Policy Changes:\n * CodeLayout::ProhibitParensWithBuiltins no longer complains about\n sort(foo(\@x)).\n * TestingAndDebugging::RequireUseWarnings will not complain about files\n that contain a \"use 5.005\" statement or similar for perls prior to 5.6.\n Lesson of the day: computer conferences where you can meet in the real\n world can clarify conversations greatly. Good to finally meet you Adam.\n * InputOutput::ProhibitTwoArgOpen similarly will not complain if there's\n a \"use/require 5.005\" statement in the file. RT #34385.\n\n Bug fixes:\n * Perl::Critic can now critique a file named \"0\". However, PPI will give\n a parse error until the next version comes out. Fixes RT #36127.\n * Moved detection of the lack of any enabled Policies from P::C::Config\n to Perl::Critic. This was causing the perlcritic.t in Parrot to fail.\n Note, however, there are plans afoot to change how Perl::Critic is\n configured and things that depend upon that may break. Please contact\n users\@perlcritic.tigris.org and tell us how you're using P::C::Config\n directly so that we can take your needs into account.\n\n[1.086] Released on 2008-06-12\n\n Policy Changes:\n * NamingConventions::ProhibitAmbiguousNames now specifies the name that\n it had problems with in its violation descriptions.\n\n Bug fixes:\n * The color option wasn't being correctly set from a .perlcriticrc.\n RT #36569.\n\n Minor changes:\n * --colour is now a synonym for --color.\n\n[1.085] Released on 2008-06-07\n\n New Policies:\n * Documentation::RequirePackageMatchesPodName\n\n Policy Changes:\n * Variables::ProhibitUnusedVariables detects a few more cases. It's\n still very limited, though.\n\n Bug fixes:\n * ControlStructures::ProhibitUnreachableCode didn't notice \"until\" was an\n conditional expression.\n\n Minor documentation updates.\n\n[1.084] Released on 2008-05-24\n\n New Features:\n * perlcritic now supports a --list-themes option.\n * You can specify the maximum number of violations you want per Policy\n per document. Developers can give a default value for this for a\n Policy by overriding default_maximum_violations_per_document().\n See RequireUseStrict and ProhibitMagicNumbers for examples.\n\n Policy Moved:\n * The ValuesAndExpressions::ProhibitMagicNumbers policy has been moved\n from Perl::Critic::More into the primary Perl::Critic distribution.\n\n New Policies:\n * Variables::ProhibitUnusedVariables (very dumb, limited initial\n implementation.)\n * ControlStructures::ProhibitLabelsWithSpecialBlockNames\n Contributed by Mike O'Regan. Kickin' ass, Mike.\n\n Policy Changes:\n * ControlStructures::ProhibitUnreachableCode now handles the perl 5.10\n \"//\" and \"err\" operators. RT #36080\n * InputOutput::RequireBriefOpen now ignores opens of STDIN, STDOUT,\n and STDERR. You're generally trying to make long-lasting global\n effects when manipulating these. (RT #35774)\n * RegularExpressions::ProhibitUnusualDelimiters now supports an\n \"allow_all_brackets\" option.\n * RegularExpressions::RequireBracesForMultiline now supports an\n \"allow_all_brackets\" option.\n * TestingAndDebugging::RequireUseStrict now accepts \"use Moose::Role\"\n as equivalent to \"use strict\". (RT #34838)\n * TestingAndDebugging::RequireUseWarnings now accepts \"use Moose::Role\"\n as equivalent to \"use warnings\". (RT #34838)\n * ValuesAndExpressions::ProhibitMagicNumbers now accepts constant\n subroutines.\n * Variables::ProhibitMatchVars no longer detects \"use English;\".\n This problem is detected in a more clear way by\n Modules::RequireNoMatchVarsWithUseEnglish.\n * Variables::ProhibitPerl4PackageNames no longer complains about\n \$'/\$POSTMATCH. RT #36059\n * Variables::RequireLocalizedPunctuationVars now allows the use of \"my\".\n RT #33937\n\n Bug Fixes:\n * No longer falls over if a single file has a parse error.\n\n New Developer Features:\n * If a document specifies a minimum perl version, e.g. \"use 5.008003\",\n P::C::Document::highest_explicit_perl_version() will tell you what it\n is.\n * The parameter to P::C::Policy::initialize_if_enabled is now a\n P::C::PolicyConfig object instead of a hash reference.\n\n Minor Changes:\n * LOTS of documentation updates.\n * A few more statistics are emitted by perlcritic with the --statistics\n option.\n * perlcritic --profile-proto now includes policy abstracts in its\n output.\n\n Prerequisites:\n * Now depends upon PPI 1.203.\n * New dependency upon version.\n\n[1.083_006] Released on 2008-05-20\n[1.083_005] Released on 2008-05-19\n[1.083_004] Released on 2008-05-18\n[1.083_003] Released on 2008-05-17\n[1.083_002] Released on 2008-05-17\n[1.083_001] Released on 2008-04-13\n\n Changes summarized into 1.084 above. For exact details, see Changes in\n 1.083_006 on BackPAN.\n\n[1.082] Released on 2008-03-08\n\n New Features:\n * A new metadata system for defining policy parameters/options has been\n added. This makes the life of policy authors easier because\n configuration validation and parsing can be taken care of\n automatically, in most cases. This allows greater integration with\n IDEs and allows the perlcritic \"--profile-proto\" option to produce\n better output.\n\n Note: This change does NOT REQUIRE ANY CHANGES to policies outside of\n this distribution; they should continue to work as is. However, use\n of this facility can reduce the size of your code and provide the\n means for tools to discover more about your policy. If this change\n does break any of your policies, please let us know.\n\n To learn how to take advantage of this facility, read\n Perl::Critic::DEVELOPER and look at the source of any of the\n configurable policies included in this distribution.\n\n There is a discussion of the design considerations for this facility in\n the source repository under doc/PolicyParameter_Notes.pod.\n\n * Added support for \"criticism-fatal\" option in your perlcriticrc\n file. This will be used by the criticism pragma to cause execution\n to abort if the file contains any violations.\n\n New Policy:\n * Module::RequireNoMatchVarsWithUseEnglish\n\n Policy Changes:\n * Added an allow_last_statement_to_be_comma_separated_in_map_and_grep\n option to ValuesAndExpressions::ProhibitCommaSeparatedStatements.\n Partial response to http://rt.cpan.org/Public/Bug/Display.html?id=27654.\n * ControlStructures::ProhibitPostfixControls gains the ability to have\n the flow control statements allowed to be modified. This in response\n to RT #29540.\n * TestingAndDebugging::RequireUseStrict now accepts \"use Moose\" as\n equivalent to \"use strict\".\n * TestingAndDebugging::RequireUseWarnings now accepts \"use Moose\" as\n equivalent to \"use warnings\".\n\n Bug Fixes:\n * RT #31281 perlcritic doesn't recognize \"#!/bin/env perl\" shebang\n * Replace usage of Unicode property escapes with POSIX character classes\n order to restore 5.6 compatability.\n * RT #30388 ValuesAndExpressions::ProhibitVersionStrings complained\n about numbered directories in \"use lib\".\n * Fixed handling of badly behaved spelling programs in PodSpelling.\n\n[1.081_006] Released on 2008-03-02\n[1.081_005] Released on 2007-12-29\n[1.081_004] Released on 2007-12-20\n[1.081_003] Released on 2007-12-16\n[1.081_002] Released on 2007-12-16\n[1.081_001] Released on 2007-12-15\n\n Changes summarized into 1.082 above. For exact details, see Changes in\n 1.081_006 on BackPAN.\n\n[1.080] Released on 2007-11-11\n\n New Features:\n * Allow a \"## no critic\" statement after a shebang on line 1 of a\n file. This allows users to block violations that apply to\n whole files and still allow shebangs.\n\n New Policies: (funded by a Perl Foundation grant)\n * InputOutput::ProhibitExplicitStdin\n * RegularExpressions::ProhibitFixedStringMatches\n * RegularExpressions::RequireBracesForMultiline\n * RegularExpressions::ProhibitUnusualDelimiters\n * RegularExpressions::ProhibitUnusedCapture\n * RegularExpressions::ProhibitComplexRegexes\n * RegularExpressions::ProhibitSingleCharAlternation\n * RegularExpressions::ProhibitEscapedMetacharacters\n * RegularExpressions::ProhibitEnumeratedClasses\n * InputOutput::RequireBriefOpen\n * InputOutput::RequireCheckedSyscalls\n\n Other New Policies\n * ControlStructures::ProhibitNegativeExpressionsInUnlessAndUntilConditions\n\n Policy Changes:\n * Variables::ProhibitConditionalDeclarations now permits you to local-ize\n variables in conditional declarations. This makes sense, since\n C is actually a variable modifier, rather than a declaration.\n Thanks to David Golden for reporting this.\n\n New Developer Features:\n * Perl::Critic::Utils::PPIRegexp encapsulates interaction with\n the PPI Regexp token classes. Those classes have very sparse\n APIs, so this package hides away the ugly fiddling with PPI\n internals.\n * Added a new optional_modules parameter for the .run syntax.\n\n Bug fixes:\n * PPI::Structure::List can now contain multiple children,\n so P::C::Utils::parse_arg_list() needs to handle it.\n\n This was done in the process of fixing\n http://rt.cpan.org/Ticket/Display.html?id=24924, which was a problem\n with TestingAndDebugging::RequireTestLabels.\n\n * ValuesAndExpressions::ProhibitLongChainsOfMethodCalls wasn't resetting\n chain length when it ran into the end of a sub-expression.\n\n http://rt.cpan.org/Public/Bug/Display.html?id=30040\n\n * ValuesAndExpressions::ProhibitCommaSeparatedStatements was reporting\n false positives when builtins which accept both no and multiple\n arguments were involved.\n\n http://rt.cpan.org/Public/Bug/Display.html?id=27654\n\n Internals:\n * Removed all use of Carp in favor of exceptions.\n\n Prerequisites:\n * Now requires PPI 1.201. A number of workarounds for PPI bugs have been\n removed.\n * New dependency upon Exception::Class.\n\n Installation:\n * Use Devel::CheckOS to see whether Perl::Critic is being installed on\n a Solaris system and warn about tar(1) chopping file names off if it\n is.\n\n[1.079_003] Released on 2007-10-22\n[1.079_002] Released on 2007-10-21\n[1.079_001] Released on 2007-10-09\n\n Changes summarized into 1.080 above. For exact details, see Changes in\n 1.079_003 on BackPAN.\n\n[1.078] Released on 2007-09-19\n\n Restore Perl::Critic::TestUtils::should_skip_author_tests() and\n get_author_test_skip_message(). Some Perl::Critic add-on distributions\n are using them.\n\n[1.077] Released on 2007-09-15\n\n Note: if you don't have any problems installing Perl::Critic 1.076, there\n is no need to upgrade to this version. There are no functionality\n changes. This release only contains changes related to installation that\n a few people were experiencing.\n\n Minor changes:\n * Removed build-time use of Readonly, again, due to problems some people\n were having when trying to compile the code by hand, rather than using\n CPAN(PLUS)?.\n * Don't run author tests if there's a .svn directory present because\n users who grabbed the code from the source repository were executing\n them and getting failures.\n * Don't generate optional, module-hiding test wrappers if author tests\n are not enabled.\n\n\n[1.076] Released on 2007-09-07\n\n It appears from reports on the 1.075_001 release that the subroutine\n sigils were indeed the problem. Release to the general populace.\n\n\n[1.075_001] Released on 2007-09-06\n\n Bug Fixes:\n Undo the changes in 1.073 and 1.074. Instead, stop using the subroutine\n sigil in import and export lists. It is suspected that the problem lies\n with Exporter stripping off ampersands.\n\n[1.074] Released on 2007-09-04\n\n Bug Fixes:\n Repeat the Makefile.PL change on\n t/generate_without_optional_dependencies_wrappers.PL.\n I love CPAN Testers.\n\n[1.073] Released on 2007-09-04\n\n Bug Fixes:\n Work around problems with the combination of Exporter & Readonly in\n Makefile.PL on some machines.\n\n[1.072] Released on 2007-09-03\n\n Bug Fixes:\n * The Makefile generated by Makefile.PL was not syntactically correct\n according to some versions of Solaris. Thanks to Diab Jerius\n (DJERIUS) for discovery and testing.\n * Fixed mis-definition of \"quiet\" value for the \"--profile-strictness\"\n option.\n * Enhanced testing with the absence of optional modules.\n\n[1.071] Released on 2007-08-24\n\n The \"Brown Paper Bag\" Release\n\n Bug Fixes:\n * Tests would not pass in environments that did not have all optional\n dependencies installed.\n\n[1.07] Released on 2007-08-21\n\n New Policies: (funded by a Perl Foundation grant)\n * BuiltinFunctions::ProhibitBooleanGrep\n * BuiltinFunctions::ProhibitComplexMappings\n * Documentation::PodSpelling\n * InputOutput::ProhibitJoinedReadline\n * Subroutines::ProhibitManyArgs\n * Subroutines::RequireArgUnpacking\n * ValuesAndExpressions::ProhibitImplicitNewlines\n * Variables::RequireLocalizedPunctuationVars\n\n Other New Policies\n * Subroutines::ProhibitNestedSubs\n\n New Features:\n * The \"perlcritic --profile-proto\" output now includes the \"add_themes\"\n parameter for each policy.\n * The perlcritic \"--strict-profile\" option has been replaced with a\n \"--profile-strictness\" option. This new option takes values of \"warn\"\n (the default), \"fatal\", and \"quiet\", which controls what happens with\n ignorable problems in a .perlcriticrc file.\n\n New Developer Features:\n * Perl::Critic::Policy now has an overridable initialize_if_enabled()\n method which allows a Policy to perform expensive initialization after\n it has been determined whether the user has it enabled or not. Also,\n this method allows a Policy to say that it should be disabled\n regardless of what the user says.\n\n Actually, use of this method is now encouraged over using a\n constructor.\n\n Other Stuff:\n * Now requires the Readonly module in order to be more self-compliant.\n\n[1.061] Released on 2007-07-24\n\n Bug Fixes:\n * Fix P::C::Theme-- Exporter in Perl 5.6 does not export import(), so you\n must subclass it. *sigh*\n * Fix P::C::Config::_validate_and_save_theme()-- eval of an empty string\n does not reset \$\@/\$EVAL_ERROR in Perl 5.6.\n\n Big thanks to Anirvan Chatterjee for identifying and helping debug these\n issues.\n\n[1.06] Released on 2007-06-27\n\n New Features:\n * perlcritic now emits errors for all the problems it can find for the\n global options in the command-line parameters and .perlcriticrc file,\n rather than bailing on the first one it encounters.\n\n * perlcritic now has a \"--strict-profile\" option which will make warnings\n about problems in a profile fatal.\n\n * perlcritic now has a \"--statistics-only\" option which suppresses the\n display of individual violations and only shows the additional output\n produced by the \"--statistics\" option.\n\n Feature requests:\n * A value for \"color\" can now be specified in a .perlcriticrc.\n http://rt.cpan.org/Ticket/Display.html?id=24877\n\n New Policies:\n * ValuesAndExpressions::ProhibitQuotesAsQuotelikeOperatorDelimiters\n As suggested in http://rt.cpan.org/Ticket/Display.html?id=23290.\n * ValuesAndExpressions::ProhibitLongChainsOfMethodCalls\n * Modules::ProhibitExcessMainComplexity\n As suggested in http://rt.cpan.org/Ticket/Display.html?id=24699\n\n Minor changes:\n * The perlcritic \"--profile-proto\" option now emits the short names for\n policies, rather than the full ones.\n\n * The \"-profileproto\" and \"-singlepolicy\" options have been renamed to\n \"-profile-proto\" and \"-single-policy\" in order to make the growing\n number of command-line options comprehensible. The change of\n \"singlepolicy\" also affects your F<.perlcriticrc> file.\n\n[1.053] Released on 2007-06-02\n\n *DEVELOPMENT RELEASE*\n\n Bug Fixes:\n Fixed bug in 15_statustics.t test script, which caused the build\n to fail on machines that don't have Perl::Tidy installed.\n\n[1.052] Released on 2007-06-01\n\n *DEVELOPMENT RELEASE*\n\n New Features:\n * perlcritic now emits a summary about the scanned code when enabled by\n the \"-statistics\" option.\n\n Policy Enhancements:\n * InputOutput::ProhibitBacktickOperators can now be configured to only\n check in void contexts.\n\n Bug Fixes:\n * 27073: False positive in RequireUpperCaseHeredocTerminator\n * 27065: CodeLayout::ProhibitTrailingWhitespace breaks under Perl 5.6.1\n * 26462: ControlStructures::ProhibitCascadingIfElse pod typo\n * ValuesAndExpressions::ProhibitCommaSeparatedStatements was complaining\n about multiple values in the list to be iterated over by a foreach loop.\n * Corrected PBP page numbers for some policies (Quinn Weaver).\n\n[1.051] Released on 2007-04-12\n\n *DEVELOPMENT RELEASE*\n\n No new policies.\n No particular bug fixes.\n\n Internals:\n * Added several new utility functions to support the StricterSubs distro.\n Also, some of the existing functions in Perl-Critic-Utils have\n changed in ways that might break your custom policies.\n\n Miscellanea:\n * Updated Emacs plugin (Courtesy Josh ben Jore).\n See extras/perlcritic.el for details.\n * Added copy of BBEdit plugin (Courtesy of Josh Clark).\n See extras/perl_critic_for_bbedit-1_0.zip for details\n\n[1.05] Released on 2007-03-19\n\n Bug Fixes:\n * 25557: t/20_policy_prohibittrailingwhitespace.t fails on Perl 5.8.0\n\n[1.04] Released on 2007-03-18\n\n Bug Fixes:\n * 25008: Subroutines::RequireFinalReturn should allow \"throw\"\n * 25085: False Positive - Heredoc terminator must be quoted\n * 18423: VERSION check does not notice Readonly::Scalar version\n * 25449: Proposal of \$VERSION declaration (DUPLICATE)\n\n New Policies:\n * CodeLayout::ProhibitTrailingWhitespace\n * ValuesAndExpressions::ProhibitCommaSeparatedStatements\n * Variables::ProhibitPerl4PackageNames\n\n Policy Enhancements:\n * Subroutines::RequireFinalReturn can now be configured to recognize\n your custom functions that behave like \"die\" or \"exit\".\n * Documentation::RequirePodSections can be configured to match\n Module::Starter:PBP or to really match the PBP book.\n\n[1.03] Released on 2007-02-13\n\n Bug Fixes:\n * Fixed a few more problems with the %f, %F, and %r format escapes.\n * I forgot to put Conway's perlcriticrc file in the MANIFEST. Sorry.\n\n Interface Changes:\n * Perl::Critic::Utils automatically exports everything. However,\n this is deprecated. In the future, you must request your exports.\n\n Policy Changes:\n * Duplicate violations of RequireExcplicitPackage are now squelched,\n in the same way as RequireUseStrict and RequireUseWarnings.\n\n[1.02] Released on 2007-02-11\n\n Bug Fixes:\n * \"undef\" incorrectly triggered ProhibitMutatingListFunctions.\n * 24876: %f and %F escapes not working in custom \"verbose\" format strings.\n * 24875: Documentation bug in TestingAndDebugging::ProhibitNoStrict\n\n New Policies:\n * InputOutput::RequireCheckedOpen\n * InputOutput::RequireCheckedClose\n\n Other Cool Stuff:\n * Added Conway's own suggested Perl::Critic configuration as\n examples/perlcriticrc-conway.\n\n * See the examples/ directory for some neat demonstrations of using\n the Perl::Critic API. Contributed by Elliot Shank.\n\n Interface Changes:\n * Perl::Critic::Utils no longer exports anything by default. Policies\n outside the distribution will need to specify what exactly they need\n from this module. There are a number of tags that can be used in\n addition to individual imports.\n\n[1.01] Released on 2007-01-24\n\n PRODUCTION RELEASE: You may now consider the public Perl::Critic\n API as \"stable.\" Future minor releases will focus on bug fixes,\n new policies, and internal refactoring.\n\n Bug Fixes:\n * Fixed memory leak. This was reported by the Parrot team at\n http://rt.perl.org/rt3/Ticket/Display.html?id=41230\n\n[0.23] Released on 2007-01-19\n\n Bug Fixes:\n * 23994: Test 56 in t/05_utils.t of Perl::Critic v0.22 fails\n * 24005: test 95 in t/13_bundled_policies fails in 0.22\n\n\n Groovy New Features:\n * Added '%F' to the Violation format specifications. This will\n give you just the name of file where the violation occurred\n (i.e. without the path).\n\n * Improved validation of .perlcriticrc file. An invalid\n default setting will now cause a fatal exception. A\n strange-looking policy name will cause a warning.\n\n\n Interface Changes:\n * The syntax for theme expressions has changed. Instead of using\n mathematical operators qw(+ * -) you must now use the logical\n operators qw(|| && !). See the Perl::Critic docs for more info.\n\n * The \@GLOBALS and \@BUILTINS variables are no longer exported by\n Perl::Critic::Utils. Use the is_perl_global() and is_perl_builtin()\n functions instead.\n\n * Perl::Critic::Policy::policy_parameters() has bee renamed to\n Perl::Critic::Policy::supported_paramters(). This was an\n undocumented feature anyway, so it shouldn't affect anyone.\n\n\n Other Internal Changes:\n * Perl::Critic now requires B::Keywords v1.05 or newer.\n\n * A few internal classes have been refactored. As a result,\n Set::Scalar is no longer a required dependency.\n\n\n[0.22] Released on 2006-12-15\n\n New Features:\n * Introduced named severity levels: gentle, stern, harsh, cruel, brutal\n You can use these named levels instead of the numeric ones.\n For example: \"perlcritic --severity=cruel MyModule.pm\"\n Or just: \"perlcritic --cruel MyModule.pm\"\n\n * For perlcritic, the \"-List\" option has been renamed to\n \"-profileproto\". The output now includes the names of the\n parameters that each Policy supports, if any.\n\n * Improved validation of Policy parameters in your F<.perlcriticrc>\n Any invalid parameter now causes a fatal exception.\n\n Major Changes:\n * Reassigned themes for most policies. Now there are fewer\n themes and they are organized around programming concepts\n instead of severity levels. If you have assigned your own\n themes to any Policies, they should still work as expected.\n\n Policy Changes:\n * ErrorHandling::RequireCarping will not complain if it can figure\n out that the die or warn message will always end in a newline\n (\"\\n\"). The idea is that, if you put the newline there, you\n don't indend for there to be any file/line/stack information\n emitted, in which case you really don't want carp/croak.\n\n You can restore the old strict behavior by giving the policy\n a false value for \"allow_messages_ending_with_newlines\" in your\n configuration.\n\n Misc Changes:\n\n Added single-letter uppercase alternatives for some perlcritic options.\n\n[0.21_01] Released on 2006-12-03\n\n New Policies:\n * TestingAndDebugging::ProhibitProlongedStrictureOverride\n * ControlStructures::ProhibitMutatingListFunctions\n\n New Features:\n * Say \"perlcritic -List\" to get an expanded listing of all Policies.\n The format is suitable for use as your .perlcriticrc file.\n * Say \"perlcritic -doc PATTERN\" to get the documentation for all\n Policies that match m/PATTERN/imx. This is a little easier than\n typing in the full name of the Policy module with \"perldoc\".\n * Say \"perlcritic --singlepolicy PATTERN\" to use one and only one\n policy.\n * Can now specify exceptions to Variables::ProhibitPackageVars,\n for packages like File::Find that only interface through\n package variables.\n\n Bug Fixes:\n * 21713 false positive for parens used with substr and unpack.\n * 22890 allow Rcs keywords in POD.\n\n Internals:\n * Testing system overhauled. Details on the Policy/subtest\n framework is in t/run.t.\n * Added Perl::Critic::Utils::words_from_string. This is safer\n than plain old C.\n\n[0.21] Released on 2006-11-05\n\n New Policies:\n * BuiltinFunctions::ProhibitReverseSortBlock\n * BuiltinFunctions::ProhibitVoidGrep\n * BuiltinFunctions::ProhibitVoidMap\n * CodeLayout::RequireConsistentNewlines\n * Modules::RequireFilenameMatchesPackage\n * TestingAndDebugging::RequireTestLabels\n * ValuesAndExpressions::ProhibitMismatchedOperators\n\n New Features:\n * Introduced policy \"themes.\" Themes are arbitrary names that can\n be used to identify a group of related Policies. You can select\n your favorite policies by combining themes in a mathematic expression\n such as \"pbp * (danger + risky)\". See POD for details.\n * perlcritic output is colorized if you have Term::ANSIColor. This\n only works on non-Win32 platforms. Use -nocolor switch to disable.\n * Say \"perlcritic -count\" to get just the the total number of\n violations per file. Use this feature to quickly identify hot-spots.\n * Use the -only switch to choose only from policies mentioned in your\n .perlcriticrc file. This is useful if you usually only want to\n work with a small subset of the policies.\n * Default values for most of the perlcritic and Perl::Critic options\n can now be defined in your .perlcriticrc file. See POD for details.\n\n Bug Fixes:\n * 21236: wrong page number for \"printing to filehandles\"\n * 21916: File handle ... wrong page reference in PBP [DUPE]\n * 21714: false positive for capture var used in ternary condition\n * 21718: No skip for File::Slurp in includes.t\n * ProhibitBarewordFilehandles doesn't complain if you open\n STDIN, STDOUT or STDERR.\n * Parrot 40564: Subroutines::RequireFinalReturn should allow die,\n exit, etc.\n * Each \"for\" and \"foreach\" loop now adds one point to the McCabe\n complexity score.\n\n Other Stuff:\n * The internals of Perl::Critic have been significantly refactored,\n but should still be compatible with existing third-party Policies.\n * Added author-only tests to the release, but disabled by default\n * New Perl::Critic::Utils::shebang_line() method\n * Support for filename-based policies\n * Additional prerequisite: Set::Scalar\n * Now requires PPI version 1.118\n\n[0.20] Released on 2006-09-10\n\n Perl::Critic now requires PPI version 1.117, which fixes\n several bugs that were introduced in version 1.116.\n\n Bug Fixes:\n * 21079: grep clears \@SITE_POLICIES\n * 21352: Test failures with PPI 1.117\n * 11365: sub DESTROY detected as a builtin homonym\n\n[0.19] Released on 2006-08-20\n\n New Policies:\n * BuiltinFunctions::ProhibitStringySplit\n * ControlStructures::ProhibitDeepNests\n * RegularExpressions::ProhibitCaptureWithoutTest\n * Variables::RequireLexicalLoopIterator\n\n New Features:\n * \"perlcritic -quiet\" suppresses the \"source OK\" message.\n * Variables::ProhibitPunctuationVars is now configurable.\n\n Bug Fixes:\n * 20965: \"Hard tabs used at\" shouldn't check __DATA__\n * 21070: ProhibitNoisyQuotes hates overload\n * Punctuation variables are now exempt from ProhibitLocalVars\n\n Other Stuff:\n * Test coverage is now over 95%\n\n[0.18_01] Released on 2006-08-06\n\n New Policies:\n * Variables::RequireNegativeIndices\n * InputOutput::ProhibitInteractiveTest\n * ErrorHandling::RequireCarping\n\n Bug Fixes:\n * RequireTidyCode tests fail if user has custom .perltidyrc file\n * 20612: RequirePerlTidy was ignoring HEREDOCs\n * 20659: __END__ statement considered \"unreachable\"\n * Fix for PPI::XS (no C support)\n * Support for 'goto' in ProhibitAmpersandSigils and\n Subroutines::RequireFinalReturn\n\n Performance Enhancements:\n * Introduced Perl::Critic::Document class. This is a facade for\n PPI::Document which internally caches search results. This\n reduces the running time by about 35%. The facade should be\n invisible, unless you are doing something really sneaky.\n * Extraction of the 'diagnostics' information is postponed\n until it is really needed. Speedup has not been measured.\n * Calls to helper-subs have been reordered for maximum efficiency.\n\n Other Cool Stuff:\n * Includes updated version of perlcritic mode for emacs. See\n \"extras/perlcritic.el\" for details.\n\n[0.18] Released on 2006-07-16\n\n Bug Fixes:\n * 14855: Home discovery is dangerously naive.\n * 20060: Incorrect page numbers in ProhibitLeadingZeros\n and RequireNumberSeparator policies.\n * 20068: .perlrc file - inconsistent documentation\n * 20254: \"use vars qw(\@EXPORT_OK)\" not recognized\n * 20463: No-case heredoc terminator incorrectly detected as lower case.\n * ProhibitOneArgBless doesn't understand \"bless {} => \$class;\"\n * ProhibitExcessComplexity doesn't count 'while' and 'until' stmnts\n * ProhibitLeadingZeros was falsely hits '.0456'\n\n Enhancements:\n * If File::HomeDir is available, we use it to locate the\n .perlcriticrc file. This should help make Perl::Critic\n more portable to Win32 platforms. If File::HomeDir is\n not installed, we resort to looking at the usual\n environment variables.\n\n Other Stuff:\n * Added \"perlcritic.el\", which is a super-cool emacs minor-mode\n that runs perl-critic on the current buffer and returns the\n results in a sexy hot-linked \"compiler\" window. You can run\n it on demand, or have it run automatically every time you\n save the buffer. You can find this in the extras/ directory.\n Thanks to Josh ben Jore for contributing this.\n\n * Moved \"Perl::Critic::TestUtils\" into the installed build. This\n module is only used for unit-testing Perl::Critic, but we\n are putting it in the installation so folks who want to\n extend Perl::Critic can make use of it.\n\n[0.17] Released on 2006-06-13\n\n Bug Fixes:\n * 19836: Perl-Critic0.16 fails tests during install. This was\n caused by a bug in version 3.01 of Module::Pluggable. See\n http://rt.cpan.org/Ticket/Display.html?id=19857 for details.\n * Fixed bug in no-critic pragma parser.\n\n New Policies:\n * ValuesAndExpressions::ProhibitEscapedCharacters\n * BuiltinFunctions::RequireSimpleSortBlock\n\n Enhancements:\n * Perl::Critic can export critique() as a static function. This\n may appeal to folks who dislike the object-oriented interface.\n\n[0.16] Released on 2006-05-14\n\n Enhancements:\n * Perl::Critic->critique() now accepts a PPI::Document as the\n argument. This feature creates an additional dependency on\n Scalar::Util, but that shouldn't be a problem because it is\n included with List::Util, which we already use.\n\n Miscellanea:\n * Increased PPI dependency from v1.110 to v1.112\n\n[0.15_03] Released on 2006-05-07\n\n Bug Fixes:\n * The \"## no critic\" feature is now implemented without eval-ing\n the code. This keeps Perl::Critic pure and safe :)\n * 19082: Page number for AUTOLOAD is incorrect\n\n New Policies:\n * ControlStructures::ProhibitUnreachableCode (by Peter Guzis)\n * Modules::ProhibitAutomaticExportation\n * ValuesAndExpressions::ProhibitVersionStrings\n\n[0.15_02] Released on 2006-04-26\n\n Bug Fixes:\n * Reimplemented the '##no critic' pragmas to have effect on the\n line where the violation is reported, not on the line where\n the candidate element lives. This is because some policies\n may report violations that are nowhere near the element that\n is being evaluated.\n * RequireUseStrict, RequireUseWarnings, and RequireExplcitPackage\n all emit violations for _every_ statement that violates the\n Policy. This closes a loophole that allowed you to circumvent\n the Policy by using '## no critic' on just the first statement\n that violated the policy.\n * Fixed the workaround for the magic shebang that is inserted\n by EU::MM and M::B. This had stopped working around version 13.\n * Fixed -noprofile option on 'perlcritic'. This also had stopped\n working at some point.\n\n[0.15_01] Released on 2006-04-16\n\n Enhancements:\n * Added diagnostic messages if the .perlcriticrc contains entries\n for Policy modules that don't seem to exist.\n * Now you can specify which policies to disable with the\n \"## no critic\" pseudo-pragmas. This feature is still\n experimental. See docs for details.\n * perlcritic's directory searching now skips backup files, such\n as *.swp, *.bak and *~. It also ignores version control system\n directories, and the blib directory in module build directories.\n\n Bug Fixes:\n * 18386: Bad example in POD for Documentation::RequirePodSections\n * 18670: Test failure if Perl::Tidy is not installed\n * 18698: Policy idea ProhibitUniversalFunctions (see New Policies)\n * RequireInterpolationOfMetachars falsely hit strings like 'foo=s\@'\n which are commonly used with Getopt::Long.\n\n New Policies:\n * BuiltinFunctions::ProhibitUniversalCan (by Chris Dolan)\n * BuiltinFunctions::ProhibitUniversalIsa (by Chris Dolan)\n\n Miscellanea:\n * All spurrious options for `perlcritic` are now fatal.\n * Changed several of the -verbose formats to be more readable.\n * Explicit -severity option now overrides -[12345] shortcuts instead\n of being the other way around.\n\n\n\n[0.15] Released on 2006-03-26\n\n Bug Fixes:\n * 17964: Insists my code is not tidy (may not be fixed for all cases)\n\n[0.14_02] Released on 2006-03-19\n\n Bug Fixes:\n * 15653: False positive in OneArgSelect (fixed for real this time)\n\n New Policies:\n * ClassHierarchies::ProhibitAutoloading\n * Documentation::RequirePodSections\n * InputOutput::RequireBracedFileHandleWithPrint\n * ValuesAndExpressions::ProhibitMixedBooleanOperators\n * Variables::RequireInitializationForLocalVars\n\n[0.14_01] Released on 2006-03-05\n\n Bug Fixes:\n * 14731: False positive: Builtin function called with parens\n * 17554: False positive in CodeLayout::RequireTrailingCommas\n\n New Policies:\n * ClassHierarchies::ProhibitExplicitISA\n * InputOutput::ProhibitReadlineInForLoop\n * Miscellanea::ProhibitFormats\n * Miscellanea::ProhibitTies\n * Variables::ProhibitConditionalDeclarations\n\n[0.14] Released on 2006-01-29\n\n More documentation edits.\n\n New Policies:\n * Documentation::RequirePodAtEnd\n * Subroutines::ProtectPrivateSubs\n * Variables::ProhibitMatchVars\n * Variables::ProtectPrivateVars\n\n Bug Fixes:\n * 15295: \"## no critic\" pragmas too aggresive on compound statements.\n * t/01_config.t failed in the presence of third-party policies\n\n[0.13_05] Not released\n\n More documentation edits.\n\n Implemented workaround for failing pod_coverage tests.\n\n Bug Fixes:\n * 16906: tr/// created false-postives with RegularExpression polices.\n\n[0.13_04] Released on 2005-12-31\n\n Moved DEVELOPER.pod file into the Perl/Critic dir.\n\n More documentation edits.\n\n[0.13_03] Released on 20051230\n\n perlcritic now prints 'source OK' if it doesn't find any\n violations. This gives folks a warm fuzzy feeling.\n\n Tweaked some test cases that were failing on my Solaris\n environment at work.\n\n[0.13_02] Released on 2005-12-29\n\n Fixed Config to recognize fully-qualified module names in the\n .perlcriticrc file.\n\n Various documentation edits.\n\n[0.13_01] Released on 2005-12-28\n\n Replaced 'priority' concept with 'severity'. Now each Policy module\n has a predefined severity level ranging from 1 to 5. By default,\n perlcritic only reports the most severe violations. You can adjust\n the severity threshold at the command line, and you can change\n the severity for any Policy using the config file.\n\n Chris implemented the applies_to() mechanism, which allows each Policy\n class to declare the types of PPI elements that it wants to examine.\n When traversing the document, Perl::Critic invokes the Policy only\n for elements that are of the correct type. This improves performance\n by about 33%.\n\n Perl::Critic now uses a Plugin architecture to automatically\n discover Policy modules. So if you have custom Policies, all you\n have to do is install them in the Perl::Critic::Policy namespace --\n no need to add anything to your .perlcriticrc file. If you write\n policies in a different namespace, you can configure that too. See\n the Perl::Critic::Config docs for details.\n\n New Policies:\n * Modules::RequireEndWithOne\n * NamingConventions::ProhibitAmbiguousNames\n * References::ProhibitDoubleSigils\n * Subroutines::RequireFinalReturn\n * Subroutines::ProhibitAmpersandSigils\n * Subroutines::ProhibitExcessComplexity\n * TestingAndDebugging::ProhibitNoStrict\n * TestingAndDebugging::ProhibitNoWarnings\n\n Bug Fixes:\n * 15101: Plugin architecture improves support for 3rd-party code\n * 16319: Fixed incorrect PBP page number in ProhibitBarwordFilehandle\n * 16321: Lists of empty quotes are now allowed by ProhibitQuotedWordLists\n * 16288: Empty lists caused a fatal error RequireTrailingCommas\n * 15653: Fixed false positive in OneArgSelect.\n\n[0.13] Released on 2005-10-31\n\n Official release of 0.12_03. No code major changes.\n\n[0.12_03] Not released\n\n Renamed -Policy option to -include. Added -exclude to give the\n opposite effect.\n\n Refactored constructor of Perl::Critic. Now, most of the work\n is delegated to Perl::Critic::Config. I'm not sure I like how\n this turned out, but we'll see how it goes.\n\n Renamed some Policy modules to be a bit more comprehensible. Note\n that you may need to change your .perlcriticrc file accordingly.\n I also suggest removing your current Perl::Critic installation\n before installing this one.\n\n Name Changes:\n * ProhibitUnpackagedCode => RequireExplicitPackage\n * RequireQuotedWords => ProhibitQuotedWordLists\n\n Improved error message when Perl::Critic dies because PPI can't\n parsee the input code.\n\n Changed output of -help to be more terse.\n\n Edited POD.\n\n[0.12_02] Not released\n\n Added -Policy option to perlcritic. The idea is to provide a\n compact interface for selecting Policy modules at the command-line.\n This feature is experimental and subject to change.\n\n Added a warning message if -verbose value looks strange. In most\n applications, the -verbose option does not require a value, so people\n might be puzzled when they write 'perlcritic -verbose my_file.pm' and\n nothing seems to happen.\n\n Command-line options to perlcritic are now case-sensitive. This\n makes it easier to abbreviate options that start with the same letters\n (e.g. 'Version' and 'verbose')\n\n Fixed the new Policy modules that were misnamed and misplaced in the\n previous distribution.\n\n[0.12_01] Not released\n\n Rewrote some of the ControlStructures and BuiltinFunction\n policies to be simpler (and probably a little faster).\n\n Edited POD. Fixed some typos. Added PREREQUISITES section\n to Perl::Critic documentation.\n\n Fixed the -verbose FORMAT option so that you can put metachars\n in the FORMAT specification. If using perlcritic, be careful to\n protect them from getting munged by the shell first.\n\n Replaced ProhibitRequireStatements with RequireBarewordIncludes\n module. Courtesy of Chris Dolan \n\n Added configuration to ProhibitInterpolationOfLiterals so that\n certain flavors of quotes can be exempt. This is for folks who\n have configured their editor to use special syntax highlighting\n for certain kinds of strings (SQL, for example).\n\n perlcritic now accepts multiple file arguments, so now you can\n critique your entire distribution in one shot. As a result, the\n output-formats have changed slightly.\n\n New Policy modules:\n * BuiltinFunctions::ProhibitLvalueSubstr\n * BuiltinFunctions::ProhibitSleepViaSelect\n * ClassHierarchies::ProhibitOneArgBless\n * CodeLayout::RequireTrailingCommas\n * CodeLayout::RequireQuotedWordLists\n * InputOutput::ProhibitTwoArgOpen\n * InputOutput::ProhibitOneArgSelect\n * InputOutput::ProhibitBarewordFileHandles\n * Miscellanea::RequireRcsKeywords\n * Modules::RequireVersionVar\n * RegularExpressions::RequireExtendedFormatting\n * RegularExpressions::RequireLineBoundaryMatching\n\n\n Bug fixes:\n 14923: 'require' is now permitted. See RequireBarewordIncludes.\n 15022: Fixed false-positives when keywords are used as hash keys.\n 15023: Fixed spurious Violations by removing magic shebang.\n 15031: Fixed spelling mistakes (and probably added some new ones).\n 15233: Postfix 'if' is now allowed with 'die', 'croak', etc.\n\n[0.12] Released 2005-10-10\n\n Redesigned the 'verbose' feature. Now the output format\n can be user-defined using a sprintf-like specification.\n perlciritc also has a predefined output format that is\n compatible with grep mode in editors like vim and emacs.\n\n 'return' is now exempt from ProhibitParensWithBuiltins. I may\n extend this exemption to all unary functions.\n\n Edited POD. Added a super brief description of each policy\n in the main Perl::Critic documentation. Added details about\n editor integration.\n\n Additional Prerequisites:\n * String::Format\n\n[0.11] Not released\n\n The internal dynamics and API of Perl::Critic have changed\n considerably. The result is a 300% increase in performance.\n See the POD in Perl::Critic::Policy for details.\n\n New Features:\n * Added -verbose option to put more stuff in the output. In the\n extreme, you can get the POD from Policy attached to each\n and every violation.\n\n Additional Prerequisites:\n * IO::String\n * Pod::PlainText\n\n[0.10] Released 2005-10-05\n\n Fixed stupid bug in newest Policy modules. They were returning\n PPI objects instead of Perl::Critic::Violation objects. Doh!\n\n Fixed test scripts to prevent failures if the user already has a\n .perlcriticrc file.\n\n 'ProhibitHardTabs' now allows leading tabs by default.\n\n Put the Changes file in reverse-chronological order, so the most\n recent stuff is easy to find at the top of the file\n\n[0.09] Released 2005-10-04\n\n Fixed several bugs:\n * 14810: Now you are allowed to create your own 'import' function,\n since this is frequently done with fancy modules.\n * 14817: Parens, brackets, and braces are now excluded from\n 'ProhibitNoisyQuotes' since they look better in quotes anyway.\n * 14787: \$1..\$9 and '_' are exempt from ProhibitPunctuationVars\n * 14899: Object methods with the same name as a built-in can\n be called with parens (ProhibitParensWithBuiltins).\n * 14901: Normalized the exit status of perlcritic to 0, 1, or 2.\n See documentation for explanation.\n * 14855: Partially fixed home directory discovery. Still not\n completely portable, but at least doesn't create warnings.\n\n New features:\n * 14734: Limit for number separators is now configurable\n\n New Policy modules:\n * CodeLayout::ProhibitHardTabs\n * ControlStructures::ProhibitUnlessBlocks\n * ControlStructures::ProhibitUntilBlocks\n * ControlStructures::ProhibitCStyleForLoops\n\n Changed the syntax for the magic comments. Adam had the\n idea of using a pragma-like notation. I liked it.\n\n[0.08_2] Released 2005-09-27\n\n Fixed problems with Perl::Critic::Config that caused File::Spec\n to emit 'uninitialized value' warnings during the build.\n\n Added 1 Policy module contributed by Graham TerMarsch\n\n Switched from File::Spec::Functions to plain File::Spec because\n I think its usage is more common.\n\n Removed 'FindBin' from the test files so I can be sure that the\n right libraries are getting loaded. This means I'll have to\n use the -l option with C.\n\n Edited more POD.\n\n[0.08_01] Not released\n\n Fixed \"ProhibitParensWithBuiltins\" to allow parens to be used with\n object method calls that have the same name as a builtin functions.\n\n Introduced magical comments that allow developers to configure\n Perl::Critic on-the-fly from within their code.\n\n Added META.yml files and POD tests to the build. I did this\n mostly just to boost the Kwalitee score on CPANTS.\n\n Switched from \"Config::Std\" to \"Config::Tiny\" because it doesn't\n require those fancy Damian modules that don't seem to work on\n some older versions of Perl.\n\n[0.07] Released on 2005-09-21\n\n Fixed bugs in the ProhibitCascadingIfElse policy.\n\n Added ProhibitExplicitReturnUndef policy\n\n Made ProhibitUnpackagedCode configurable so you can exempt scripts,\n which typically don't have an explicit 'package' statement.\n\n ProhibitPackageVars policy now exempts vars in ALL_CAPS. This\n is to permit common package variables like \@EXPORT and \$VERSION.\n\n Renamed \"ProhibitStringyGrep and \"ProhibitStringyMap\" because\n the so-called string form doesn't really exist. Now called\n \"RequireBlockGrep\" and \"RequireBlockMap\"\n\n Corrected documentation on defining Policy names within the\n configuration file. This still isn't very clear and needs\n to be rewritten.\n\n Perl::Critic now requires PPI version 1.003, which has a few bug\n fixes of its own.\n\n Rewrite some code just to make Perl::Critic more self-compliant.\n\n Added test cases to verify the configuration functionality. These\n are not completely thorough and need more work.\n\n[0.06] Released on 2005-09-17\n\n Now called 'Perl::Critic'.\n\n Added 4 new policy modules.\n\n Fixed bugs in build process.\n\n Added support for Module::Build.\n\n[0.05] Released on 2005-09-17\n\n End of 'Perl::Review' releases. I have changed the name to\n 'Perl::Critic' to avoid possible confusion with \"The Perl Review\"\n magazine.\n\n[0.04] Released on 2005-09-14\n\n Version 0.03 was a bust because I uploaded the wrong tarball to PAUSE.\n\n[0.03] Released on 2005-09-13.\n\n Fixed some POD links.\n\n Removed test cases for missing policy module.\n\n[0.02] Released on 2005-09-13.\n\n Major overhaul based on feedback from Perl community.\n\n Factored coding standards into separate modules (known as\n Policies). The idea here is to allow other developers to easily\n contribute additional coding standards.\n\n Reworked Perl::Review into a simple engine for loading and running\n Policy modules.\n\n Gave perlreview a command-line interface and configuration file\n for selecting which Policy modules to use.\n\n[0.01] Released on 2005-08-16.\n\n Initial version.\n\n##############################################################################\n# \$URL: http://perlcritic.tigris.org/svn/perlcritic/trunk/distributions/Perl-Critic/Changes \$\n# \$Date: 2013-09-25 21:18:04 -0700 (Wed, 25 Sep 2013) \$\n# \$Author: thaljef \$\n# \$Revision: 4169 \$\n##############################################################################\n\n# ex: set ts=8 sts=4 sw=4 tw=78 ft= expandtab shiftround :\n", "releases" => [] } CPAN-Changes-0.500005/corpus/dists/Net-DNS-SPF-Expander.changes000644 000000 000000 00000001256 14472651645 021557 0ustar00000000 000000 Revision history for {{$dist->name}} {{$NEXT}} 0.006 2013-07-29 - Make sure we can run the script on the same zonefile again without creating nonsense. - Fix tests by not reading from the file, but using a new return scalar value from ->write. It used to return 1, now it returns the string that will be written out. 0.005 - Make sure that our split spf records contain the protocol, v=spf1. 0.004 2013-07-26 - Add documentation. 0.003 2013-07-25 - Make script be found and installed. 0.002 2013-07-25 - Make module get opts, and - add script 0.001 2013-07-25 - Initial release. Hello world! CPAN-Changes-0.500005/corpus/dists/Ubic-Service-Plack.parsed000644 000000 000000 00000007632 14472651645 021377 0ustar00000000 000000 { "preamble" => "Revision history for Ubic-Service-Plack", "raw_preamble" => "Revision history for Ubic-Service-Plack\n\n", "releases" => [ { "entries" => [], "line" => 3, "raw" => "{{\$NEXT}}\n\n", "version" => "{{\$NEXT}}" }, { "entries" => [ { "line" => 6, "raw" => " * minor POD improvements\n", "style" => "*", "text" => "minor POD improvements" }, { "line" => 7, "raw" => " * don't package debian/ into CPAN distribution\n", "style" => "*", "text" => "don't package debian/ into CPAN distribution" }, { "line" => 8, "raw" => " * fix cwd test on OS X\n\n", "style" => "*", "text" => "fix cwd test on OS X" } ], "line" => 5, "note" => "Sun Oct 14, 2012", "raw" => "1.15 Sun Oct 14, 2012\n", "version" => "1.15" }, { "entries" => [ { "line" => 11, "raw" => " * group, env and cmd options\n", "style" => "*", "text" => "group, env and cmd options" }, { "line" => 12, "raw" => " * deprecate app_name option, derive pidfile from service's full_name\n", "style" => "*", "text" => "deprecate app_name option, derive pidfile from service's full_name" }, { "line" => 13, "raw" => " * improve and cleanup docs\n\n", "style" => "*", "text" => "improve and cleanup docs" } ], "line" => 10, "note" => "Tue Jan 10, 2012", "raw" => "1.14 Tue Jan 10, 2012\n", "version" => "1.14" }, { "entries" => [ { "line" => 16, "raw" => " * Compatible with new ubic 'default user' feature\n", "style" => "*", "text" => "Compatible with new ubic 'default user' feature" }, { "line" => 17, "raw" => " * Support arrayref values in server_args\n", "style" => "*", "text" => "Support arrayref values in server_args" }, { "line" => 18, "raw" => " * Support single-letter keys in server_args\n", "style" => "*", "text" => "Support single-letter keys in server_args" }, { "line" => 19, "raw" => " * bin() method, pidfile() method, refactor to use\n Ubic::Service::Skeleton instead of Ubic::Service::Common\n\n", "style" => "*", "text" => "bin() method, pidfile() method, refactor to use Ubic::Service::Skeleton instead of Ubic::Service::Common" } ], "line" => 15, "note" => "Wed Jul 13, 2011", "raw" => "1.13 Wed Jul 13, 2011\n", "version" => "1.13" }, { "entries" => [ { "line" => 23, "raw" => " Pass 'port' option to plackup.\n\n", "style" => "", "text" => "Pass 'port' option to plackup." } ], "line" => 22, "note" => "Sun Nov 07, 2010", "raw" => "1.12 Sun Nov 07, 2010\n", "version" => "1.12" }, { "entries" => [ { "line" => 26, "raw" => " Add Plack into CPAN deps.\n\n", "style" => "", "text" => "Add Plack into CPAN deps." } ], "line" => 25, "note" => "Sat Jul 31, 2010", "raw" => "1.11 Sat Jul 31, 2010\n", "version" => "1.11" }, { "entries" => [ { "line" => 29, "raw" => " First opensource release.\n", "style" => "", "text" => "First opensource release." } ], "line" => 28, "note" => "Fri Jul 30, 2010", "raw" => "1.10 Fri Jul 30, 2010\n", "version" => "1.10" } ] } CPAN-Changes-0.500005/corpus/dists/SQL-Statement.changes000644 000000 000000 00000054477 14472651645 020633 0ustar00000000 000000 Changes log for Perl extension SQL::Statement Version 1.405, released June 17, 2013 ------------------------------------------------- [Bug fixes] * INSERT now expands incomplete rows (Thanks to H.Merijn Brand) Version 1.404, released May 23, 2013 ------------------------------------------------- [Bug fixes] * re-enable cleanup test_output* after test done * recommend Text::Soundex and do soundex-test only when have it, because it's going to be removed from core for Perl 5.19 (thank Merijn) Version 1.403, released May 22, 2013 ------------------------------------------------- [Bug fixes] * fix documentation (rt#84889 - thanks Xavier Guimard and Florian, rt#85257 - thanks Andreas Koenig) Version 1.402, released December 19, 2012 ------------------------------------------------- [Misc] * add Math::Complex 1.56 as recommendation (RT#81926, Sam Ferencik) * add Math::BigInt 1.88 as recommendation (RT#81927, Sam Ferencik) * clarify Test::Simple 1.90 is required for building (RT#81925, Sam Ferencik) [Bug fixes] * fix leaking reference to open tables outside SQL::Statement::execute (fixes RT#81523) * looks_like_number identifies 'nan' as number sometimes (add regex to t/06virtual.t) Version 1.401, released October 29, 2012 ------------------------------------------------- [Misc] * Switch to 3-digited minor version [Bug fixes] * undo literal replaces in subqueries before passing them to the child parser * Fix doc typo RT#76764 (STEFFENW) - thanks Steffen * Fix typo documented in RT#71914 (reported by Ze'ev Atlas, fixed by H.Merijn Brand) - thanks Ze'ev and Merijn * Fix DROP TABLE behaviour and error detection [Improvements] * Improve documentation/tests for multiple JOIN's from RT#69573 (from BBYRD) with modifications * Filling in the SQL92 gaps for functions (BBYRD) from RT#72638 with minor modifications - thanks Brendan Version 1.33, released February 05th, 2011 ---------------------------------------------- [Bug fixes] * Move test dependencies to (unreleased) Bundle::Test::SQL::Statement to avoid circular dependencies Version 1.32, released January 19th, 2011 ---------------------------------------------- [Bug fixes] * Fixed invalid check for escaped single quotes * Fixed unpermitted modification of array source for table creation (CREATE TABLE AS IMPORT(?),[[..],[..]]) * Fixing alias used in ORDER BY (RT#61384, thanks jvm) * Fixing ORDER BY behavior for multiple sort columns (slower, but guaranteed correct) [Improvements] * renamed fetch-method into fetch_row (keep fetch() as alias) and add a fetch_rows() to fetch all rows at once * Different accessors for direction of ORDER BY clause query part and it's boolean equivalent "desc" (0 or 1, respectively) * Add a lot of Pure-Perl DBD's as build dependency for testing (skip DBD::AnyData for now, because it seems to be broken - check for next release) [Misc] * Bump requirement of DBI to 1.616 * switch for fully external DBD tests from DBD::XBase to DBD::SQLite * Document another limitation (lacking implicit creating temp table during processing a query using the same table with different aliases twice) Version 1.31, released August 16th, 2010 ---------------------------------------------- [Bug fixes] * Fix misbehaviour of DELETE/UPDATE for tables with only basic capabilities and no matching where clause (reported by H.Merijn Brand and Drew ...) * Fix some column identifier splits to respect quoted tables [Improvements] * Optimized some core routines between 25% and 50%. Version 1.30, released August 1st, 2010 ---------------------------------------------- [Bug fixes] * remove blib directory from distfile Version 1.29, released August 1st, 2010 ---------------------------------------------- [Bug fixes] * add some getters as documented in SQL::Statement::Structure (fixes RT#59834, thanks John Wiersba) * add missing import of function croak to SQL::Statement::Term::ColumnValue * fix assignment of parser result (doesn't run with perl-5.13.3) Version 1.28, released July 15th, 2010 ---------------------------------------------- [Improvements] * Introduce new "capability" method for SQL::Statement and SQL::Eval::Table + Add capability for "insert_new_row" to allow DBD::DBM to fix PK constrain on INSERT statements. * Performance of IMPORT feature improved (thanks to Sven Probst, RT#57322) [Bug fixes] * expect every table object being derived from SQL::Eval::Table * rewrite DELETE and UPDATE command based on table capabilities * add abstract methods for all methods derived classes must override (this means, open_table for SQL::Statement deriveds must be overridden and all data access methods of tables - see SQL::Eval::Table for details) * Tests are fixed to use TEMP TABLES explicitely when required * check for invalid column names fixed * Don't let depreciated parser structures stay alive in SQL::Statement when reusing the Parser [Documentation] * Method documentation of SQL::Statement and SQL::Eval::Table are improved * Add a Roadmap describing future plans for SQL::Statement (in addition to DBD::File::Roadmap). * POD spelling fixes provided by H.Merijn Brand and Pod::Spell::CommonMistakes (thanks Tux) * POD grammar fixes and reasonable sentences created by Martin Evans [Things that may break your code] * SQL::Statement 1.28 is expected not to work proper in combination with DBI 1.611 and below * SQL::Statement::ColumnValue expects now every table being derived from SQL::Eval::Table Version 1.27, release May 06th, 2010 ---------------------------------------------- [Bug fixes] * use originally given table name for open_table() on SELECT, too (all other command still use the originally given name) * warn/die -> carp/croak * fix delete_one_row & update_one_row ability using [Documentation] * Apply spelling fix patch from Ansgar Burchardt (RT#56475) Version 1.26, release April 09th, 2010 ---------------------------------------------- [Bug fixes] * Handle NULL columns in concatenation as empty strings [Improvements] * Change regex's in parser to use \p{Word} instead of \w to allow unicode support [Documentation] * Make clear, that identifiers are handled case insensetive and there is a real good solution provided by DBI which allows to live great with that behaviour. Version 1.25, release March 15th, 2010 ---------------------------------------------- [Bug fixes] * Keep org_table_names with schema information to allow derived table classes to handle as it seems reasonable there * Separate columns with "\0" in multi-column aggregation to be able to difference between ('1','1foo') and ('11','foo') [Misc] * More resources added to META.yml Version 1.24, release March 15th, 2010 ---------------------------------------------- [Misc] * Ignore *.rej in MANIFEST.SKIP (fixes RT #52081 reported by Lars Thegler) [Bug fixes] * Add missing import of _INSTANCE in SQL::Statement::Function::NumericEval fixes RT #52356 - reported by Detlef Pilzecker) * Fix wrongly discarded DISTINCT clause (RT#53186) [Improvements] * Fix parsing errors of plain numbers (RT#16931) * Fix parsing errors of nested calculation / functions (RT#16931, RT#52356) * Rewrite result calculation of aggregation functions (simplify code, speed up) * Upgrade Makefile.PL (patch from Alexandr Ciornii) to handle different EU::MM versions and abilities properly * Update documentation to show how 'column_defs' and SQL::Statement::Term instances shall be used * Introduce SQL::Dialect::Role providing ini-style data access to SQL::Dialects (patch from Michael Schwern) [Things that may break your code] * SQL::Parser now didn't deliver a struct containing 'column_names', 'computed_columns' and 'set_functions' - it's combined into one member 'column_defs'. * Minimum required perl version is now 5.8 - upcoming next version of DBI requires perl 5.8, too - and I could simplify some code that's why Version 1.23, release November 20th, 2009 ---------------------------------------------- [Misc] * Applied patch from Marc Espie which fixes several orthographic errors in SQL::Statement::Syntax documentation. * Added a fixed version of test reported via RT #34121 [Bug fixes] * Fix an issue in UPDATE command which 'shift's the values from the list of parameters which causes there're no more parameters left after first row get's updated (Fixes RT #50788) * Fix aggregate function handling of new code since 1.21_01 * Correct handling of DISTINCT in aggregate functions [Improvements] * Add support for tables/columns starting with '_' for CSV and AnyData, which is usually forbidden by ANSI SQL * Add support for inserting multiple lines with one statement (fixes RT #31730) * Handle ANSI 'IS NULL' and CVS/AnyData 'IS NULL' different [Things that may break your code] * row_value now expects up to two arguments Version 1.22, release October 10th, 2009 ---------------------------------------------- [Misc] * Add missing changelog - no code changes Version 1.21, release October 10th, 2009 ---------------------------------------------- [Misc] * remove version dependency to check previously installed version * add DBD::File as "Test" requirement Version 1.21_8, release October 5th, 2009 ---------------------------------------------- [Bug fixes] * Add additional test for bug-fix in 1.21_7 to t/18bigjoin.t [Misc] * Correct some typo's in POD Version 1.21_7, not public released ---------------------------------------------- [Bug fixes] * Don't fail for non-existent columns introduced by functions in joins Version 1.21_6, release September 24th, 2009 ---------------------------------------------- [Bug fixes] * Don't abort Makefile.PL when in automated smoke tests Version 1.21_5, release September 23th, 2009 ---------------------------------------------- [Bug fixes] * table order isn't wrongly used in order of appearance when SQL::Parser couldn't determine an order * Some internal fixes [Misc] * Updated dependency to Params::Util to non-leaking 1.00 * Note dependency to Carp and Data::Dumper * rely on version to compare versions * Update POD for terms * Update Version 1.21_4, release September 21th, 2009 ---------------------------------------------- [Bug fixes] * modify regex to match types to fix problems with Perl 5.6.2 * add DESTROY methods to ensure clean up * fix lower casing internal table names when joining tables * replace parameter shifting by assigning @_ to the list of parameters Version 1.21_3, release September 17th, 2009 ---------------------------------------------- [Things that may break your code] * When someone accesses the where_clause attribute of the SQL::Statement instance - be aware that now IN and BETWEEN can be native entries [Bug fixes] * convert operation to upper case when surely initialized [Improvements] * IN and BETWEEN are now native operations - they are not expanded to OR'ed equalize operations anymore Version 1.21_2, release September 15th, 2009 ---------------------------------------------- [Things that may break your code] * modify behavior for unquoted identifiers - they're converted and returned lower cased now (instead upper cased as in 1.21_1) Fixes bug RT #48502 Version 1.21_1, release July 30th, 2009 ------------------------------------------ [Things that may break your code] * removed SQL::Statement::Column * don't instantiate SQL::Statement::Functions objects * Reworked internal column and function handling to reduce code complexity * rows and columns aren't setable from outside a table or eval object anymore [Bug fixes and other changes] * Fixed bugs: + RT #47292: Test failures with recent DBI + RT #44512: Patch for CREATE TABLE parsing + RT #42676: tests 16 failed Version 1.20, released March 5th, 2009 ------------------------------------------ * Fixed Makefile in MANIFEST (reported by Havard Eidnes in RT #43586) * Fixed invalid label FETCHROW used (reported by Michael in RT #42982) * separated update_one_row and update_specific_row method names for tables to avoid confusion Version 1.19, released February 6th, 2009 ------------------------------------------ * Fixed OUTER JOIN behavior * Added version info to all *.pm files to allow CPAN::Reporter find updates * Correct META-Files * Fixed reported bugs: Version 1.18_02, no public release ----------------------------------- Additional (profiled) optimizations for complicated where clauses Version 1.18_01, released January 12th, 2009 --------------------------------------------- No code changes within SQL::Statement - but deliver and execute additional tests. Version 1.17, released January 12th, 2009 ------------------------------------------ * Fixed reported bugs: * RT#42263: GROUP BY doesn't group on multiple columns Version 1.16_04, released 4 January, 2009 ------------------------------------------ * added tests to prove valid quoting (most of them fail) * Reformat the source * add some (profiled) tweaks as removing useless regex to speed up SELECT * Fixed Bugs: * 14217 Does not correctly handle SQL statements with comments * 15686 Join syntax is case-sensitive, and common columns in natural joins are "ambiguous" [patch] * 13080 Cannot update a field based on its previous value * 26058 functions on computed columns aliased to the underlying column name are not called Version 1.16_03, released 1 January, 2009 ------------------------------------------ * removed *.orig and *.rej relics Version 1.16_02, released 1 January, 2009 ------------------------------------------ * Changing join_2_tables to reduce memory usage when joining a lot of tables * Fixed Bugs: * 15688 Columns aliased with double quotes are a fatal error * 16579 Speed optimizations * 30590 Bug in SQL::Statement::is_number() * 41875 Bug in synopsis example Version 1.16_01, released 1 January, 2009 ------------------------------------------ * With this release, I'd like to welcome Jens Rehsack as co-maintainer of the SQL::Statement and SQL::Parser modules. Jens has added in some great improvements. Thanks Jens! -- Jeff * Adding a lot of join tests (once from Jeff, 48 from PostgreSQL official handbook) - no error of them will be corrected in the first run Thanks to Alexander Breibach -- Jens Version 1.15, released 2 February, 2006 ---------------------------------------- * fixed placeholder bug in SQL::Statement::UPDATE thanks for bug report Tanktalus Version 1.14, released 21 April, 2005 ---------------------------------------- * fixed circular dependency in tests (one mistakenly required AnyData) Version 1.13, released 18 April, 2005 ---------------------------------------- * pod fixes Version 1.12, released 18 April, 2005 ---------------------------------------- * added support for GROUP BY (several people sent suggestions for this in the past, please email me so I can credit you, sorry I lost the names) * added support for true LIMIT - if a LIMIT clause is specified and no ORDER BY clause is specified, the SELECT will stop searching when the limit is reached; with an ORDER BY clause it will still search the entire table because we can only ORDER a set; using LIMIT without an ORDER BY will greatly increase speed * added support for CREATE/DROP keyword|operator|type|function * optimized process_predicate to only look up scalars once * completely re-wrote the POD * fixed bug in primary key search optimization thanks for bug report and test scripts: Jim Lambert, * fixed problem with all_cols slowing inserts thanks for patch and test Cosimo Streppone * cleaned up case of temp table column names thanks for bug report: Dan Wright * added a META.YML and extra tests Version 1.11, released 28 March, 2005 ---------------------------------------- * fixed bug in "CREATE TABLE AS ..." Version 1.10, released 27 March, 2005 ---------------------------------------- * added support for CREATE TABLE AS SELECT ... and CREATE TABLE AS IMPORT() * added support for in-memory tables and heterogeneous operations, see the SQL::Parser docs * added many new built-in functions see SQL::Statement::Functions.pm * added support for user-defined functions, see SQL::Statement::Functions.pm * added support for column name aliases thanks for patch, Robert Rothenberg * added support for comparison to empty string (e.g. WHERE col1='') currently returns the same as WHERE col1 IS NULL thanks for patch, cpanATgoess.org * fixed bug in S::P::clean_sql() newline-handling, thanks for patch Steffen G., steffenATkonzeptloses.de * fixed bug in SQL::Parser::feature() thanks for patch, chromatic * the word "INTO" is now optional in "INSERT INTO tblname ..." * the word "FROM" is now optional in "DELETE FROM tblname ..." thanks for suggestion, gipeol@sci.kun.nl * optimized portions of eval_where, process_predicate, and is_matched HUGE thanks Dan Wright and Dean Arnold for patches * HUGE thanks to Dean Arnold for all the following which should clean up a number of bugs in parentheses parsing and in the predicates IN and BETWEEN as well as speed things up considerably SQL::Parser changes: - removed recursion from get_in(), get_btwn() - fixed paren scan and argument separator scan in get_in() - optimized get_in/get_btwn code - made get_in/get_btwn OO methods to support being overridden by subclasses - added transform_syntax() abstract method to permit subclasses to add their own syntax extensions - rewrite of parens_search() to fixed predicate paren processing, remove recursion, and optimize code - rewrite of non_parens_search() to fixed predicate paren processing and optimize code - rewrite of PREDICATE to optimize code; moved operator regex construction to dialect initialization - change undo_string_funcs(), undo_math_funcs(), nongroup_numeric(), nongroup_string() to remove scoped recursion - fixed nongroup_numeric() for case insensitive operator match - fixed nongroup_string, undo_string_funcs() to include user defined funcs - fixed ROW_VALUE's scan for user defined function argument separator scan * fixed function detection regex in SQL::Parser::ROW_VALUE to accomodate arbitrary spacing * fixed SQL::Parser::SELECT_LIST()/extract_column_list() to support concat operator '||' expressions * added following functions to SQL::Statement::Functions: - COALESCE - NVL (same as COALESCE) - DECODE (same as Oracle DECODE) - CONCAT - REPLACE/SUBSTITUTE * fixed/adapted SQL::Statement::get_row_value(), SQL::Statement::SELECT(), for join'ed resultsets Version 1.09, released 22 April, 2004 ------------------------------------- * fixed parens parsing bug reported by Dan Wright, thanks! Version 1.08, released 20 April, 2004 ------------------------------------- * fixed bug in JOIN handling introduced in 1.06 Version 1.07, released 20 April, 2004 ------------------------------------- * fixed infinite recursion bug with empty IN() predicate thanks chromatic, for the patch * fixed case issues with table aliases in joins thanks chromatic, for bug report Version 1.06, released 18 April, 2004 ------------------------------------- * column and table name hashes now default to case sensitive * where() method now supported as per the docs Version 1.005, released 26 October, 2002 ------------------------------------------ * added support for MySQL-like "DROP TABLE IF EXISTS" * fixed bug in dotted column names e.g. tableA.colB * fixed bug in MAX and MIN (thanks Michael Kovacs, mkovacs@turing.une.edu.au) * fixed bug in ORDER BY (when col names not in SELECT list) Thanks Janet Goldstein Version 1.004, released 13 March, 2002 ------------------------------------------ * added support for delimited identifiers (inside double quotes); these are case sensitive and can contain spaces and other special chars * added support for two forms of escaping single quotes inside quoted values: 'O\'Brien' or 'O''Brien' * added support for both C-Style and SQL-Style double-hypen comments, e.g. /* comment */ or -- comment * added GetInfo.pm for use with $dbh->get_info() * updated the readme file * fixed bug in update that refers to its own columns (e.g. SET num = num + 2) * fixed bug in MIN and MAX when used with strings Thanks Dean Kopesky Version 1.003, released 01 March, 2002 ------------------------------------------ * identifiers (names of columns, tables, and table name aliases) are now all case insensitive as required by the SQL standard. all older versions including the XS versions used case sensitive column names * added numerous examples to test.pl * improved and/or fixed bugs in: * placeholder support Thanks Achim Grolms * ORDER BY clause Thanks Jan Stocker * LIKE/CLIKE/RLIKE/IN predicates Thanks Udo Beckmann * table name aliases in explicit joins Version 1.002, released 5 February, 2002 ---------------------------------------- * added backwards compatiblity: both SQL::Statement and SQL::Parser now work in perl version 5.004 and above. * changed defaults for DBD::CSV so it now accepts new SQL without adding extra flags to scripts * added support for SQL comments * added support for temporary tables and on commit clauses in CREATE statements and drop behaviour flags in DROP statements (SQL::Parser only, not supported by SQL::Statement) * fixed bugs in qualified column names (e.g. tableA.*), and in joins using ON or WHERE Version 1.001, released January 17,2002 --------------------------------------- Fixed bug in UPDATE that caused the new value to be a hash rather than a scalar. Version 1.0, released January 15, 2002 -------------------------------------- This is the first CPAN release of the pure perl version of the module. It was previously released in an XS version by Jochen Wiedman who has turned over maintenance of it to me. The new Pure Perl version of SQL::Statement supports everything supported by the XS version and, additionally, at least partial support for the following features that are not supported at all by the XS version: * Explicit and implicit joins * Table name aliases * Set functions * String functions * String concatenation * Numeric expressions * IN predicate * BETWEEN predicate * Alphabetic comparison in WHERE clauses * Ordering of text that looks like a number * Verbose error messages for both Parsing and Execution errors CPAN-Changes-0.500005/corpus/dists/MySQL-Sandbox.changes000644 000000 000000 00000115546 14472651645 020566 0ustar00000000 000000 3.2.03 02-Nov-2016 - Added option --init_option to add options at initialization time. - Added option --init_my_cnf to load $sandbox_dir/my.sandbox.cnf during initialization instead of --no-defaults. - Added option --init_use_cnf to load a custom options file during initialization instead of --no-defaults. 3.2.02 12-Sep-2016 - Fixed download parameter for make_sandbox_from_url 3.2.01 10-Sep-2016 - Added early check for USER, HOME, and PWD variables. - Added early check for spaces in HOME variable. - Fixed wrong server_id when using both --slaveof and --check_port - Added test for server_id with --check_port - Updated make_sandbox_from_url to use MySQL 8.0 remote builds (when available) - Added remote catalog to make_sandbox_from_url 3.2.00 28-Aug-2016 - Add compatibility with MySQL 8.0.0 - Adapt tests to use MySQL 8.0.0 - Added options: - plugin_mysqlx : installs the X-plugin permanently - mysqlx_port : with the above option, sets the X-plugin port - Changed mysqlsh script to use --sql or --js options. 3.1.13 21-Aug-2016 - added --master_ip to make_replication_sandbox 3.1.12 07-Aug-2016 - added syntax for make_sandbox get:#.# (invokes make_sandbox_from_url) - Added check for wrong requested version in make_sandbox_from_url - removed duplicate function from test_sandbox 3.1.11 11-Jul-2016 - Added make_sandbox_from_url to the installation list - Use https for GitHub URLs (contributed by D. Van Eeden) 3.1.10 10-Jul-2016 - Fixed a test error that made the package not-installable 3.1.09 08-Jul-2016 - Added make_sandbox_from_url, which installs a sandbox from the web - Fixed a warning about negative length of options (only fires in recent versions of Perl) - Cleaned up test execution for environments where it can't run properly. 3.1.08 04-Jun-2016 - Fixed major issue with XPlugin installation. The grants script was removing the account created by the X-plugin. Now this account is whitelisted. (https://bugs.mysql.com/bug.php?id=81257) - Fixed minor naming in MANIFEST - Fixed compatibility issues in deploy_to_remote_sandboxes.sh 3.1.07 15-May-2016 - Added support for $NOPASSWORD variable in ./use script. When this variable is enabled, the client runs without a password. Useful to call it before grants are loaded. - Added option to install plugin right after the installation --load_plugin=plugin_name[=filename] - Added options to execute SQL before and after loading grants --pre_grants_sql --pre_grants_file --post_grants_sql --post_grants_file - Similar options can execute shell commands --pre_start_exec --pre_grants_exec --post_grants_exec - Added test cases for the above options 3.1.06 09-May-2016 - Added explicit return code to test_replication script - Enables sbtool to remove incomplete group sandboxes - Test_Helper now cleans environment variables before starting a test - Added temporary support for mysqlsh - merge contribution by kaiwangchen to fix make_sandbox_from source and make_sandbox with mysqld-debug - Added --gtid option dor make_sandbox, make_replication_sandbox, and make_multiple_sandbox 3.1.05 17-Jan-2016 - Fixed mismatch in version checking to determnine whether to use mysql_install_db or mysqld --initialize - Updated copyright notice - Added test for installation method used - Added test for generated UUID - Merged pull request from Alexandr Ciornii : "Display repository URL on MetaCPAN" 3.1.04 07-Dec-2015 - Fixed wrong version comparison (affects usage of MySQL 5.7.10) - Changed tests to use smarter version comparison 3.1.03 04-Dec-2015 - Increased timeout for 'start' script, needed when restart requires a longer time. 3.1.02 21-Nov-2015 - Fixed error in UUID generation for server-id=110 - Merged change by Mark Leith to preserve mysql.sys user - Adapted privileges test for the above change 3.1.01 04-Oct-2015 - Removed message that should only appear with debug - Modified Makefile.PL to generate correct licensing metadata - Added port info to replication status and check-slaves (Thanks to Mark Leith) - Changed 'create schema' to 'create' database to allow installation in MySQL 4.1 (thanks to Daniël van Eeden) - Updated sbtool to prevent deletion of the whole sandboxes directory - Minor changes to semi-sync plugin test - Added debug message in make_sandbox_from_source - Tested with MySQL 5.7.9 and MariaDB 10.1.6 3.1.00 22-Aug-2015 - Migrated repository to github (github.com/datacharmer/mysql-sandbox) - Changed license to Apache 2.0 - Limited workaround for bug#77732 to MySQL 5.7.8 only - Added usability feature for Server-UUID. Whenever server-id is used, the server-uuid is converted into an easy-to-read string of numbers - Simplified './clear' script. Does not attempt to remove stored routines. Makes the intrusive mysqldump that was running with load_grants unnecessary - Changed location for MySQL history in group sandboxes to be shared between single ones. 3.0.66 07-Aug-2015 - Added MYSQL_EDITOR variable to ./use script - Added ./mycli script to invoke the mycli command 3.0.65 06-Aug-2015 - Added show_relaylog script, similar to show_binlog 3.0.64 05-Aug-2015 - Fixed quoting error in show_binlog script 3.0.63 04-Aug-2015 - Modified test add_option.sb.pl so that it can also run on MySQL 5.0 - modified sandbox script json_in_db to use type JSON when version >= 5.7.8 - Simplified grants.mysql and show_binlogs scripts 3.0.62 02-Aug-2015 - Added default name for relay log files. - Added 'show_binlog' and 'add_option' scripts in each sandbox - improved tests by getting all the version components from a single function call - Added GTID initialization options for MySQL 5.6, 5.7, and MariaDB 10 - Added GTID enabling test for MySQL 5.6 and 5.7 - added and improved more tests 3.0.61 27-Jul-2015 - Simplified workaround for Bug#77732. No defaults are changed. The only addition is a GRANT SELECT on a given table to the replication user for MySQL 5.7.6+ - Removed unnecessary FLUSH PRIVILEGES 3.0.60 25-Jul-2015 - Changed installation method for MySQL 5.7.6 and later. Using 'mysqld --initialize' instead of deprecated mysql_install_db. Installation for earlier MySQL versions and MariaDB still use mysql_install_db. - Due to the above change, low_level_make_sandbox will now filter the "error" message in the output for the text '[Warning]'. If an "error" appears as warning, the installation is not halted. - Incompatible change: when using --force to install on top of an existing sandbox, the old data directory is copied to 'old_data' instead of being overwritten. This is due to the different behavior of 'mysqld --initialize' that does not support initializing an existing data directory. - Added more tests. Improved a few of the existing ones. - Fixed test for user privileges that was broken in 5.7.6+ 3.0.57 to 3.0.59 not released 3.0.56 20-Jul-2015 - Adjusted credis date 3.0.55 19-Jul-2015 - Fixed issue with the latest script added to the test suite. 3.0.54 19-Jul-2015 - Added test_replication script to test both regular and circular replication. It is also used in the test suite 3.0.53 16-Jul-2015 - Improved workaround for Bug#77732. Deployments with --master would only work within the test suite, but would fail in standalone installations. 3.0.52 15-Jul-2015 - Added a workaround for Bug#77732 in MySQL 5.7.8 -- https://bugs.mysql.com/bug.php?id=77732 -- 3.0.51 14-Jul-2015 - Added ability of opening tarball with name like 123456.mysql*.tar.gz - Added many tests for tarball name checking 3.0.50 11-Apr-2015 - Fixed issue with the 'clear' script in MySQL 5.7.7. Since a new default database was added ('sys') and the clear command did not know about it, the new database was being removed. 3.0.49 08-Apr-2015 - Fixed version detection to support also MySLQL 5.7.7 and MySQL 5.7.8. A more resilient patch will follow. Notice that, due to a change (possibly a bug) in MySQL 5.7.7, circular replication and in general any topology containing a relay slave may fail. 3.0.48 09-Mar-2015 - Added provisional support for MySQL 5.7.6 (changed syntax for SET PASSWORD but keep using deprecated mysql_install_db) 3.0.47 19-Oct-2014 - Added support for MySQL with data dictionary (5.7.5 labs edition) 3.0.46 25-Sep-2014 - Modified smoke test in test_sandbox to check correctly older and newer versions - Changes to allow installation of MySQL 5.7.5: - added creation of 'test' database - moved lower_case_table_names to the my.sandbox.cnf file (mysql_install_db does not support this option) - allow for changed syntax --insecure instead of --skip-random-password - removed tmpdir from options to mysql_install_db - Updated test_sandbox to avoid a 'skip-innodb' test with MariaDB 10.x - Updated test_sandbox to detect correctly MariaDB versions 3.0.45 30-Aug-2014 - Fixing bug#1361851 "start/stop/status scripts don't actually check if running" - Fixing freshly submitted but long overdue Bug#1362014 "Sandbox scripts can't deal with stale PID files" 3.0.44 29-Apr-2014 - Fixing bug#1313672 : MySQL Sandbox can't install with MySQL 5.7.4 - Removed some deprecated options that were removed in latest version of MySQL 3.0.43 24-Oct-2013 - Fixed bug#1155517 The "my" scripts excludes mysql_upgrade from --default-options incorrectly - Also added mysql_config_editor to the scripts that should not get defaults-options 3.0.42 30-Sep-2013 - Fixed bug in sb renaming. The new name was not updated in the MANIFEST 3.0.41 30-Sep-2013 - INCOMPATIBLE CHANGE: Renamed 'sb' to 'msb' to avoid name clashes in - INCOMPATIBLE CHANGE: Renamed 'sb' to 'msb' to avoid name clashes in Linux distributions 3.0.40 12-Jul-2013 - enhanced deploy_to_remote_sandboxes.sh with the ability of using a template my.cnf for remote deployment (-y file-name) 3.0.39 29-May-2013 - added server_id option to deploy_to_remote_sandboxes - added info about group directory to multiple sandbox 'start/stop/clear' scripts - added ruby connection info to connection.json - Fixed display bug in credits (were reported twice in replication README) 3.0.38 05-May-2013 - Fixed typos and formatting in embedded docs. 3.0.37 05-May-2013 - Added connection samples (for PHP, Perl, Python, Java, shell) to 'connection.json' - Added validation tests for JSON contents 3.0.36 04-May-2013 - IMPORTANT CHANGES: - Added connection.json to each sandbox (simple or multiple) The file contains information to use the sandbox with third party applications. - Added default_connection.json to each sandbox (it has only the default items from connection.json) - Added README file to each sandbox (simple or multiple) - enhanced check_slaves. It now includes "show master status"; - Fixed bug in circular replication: enable_gtid was not created; - Added 25 more integrity tests; - Changed default version for testing. It now looks for MySQL 5.5.31 3.0.35 03-May-2013 - Fixed bug in the 'check_slaves' script created with circular replication - Fixed bug in 'clear_all' script created in circular replication - added 50 new integrity tests to test_sandbox 3.0.34 29-Apr-2013 - Added option --bind_address, to define how MySQL::Sandbox servers connect to TCP/IP - Fixed bug with handling 5.7 builds. Replicated systems did not create the script enable_gtid (BUG#1171977) - The changes made by enable_gtid are now durable (Bug#1171986) - Fixed various patterns that prevented MariaDB 10.0 builds from being recognized. - Fixed bug in test_sandbox, where warning messages were mixed with the test output in MYSQL 5.5.30+ - Fixed bug in test_sandbox, where a test that skips innodb was being wrongly applied to MySQL 5.7 - Added 10.0 among supported versions - Added documentation about remote sandboxes (in MySQL::Sandbox::Recipes) - Added a test that checks if enable_gtid is created when needed. 3.0.33 11-Apr-2013 - Fixed Bug #1167794 '--log option deprecated' - fixed minot working issue in deploy_to_remote_sandboxes.sh 3.0.32 12-Mar-2013 - Fixed minor bug in deploy_to_remote_sandboxes.sh - Added deploy_to_remote_sandboxes.sh to the list of scripts to install 3.0.31 08-Mar-2013 - Fixed Bug#1133186 make_sandbox_from_source does not recognize version - removed diagnostic lines that printed MySQL version and temporary directory - removed diagnostic lines that printed ports and directories being searched when the option --check_port was used - added bin/deploy_to_remote_sandboxes.sh, which installs sandboxes to remote hosts 3.0.30 06-Feb-2013 - Fixed Bug#1116760 Uninitalized $ENV{"SANDBOX_BINARY"} - Removed obnoxious warning introduced in MySQL 5.5.30 when using mysqldump 3.0.29 24-Jan-2013 - fixed bug#1103918 (affects sandboxes using MySQL 4.1) 3.0.28 06-Jan-2013 - changed initialization scripts to avoid most of the annoying messages that MySQL 5.6 creates during tests - Added script to enable GTID in MySQL 5.6 3.0.27 05-Jan-2013 - added compatibility features to use MySQL 5.6 # improved 'clear' and 'start' scripts to handle innodb tables in the 'mysql' database # fixed usage of deprecated features in tests # removed obnoxious listing when data directory is created 3.0.26 30-Sep-2012 - Removed dependency on table mysql.host, which can't be found anymore in MySQL 5.6.7 3.0.25 01-Feb-2012 - fixed typos and credits. (Thanks to Mateusz Kijowski for noticing) 3.0.24 17-Dec-2011 - added --master option to low_level_make_sandbox (enables binlogs and server-ID) - added --slaveof option to low_level_make_sandbox (creates a slave of another sandbox or regular server) - added tests for the above ones 3.0.23 13-Dec-2011 - fixed bug in prefixed version names (e.g.: now you can use make_sandbox ps5.1.57 or mp5.2.10) - Added arguments to deal with node options in replication and multiple sandbox. --node_options, --slave_options, --master_options, --one_slave_options, --one_node_options - added --high_performance option to low_level_make_sandbox: adds the following features to the configuration file: innodb-thread-concurrency=0 sync_binlog=0 innodb-log-buffer-size=50M innodb-additional-mem-pool-size=100M max-connections=350 max_allowed_packet=48M innodb_buffer_pool_size=512M innodb-log-file-size=50M innodb-flush-method=O_DIRECT 3.0.22 26-Oct-2011 - Add support for directories named after a prefixed version (my5.1.56, ps5.1.56, giuseppe_5.1.56, etc) 3.0.21 10-Oct-2011 - Added test to MANIFEST (and to tarball). Forgotten in previous version 3.0.20 10-Oct-2011 - Fixed bug in make_sandbox. "--add_prefix" did not work in combination with "--export_binaries" - changed port checking tests to not depend on a specific MySQL version 3.0.19 09-Oct-2011 - INCOMPATIBLE CHANGE: make_sandbox now requires '--' before adding options supported by low_level_make_sandbox - INCOMPATIBLE CHANGE: the option --export_binaries for make_sandbox must be inserted BEFORE the tarball name - make_sandbox now recognizes Percona and MariaDB binaries - make_sandbox accepts the option --add_prefix=NAME, which will be added to the version number of the rename expanded tarball. (e.g. --add_prefix=yell mysql-5.1.8-linux.tar.gz will create yell5.1.58) 3.0.18 08-Oct-2011 - fixed CPAN Ticket 70470 MySQL::Sandbox - make_sandbox warns with Perl 5.14 and 5.14.1 - Fixed report-port in replication. The port used was the master's, but it should be the slave's 3.0.17 07-Jan-2011 - incompatible change: default mask for msandbox user is now '127.%' instead of '%'. You can resume the old mask with --remote_access='%' - added low privilege users msandbox_ro (SELECT EXECUTE), msandbox_rw (SELECT INSERT UPDATE CREATE DROP LOCK EXECUTE), and rsandbox (REPLICATION SLAVE) - fixed bug in test_smoke (assumed 2 directories after cleaning, but 5.5 has also performance_schema) 3.0.16 30-Dec-2010 - fixed bug in TestHelper (wrong assumption on all directories in $SANDBOX_BINARIES containing MySQL files) - added information to check_slaves to report master logfile and position 3.0.15 23-Dec-2010 - added a 'msb' script to each sandbox, to mimick the mysql.server script - fixed test visualization bug for Mac OSX with case insensitive storage - fixed algorithm to convert version number to ports - fixed test suite for MySQL 5.5 (can't disable innodb for testing) 3.0.14 31-Aug-2010 (not released) - Added a 'rsandbox' user with REPLICATION SLAVE grants for replication systems 3.0.13 28-Jun-2010 (not released) - fixed minor problems in the test suite about testing on Windows - added a prototype for MySQL Cluster integration 3.0.12 29-May-2010 - Fixed bug in test_sandbox. When a test evaluates only the result code and there is no output from a failing command, test_result was not able to detect the failure. - fixed bug in test_sandbox. Due to a change in behavior in the mysql client, where './use -B -N' with a \G terminated query does not show the headers since 5.1.43, We need to take into account the pre and post fix behaviors in the test. - Integrated set_plugins into sbtool - Updated documentation - added tests for innodb plugin installation - added tests for semi-synch plugin installation - Fixed bug in 'stop' script. It did not accept $MYCLIENT_OPTION - Fixed bug#487864 - tar was using '--help' instead of '--version' to detect the supported version. - Fixed bug in sbtool. It did not display credits in the help. - Added test to skip testing on Windows. - added instrumentation to all MySQL Sandbox scripts. If you set the $SBINSTR environment variable with the name of a file, all sandbox scripts will write an entry to that file with their run time params. 3.0.11 24-May-2010 - Fixed bug in ./clear script. In version 5.5 and bigger, it erased the performance_schema database, which should not be removed. If it exists, its tables are now truncated. - Fixed bug in ./clear script. The removal of databases was not executed in a clean mode. - Added a script to install plugins in ./drafts 3.0.10 04-May-2010 - Fixed the help() function. It displayed an example that was only appropriate for a single sandbox, but not for group ones. 3.0.09 25-Mar-2010 - added a check in the 'start' script to verify that mysqld_safe exists and can run properly. - Added an exit code to the 'start' script to alert when the server does not start - added help to make_sandbox_from_installed. Added /usr/sbin as source directory - added instructions to the 'clear' script to remove functions and plugins 3.0.08 17-Feb-2010 - Fixed make_sandbox_from_source failure due to changes in modified configure.in (Thanks to Padraig O'Sullivan for noticing) - modified the "USING" file, which now includes the Sandbox version - Changed default test version from 5.0.77 to 5.0.86 3.0.07 08-Jan-2010 - Fixed bud in make_multiple_custom_sandbox. With some versions of bash, it broke on tests with "use_all" - fixed bug on symlink access on some platforms. - Fixed Bug#504789 export_binaries fails on some OS when crossing file systems 3.0.06 03-Jan-2010 - Fixed bug in prompt definition. A stray quote was added at the start of each user-defined prompt. - Fixed Bug#456949 "each sandbox should have a dedicated temporary directory". - Fixed Bug#439226 "sandbox_action script uses wrong version of Perl" - Improved documentation to resolve Bug#392996 "make install Sandbox.pm path issues". - added 'status' script to sandboxes - fixed db_user definition, which could write trail character to the option file. 3.0.05 12-Sep-2009 - Fixed Bug#428274 make_sandbox fails on Mac OSX 10.6 "snow Leopard" - Increased starting timeout from 20 to 60, because some recent versions of MySQL are quite slower to start. - Added a dedicated history file per each sandbox (Thanks to Gerardo Narvaja for suggesting it) - fixed bug in make_sandbox when dealing with a non-standard answer to the "which" Unix utility - added error checking for 'bash' to low_level_make_sandbox - improved error checking for mysql_install_db script - renamed 'sandbox' tool -> 'msandbox' to prevent clash with existing tool in Linux distros - Added "--no_run" option to low_level_make_sandbox, to stop the server when using the "--load_grants" option. The purpose is to end the command without leaving any running sub-process. 3.0.04 14-Jun-2009 - fixed bug in test_sandbox. A "$" sign in a directory name was not escaped properly - added the "--no_show" option to low_level_make_sandbox - fixed a bug in the "sb" script. Calling it in "create mode" did fail if $SANDBOX_HOME does not exist yet. 3.0.03 11-Jun-2009 - added the 'sb' shortcut script to create and invoke sandboxes easily. 3.0.02 30-May-2009 - Added a check for all scripts, to prevent MySQL::Sandbox from running as root without explicit awareness 3.0.01 28-May-2009 - Fixed Bug#381044 "my" script fails on some executables - moved function "exists_in_path" to MySQL::Sandbox module 3.0.00 09-May-2009 - GA release - no code modification. Same codebase as 2.0.99f - completed cookbook (41 recipes in MySQL::Sandbox::Recipes) - added script_templates directory (No modification in current version, just preparation for 3.1.xx) - added drafts directory 2.0.99f 03-May-2009 - fixed bug in make_sandbox_from_installed. Some system use /lib64 instead of /lib - added more recipes to MySQL::Sandbox::Recipes 2.0.99e 03-May-2009 - added make_sandbox_from_installed to install from binaries already installed via packages such as .deb, .rpm. - added sample perl test script to MANIFEST. Missed during the previous release - added MySQL::Sandbox::Recipes, a cookbook with short How-To tutorials - cleaned up tests. Added 8 more test to check replication parameters 2.0.99d 02-May-2009 - Added user defined test in Perl, in addition to the ones written in the test_sandbox script language - Updated documentation 2.0.99c 01-May-2009 - Fixed conceptual bug in "start" and "restart". Group sandboxes were not allowing it - added "restart_all" in group sandboxes - Added 18 new tests to check the above problem - Added documentation about port checking and parameters accepted by 'start' and 'restart' 2.0.99b 26-Apr-2009 - added group port checking to make_replication_sandbox and make_multiple_sandbox - added 2 new tests to the test suite to test singkle and group port checking - added documentation on port checking 2.0.99a 12-Apr-2009 - fixed bug in make_replication_sandbox and make_multiple_sandbox. If a group sandbox was the first to be created under $SANDBOX_HOME, it failed. - added check_replication.sb as user defined sample test 2.0.99 11-Apr-2009 - implemented user defined test modules - fixed some documentation glitches - Added documentation about user defined tests 2.0.98i 09-Apr-2009 - added script make_sandbox_from_source, which will create a sandbox from a build directory - Extended maximum port to 64000 - added MySQL versions 5.[2345] as accepted for a Sandbox 2.0.98h 08-Apr-2009 - Changed test_sandbox to use IPC::Open3 instead of qx, when available. This will make the 'make test' output more readable. - added Test_Helper.pm to the test suite 2.0.98g 07-Apr-2009 - added --master_node option to sbtool - added 'preserve' and 'unpreserve' options to sbtool - made test_sandbox TAP compatible - updated the test suite - written the documentation on sbtool to MySQL::Sandbox POD 2.0.98f 06-Apr-2009 - added 'delete' action to sbtool - introduced --export_binaries to make_sandbox - added 03_test_sandbox.t, which uses test_sandbox within the test suite - fixed bug in sbtool. Moving sandbox failed becaus of wrong regular expression - added a test suite for sbtool to test_sandbox test_sandbox --tests=sbtool 2.0.98e 02-Apr-2009 - fixed error in low_level_make_sandbox --interactive. Array values were not preserved correctly wit a default - implemented interactive confirmation for group sandboxes 2.0.98d 01-Apr-2009 - Deprecated "query_analyzer" option :) - moved the POD to MySQL::Sandbox - produced mew README from the POD - implemented --no_check_port (to use as a safeguard with group sandboxes) 2.0.98c 01-Apr-2009 - added query_analyzer option 2.0.98b 31-Mar-2009 - taken most function from sbtool to MySQL::Sandbox module - implemented --check_port for single sandboxes - fixed bug#352222 "report-port incorrect with --master-master" - cleaned up code for parse_options in all scripts - enhanced test case with some tests for the script correctness 2.0.98 29-Mar-2009 - Preparation for version 3.0 - refactoring code to use with ExtUtilis::MakeMaker and install a proper Perl module - updated README - fixed sandbox_action to support 'send_kill' - added $VERSION to both modules 2.0.18 22-Mar-2009 - added change_port script to installed sandboxes - added 'port' operation to sbtool - added --new_port option to sbtool 2.0.17 15-Mar-2009 - improved sbtool error checking - improved sbtool built-in help - added "report-port" to replication slave setup 2.0.16 14-Mar-2009 - added 'copy' option to sbtool, to clone a sandbox data directory into another. 2.0.15 09-Mar-2009 - added "report-host" option to slave creation - fixed server_id for values larger than 10. Instead of folding from 109 to 100, it was doing 109 to 1010. 2.0.15 19-Feb-2009 - added sbtool, a multi purpose program to do administrative tasks with the sandbox. Supported operations: port list, replication tree, moving single and multiple sandboxes 2.0.14 08-Feb-2009 - added code to the "clear" script to truncate the table logs if they exist - improved error messages when using wrong directories or tarballs - added a "change_paths" script to change the sandbox paths quickly when moving the sandbox to a new location. 2.0.13 27-Jan-2009 - added parameters to "start" and "restart" scripts. If you pass an option, it will be passed directly to mysqld_safe. e.g. "start --log=mylog.log" - fixed bug in test_sandbox.pl. Using "ls -d /path/*/" doesn't work on Solaris. Replaced with a more robust routine. - Allow the unpacking of tarballs to work on Solaris if "gtar" is found. 2.0.12 16-Oct-2008 - Fixed small bug in 'clear' script. When the server is not responsive, it was calling the wrong 'kill' script - Applied Greg Haase patch to fix a bug in --datadir_from=dir:xxxx 2.0.11 05-Oct-2008 - Fixed bug#278394, "character '-' in database names" (added backticks to 'clear' script) - added a command to change read attributes inside expanded tarballs to avoid a possible failure in MySQL test suite, should a user run it 2.0.10 27-Aug-2008 - fixed minor bug in make_multiple_sandbox and make_replication_sandbox when passing additional parameters. No space were added at the end. Further parameters were glued together, resulting in a startup error. - added NODE_OPTIONS to work in make_replication_sandbox (it adds options to both MASTER_OPTIONS and SLAVE_OPTIONS) 2.0.9 22-Aug-2008 - fixed bug#260265 "installation fails with log-error option and version < 5" - removed "log-error" from default file - added this option conditionally only if major version > 4 2.0.8 16-Aug-2008 - fixed problem with "~" not being expanded as $HOME - fixed problem with not existent path for tarball - fixed bug#258523 Mysql Sandbox looks for tar.gz in wrong location in make_replication_sandbox, make_sandbox, make_multiple_sandbox, make_multiple_custom_sandbox, and in the test suite - fixed minor problem in MyScripts.pm. log-slow-queries was misspelled, although commented. 2.0.7 06-Aug-2008 - added shortcut option "--circular=N" to make_replication_sandbox corresponding to "--topology=circular --how_many_nodes=N" - added Falcon creation to smoke test (if version >= 6) 2.0.6 20-Jul-2008 - added "check_slaves" script to replication sandboxes 2.0.5 14-Jul-2008 - added named error log to configuration file - add removal of *.err-old files in "clear" script - Fixed bug in circular replication. Unnecessary initialization after stop_all. Added the same check used in standard replication - fixed bug in circular replication. start_all and set_circular_replication.sh were not stopping and starting the slaves in the righ order. - improved 'stop' script. If the server is a slave, calls "stop slave" before closing down. 2.0.4 12-Jul-2008 - fixed bug in test suite. Parameter passing to check routine was often failing on negative tests. Added subroutine prototype to fix the problem. 2.0.3 12-Jul-2008 - Fixed smoke test bugs in test suite. - fixed race condition while checking the pid file - added cleanup of extracted binary with smoke test - added stricter check for InnoDB tables - added some replication tests to test suite 2.0.2 6-Jul-2008 - Fixed minor bugs in low_level_make_sandbox. - When started with --force and --load grants, it said that it failed to comply. In fact, the grants were already loaded. - when started with --force, it invokes $sandbox_dir/start without checking if such script exists 2.0.1 5-Jul-2008 - fixed minor bug on test suite. It fails on Solaris with "ps -ea". Changed to "ps -ef" - added README.wiki - added "smoke" test to test suite - added --no_confirm to all single sandbox testing 2.0.0 2-Jul-2008 - fixed minor bug in generated scripts. Removed bash-specific operator "==" 1.99.10 1-Jul-2008 - Fixed bug in test suite. Process count was not taking into account the pre-test processes. - Fixed bug in test suite. Portability. ps was being used with non portable options. - added --prompt_body option to low_level_make_sandbox - added $SANDBOX_BINARY environment variable, to replace default $HOME/opt/mysql - fixed error message of make_sandbox when invoked without options - added a check in make_sandbox to make sure that we are using GNU tar. 1.99.9 30-Jun-2008 - Fixed bug #244236 (low_level_make_sandbox accepts unnecessary arguments) - Fixed bug in low_level_make_sandbox. sandbox_home was not checked for correctness. It is a simple name, and it should not accept full paths. - INCOMPATIBLE CHANGE home_directory was not supposed to be home. Its name is misleading, and thus it was changed to upper_directory. - Fixed typos in README - Initial fix for bug #239630 (possible failure on non-GNU tar) - fixed script names in "sandbox" script - (Thanks to John Embretsen for most of the reports on today's changes) 1.99.8 29-Jun-2008 - INCOMPATIBLE CHANGE $HOME/sandboxes is now the default SANDBOX_HOME, which users however can override. - INCOMPATIBLE CHANGE "multi_cmd" was renamed "use_all" for name consistency - added a call to low_level_make_sandbox --help when make_sandbox is invoked without the proper syntax. - README has been completely rewritten - added a ./docs directory with the README.pod source for README - added POD to ./sandbox script, to show the documentation when called as "./sandbox manual|help" 1.99.7 28-Jun-2008 - added configurable options for test suite users can now choose which versions and which tests to run from the command line - removed deprecated test_sandbox.sh - moved test suite to ./tests directory - added tests/README - improved "stop" script by combining it with the "kill" script - adjusted make_dist script to use the ./test directory - improved test suite with the ability of running from one or more tarballs instead of the default directories ([$HOME]/opt/mysql) 1.99.6 28-Jun-2008 - enhanced the "clear" script. Now it removes all databases form the data directory, first trying via SQL, then using the OS. - added tests to the test suite to check on this feature 1.99.5 27-Jun-2008 - INCOMPATIBLE CHANGE make_sandbox renamed low_level_make_sandbox easy_sandbox renamed make_sandbox - fixed bug in make_replication_sandbox (base port was not isolated) - added test for circular replication - improved testing for number of processes in the test suite - added circular replication features to make_multiple_sandbox with options --master_master and --circular (this should not be used directly) - added circular replication features to make_replication_sandbox with options --master_master and --topology={standard|circular} . This feature uses make_multiple_sandbox internally. - circular replication uses a separate directory name and port - fixed bug in make_multiple_sandbox. It did not use the $SANDBOX_HOME directory. 1.99.4 21-Jun-2008 - added more extensive test suite in Perl - fixed bug in make_multiple_custom_sandbox (install directory was not set when calling easy_sandbox) 1.99.3 21-Jun-2008 - INCOMPATIBLE CHANGE all Perl script names were changed to make them more intuitive install.pl -> make_sandbox express_install.pl -> easy_sandbox set_replication.pl -> make_replication_sandbox set_many -> make_multiple_sandbox set_custom_many.pl -> make_multiple_custom_sandbox - created a './sandbox' script that lists all applications and eventually executes the one that is passed as argument - mapped "stop" script to faster and safer "kill" script - replaced "sleep 3" with a loop + timeout in shell scripts - removed "sleep" commands from Perl scripts - fixed bug in get_help() : parse_options were not passed to the $msb object 1.99.2 20-Jun-2008 - fixed minor bug. mysql_install_db script in some cases is found in the "bin" directory rather than "scripts" - added ability to log start operations into a log file 1.99.1 19-Jun-2008 - added "kill" script to each sandbox - replace call to "stop" with "kill" in "clear" script 1.99.0 15-Jun-2008 - Started new development branch for Sandbox 2.0 - added MySandbox.pm module, to use the same routines across scripts 1.22 15-Jun-2008 - added support for default options file ($HOME/.msandboxrc) - fixed minor bug in set_replication.pl. Added #master to multi_cmd output. - fixed bug related to location of sample option files. The installer was only looking under "./support-files" while recent packaging use "./share/mysql" - fixed Bug#240121, with a collision between my_file and replication. - added the execution of a "./clear" command when "--force" was used to avoid overwriting a running server. - cleaned up current_changes to contain only not empty options - created a basic test suite (not in distribution yet, only in RCS) 1.21 09-Jun-2008 - added SANDBOX_HOME environmental variable to override $HOME - default sandbox home is now $HOME/sandboxes (if exists) or else it is $HOME, as before - added scripts to start/stop/clear/use all sandboxes at once (if $SANDBOX_HOME != $HOME) 1.20 11-Apr-2008 - Added set_custom_many.pl to install different versions of the server in one go. (Thanks to Ronald Bradford for the idea) - enhanced "multi_cmd" to say which server is running - added support for MYCLIENT_OPTION user variable to pass options to the client (./use and ./multi_cmd) 1.19 06-Apr-2008 - changed installer files so that they can be called from outside the installation directory. 1.18 02-Apr-2008 - Fixed bug in set_many and set_replication. Undefined group directory when setting custom port - Added help to ./express_install 1.17 16-Mar-2008 (not released) - fixed minor bug in "clear: script. It did not remove subdirectories in test db - fixed minor bug on the choice od source dir. If $HOME/opt/mysql exists, it is preferred to /opt/mysql 1.16 04-Jan-2008 (not released) - added stronger check on the result of mysql_install_db. - added removal of general log files and falcon files with the "clear" command. 1.15 09-Dec-2007 - fixed bug in grants.mysql. Removed anonymous users from mysql.db - added $HOME/opt/mysql as possible default for binaries. - added proxy_start script to start a MySQL Proxy instance using the sandboxed server 1.14 24-Oct-2007 - added a set_many.pl command to create several servers not in replication - fixed bug in replication ports assignment. Two replication systems using adjacent versions (e.g. 5.1.22 and 5.1.23) would have clashing port numbers. 1.13 23-Oct-2007 - (INCOMPATIBLE CHANGE) removed '.sh' suffix from all scripts - added version differentiation to replication port and directory. Instead of being always the same, now they are based on the version number, unless modified by the user. - added a multi_cmd script to the replication system, to send a query to each node. - added a 'my' script to call mysql* tools - fixed bug about using 6.0 binaries on Mac OS X (dynamic library path requires a different environment variable) - fixed bug in replication. After a "clear_all", the replication did not start again. Added a "initialize_slaves" script that get called by "start_all" if a clear_all was called. 1.12 17-Oct-2007 - hidden mysql_install_db output on successful execution - fixed argument handling bug in replication scripts 1.11 16-Oct-2007 - all shell scripts are now created from install.pl (not copied) - changed default username, password, and sandbox directory name - forbid using a relative path of tarball 1.10 16-Oct-2007 (not released) - fixed bug on mysql_install_db usage 1.9 15-Oct-2007 (not released) - deprecated the 'archive' method of installation and removed the compressed data directories - express_install can now expand a server tarball. - added support for replicated servers (set_replication.pl) using CHANGE MASTER TO rather than replication options - added 'load_grants' option to install.pl - added 'prompt_prefix' option to install.pl - fixed bug about client library not being available due to LD_LIBRARY_PATH not set 1.8 14-Sep-2007 - Added support for MySQL 6.0 1.7 05-Jul-2006 (not released) - Added support for Mysql 5.2-alpha 1.6 27-May-2006 - Added 'my_clause' command line option to define my.cnf file parameters; - changed interactive routine to allow multi-item options; - changed the shell scripts to be less bash specific. the sandbox should be now more cross-platform than before. During the installation, if bash is not found, then tcsh is used. - new Tutorial available at http://datacharmer.org/#tutorials - bugs fixed: -- clear.sh was using $HOME directory instead of _HOME_DIR_ -- install_version calculated by express_install.pl could be lower than 1024. -- install_version was added twice when loading options from 'current_options.conf' (Thanks to Imran Chaudhry for reporting it) 1.5 24-May-2006 - added 'back' and 'quit' keywords in interactive mode - added express_install.pl, to install quickly from a binary package - Bug fixed. 'start.sh' and 'stop.sh' scripts where using the actual $HOME dorectory instead of the user's defined _HOME_DIR_ 1.4 17-May-2006 (not released) - added support for 3.23, 4.0 and 4.1 installs - default install is now 5.0 - default addition of version to sandbox directory name - added option "no_ver_after_name" to control the above change 1.3 05-May-2006 - added "interactive" option to install through a sort of a wizard - added current_options.conf to record the options used for installing - fix bug in configuration file 1.2 02-May-2006 - minor bug fixes 1.1 19-Apr-2006 - added multiple sources for data directory 1.0 18-Apr-2006 - initial release. CPAN-Changes-0.500005/corpus/dists/File-Tail.parsed000644 000000 000000 00000055635 14472651645 017643 0ustar00000000 000000 { "preamble" => "Revision history for Perl extension File::Tail.", "raw_preamble" => "Revision history for Perl extension File::Tail.\n\n", "releases" => [ { "date" => "1997-11-28T09:44:06Z", "entries" => [ { "line" => 4, "raw" => "\t- original version; created by h2xs 1.18\n\n", "style" => "-", "text" => "original version; created by h2xs 1.18" } ], "line" => 3, "raw" => "0.01 Fri Nov 28 09:44:06 1997\n", "raw_date" => "Fri Nov 28 09:44:06 1997", "version" => "0.01" }, { "date" => "1997-11-28T12:25:13Z", "entries" => [ { "line" => 7, "raw" => "\t- original version; created by matija.grabnar\@arnes.si\n\n", "style" => "-", "text" => "original version; created by matija.grabnar\@arnes.si" } ], "line" => 6, "raw" => "0.5 Fri Nov 28 12:25:13 MET 1997\n", "raw_date" => "Fri Nov 28 12:25:13 MET 1997", "version" => "0.5" }, { "date" => "1997-12-04T14:16:59Z", "entries" => [ { "line" => 10, "raw" => "\t- assigning error values to \$! didn't work. Replaced with croaks.\n", "style" => "-", "text" => "assigning error values to \$! didn't work. Replaced with croaks." }, { "line" => 11, "raw" => "\t- passing only the filename didn't work.\n\n", "style" => "-", "text" => "passing only the filename didn't work." } ], "line" => 9, "raw" => "0.6 Thu Dec 4 14:16:59 MET 1997\n", "raw_date" => "Thu Dec 4 14:16:59 MET 1997", "version" => "0.6" }, { "date" => "1998-06-01T17:23:23Z", "entries" => [ { "line" => 14, "raw" => " - implemented tied interface\n", "style" => "-", "text" => "implemented tied interface" }, { "line" => 15, "raw" => "\t- implemented non-blocking read (against my better judgement)\n", "style" => "-", "text" => "implemented non-blocking read (against my better judgement)" }, { "line" => 16, "raw" => " - implemented more flexible error handling a-la Net::Telnet\n", "style" => "-", "text" => "implemented more flexible error handling a-la Net::Telnet" }, { "line" => 17, "raw" => " - implemented ignore_nonexistat\n\n", "style" => "-", "text" => "implemented ignore_nonexistat" }, { "line" => 19, "raw" => " Release of 0.7 was delayed because I wanted to see if Tied\n", "style" => "", "text" => "Release of 0.7 was delayed because I wanted to see if Tied" }, { "line" => 20, "raw" => " Handle handling will include select in 5.005. After two people\n", "style" => "", "text" => "Handle handling will include select in 5.005. After two people" }, { "line" => 21, "raw" => " sent me their tied interfaces, I figured maybe it was time to\n", "style" => "", "text" => "sent me their tied interfaces, I figured maybe it was time to" }, { "line" => 22, "raw" => " release it before implementing select :-)\n\n", "style" => "", "text" => "release it before implementing select :-)" } ], "line" => 13, "raw" => "0.7 Mon Jun 1 17:23:23 MET 1998\n", "raw_date" => "Mon Jun 1 17:23:23 MET 1998", "version" => "0.7" }, { "entries" => [ { "line" => 25, "raw" => "\timplemented wantarray handling in READLINE\n", "style" => "", "text" => "implemented wantarray handling in READLINE" }, { "line" => 26, "raw" => "\timplemented some tests for make test\n", "style" => "", "text" => "implemented some tests for make test" }, { "line" => 27, "raw" => " documented the tied interface in synopsis (Duh!)\n", "style" => "", "text" => "documented the tied interface in synopsis (Duh!)" }, { "line" => 28, "raw" => " - implemented tail -n functionality\n\n", "style" => "-", "text" => "implemented tail -n functionality" } ], "line" => 24, "note" => "Wed Oct 14 19:29:30 MET DST 1998", "raw" => "0.8 Wed Oct 14 19:29:30 MET DST 1998\n", "version" => "0.8" }, { "entries" => [ { "line" => 31, "raw" => "\tThere was a bug in tail -n part, and the tail -n tests were missing\n from the distribution\n\n", "style" => "", "text" => "There was a bug in tail -n part, and the tail -n tests were missing from the distribution" } ], "line" => 30, "note" => "Thu Oct 15 07:54:36 MET DST 1998", "raw" => "0.81 Thu Oct 15 07:54:36 MET DST 1998\n", "version" => "0.81" }, { "date" => "1998-10-28T15:44:47Z", "entries" => [ { "line" => 35, "raw" => "\tThe introduction of tail -n broke the handling of files where \n", "style" => "", "text" => "The introduction of tail -n broke the handling of files where" }, { "line" => 36, "raw" => "\ta line might be written incompletely (e.g. without the final \\n). OOps!\n\n", "style" => "", "text" => "a line might be written incompletely (e.g. without the final \\n). OOps!" } ], "line" => 34, "raw" => "0.85\tWed Oct 28 15:44:47 MET 1998\n", "raw_date" => "Wed Oct 28 15:44:47 MET 1998", "version" => "0.85" }, { "date" => "1998-11-10T11:02:35Z", "entries" => [ { "line" => 39, "raw" => "\tfix for reset_tail (it couldn't be set to 0) from \n\t Chris_Heller/PeopleSoft\@peoplesoft.com\n", "style" => "", "text" => "fix for reset_tail (it couldn't be set to 0) from Chris_Heller/PeopleSoft\@peoplesoft.com" }, { "line" => 41, "raw" => "\tfixed some -> references which complained in Perl5.4 but not in 5.5\n", "style" => "", "text" => "fixed some -> references which complained in Perl5.4 but not in 5.5" }, { "line" => 42, "raw" => " moved debugging statement to a separate routine, logit\n", "style" => "", "text" => "moved debugging statement to a separate routine, logit" }, { "line" => 43, "raw" => " logit now outputs the name of the calling routine and the name of the\n file the object refers to.\n", "style" => "", "text" => "logit now outputs the name of the calling routine and the name of the file the object refers to." }, { "line" => 45, "raw" => " select functionality added. \n\n", "style" => "", "text" => "select functionality added." } ], "line" => 38, "raw" => "0.90 Tue Nov 10 11:02:35 MET 1998\n", "raw_date" => "Tue Nov 10 11:02:35 MET 1998", "version" => "0.90" }, { "date" => "1999-02-02T17:14:27Z", "entries" => [ { "line" => 48, "raw" => "\tanother ambigous reference (fixed thanks to Peter Wirdemo )\n", "style" => "", "text" => "another ambigous reference (fixed thanks to Peter Wirdemo )" }, { "line" => 49, "raw" => " nasty select bug discovered by \"Weeber, Steve\" \n", "style" => "", "text" => "nasty select bug discovered by \"Weeber, Steve\" " }, { "line" => 50, "raw" => " select can now also be called as File::Tail::select, as long as there \n is at least one tail object given.\n\n", "style" => "", "text" => "select can now also be called as File::Tail::select, as long as there is at least one tail object given." } ], "line" => 47, "raw" => "0.91\tTue Feb 2 17:14:27 MET 1999\n", "raw_date" => "Tue Feb 2 17:14:27 MET 1999", "version" => "0.91" }, { "entries" => [ { "line" => 54, "raw" => "\tBlair Zajac sent a patch to fix some problems when returning an empty \n", "style" => "", "text" => "Blair Zajac sent a patch to fix some problems when returning an empty" }, { "line" => 55, "raw" => " string when the request was for an array.\n", "style" => "", "text" => "string when the request was for an array." }, { "line" => 56, "raw" => " Gerben Wierda sent a patch that should fix \n", "style" => "", "text" => "Gerben Wierda sent a patch that should fix" }, { "line" => 57, "raw" => "\tproblems with files that don't get updated for a while (a file could\n", "style" => "", "text" => "problems with files that don't get updated for a while (a file could" }, { "line" => 58, "raw" => "\taccidentaly be read the whole way through again under some \n", "style" => "", "text" => "accidentaly be read the whole way through again under some" }, { "line" => 59, "raw" => "\tcircumstances)\n\n", "style" => "", "text" => "circumstances)" } ], "line" => 53, "note" => "Thu Oct 21 11:28:57 MET DST 1999", "raw" => "0.92\tThu Oct 21 11:28:57 MET DST 1999\n", "version" => "0.92" }, { "date" => "1999-11-03T12:46:29Z", "entries" => [ { "line" => 62, "raw" => " Some changes in the way internal data caching is done - primarily \n support for cases where you shouldn't keep all the pending lines in\n \t memory.\n", "style" => "", "text" => "Some changes in the way internal data caching is done - primarily support for cases where you shouldn't keep all the pending lines in memory." }, { "line" => 65, "raw" => " logit calls are now stripped by default before the module is installed.\n If you want to patch File::Tail now, you must edit Tail.pm.debug,\n the do a perl Makefile.PL which will create a Tail.pm\n", "style" => "", "text" => "logit calls are now stripped by default before the module is installed. If you want to patch File::Tail now, you must edit Tail.pm.debug, the do a perl Makefile.PL which will create a Tail.pm" }, { "line" => 68, "raw" => "\tSelect returned ALL handles instead of just the ones with input ready.\n\n", "style" => "", "text" => "Select returned ALL handles instead of just the ones with input ready." } ], "line" => 61, "raw" => "0.94 \tWed Nov 3 12:46:29 MET 1999\n", "raw_date" => "Wed Nov 3 12:46:29 MET 1999", "version" => "0.94" }, { "date" => "1999-12-09T10:25:47Z", "entries" => [ { "line" => 71, "raw" => " I couldn't get Pause to recognise that 0.94 was newer than 0.91 for\n", "style" => "", "text" => "I couldn't get Pause to recognise that 0.94 was newer than 0.91 for" }, { "line" => 72, "raw" => "\tsome reason. I added Tail.pm back into the manifest to see if that\n", "style" => "", "text" => "some reason. I added Tail.pm back into the manifest to see if that" }, { "line" => 73, "raw" => "\twill help.\n\n", "style" => "", "text" => "will help." } ], "line" => 70, "raw" => "0.95\tThu Dec 9 10:25:47 MET 1999\n", "raw_date" => "Thu Dec 9 10:25:47 MET 1999", "version" => "0.95" }, { "entries" => [ { "line" => 76, "raw" => "\tadded binmode to improve running on Microsoft platforms\n", "style" => "", "text" => "added binmode to improve running on Microsoft platforms" }, { "line" => 77, "raw" => " added a check in DESTROY to avoid a warning in Perl 5.6\n", "style" => "", "text" => "added a check in DESTROY to avoid a warning in Perl 5.6" }, { "line" => 78, "raw" => " fixed prerequisites in Makefile.PL\n\n", "style" => "", "text" => "fixed prerequisites in Makefile.PL" } ], "line" => 75, "note" => "Mon May 29 09:33:27 MET DST 2000", "raw" => "0.96\tMon May 29 09:33:27 MET DST 2000\n", "version" => "0.96" }, { "entries" => [ { "line" => 81, "raw" => " perhaps eliminated. Thanks elfchief\@lupine.org for making a script \n", "style" => "", "text" => "perhaps eliminated. Thanks elfchief\@lupine.org for making a script" }, { "line" => 82, "raw" => " that triggered the previously interminent problem every time.\n\n", "style" => "", "text" => "that triggered the previously interminent problem every time." } ], "line" => 80, "note" => "Persistent \"go wild after log rotation, but only sometimes\" bug", "raw" => "0.97\tPersistent \"go wild after log rotation, but only sometimes\" bug\n", "version" => "0.97" }, { "entries" => [ { "line" => 85, "raw" => " others for inefficiencies, or lack of clarity in documents)\n\n", "style" => "", "text" => "others for inefficiencies, or lack of clarity in documents)" } ], "line" => 84, "note" => "David Pfitzner release - David send me 6 patches (some for bugs,", "raw" => "0.98 David Pfitzner release - David send me 6 patches (some for bugs,\n", "version" => "0.98" }, { "entries" => [ { "line" => 88, "raw" => " where interval was set to a negative value\n", "style" => "", "text" => "where interval was set to a negative value" }, { "line" => 89, "raw" => " Joe Smith noted that one shouldn't declare\n", "style" => "", "text" => "Joe Smith noted that one shouldn't declare" }, { "line" => 90, "raw" => " \@ISA=qw(Autoloader) unless one is prepared to deal with it correctly.\n", "style" => "", "text" => "\@ISA=qw(Autoloader) unless one is prepared to deal with it correctly." }, { "line" => 91, "raw" => " Peter Allen undef warnings when starting up on a \n", "style" => "", "text" => "Peter Allen undef warnings when starting up on a" }, { "line" => 92, "raw" => " nonexistant file\n", "style" => "", "text" => "nonexistant file" }, { "line" => 93, "raw" => "\tAlain Fauconnet and Benjamin Zwittnig \n", "style" => "", "text" => "Alain Fauconnet and Benjamin Zwittnig " }, { "line" => 94, "raw" => " provided test cases which helped me chase down another two cases where \n", "style" => "", "text" => "provided test cases which helped me chase down another two cases where" }, { "line" => 95, "raw" => " File::Tail would spontaneously read too much.\n\n", "style" => "", "text" => "File::Tail would spontaneously read too much." } ], "line" => 87, "note" => "\"Lyle D. Brooks\" reported there were instances", "raw" => "0.99 \"Lyle D. Brooks\" reported there were instances \n", "version" => "0.99" }, { "entries" => [ { "line" => 98, "raw" => " This should now be handled correctly.\n", "style" => "", "text" => "This should now be handled correctly." }, { "line" => 99, "raw" => " nowait can now be specified at object creation.\n", "style" => "", "text" => "nowait can now be specified at object creation." }, { "line" => 100, "raw" => " A callback is called on every file rotation, which can be used for\n", "style" => "", "text" => "A callback is called on every file rotation, which can be used for" }, { "line" => 101, "raw" => " files that change their names with time.\n\n", "style" => "", "text" => "files that change their names with time." } ], "line" => 97, "note" => "Some operating systems sometimes return 0 for sysread on busy files.", "raw" => "0.99.2 Some operating systems sometimes return 0 for sysread on busy files.\n", "version" => "0.99.2" }, { "entries" => [ { "line" => 104, "raw" => " a new version just for that. Life is ridiculous.\n\n", "style" => "", "text" => "a new version just for that. Life is ridiculous." } ], "line" => 103, "note" => "Firefox crashed while I attempted upload to PAUSE, so I had to make", "raw" => "0.99.3 Firefox crashed while I attempted upload to PAUSE, so I had to make\n", "version" => "0.99.3" }, { "entries" => [ { "line" => 107, "raw" => " longer see a point in not having a 1.0 version.\n\n", "style" => "", "text" => "longer see a point in not having a 1.0 version." } ], "line" => 106, "note" => "Actually just two minor bug fixes (one of them in a test), but I no", "raw" => "1.0 Actually just two minor bug fixes (one of them in a test), but I no\n", "version" => "1.0" }, { "entries" => [ { "line" => 110, "raw" => " Changed the use of the system's mv command to using File::Copy in the\n", "style" => "", "text" => "Changed the use of the system's mv command to using File::Copy in the" }, { "line" => 111, "raw" => " tests. (Steffen Mueller)\n", "style" => "", "text" => "tests. (Steffen Mueller)" }, { "line" => 112, "raw" => " Added machine-readable license statement to Makefile.PL and thus\n", "style" => "", "text" => "Added machine-readable license statement to Makefile.PL and thus" }, { "line" => 113, "raw" => " META.yml (Steffen Mueller)\n", "style" => "", "text" => "META.yml (Steffen Mueller)" }, { "line" => 114, "raw" => " The sixth test in 10/open.t is skipped on win32 because you can't just\n", "style" => "", "text" => "The sixth test in 10/open.t is skipped on win32 because you can't just" }, { "line" => 115, "raw" => " move files around that are opened. (Steffen Mueller)\n", "style" => "", "text" => "move files around that are opened. (Steffen Mueller)" }, { "line" => 116, "raw" => " Due to using sysread and friends, there were newline problems on win32.\n", "style" => "", "text" => "Due to using sysread and friends, there were newline problems on win32." }, { "line" => 117, "raw" => " That should be fixed now. (Steffen Mueller)\n\n", "style" => "", "text" => "That should be fixed now. (Steffen Mueller)" } ], "line" => 109, "note" => "Lee Duncan drew my attention to Stephan Muller's fixes for Windows compatibility", "raw" => "1.1 Lee Duncan drew my attention to Stephan Muller's fixes for Windows compatibility\n", "version" => "1.1" }, { "entries" => [ { "line" => 120, "raw" => " causes the attempt to fill the tail buffer to fill with the exact same\n", "style" => "", "text" => "causes the attempt to fill the tail buffer to fill with the exact same" }, { "line" => 121, "raw" => " or even smaller number of lines.\n\n", "style" => "", "text" => "or even smaller number of lines." } ], "line" => 119, "note" => "Break the infinite loop that can result when the average length of lines", "raw" => "1.2 Break the infinite loop that can result when the average length of lines\n", "version" => "1.2" }, { "entries" => [ { "line" => 124, "raw" => " Added a warning for use of debug in a non-debug version of File::Tail\n", "style" => "", "text" => "Added a warning for use of debug in a non-debug version of File::Tail" }, { "line" => 125, "raw" => " Shows a warning when maxbuf is set to a too-small value\n", "style" => "", "text" => "Shows a warning when maxbuf is set to a too-small value" }, { "line" => 126, "raw" => " Invoking name_changes callback changes the value of input attribute (sottile\@ix.netcom.com)\n", "style" => "", "text" => "Invoking name_changes callback changes the value of input attribute (sottile\@ix.netcom.com)" }, { "line" => 127, "raw" => " When deciding to reopen the file, check if the inode matches (that would mean it has not\n been ranamed)\n ", "style" => "", "text" => "When deciding to reopen the file, check if the inode matches (that would mean it has not been ranamed)" } ], "line" => 123, "note" => "Fix for a stupid bug in 1.2 (GFILATOV, Slaven_Rezic)", "raw" => "1.3 Fix for a stupid bug in 1.2 (GFILATOV, Slaven_Rezic)\n", "version" => "1.3" } ] } CPAN-Changes-0.500005/corpus/dists/Marpa-R2.parsed000644 000000 000000 00000066736 14472651645 017422 0ustar00000000 000000 { "preamble" => "# Copyright 2013 Jeffrey Kegler\n# This file is part of Marpa::R2. Marpa::R2 is free software: you can\n# redistribute it and/or modify it under the terms of the GNU Lesser\n# General Public License as published by the Free Software Foundation,\n# either version 3 of the License, or (at your option) any later version.\n#\n# Marpa::R2 is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\n# Lesser General Public License for more details.\n#\n# You should have received a copy of the GNU Lesser\n# General Public License along with Marpa::R2. If not, see\n# http://www.gnu.org/licenses/.\n\nRevision history for Marpa::R2", "raw_preamble" => "# Copyright 2013 Jeffrey Kegler\n# This file is part of Marpa::R2. Marpa::R2 is free software: you can\n# redistribute it and/or modify it under the terms of the GNU Lesser\n# General Public License as published by the Free Software Foundation,\n# either version 3 of the License, or (at your option) any later version.\n#\n# Marpa::R2 is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\n# Lesser General Public License for more details.\n#\n# You should have received a copy of the GNU Lesser\n# General Public License along with Marpa::R2. If not, see\n# http://www.gnu.org/licenses/.\n\nRevision history for Marpa::R2\n\n", "releases" => [ { "date" => "2013-12-25T08:38:49Z", "entries" => [ { "line" => 20, "raw" => " * Allow Unicode in SLIF DSL source\n\n", "style" => "*", "text" => "Allow Unicode in SLIF DSL source" }, { "line" => 22, "raw" => " * New high-level ASF interface -- still alpha\n\n", "style" => "*", "text" => "New high-level ASF interface -- still alpha" } ], "line" => 18, "raw" => "2.078000 Wed Dec 25 08:38:49 PST 2013\n\n", "raw_date" => "Wed Dec 25 08:38:49 PST 2013", "version" => "2.078000" }, { "date" => "2013-11-20T16:22:56Z", "entries" => [ { "line" => 26, "raw" => " * SLIF start rule is now optional.\n\n", "style" => "*", "text" => "SLIF start rule is now optional." }, { "line" => 28, "raw" => " * SLIF character classes and strings\n can be case-insensitive.\n\n", "style" => "*", "text" => "SLIF character classes and strings can be case-insensitive." }, { "line" => 31, "raw" => " * ASF's documented and ready for trial, but\n only by adventurous users.\n\n", "style" => "*", "text" => "ASF's documented and ready for trial, but only by adventurous users." } ], "line" => 24, "raw" => "2.076000 Wed Nov 20 16:22:56 PST 2013\n\n", "raw_date" => "Wed Nov 20 16:22:56 PST 2013", "version" => "2.076000" }, { "date" => "2013-10-29T20:21:57Z", "entries" => [ { "line" => 36, "raw" => " * Minor Bug fixes in SLIF\n\n", "style" => "*", "text" => "Minor Bug fixes in SLIF" } ], "line" => 34, "raw" => "2.074000 Tue Oct 29 20:21:57 PDT 2013\n\n", "raw_date" => "Tue Oct 29 20:21:57 PDT 2013", "version" => "2.074000" }, { "date" => "2013-10-23T17:26:49Z", "entries" => [ { "line" => 40, "raw" => " * Minor fix to error messages\n\n", "style" => "*", "text" => "Minor fix to error messages" } ], "line" => 38, "raw" => "2.072000 Wed Oct 23 17:26:49 PDT 2013\n\n", "raw_date" => "Wed Oct 23 17:26:49 PDT 2013", "version" => "2.072000" }, { "date" => "2013-09-08T17:52:17Z", "entries" => [ { "line" => 44, "raw" => " * Semantics docs updated for SLIF. It is now possible to become a Marpa::R2\n expert without learning anything about its original interface, the NAIF.\n\n", "style" => "*", "text" => "Semantics docs updated for SLIF. It is now possible to become a Marpa::R2 expert without learning anything about its original interface, the NAIF." }, { "line" => 47, "raw" => " * Per-parse arg can now be specified explicitly as arg\n of \$slr->value().\n\n", "style" => "*", "text" => "Per-parse arg can now be specified explicitly as arg of \$slr->value()." }, { "line" => 50, "raw" => " * Added semantics_package named argument to SLIF recognizer.\n\n", "style" => "*", "text" => "Added semantics_package named argument to SLIF recognizer." }, { "line" => 52, "raw" => " * Fix bug: unproductive symbol in G0 sequence was causing SEGV\n instead of diagnostic.\n\n", "style" => "*", "text" => "Fix bug: unproductive symbol in G0 sequence was causing SEGV instead of diagnostic." }, { "line" => 55, "raw" => " * Fix SLIF bug when using default action with null parse --\n default action was not being called, it now is.\n\n", "style" => "*", "text" => "Fix SLIF bug when using default action with null parse -- default action was not being called, it now is." } ], "line" => 42, "raw" => "2.070000 Sun Sep 8 17:52:17 PDT 2013\n\n", "raw_date" => "Sun Sep 8 17:52:17 PDT 2013", "version" => "2.070000" }, { "date" => "2013-08-22T19:13:34Z", "entries" => [ { "line" => 60, "raw" => " * Better debugging and tracing for SLIF,\n and better documentation for it.\n\n", "style" => "*", "text" => "Better debugging and tracing for SLIF, and better documentation for it." }, { "line" => 63, "raw" => " * Fix bug discovered by Jean-Damien Durand --\n discarding lexemes should take precedence over rejecting\n them.\n\n", "style" => "*", "text" => "Fix bug discovered by Jean-Damien Durand -- discarding lexemes should take precedence over rejecting them." }, { "line" => 67, "raw" => " * Various documentaion fixes\n\n", "style" => "*", "text" => "Various documentaion fixes" } ], "line" => 58, "raw" => "2.068000 Thu Aug 22 19:13:34 PDT 2013\n\n", "raw_date" => "Thu Aug 22 19:13:34 PDT 2013", "version" => "2.068000" }, { "date" => "2013-08-02T17:34:47Z", "entries" => [ { "line" => 71, "raw" => " * Fix SLIF memory leak; fix for Perl 5.19.3\n\n", "style" => "*", "text" => "Fix SLIF memory leak; fix for Perl 5.19.3" } ], "line" => 69, "raw" => "2.066000 Fri Aug 2 17:34:47 PDT 2013\n\n", "raw_date" => "Fri Aug 2 17:34:47 PDT 2013", "version" => "2.066000" }, { "date" => "2013-07-11T09:10:54Z", "entries" => [ { "line" => 75, "raw" => " * Fix bug in return value of lexeme_read();\n Fix SEGV when terminal symbol is unused.\n\n", "style" => "*", "text" => "Fix bug in return value of lexeme_read(); Fix SEGV when terminal symbol is unused." } ], "line" => 73, "raw" => "2.064000 Thu Jul 11 09:10:54 PDT 2013\n\n", "raw_date" => "Thu Jul 11 09:10:54 PDT 2013", "version" => "2.064000" }, { "date" => "2013-07-02T08:23:53Z", "entries" => [ { "line" => 80, "raw" => " * Added SLIF expected_terminals(), events() methods;\n Lexemes pauses can be now be named events, and\n as named events can be deactivated and reactivated\n\n", "style" => "*", "text" => "Added SLIF expected_terminals(), events() methods; Lexemes pauses can be now be named events, and as named events can be deactivated and reactivated" } ], "line" => 78, "raw" => "2.062000 Tue Jul 2 08:23:53 PDT 2013\n\n", "raw_date" => "Tue Jul 2 08:23:53 PDT 2013", "version" => "2.062000" }, { "date" => "2013-06-22T17:56:20Z", "entries" => [ { "line" => 86, "raw" => " * Fix bug in SLIF lexing\n\n", "style" => "*", "text" => "Fix bug in SLIF lexing" } ], "line" => 84, "raw" => "2.060000 Sat Jun 22 17:56:20 PDT 2013\n\n", "raw_date" => "Sat Jun 22 17:56:20 PDT 2013", "version" => "2.060000" }, { "date" => "2013-06-11T18:31:57Z", "entries" => [ { "line" => 90, "raw" => " * Added nulled and predicted events;\n\n", "style" => "*", "text" => "Added nulled and predicted events;" }, { "line" => 92, "raw" => " * Added event deactivation and reactivation.\n\n", "style" => "*", "text" => "Added event deactivation and reactivation." } ], "line" => 88, "raw" => "2.058000 Tue Jun 11 18:31:57 PDT 2013\n\n", "raw_date" => "Tue Jun 11 18:31:57 PDT 2013", "version" => "2.058000" }, { "date" => "2013-05-22T17:38:03Z", "entries" => [ { "line" => 96, "raw" => " * Rearrange POD to make SLIF primary interface\n\n", "style" => "*", "text" => "Rearrange POD to make SLIF primary interface" }, { "line" => 98, "raw" => " * Added accessors to Scanless::R\n\n", "style" => "*", "text" => "Added accessors to Scanless::R" }, { "line" => 100, "raw" => " * Fix bug found by Jean-Damien: combining\n ambiguity and SLIF external scanning caused\n segment violation.\n \n", "style" => "*", "text" => "Fix bug found by Jean-Damien: combining ambiguity and SLIF external scanning caused segment violation." } ], "line" => 94, "raw" => "2.056000 Wed May 22 17:38:03 PDT 2013\n\n", "raw_date" => "Wed May 22 17:38:03 PDT 2013", "version" => "2.056000" }, { "date" => "2013-05-15T12:54:00Z", "entries" => [ { "line" => 106, "raw" => " * Added completion events\n\n", "style" => "*", "text" => "Added completion events" } ], "line" => 104, "raw" => "2.054000 Wed May 15 12:54:00 PDT 2013\n\n", "raw_date" => "Wed May 15 12:54:00 PDT 2013", "version" => "2.054000" }, { "entries" => [ { "line" => 110, "raw" => " * Add rank adverb, external scanning to SLIF\n\n", "style" => "*", "text" => "Add rank adverb, external scanning to SLIF" } ], "line" => 108, "raw" => "2.052000\n\n", "version" => "2.052000" }, { "date" => "2013-03-18T08:59:04Z", "entries" => [ { "line" => 114, "raw" => " * Optimizations\n\n", "style" => "*", "text" => "Optimizations" } ], "line" => 112, "raw" => "2.050000 Mon Mar 18 08:59:04 PDT 2013\n \n", "raw_date" => "Mon Mar 18 08:59:04 PDT 2013", "version" => "2.050000" }, { "date" => "2013-03-10T17:59:11Z", "entries" => [ { "line" => 118, "raw" => " * New options (blessed arrays) allow direct generation\n of AST's from SLIF\n\n", "style" => "*", "text" => "New options (blessed arrays) allow direct generation of AST's from SLIF" }, { "line" => 121, "raw" => " * Optimization of valuator and SLIF\n\n", "style" => "*", "text" => "Optimization of valuator and SLIF" } ], "line" => 116, "raw" => "2.048000 Sun Mar 10 17:59:11 PDT 2013\n\n", "raw_date" => "Sun Mar 10 17:59:11 PDT 2013", "version" => "2.048000" }, { "date" => "2013-02-06T08:24:05Z", "entries" => [ { "line" => 125, "raw" => " * Core logic of Scanless recognizer converted to C --\n it is now more than 10 times faster.\n\n", "style" => "*", "text" => "Core logic of Scanless recognizer converted to C -- it is now more than 10 times faster." } ], "line" => 123, "raw" => "2.046000 Wed Feb 6 08:24:05 PST 2013\n\n", "raw_date" => "Wed Feb 6 08:24:05 PST 2013", "version" => "2.046000" }, { "date" => "2013-01-28T19:42:06Z", "entries" => [ { "line" => 130, "raw" => " * Fix 64-bit Windows failures.\n\n", "style" => "*", "text" => "Fix 64-bit Windows failures." } ], "line" => 128, "raw" => "2.044000 Mon Jan 28 19:42:06 PST 2013\n\n", "raw_date" => "Mon Jan 28 19:42:06 PST 2013", "version" => "2.044000" }, { "date" => "2013-01-22T17:15:50Z", "entries" => [ { "line" => 134, "raw" => " * Scanless interface now supports Unicode.\n\n", "style" => "*", "text" => "Scanless interface now supports Unicode." } ], "line" => 132, "raw" => "2.042000 Tue Jan 22 17:15:50 PST 2013\n\n", "raw_date" => "Tue Jan 22 17:15:50 PST 2013", "version" => "2.042000" }, { "date" => "2013-01-05T08:33:52Z", "entries" => [ { "line" => 138, "raw" => " * Fixed two cases in the Scanless interface. In\n one case, parse exhaustion at the G1 level was\n treated as an error. In the other, the G0 level\n assumed there would be at least one :discard rule,\n and had problems if there were none.\n\n", "style" => "*", "text" => "Fixed two cases in the Scanless interface. In one case, parse exhaustion at the G1 level was treated as an error. In the other, the G0 level assumed there would be at least one :discard rule, and had problems if there were none." } ], "line" => 136, "raw" => "2.040000 Sat Jan 5 08:33:52 PST 2013\n\n", "raw_date" => "Sat Jan 5 08:33:52 PST 2013", "version" => "2.040000" }, { "date" => "2013-01-02T09:14:38Z", "entries" => [ { "line" => 146, "raw" => " * The Scanless G0 rule order depended\n indirectly on the order of\n keys in a Perl hash. Fixed that.\n\n", "style" => "*", "text" => "The Scanless G0 rule order depended indirectly on the order of keys in a Perl hash. Fixed that." } ], "line" => 144, "raw" => "2.038000 Wed Jan 2 09:14:38 PST 2013\n\n", "raw_date" => "Wed Jan 2 09:14:38 PST 2013", "version" => "2.038000" }, { "date" => "2013-01-01T00:54:36Z", "entries" => [ { "line" => 152, "raw" => " * Documentation for the Stuifzand (BNF) and\n Scanless interfaces is complete. They are\n now in full release.\n\n", "style" => "*", "text" => "Documentation for the Stuifzand (BNF) and Scanless interfaces is complete. They are now in full release." } ], "line" => 150, "raw" => "2.036000 Tue Jan 1 00:54:36 PST 2013\n \n", "raw_date" => "Tue Jan 1 00:54:36 PST 2013", "version" => "2.036000" }, { "date" => "2012-12-26T08:44:16Z", "entries" => [ { "line" => 158, "raw" => " * Fix problem with negative rule ranks.\n\n", "style" => "*", "text" => "Fix problem with negative rule ranks." }, { "line" => 160, "raw" => " * Stuifzand and Scanless interfaces are complete\n and tested. Only lack of documentation prevented\n them from being taken out of beta.\n\n", "style" => "*", "text" => "Stuifzand and Scanless interfaces are complete and tested. Only lack of documentation prevented them from being taken out of beta." } ], "line" => 156, "raw" => "2.034000 Wed Dec 26 08:44:16 PST 2012\n\n", "raw_date" => "Wed Dec 26 08:44:16 PST 2012", "version" => "2.034000" }, { "date" => "2012-12-09T10:19:50Z", "entries" => [ { "line" => 166, "raw" => " * Speed up precomputation of large grammars.\n\n", "style" => "*", "text" => "Speed up precomputation of large grammars." } ], "line" => 164, "raw" => "2.032000 Sun Dec 9 10:19:50 PST 2012\n\n", "raw_date" => "Sun Dec 9 10:19:50 PST 2012", "version" => "2.032000" }, { "date" => "2012-12-04T18:01:55Z", "entries" => [ { "line" => 170, "raw" => " * Use Config::AutoConf to install on Sun's,\n OpenBSD.\n", "style" => "*", "text" => "Use Config::AutoConf to install on Sun's, OpenBSD." }, { "line" => 172, "raw" => " * Use legacy File::Path::mkpath() for portability\n\n", "style" => "*", "text" => "Use legacy File::Path::mkpath() for portability" } ], "line" => 168, "raw" => "2.030000 Tue Dec 4 18:01:55 PST 2012\n\n", "raw_date" => "Tue Dec 4 18:01:55 PST 2012", "version" => "2.030000" }, { "date" => "2012-11-23T08:04:02Z", "entries" => [ { "line" => 176, "raw" => " * Now installs in Windows,\n using Config::AutoConf\n\n", "style" => "*", "text" => "Now installs in Windows, using Config::AutoConf" } ], "line" => 174, "raw" => "2.026000 Fri Nov 23 08:04:02 PST 2012\n\n", "raw_date" => "Fri Nov 23 08:04:02 PST 2012", "version" => "2.026000" }, { "date" => "2012-11-08T08:19:21Z", "entries" => [ { "line" => 181, "raw" => " * Changing Marpa::R2, Libmarpa and\n Marpa::R2::Thin to full release.\n\n", "style" => "*", "text" => "Changing Marpa::R2, Libmarpa and Marpa::R2::Thin to full release." } ], "line" => 179, "raw" => "2.024000 Thu Nov 8 08:19:21 PST 2012\n\n", "raw_date" => "Thu Nov 8 08:19:21 PST 2012", "version" => "2.024000" }, { "date" => "2012-10-19T18:27:16Z", "entries" => [ { "line" => 186, "raw" => " * Extensive revisions to internals of\n Marpa::R2::HTML; now requires only\n HTML::Parser, not HTML::PullParser;\n 'pseudoclass' argspec of descendants()\n method removed from documentation.\n\n", "style" => "*", "text" => "Extensive revisions to internals of Marpa::R2::HTML; now requires only HTML::Parser, not HTML::PullParser; 'pseudoclass' argspec of descendants() method removed from documentation." }, { "line" => 192, "raw" => " * Make HTML::Parser a required\n dependency.\n\n", "style" => "*", "text" => "Make HTML::Parser a required dependency." } ], "line" => 184, "raw" => "2.022000 Fri Oct 19 18:27:16 PDT 2012\n\n", "raw_date" => "Fri Oct 19 18:27:16 PDT 2012", "version" => "2.022000" }, { "date" => "2012-09-12T20:44:46Z", "entries" => [ { "line" => 197, "raw" => " * Make Marpa::R2::HTML a fully visible part\n of the distribution.\n\n", "style" => "*", "text" => "Make Marpa::R2::HTML a fully visible part of the distribution." }, { "line" => 200, "raw" => " * Documentation changes and fixes\n\n", "style" => "*", "text" => "Documentation changes and fixes" } ], "line" => 195, "raw" => "2.020000 Wed Sep 12 20:44:46 PDT 2012\n\n", "raw_date" => "Wed Sep 12 20:44:46 PDT 2012", "version" => "2.020000" }, { "date" => "2012-08-22T20:46:44Z", "entries" => [ { "line" => 204, "raw" => " * Libmarpa docs now shipped with Marpa::R2\n\n", "style" => "*", "text" => "Libmarpa docs now shipped with Marpa::R2" }, { "line" => 206, "raw" => " * Changed Marpa::R2 to beta. Libmarpa and\n Marpa::R2::Thin remain alpha.\n\n", "style" => "*", "text" => "Changed Marpa::R2 to beta. Libmarpa and Marpa::R2::Thin remain alpha." } ], "line" => 202, "raw" => "2.018000 Wed Aug 22 20:46:44 PDT 2012\n\n", "raw_date" => "Wed Aug 22 20:46:44 PDT 2012", "version" => "2.018000" }, { "date" => "2012-08-05T17:20:13Z", "entries" => [ { "line" => 211, "raw" => " * Documentation fixes\n\n", "style" => "*", "text" => "Documentation fixes" }, { "line" => 213, "raw" => " * Added marpa_r_expected_symbol_event_set() to Libmarpa\n\n", "style" => "*", "text" => "Added marpa_r_expected_symbol_event_set() to Libmarpa" }, { "line" => 215, "raw" => " * Added Marpa::R2::Recognizer::expected_symbol_event_set(),\n Marpa::R2::Recognizer::events(), and 'event_if_expected'\n recognizer named argument to Marpa::R2\n\n", "style" => "*", "text" => "Added Marpa::R2::Recognizer::expected_symbol_event_set(), Marpa::R2::Recognizer::events(), and 'event_if_expected' recognizer named argument to Marpa::R2" } ], "line" => 209, "raw" => "2.016000 Sun Aug 5 17:20:13 PDT 2012\n\n", "raw_date" => "Sun Aug 5 17:20:13 PDT 2012", "version" => "2.016000" }, { "date" => "2012-07-21T18:18:52Z", "entries" => [ { "line" => 221, "raw" => " * Added \$v->location() to thin interface\n\n", "style" => "*", "text" => "Added \$v->location() to thin interface" }, { "line" => 223, "raw" => " * Added location step accessors to Libmarpa\n\n", "style" => "*", "text" => "Added location step accessors to Libmarpa" } ], "line" => 219, "raw" => "2.014000 Sat Jul 21 18:18:52 PDT 2012\n\n", "raw_date" => "Sat Jul 21 18:18:52 PDT 2012", "version" => "2.014000" }, { "date" => "2012-07-15T17:43:59Z", "entries" => [ { "line" => 227, "raw" => " * Added marpa_o_rank() to Libmarpa interface\n\n", "style" => "*", "text" => "Added marpa_o_rank() to Libmarpa interface" }, { "line" => 229, "raw" => " * Added \"if\" arg to Marpa::R2::Thin::G->new()\n\n", "style" => "*", "text" => "Added \"if\" arg to Marpa::R2::Thin::G->new()" } ], "line" => 225, "raw" => "2.012000 Sun Jul 15 17:43:59 PDT 2012\n\n", "raw_date" => "Sun Jul 15 17:43:59 PDT 2012", "version" => "2.012000" }, { "date" => "2012-07-05T20:44:07Z", "entries" => [ { "line" => 233, "raw" => " * Documented Libmarpa API and Marpa::R2::Thin.\n\n", "style" => "*", "text" => "Documented Libmarpa API and Marpa::R2::Thin." }, { "line" => 235, "raw" => " * Added context variables\n\n", "style" => "*", "text" => "Added context variables" } ], "line" => 231, "raw" => "2.010000 Thu Jul 5 20:44:07 PDT 2012\n\n", "raw_date" => "Thu Jul 5 20:44:07 PDT 2012", "version" => "2.010000" }, { "entries" => [ { "line" => 239, "raw" => " * Documented \$recce->progress()\n\n", "style" => "*", "text" => "Documented \$recce->progress()" }, { "line" => 241, "raw" => " * Clean up libmarpa build\n\n", "style" => "*", "text" => "Clean up libmarpa build" } ], "line" => 237, "note" => "14-Jun-2012 10:42", "raw" => "2.008000 14-Jun-2012 10:42\n\n", "version" => "2.008000" }, { "entries" => [ { "line" => 245, "raw" => " * Convert progress reports to C\n\n", "style" => "*", "text" => "Convert progress reports to C" }, { "line" => 247, "raw" => " * Cleanup logic of valued/unvalued symbols\n\n", "style" => "*", "text" => "Cleanup logic of valued/unvalued symbols" }, { "line" => 249, "raw" => " * Cleanup ranking of symbols/rules\n\n", "style" => "*", "text" => "Cleanup ranking of symbols/rules" }, { "line" => 251, "raw" => " * LHS of rule no longer implicitly used\n as action name.\n\n", "style" => "*", "text" => "LHS of rule no longer implicitly used as action name." } ], "line" => 243, "note" => "8-Jun-2012 08:18", "raw" => "2.006000 8-Jun-2012 08:18\n\n", "version" => "2.006000" }, { "entries" => [ { "line" => 256, "raw" => " * Fix action resolution issue; cleanup\n memory allocation.\n\n", "style" => "*", "text" => "Fix action resolution issue; cleanup memory allocation." }, { "line" => 259, "raw" => " * Large bump in version number is to sync\n version numbers with libmarpa.\n\n", "style" => "*", "text" => "Large bump in version number is to sync version numbers with libmarpa." } ], "line" => 254, "note" => "01-Jun-2012 08:20", "raw" => "2.004000 01-Jun-2012 08:20\n\n", "version" => "2.004000" }, { "entries" => [ { "line" => 264, "raw" => " * First official (\"indexed\") release\n\n", "style" => "*", "text" => "First official (\"indexed\") release" }, { "line" => 266, "raw" => " * Changes incompatible with Marpa::XS are described\n in Marpa::R2::Changes POD doc\n\n", "style" => "*", "text" => "Changes incompatible with Marpa::XS are described in Marpa::R2::Changes POD doc" } ], "line" => 262, "note" => "26-May-2012 08:56", "raw" => "0.002000 26-May-2012 08:56\n\n", "version" => "0.002000" }, { "date" => "2011-10-21T20:57:44Z", "entries" => [ { "line" => 271, "raw" => " * Marpa::R2 forked from Marpa::XS 0.019_002\n\n", "style" => "*", "text" => "Marpa::R2 forked from Marpa::XS 0.019_002" }, { "line" => 273, "raw" => "# vim: set expandtab shiftwidth=4:\n", "style" => "#", "text" => "vim: set expandtab shiftwidth=4:" } ], "line" => 269, "raw" => "0.001_000 Fri Oct 21 20:57:44 PDT 2011\n\n", "raw_date" => "Fri Oct 21 20:57:44 PDT 2011", "version" => "0.001_000" } ] } CPAN-Changes-0.500005/corpus/dists/IUP.changes000644 000000 000000 00000003144 14472651645 016650 0ustar00000000 000000 =head1 Revision history for IUP =head2 XX/XX/2013 - 0.102 - XXX =head2 31/07/2013 - 0.101 - fixing broken links to examples =head2 06/02/2013 - 0.100 - updating callbacks newly added in iup 3.6/3.7 - starting new version line =head2 12/08/2012 - 0.006 - attribute accesors now handled via AUTOLOAD - Callback.xs+Canvas.xs incorporated into IupLibrary.xs - improved thread awareness of Idle callback - preparing for iup-3.6 =head2 19/08/2011 - 0.004 - forcing newer Alien::IUP (to make IUP install smoothly on cygwin) - fixing cygwin build failures =head2 18/08/2011 - 0.003 - much better documentation - many fixes for IUP::Canvas methods - added: IUP::Canvas::(Palette|Pattern|Stipple|Bitmap) - canvas helper modules - added: IUP::Canvas::(InternalState|InternalServerImage|InternalContext) - canvas helper modules (hidden) - added: IUP::Canvas::FileBitmap - added: IUP::Canvas::FileVector - replacement for IUP::Canvas::(SVG|EMF) - added: IUP::ConfigData - fix for callbacks: better handling of callbacks with no return value (fallback to IUP_DEFAULT) - fix for callbacks: MULTITOUCH_CB, MULTISELECTION_CB, MULTIUNSELECTION_CB, NODEREMOVED_CB - removing debug stuff 'use Data::Dump(er)' =head2 29/07/2011 - 0.002 - removing invalid accessors "0" and "1" - fix for "Can't locate IUP/OleControl.pm" - fixing documentation =head2 19/07/2011 - 0.001_01 - the first CPAN release =head2 15/09/2010 - 0.000 - initial proof-of-concept version uploaded to github - https://github.com/kmx/perl-iup/commit/e8cb0bb10e4ce6e7a342f65a6b933bbd90c1fb6d CPAN-Changes-0.500005/corpus/dists/Wiktionary-Parser.parsed000644 000000 000000 00000014175 14472651645 021461 0ustar00000000 000000 { "preamble" => "Revision history for Wiktionary::Parser", "raw_preamble" => "Revision history for Wiktionary::Parser\n\n", "releases" => [ { "date" => "2012-07-05", "entries" => [ { "line" => 4, "raw" => " First version\n\n", "style" => "", "text" => "First version" } ], "line" => 3, "raw" => "0.01 2012-07-05\n", "raw_date" => "2012-07-05", "version" => "0.01" }, { "date" => "2012-07-07", "entries" => [ { "line" => 7, "raw" => " accessors for translations, synonyms, hyponyms, hypernyms, antonyms, pronunciations, word senses, parts of speech\n", "style" => "", "text" => "accessors for translations, synonyms, hyponyms, hypernyms, antonyms, pronunciations, word senses, parts of speech" }, { "line" => 8, "raw" => " stubbed out accessors for etymologies, derived words, alternative forms\n", "style" => "", "text" => "stubbed out accessors for etymologies, derived words, alternative forms" }, { "line" => 9, "raw" => " added methods for accessing and traversing document sections\n", "style" => "", "text" => "added methods for accessing and traversing document sections" }, { "line" => 10, "raw" => " utilize MediaWiki::API package\n\n\n", "style" => "", "text" => "utilize MediaWiki::API package" } ], "line" => 6, "raw" => "0.02 2012-07-07\n", "raw_date" => "2012-07-07", "version" => "0.02" }, { "date" => "2012-07-08", "entries" => [ { "line" => 14, "raw" => " Added subdocuments to provide more functionality when retrieving child sections of the document.\n", "style" => "", "text" => "Added subdocuments to provide more functionality when retrieving child sections of the document." }, { "line" => 15, "raw" => " Follow Wikisaurus links for synonyms, hyponyms, hypernyms, etc and include content from those pages.\n", "style" => "", "text" => "Follow Wikisaurus links for synonyms, hyponyms, hypernyms, etc and include content from those pages." }, { "line" => 16, "raw" => " Provided method for downloading audio files for pronunciations\n", "style" => "", "text" => "Provided method for downloading audio files for pronunciations" }, { "line" => 17, "raw" => " Normalize language codes and provide consistent language names\n\n\n", "style" => "", "text" => "Normalize language codes and provide consistent language names" } ], "line" => 13, "raw" => "0.03 2012-07-08\n", "raw_date" => "2012-07-08", "version" => "0.03" }, { "date" => "2012-07-11", "entries" => [ { "line" => 21, "raw" => " Added unit test for parsing a document\n", "style" => "", "text" => "Added unit test for parsing a document" }, { "line" => 22, "raw" => " Added unit test for parsing translations\n", "style" => "", "text" => "Added unit test for parsing translations" }, { "line" => 23, "raw" => " Refactored translation parser\n\n\n", "style" => "", "text" => "Refactored translation parser" } ], "line" => 20, "raw" => "0.04 2012-07-11\n", "raw_date" => "2012-07-11", "version" => "0.04" }, { "date" => "2012-07-14", "entries" => [ { "line" => 27, "raw" => " updated documentation\n", "style" => "", "text" => "updated documentation" }, { "line" => 28, "raw" => " Added example scripts in /bin \n", "style" => "", "text" => "Added example scripts in /bin" }, { "line" => 29, "raw" => " Various bugfixes\n\n\n", "style" => "", "text" => "Various bugfixes" } ], "line" => 26, "raw" => "0.05 2012-07-14\n", "raw_date" => "2012-07-14", "version" => "0.05" }, { "date" => "2012-07-14", "entries" => [ { "line" => 33, "raw" => " Added part of speech info to output of get_translations()\n", "style" => "", "text" => "Added part of speech info to output of get_translations()" }, { "line" => 34, "raw" => " Included translations from other wiktionary pages linked to the original one\n\t \n\n", "style" => "", "text" => "Included translations from other wiktionary pages linked to the original one" } ], "line" => 32, "raw" => "0.06 2012-07-14\n", "raw_date" => "2012-07-14", "version" => "0.06" }, { "date" => "2012-07-15", "entries" => [ { "line" => 38, "raw" => " Updates to documentation and example scripts\n\n", "style" => "", "text" => "Updates to documentation and example scripts" } ], "line" => 37, "raw" => "0.07 2012-07-15\n", "raw_date" => "2012-07-15", "version" => "0.07" }, { "date" => "2012-07-18", "entries" => [ { "line" => 41, "raw" => " Various bugfixes for data sanitizing\n", "style" => "", "text" => "Various bugfixes for data sanitizing" }, { "line" => 42, "raw" => " Fixed issue with unit tests\n", "style" => "", "text" => "Fixed issue with unit tests" } ], "line" => 40, "raw" => "0.08 2012-07-18\n", "raw_date" => "2012-07-18", "version" => "0.08" } ] } CPAN-Changes-0.500005/corpus/dists/Mock-Person.parsed000644 000000 000000 00000001472 14472651645 020220 0ustar00000000 000000 { "preamble" => "Revision history for Mock::Person", "raw_preamble" => "Revision history for Mock::Person\n\n", "releases" => [ { "entries" => [ { "line" => 4, "raw" => " First release.\n\n", "style" => "", "text" => "First release." } ], "line" => 3, "note" => "Tue Oct 26, 2010", "raw" => "0.01 Tue Oct 26, 2010\n", "version" => "0.01" }, { "date" => "2013-06-23", "entries" => [ { "line" => 7, "raw" => " * Switched to Dist::Zilla\n", "style" => "*", "text" => "Switched to Dist::Zilla" } ], "line" => 6, "raw" => "0.02 2013-06-23\n", "raw_date" => "2013-06-23", "version" => "0.02" } ] } CPAN-Changes-0.500005/corpus/dists/DBICx-TestDatabase.parsed000644 000000 000000 00000002247 14472651645 021317 0ustar00000000 000000 { "raw_preamble" => "", "releases" => [ { "entries" => [ { "line" => 2, "raw" => " - support unicode (patch by diegok)\n\n", "style" => "-", "text" => "support unicode (patch by diegok)" } ], "line" => 1, "note" => "14 December 2010", "raw" => "0.04 14 December 2010\n", "version" => "0.04" }, { "entries" => [ { "line" => 5, "raw" => " - use an in-memory sqlite database by default\n\n", "style" => "-", "text" => "use an in-memory sqlite database by default" } ], "line" => 4, "note" => "14 December 2010", "raw" => "0.03 14 December 2010\n", "version" => "0.03" }, { "entries" => [ { "line" => 8, "raw" => " - first version, released upon an unsuspecting world\n\n", "style" => "-", "text" => "first version, released upon an unsuspecting world" } ], "line" => 7, "note" => "7 October 2007", "raw" => "0.01 7 October 2007\n", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/DBIx-Class.parsed000644 000000 000000 00001243614 14472651645 017723 0ustar00000000 000000 { "preamble" => "Revision history for DBIx::Class", "raw_preamble" => "Revision history for DBIx::Class\n\n", "releases" => [ { "date" => "2014-01-30T21:54Z", "entries" => [ { "entries" => [ { "line" => 5, "raw" => " - Fix 0.08260 regression in DBD::SQLite bound int handling. Inserted\n data was not affected, but any function <=> integer comparison would\n have failed (originally fixed way back in 0e773352)\n", "style" => "-", "text" => "Fix 0.08260 regression in DBD::SQLite bound int handling. Inserted data was not affected, but any function <=> integer comparison would have failed (originally fixed way back in 0e773352)" }, { "line" => 8, "raw" => " - Fix failure to load DateTime formatter when connecting to Firebird\n over ODBC\n\n", "style" => "-", "text" => "Fix failure to load DateTime formatter when connecting to Firebird over ODBC" } ], "line" => 4, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 12, "raw" => " - All drivers based on ::Storage::DBI::Firebird::Common now return the\n same sqlt_type value (affects ::DBI::Interbase, ::DBI::Firebird and\n ::DBI::ODBC::Firebird)\n\n", "style" => "-", "text" => "All drivers based on ::Storage::DBI::Firebird::Common now return the same sqlt_type value (affects ::DBI::Interbase, ::DBI::Firebird and ::DBI::ODBC::Firebird)" } ], "line" => 11, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 3, "note" => "(PST)", "raw" => "0.08270 2014-01-30 21:54 (PST)\n", "raw_date" => "2014-01-30 21:54", "version" => "0.08270" }, { "date" => "2014-01-28T18:52Z", "entries" => [ { "entries" => [ { "line" => 18, "raw" => " - A new zero-to-DBIC style manual: DBIx::Class::Manual::QuickStart\n\n", "style" => "-", "text" => "A new zero-to-DBIC style manual: DBIx::Class::Manual::QuickStart" } ], "line" => 17, "raw" => " * New Features\n", "style" => "*", "text" => "New Features" }, { "entries" => [ { "line" => 21, "raw" => " - Explicitly deprecate combination of distinct and selecting a\n non-column via \$rs->get_column()\n\n", "style" => "-", "text" => "Explicitly deprecate combination of distinct and selecting a non-column via \$rs->get_column()" } ], "line" => 20, "raw" => " * Notable Changes and Deprecations\n", "style" => "*", "text" => "Notable Changes and Deprecations" }, { "entries" => [ { "line" => 25, "raw" => " - More robust handling of circular relationship declarations by loading\n foreign classes less frequently (should resolve issues like\n http://lists.scsys.co.uk/pipermail/dbix-class/2013-June/011374.html)\n Note that none of this is a manifestations of a DBIC bug, but rather\n unexpected (but correct) behavior of load-order-dependent (hence\n logically broken) Resultclass hierarchies. In order to deal with this\n DBIC is scaling back a large number of sanity checks, which are to be\n reintroduce pending a better framework for source registration\n", "style" => "-", "text" => "More robust handling of circular relationship declarations by loading foreign classes less frequently (should resolve issues like http://lists.scsys.co.uk/pipermail/dbix-class/2013-June/011374.html) Note that none of this is a manifestations of a DBIC bug, but rather unexpected (but correct) behavior of load-order-dependent (hence logically broken) Resultclass hierarchies. In order to deal with this DBIC is scaling back a large number of sanity checks, which are to be reintroduce pending a better framework for source registration" }, { "line" => 33, "raw" => " - Fix multiple edge cases of complex prefetch combining incorrectly\n with correlated subquery selections\n", "style" => "-", "text" => "Fix multiple edge cases of complex prefetch combining incorrectly with correlated subquery selections" }, { "line" => 35, "raw" => " - Fix multiple edge cases stemming from interaction of a non-selecting\n order_by specification and distinct and/or complex prefetch\n", "style" => "-", "text" => "Fix multiple edge cases stemming from interaction of a non-selecting order_by specification and distinct and/or complex prefetch" }, { "line" => 37, "raw" => " - Fix unbound growth of a resultset during repeated execute/exhaust\n cycles (GH#29)\n", "style" => "-", "text" => "Fix unbound growth of a resultset during repeated execute/exhaust cycles (GH#29)" }, { "line" => 39, "raw" => " - Work around (and be very vocal about the fact) when DBIC encounters\n an exception object with broken string overloading\n", "style" => "-", "text" => "Work around (and be very vocal about the fact) when DBIC encounters an exception object with broken string overloading" }, { "line" => 41, "raw" => " - Clarify ambiguous behavior of distinct when used with ResultSetColumn\n i.e. \$rs->search({}, { distinct => 1 })->get_column (...)\n", "style" => "-", "text" => "Clarify ambiguous behavior of distinct when used with ResultSetColumn i.e. \$rs->search({}, { distinct => 1 })->get_column (...)" }, { "line" => 43, "raw" => " - Setting quote_names propagates to SQL::Translator when producing\n SQLite DDL (it is one of the few producers *NOT* quoting by default)\n", "style" => "-", "text" => "Setting quote_names propagates to SQL::Translator when producing SQLite DDL (it is one of the few producers *NOT* quoting by default)" }, { "line" => 45, "raw" => " - Fix incorrect binding of large integers on old versions of\n DBD::SQLite (now DBIC simply always binds SQLite ints as BIGINT)\n", "style" => "-", "text" => "Fix incorrect binding of large integers on old versions of DBD::SQLite (now DBIC simply always binds SQLite ints as BIGINT)" }, { "line" => 47, "raw" => " - Silence (harmless) warnings on recent DBD::SQLite versions, when\n inserting/updating large integers on 32bit ivsize systems (RT#76395)\n", "style" => "-", "text" => "Silence (harmless) warnings on recent DBD::SQLite versions, when inserting/updating large integers on 32bit ivsize systems (RT#76395)" }, { "line" => 49, "raw" => " - Back out self-cleaning from DBIx::Class::Carp for the time being\n (as a side effect fixes RT#86267)\n", "style" => "-", "text" => "Back out self-cleaning from DBIx::Class::Carp for the time being (as a side effect fixes RT#86267)" }, { "line" => 51, "raw" => " - Fix incorrect internal use of implicit list context in copy()\n", "style" => "-", "text" => "Fix incorrect internal use of implicit list context in copy()" }, { "line" => 52, "raw" => " - Fix 0.08250 regression in driver determination when DBI_DSN is used\n", "style" => "-", "text" => "Fix 0.08250 regression in driver determination when DBI_DSN is used" }, { "line" => 53, "raw" => " - Tests no longer fail if \$ENV{DBI_DSN} is set\n", "style" => "-", "text" => "Tests no longer fail if \$ENV{DBI_DSN} is set" }, { "line" => 54, "raw" => " - Throw clearer exception on ->new_related() with a non-existent\n relationship\n", "style" => "-", "text" => "Throw clearer exception on ->new_related() with a non-existent relationship" }, { "line" => 56, "raw" => " - Fix incorrect parethesis unroll with multicolumn in, (never noticed\n before fixing false positive in SQLA::Test 1.77)\n", "style" => "-", "text" => "Fix incorrect parethesis unroll with multicolumn in, (never noticed before fixing false positive in SQLA::Test 1.77)" }, { "line" => 58, "raw" => " - Fix t/storage/replicated.t class loading problem\n", "style" => "-", "text" => "Fix t/storage/replicated.t class loading problem" }, { "line" => 59, "raw" => " - Stop using the deprecated Class::MOP::load_class()\n", "style" => "-", "text" => "Stop using the deprecated Class::MOP::load_class()" }, { "line" => 60, "raw" => " - Fix warning in t/54taint.t with explicitly unset PERL5LIB (RT#91972)\n", "style" => "-", "text" => "Fix warning in t/54taint.t with explicitly unset PERL5LIB (RT#91972)" }, { "line" => 61, "raw" => " - Fix t/54taint.t failing under a local::lib with installed earlier\n DBIC version (RT#92486)\n\n", "style" => "-", "text" => "Fix t/54taint.t failing under a local::lib with installed earlier DBIC version (RT#92486)" } ], "line" => 24, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 65, "raw" => " - Massive incompatible change of ::BlockRunner internals (was never\n documented as usable externally, this last set of changes settles\n the design for proper documentation and opening up)\n", "style" => "-", "text" => "Massive incompatible change of ::BlockRunner internals (was never documented as usable externally, this last set of changes settles the design for proper documentation and opening up)" }, { "line" => 68, "raw" => " - Adjust exceptions in tests to accommodate changes in the upcoming\n DBD::SQLite based on libsqlite 3.8.2\n", "style" => "-", "text" => "Adjust exceptions in tests to accommodate changes in the upcoming DBD::SQLite based on libsqlite 3.8.2" }, { "line" => 70, "raw" => " - More robust lock file naming scheme - allow tests to work on exotic\n MSWin32 filesystems (habitual offender being http://is.gd/iy5XVP)\n", "style" => "-", "text" => "More robust lock file naming scheme - allow tests to work on exotic MSWin32 filesystems (habitual offender being http://is.gd/iy5XVP)" }, { "line" => 72, "raw" => " - Better diagnostics when File::Spec->tmpdir gives us crap in testing\n", "style" => "-", "text" => "Better diagnostics when File::Spec->tmpdir gives us crap in testing" }, { "line" => 73, "raw" => " - Replace \$row with \$result in all docs to be consistent and to\n clarify various return values\n\n", "style" => "-", "text" => "Replace \$row with \$result in all docs to be consistent and to clarify various return values" } ], "line" => 64, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 16, "note" => "(UTC)", "raw" => "0.08260 2014-01-28 18:52 (UTC)\n", "raw_date" => "2014-01-28 18:52", "version" => "0.08260" }, { "date" => "2013-04-29T22:00Z", "entries" => [ { "entries" => [ { "entries" => [ { "line" => 82, "raw" => " - Multiple has_many prefetch\n", "style" => "-", "text" => "Multiple has_many prefetch" }, { "line" => 83, "raw" => " - Partial prefetch - you now can select only columns you are\n interested in, while preserving the collapse functionality\n (collapse is now exposed as a first-class API attribute)\n", "style" => "-", "text" => "Partial prefetch - you now can select only columns you are interested in, while preserving the collapse functionality (collapse is now exposed as a first-class API attribute)" }, { "line" => 86, "raw" => " - Prefetch of resultsets with arbitrary order\n (RT#54949, RT#74024, RT#74584)\n", "style" => "-", "text" => "Prefetch of resultsets with arbitrary order (RT#54949, RT#74024, RT#74584)" }, { "line" => 88, "raw" => " - Prefetch no longer inserts right-side table order_by clauses\n (massively helps the deficient MySQL optimizer)\n", "style" => "-", "text" => "Prefetch no longer inserts right-side table order_by clauses (massively helps the deficient MySQL optimizer)" }, { "line" => 90, "raw" => " - Prefetch with limit on right-side ordered resultsets now works\n correctly (via aggregated grouping)\n", "style" => "-", "text" => "Prefetch with limit on right-side ordered resultsets now works correctly (via aggregated grouping)" }, { "line" => 92, "raw" => " - No longer order the insides of a complex prefetch subquery,\n unless required to satisfy a limit\n", "style" => "-", "text" => "No longer order the insides of a complex prefetch subquery, unless required to satisfy a limit" }, { "line" => 94, "raw" => " - Stop erroneously considering order_by criteria from a join under\n distinct => 1 (the distinct should apply to the main source only)\n", "style" => "-", "text" => "Stop erroneously considering order_by criteria from a join under distinct => 1 (the distinct should apply to the main source only)" } ], "line" => 78, "raw" => " - Rewrite from scratch the result constructor codepath - many bugfixes\n and performance improvements (the current codebase is now capable of\n outperforming both DBIx::DataModel and Rose::DB::Object on some\n workloads). Some notable benefits:\n", "style" => "-", "text" => "Rewrite from scratch the result constructor codepath - many bugfixes and performance improvements (the current codebase is now capable of outperforming both DBIx::DataModel and Rose::DB::Object on some workloads). Some notable benefits:" }, { "line" => 96, "raw" => " - Massively optimize codepath around ->cursor(), over 10x speedup\n on some iterating workloads.\n", "style" => "-", "text" => "Massively optimize codepath around ->cursor(), over 10x speedup on some iterating workloads." }, { "line" => 98, "raw" => " - Support standalone \\[ \$sql, \$value ] in literal SQL with bind\n specifications: \\[ '? + ?', 42, 69 ] is now equivalent to\n \\[ '? + ?', [ {} => 42 ], [ {} => 69 ] ]\n", "style" => "-", "text" => "Support standalone \\[ \$sql, \$value ] in literal SQL with bind specifications: \\[ '? + ?', 42, 69 ] is now equivalent to \\[ '? + ?', [ {} => 42 ], [ {} => 69 ] ]" }, { "line" => 101, "raw" => " - Changing the result_class of a ResultSet in progress is now\n explicitly forbidden. The behavior was undefined before, and\n would result in wildly differing outcomes depending on \$rs\n attributes.\n", "style" => "-", "text" => "Changing the result_class of a ResultSet in progress is now explicitly forbidden. The behavior was undefined before, and would result in wildly differing outcomes depending on \$rs attributes." }, { "line" => 105, "raw" => " - Deprecate returning of prefetched 'filter' rels as part of\n get_columns() and get_inflated_columns() data\n", "style" => "-", "text" => "Deprecate returning of prefetched 'filter' rels as part of get_columns() and get_inflated_columns() data" }, { "line" => 107, "raw" => " - Invoking get_inflated_columns() no longer fires get_columns() but\n instead retrieves data from individual non-inflatable columns via\n get_column()\n", "style" => "-", "text" => "Invoking get_inflated_columns() no longer fires get_columns() but instead retrieves data from individual non-inflatable columns via get_column()" }, { "line" => 110, "raw" => " - Emit a warning on incorrect use of nullable columns within a\n primary key\n", "style" => "-", "text" => "Emit a warning on incorrect use of nullable columns within a primary key" }, { "line" => 112, "raw" => " - Limited checks are performed on whether columns without declared\n is_nullable => 1 metadata do in fact sometimes fetch NULLs from\n the database (the check is currently very limited and is performed\n only on resultset collapse when the alternative is rather worse)\n\n", "style" => "-", "text" => "Limited checks are performed on whether columns without declared is_nullable => 1 metadata do in fact sometimes fetch NULLs from the database (the check is currently very limited and is performed only on resultset collapse when the alternative is rather worse)" } ], "line" => 77, "raw" => " * New Features / Changes\n", "style" => "*", "text" => "New Features / Changes" }, { "entries" => [ { "line" => 118, "raw" => " - Fix _dbi_attrs_for_bind() being called befor DBI has been loaded\n (regression in 0.08210)\n", "style" => "-", "text" => "Fix _dbi_attrs_for_bind() being called befor DBI has been loaded (regression in 0.08210)" }, { "line" => 120, "raw" => " - Fix update/delete operations on resultsets *joining* the updated\n table failing on MySQL. Resolves oversights in the fixes for\n RT#81378 and RT#81897\n", "style" => "-", "text" => "Fix update/delete operations on resultsets *joining* the updated table failing on MySQL. Resolves oversights in the fixes for RT#81378 and RT#81897" }, { "line" => 123, "raw" => " - Fix open cursors silently resetting when inherited across a fork\n or a thread\n", "style" => "-", "text" => "Fix open cursors silently resetting when inherited across a fork or a thread" }, { "line" => 125, "raw" => " - Properly support \"MySQL-style\" left-side group_by with prefetch\n", "style" => "-", "text" => "Properly support \"MySQL-style\" left-side group_by with prefetch" }, { "line" => 126, "raw" => " - Fix \$grouped_rs->get_column(\$col)->func(\$func) producing incorrect\n SQL (RT#81127)\n", "style" => "-", "text" => "Fix \$grouped_rs->get_column(\$col)->func(\$func) producing incorrect SQL (RT#81127)" }, { "line" => 128, "raw" => " - Stop Sybase ASE storage from generating invalid SQL in subselects\n when a limit without offset is encountered\n", "style" => "-", "text" => "Stop Sybase ASE storage from generating invalid SQL in subselects when a limit without offset is encountered" }, { "line" => 130, "raw" => " - Even more robust behavior of GenericSubQuery limit dialect\n", "style" => "-", "text" => "Even more robust behavior of GenericSubQuery limit dialect" }, { "line" => 131, "raw" => " - Make sure deployment_statements() and cursor_class() are called on\n a resolved storage subclass\n\n", "style" => "-", "text" => "Make sure deployment_statements() and cursor_class() are called on a resolved storage subclass" } ], "line" => 117, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 135, "raw" => " - Fix tests failing due to unspecified resultset retrieval order\n (test suite now will pass with newest SQLite libs)\n\n", "style" => "-", "text" => "Fix tests failing due to unspecified resultset retrieval order (test suite now will pass with newest SQLite libs)" } ], "line" => 134, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 76, "note" => "(UTC)", "raw" => "0.08250 2013-04-29 22:00 (UTC)\n", "raw_date" => "2013-04-29 22:00", "version" => "0.08250" }, { "date" => "2013-04-04T15:30Z", "entries" => [ { "entries" => [ { "line" => 140, "raw" => " - Officially deprecate the 'cols' and 'include_columns' resultset\n attributes\n", "style" => "-", "text" => "Officially deprecate the 'cols' and 'include_columns' resultset attributes" }, { "line" => 142, "raw" => " - Remove ::Storage::DBI::sth() deprecated in 0.08191\n\n", "style" => "-", "text" => "Remove ::Storage::DBI::sth() deprecated in 0.08191" } ], "line" => 139, "raw" => " * New Features / Changes\n", "style" => "*", "text" => "New Features / Changes" }, { "entries" => [ { "line" => 145, "raw" => " - Work around a *critical* bug with potential for data loss in\n DBD::SQLite - RT#79576\n", "style" => "-", "text" => "Work around a *critical* bug with potential for data loss in DBD::SQLite - RT#79576" }, { "line" => 147, "raw" => " - Audit and correct potential bugs associated with braindead reuse\n of \$1 on unsuccessful matches\n", "style" => "-", "text" => "Audit and correct potential bugs associated with braindead reuse of \$1 on unsuccessful matches" }, { "line" => 149, "raw" => " - Fix incorrect warning/exception originator reported by carp*() and\n throw_exception()\n\n", "style" => "-", "text" => "Fix incorrect warning/exception originator reported by carp*() and throw_exception()" } ], "line" => 144, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" } ], "line" => 138, "note" => "(UTC)", "raw" => "0.08210 2013-04-04 15:30 (UTC)\n", "raw_date" => "2013-04-04 15:30", "version" => "0.08210" }, { "date" => "2013-03-01T12:56Z", "entries" => [ { "entries" => [ { "line" => 154, "raw" => " - Debugging aid - warn on invalid result objects created by what\n seems like an invalid inheritance hierarchy\n\n", "style" => "-", "text" => "Debugging aid - warn on invalid result objects created by what seems like an invalid inheritance hierarchy" } ], "line" => 153, "raw" => " * New Features / Changes\n", "style" => "*", "text" => "New Features / Changes" }, { "entries" => [ { "line" => 158, "raw" => " - Fix another embarrassing regression preventing correct refining of\n the search criteria on a prefetched relation (broken in 0.08205)\n", "style" => "-", "text" => "Fix another embarrassing regression preventing correct refining of the search criteria on a prefetched relation (broken in 0.08205)" }, { "line" => 160, "raw" => " - Fix incorrect callsite reporting by DBIC::Carp\n\n", "style" => "-", "text" => "Fix incorrect callsite reporting by DBIC::Carp" } ], "line" => 157, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" } ], "line" => 152, "note" => "(UTC)", "raw" => "0.08209 2013-03-01 12:56 (UTC)\n", "raw_date" => "2013-03-01 12:56", "version" => "0.08209" }, { "date" => "2013-02-20T09:56Z", "entries" => [ { "entries" => [ { "line" => 164, "raw" => " - A bunch of nonsensically named arguments to the SQL::Translator\n parser have been marked as deprecated (while still fully\n supported)\n\n", "style" => "-", "text" => "A bunch of nonsensically named arguments to the SQL::Translator parser have been marked as deprecated (while still fully supported)" } ], "line" => 163, "raw" => " * New Features / Changes\n", "style" => "*", "text" => "New Features / Changes" }, { "entries" => [ { "line" => 169, "raw" => " - Fix duplicated selected columns when calling 'count' when a same\n aggregate function is used more than once in a 'having' clause\n (RT#83305)\n", "style" => "-", "text" => "Fix duplicated selected columns when calling 'count' when a same aggregate function is used more than once in a 'having' clause (RT#83305)" }, { "line" => 172, "raw" => " - Prevent SQL::Translator::Producer::YAML from seeing the \$dbh\n in a potentially connected \$schema instance (RT#75394)\n\n", "style" => "-", "text" => "Prevent SQL::Translator::Producer::YAML from seeing the \$dbh in a potentially connected \$schema instance (RT#75394)" } ], "line" => 168, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 176, "raw" => " - Fixup our distbuilding process to stop creating world-writable\n tarball contents (implicitly fixes RT#83084)\n", "style" => "-", "text" => "Fixup our distbuilding process to stop creating world-writable tarball contents (implicitly fixes RT#83084)" }, { "line" => 178, "raw" => " - Added strict and warnings tests for all lib and test files\n\n", "style" => "-", "text" => "Added strict and warnings tests for all lib and test files" } ], "line" => 175, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 162, "note" => "(UTC)", "raw" => "0.08208 2013-02-20 09:56 (UTC)\n", "raw_date" => "2013-02-20 09:56", "version" => "0.08208" }, { "date" => "2013-02-08", "entries" => [ { "entries" => [ { "line" => 182, "raw" => " - Fix dbh_do() failing to properly reconnect (regression in 0.08205)\n", "style" => "-", "text" => "Fix dbh_do() failing to properly reconnect (regression in 0.08205)" }, { "line" => 183, "raw" => " - Extra sanity check of a fresh DBI handle (\$dbh). Fixes\n connection coderefs returning garbage (seen in the wild)\n\n", "style" => "-", "text" => "Extra sanity check of a fresh DBI handle (\$dbh). Fixes connection coderefs returning garbage (seen in the wild)" } ], "line" => 181, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 187, "raw" => " - Only allow known globals in SQL::Translator leak allowance\n", "style" => "-", "text" => "Only allow known globals in SQL::Translator leak allowance" }, { "line" => 188, "raw" => " - General cleanup of error message texts - quote names/identifiers\n for easier reading\n", "style" => "-", "text" => "General cleanup of error message texts - quote names/identifiers for easier reading" }, { "line" => 190, "raw" => " - Stop t/52leaks.t from failing when AUTOMATED_TESTING=1\n\n", "style" => "-", "text" => "Stop t/52leaks.t from failing when AUTOMATED_TESTING=1" } ], "line" => 186, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 180, "raw" => "0.08206 2013-02-08\n", "raw_date" => "2013-02-08", "version" => "0.08206" }, { "date" => "2013-01-22", "entries" => [ { "entries" => [ { "line" => 194, "raw" => " - The emulate_limit() arbitrary limit dialect emulation mechanism is\n now deprecated, and will be removed when DBIx::Class migrates to\n Data::Query\n", "style" => "-", "text" => "The emulate_limit() arbitrary limit dialect emulation mechanism is now deprecated, and will be removed when DBIx::Class migrates to Data::Query" }, { "line" => 197, "raw" => " - Support for the source_bind_attributes() storage method has been\n removed after a lengthy deprecation cycle\n", "style" => "-", "text" => "Support for the source_bind_attributes() storage method has been removed after a lengthy deprecation cycle" } ], "line" => 193, "raw" => " * New Features / Changes\n", "style" => "*", "text" => "New Features / Changes" }, { "entries" => [ { "line" => 200, "raw" => " - When performing resultset update/delete only strip condition\n qualifiers - leave the source name alone (RT#80015, RT#78844)\n", "style" => "-", "text" => "When performing resultset update/delete only strip condition qualifiers - leave the source name alone (RT#80015, RT#78844)" }, { "line" => 202, "raw" => " - Fix incorrect behavior on resultset update/delete invoked on\n composite resultsets (e.g. as_subselect_rs)\n", "style" => "-", "text" => "Fix incorrect behavior on resultset update/delete invoked on composite resultsets (e.g. as_subselect_rs)" }, { "line" => 204, "raw" => " - Fix update/delete operations referencing the updated table failing\n on MySQL, due to its refusal to modify a table being directly\n queried. As a workaround induce in-memory temp-table creation\n (RT#81378, RT#81897)\n", "style" => "-", "text" => "Fix update/delete operations referencing the updated table failing on MySQL, due to its refusal to modify a table being directly queried. As a workaround induce in-memory temp-table creation (RT#81378, RT#81897)" }, { "line" => 208, "raw" => " - More robust behavior under heavily threaded environments - make\n sure we do not have refaddr reuse in the global storage registry\n", "style" => "-", "text" => "More robust behavior under heavily threaded environments - make sure we do not have refaddr reuse in the global storage registry" }, { "line" => 210, "raw" => " - Fix failing test on 5.8 under Win32 (RT#81114)\n", "style" => "-", "text" => "Fix failing test on 5.8 under Win32 (RT#81114)" }, { "line" => 211, "raw" => " - Fix hash-randomization test issues (RT#81638)\n", "style" => "-", "text" => "Fix hash-randomization test issues (RT#81638)" }, { "line" => 212, "raw" => " - Disallow erroneous calling of connect_info on a replicated storage\n (RT#78436)\n", "style" => "-", "text" => "Disallow erroneous calling of connect_info on a replicated storage (RT#78436)" } ], "line" => 199, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 215, "raw" => " - Improve the populate docs in ::Schema and ::ResultSet\n", "style" => "-", "text" => "Improve the populate docs in ::Schema and ::ResultSet" }, { "line" => 216, "raw" => " - ::Storage::DBI::source_bind_attributes() removed as announced\n on Jan 2011 in 0e773352a\n\n", "style" => "-", "text" => "::Storage::DBI::source_bind_attributes() removed as announced on Jan 2011 in 0e773352a" } ], "line" => 214, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 192, "raw" => "0.08205 2013-01-22\n", "raw_date" => "2013-01-22", "version" => "0.08205" }, { "date" => "2012-11-08", "entries" => [ { "entries" => [ { "line" => 221, "raw" => " - SQLMaker now accepts \\'literal' with the 'for' rs attribute as an\n override to the builtin FOR options\n", "style" => "-", "text" => "SQLMaker now accepts \\'literal' with the 'for' rs attribute as an override to the builtin FOR options" } ], "line" => 220, "raw" => " * New Features / Changes\n", "style" => "*", "text" => "New Features / Changes" }, { "entries" => [ { "line" => 224, "raw" => " - Fix unique constraint violations in Ordered.pm blanket movement\n (RT#79773, rolls back short-sighted 5e6fde33e)\n", "style" => "-", "text" => "Fix unique constraint violations in Ordered.pm blanket movement (RT#79773, rolls back short-sighted 5e6fde33e)" }, { "line" => 226, "raw" => " - Fix API mismatch between new_result() and new_related() (originally\n broken by fea3d045)\n", "style" => "-", "text" => "Fix API mismatch between new_result() and new_related() (originally broken by fea3d045)" }, { "line" => 228, "raw" => " - Fix test failure on perl 5.8\n", "style" => "-", "text" => "Fix test failure on perl 5.8" } ], "line" => 223, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 230, "raw" => " - Much more extensive diagnostics when a new RDBMS/DSN combination is\n encountered (RT#80431)\n\n", "style" => "-", "text" => "Much more extensive diagnostics when a new RDBMS/DSN combination is encountered (RT#80431)" } ], "line" => 229, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 219, "raw" => "0.08204 2012-11-08\n", "raw_date" => "2012-11-08", "version" => "0.08204" }, { "date" => "2012-10-18", "entries" => [ { "entries" => [ { "line" => 235, "raw" => " - Really fix inadequate \$dbh->ping SQLite implementation (what shipped\n in 0.08201 tickled other deficiencies in DBD::SQLite itself)\n\n", "style" => "-", "text" => "Really fix inadequate \$dbh->ping SQLite implementation (what shipped in 0.08201 tickled other deficiencies in DBD::SQLite itself)" } ], "line" => 234, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" } ], "line" => 233, "raw" => "0.08203 2012-10-18\n", "raw_date" => "2012-10-18", "version" => "0.08203" }, { "date" => "2012-10-06", "entries" => [ { "entries" => [ { "line" => 240, "raw" => " - Replace inadequate \$dbh->ping SQLite implementation with our own,\n fixes RT#78420\n\n", "style" => "-", "text" => "Replace inadequate \$dbh->ping SQLite implementation with our own, fixes RT#78420" } ], "line" => 239, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" } ], "line" => 238, "raw" => "0.08202 2012-10-06\n", "raw_date" => "2012-10-06", "version" => "0.08202" }, { "date" => "2012-08-24", "entries" => [ { "entries" => [ { "line" => 245, "raw" => " - Change one of the new tests for the previous release to not require\n SQL::Translator\n\n", "style" => "-", "text" => "Change one of the new tests for the previous release to not require SQL::Translator" } ], "line" => 244, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" } ], "line" => 243, "note" => "(UTC)", "raw" => "0.08200 2012-08-24 (UTC)\n", "raw_date" => "2012-08-24", "version" => "0.08200" }, { "date" => "2012-08-22", "entries" => [ { "entries" => [ { "line" => 250, "raw" => " - Roll back incomplete (and broken) internal changes - restore prefetch functionality\n\n", "style" => "-", "text" => "Roll back incomplete (and broken) internal changes - restore prefetch functionality" } ], "line" => 249, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" } ], "line" => 248, "note" => "(UTC)", "raw" => "0.08199 2012-08-22 (UTC)\n", "raw_date" => "2012-08-22", "version" => "0.08199" }, { "date" => "2012-07-11T03:43Z", "entries" => [ { "entries" => [ { "line" => 254, "raw" => " - Fix a number of Win32 Test issues\n", "style" => "-", "text" => "Fix a number of Win32 Test issues" }, { "line" => 255, "raw" => " - Fix silent Oracle connection failures\n\n", "style" => "-", "text" => "Fix silent Oracle connection failures" } ], "line" => 253, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" } ], "line" => 252, "note" => "(UTC)", "raw" => "0.08198 2012-07-11 03:43 (UTC)\n", "raw_date" => "2012-07-11 03:43", "version" => "0.08198" }, { "date" => "2012-07-10T10:32Z", "entries" => [ { "entries" => [ { "line" => 259, "raw" => " - Issue a warning when DateTime objects are passed to ->search\n", "style" => "-", "text" => "Issue a warning when DateTime objects are passed to ->search" }, { "line" => 260, "raw" => " - Fast populate() in void context is now even more efficient by\n going directly through execute_for_fetch bypassing execute_array\n", "style" => "-", "text" => "Fast populate() in void context is now even more efficient by going directly through execute_for_fetch bypassing execute_array" }, { "line" => 262, "raw" => " - Fix update()/delete() on complex resultsets to no longer fall back\n to silly row-by-row deletion, construct a massive OR statement\n instead\n", "style" => "-", "text" => "Fix update()/delete() on complex resultsets to no longer fall back to silly row-by-row deletion, construct a massive OR statement instead" }, { "line" => 265, "raw" => " - Allow complex update/delete operations on sources without a\n primary key, as long as they have at least one non-nullable\n unique constraint\n", "style" => "-", "text" => "Allow complex update/delete operations on sources without a primary key, as long as they have at least one non-nullable unique constraint" }, { "line" => 268, "raw" => " - dbicadmin now better supports catalyst-style config files, by\n unrolling 'config_info' hashkeys\n", "style" => "-", "text" => "dbicadmin now better supports catalyst-style config files, by unrolling 'config_info' hashkeys" }, { "entries" => [ { "line" => 271, "raw" => " - Transaction support\n", "style" => "-", "text" => "Transaction support" }, { "line" => 272, "raw" => " - Support for VARCHAR(MAX)/VARBINARY(MAX)/NVARCHAR(MAX) datatypes\n", "style" => "-", "text" => "Support for VARCHAR(MAX)/VARBINARY(MAX)/NVARCHAR(MAX) datatypes" }, { "line" => 273, "raw" => " - Nomalization of retrieved GUID values\n\n", "style" => "-", "text" => "Nomalization of retrieved GUID values" } ], "line" => 270, "raw" => " - Multiple Improvements MSSQL over DBD::ADO\n", "style" => "-", "text" => "Multiple Improvements MSSQL over DBD::ADO" } ], "line" => 258, "raw" => " * New Features / Changes\n", "style" => "*", "text" => "New Features / Changes" }, { "entries" => [ { "line" => 276, "raw" => " - Fix complex has_many prefetch with resultsets not selecting identity\n columns from the root result source\n", "style" => "-", "text" => "Fix complex has_many prefetch with resultsets not selecting identity columns from the root result source" }, { "line" => 278, "raw" => " - Fix SkipFirst and FirstSkip limit dialects (Informix and Firebird)\n", "style" => "-", "text" => "Fix SkipFirst and FirstSkip limit dialects (Informix and Firebird)" }, { "line" => 279, "raw" => " - Fix \"Skimming limit\" dialects (Top, FetchFirst) to properly check\n the order_by criteria for stability\n", "style" => "-", "text" => "Fix \"Skimming limit\" dialects (Top, FetchFirst) to properly check the order_by criteria for stability" }, { "line" => 281, "raw" => " - Fix \"Skimming limit\" dialects (Top, FetchFirst) to propagate\n non-selected order criteria when part of a larger subquery\n", "style" => "-", "text" => "Fix \"Skimming limit\" dialects (Top, FetchFirst) to propagate non-selected order criteria when part of a larger subquery" }, { "line" => 283, "raw" => " - Fix RowNumberOver and all \"skimming limits\" to correctly assemble\n bind values when supplied for both select and order_by\n", "style" => "-", "text" => "Fix RowNumberOver and all \"skimming limits\" to correctly assemble bind values when supplied for both select and order_by" }, { "line" => 285, "raw" => " - Fix all subquery-based dialects to not lose a subquery fragment\n when we both select and order by the result of the same subquery\n", "style" => "-", "text" => "Fix all subquery-based dialects to not lose a subquery fragment when we both select and order by the result of the same subquery" }, { "line" => 287, "raw" => " - Fix the Sybase hubrid limit dialect (RowCountOrGenericSubQ) losing\n Group/Having/Order clauses when called without an offset (RT#73244)\n", "style" => "-", "text" => "Fix the Sybase hubrid limit dialect (RowCountOrGenericSubQ) losing Group/Having/Order clauses when called without an offset (RT#73244)" }, { "line" => 289, "raw" => " - No longer generate incorrect SQL on ->as_query called on resultsets\n with software_limit enabled\n", "style" => "-", "text" => "No longer generate incorrect SQL on ->as_query called on resultsets with software_limit enabled" }, { "line" => 291, "raw" => " - A number of corner case fixes of void context populate() with \\[]\n", "style" => "-", "text" => "A number of corner case fixes of void context populate() with \\[]" }, { "line" => 292, "raw" => " - Fix corner case of forked children disconnecting the parents DBI\n handle\n", "style" => "-", "text" => "Fix corner case of forked children disconnecting the parents DBI handle" }, { "line" => 294, "raw" => " - Improve identity/autoinc retrieval code in MSSQL and Sybase -\n should reduce weird side-effects especially with populate()\n", "style" => "-", "text" => "Improve identity/autoinc retrieval code in MSSQL and Sybase - should reduce weird side-effects especially with populate()" }, { "entries" => [ { "line" => 298, "raw" => " - FreeTDS ODBC driver (when used with MSSQL)\n", "style" => "-", "text" => "FreeTDS ODBC driver (when used with MSSQL)" }, { "line" => 299, "raw" => " - The Firebird ODBC driver\n", "style" => "-", "text" => "The Firebird ODBC driver" }, { "line" => 300, "raw" => " - The MSAccess ODBC driver\n", "style" => "-", "text" => "The MSAccess ODBC driver" } ], "line" => 296, "raw" => " - Explicitly disable DBD::ODBC batch operations (as of DBD::ODBC 1.35)\n for the following drivers too buggy to handle the optimized path:\n", "style" => "-", "text" => "Explicitly disable DBD::ODBC batch operations (as of DBD::ODBC 1.35) for the following drivers too buggy to handle the optimized path:" }, { "line" => 301, "raw" => " - Explicitly disable DBD::ODBC dynamic_cursors when using freetds 0.83\n or later - they made enough ODBC incompatible changes making it\n impossible to support sanely\n", "style" => "-", "text" => "Explicitly disable DBD::ODBC dynamic_cursors when using freetds 0.83 or later - they made enough ODBC incompatible changes making it impossible to support sanely" }, { "line" => 304, "raw" => " - Explicitly disable SCOPE_IDENTITY queries and statement caching for\n MSSQL on DBD::Sybase compiled against freetds 0.83 or later - way too\n buggy\n", "style" => "-", "text" => "Explicitly disable SCOPE_IDENTITY queries and statement caching for MSSQL on DBD::Sybase compiled against freetds 0.83 or later - way too buggy" }, { "line" => 307, "raw" => " - Disable statement caching when using Sybase ASE and DBD::Sybase\n compiled against freetds 0.83 or later\n", "style" => "-", "text" => "Disable statement caching when using Sybase ASE and DBD::Sybase compiled against freetds 0.83 or later" }, { "line" => 309, "raw" => " - Fix leakage of \$schema on in-memory new_related() calls\n", "style" => "-", "text" => "Fix leakage of \$schema on in-memory new_related() calls" }, { "line" => 310, "raw" => " - Fix more cases of \$schema leakage in SQLT::Parser::DBIC\n", "style" => "-", "text" => "Fix more cases of \$schema leakage in SQLT::Parser::DBIC" }, { "line" => 311, "raw" => " - Fix leakage of \$storage in ::Storage::DBI::Oracle\n", "style" => "-", "text" => "Fix leakage of \$storage in ::Storage::DBI::Oracle" }, { "line" => 312, "raw" => " - Fix pessimization of Oracle RowNum limit dialect query when no\n offset has been specified\n", "style" => "-", "text" => "Fix pessimization of Oracle RowNum limit dialect query when no offset has been specified" }, { "line" => 314, "raw" => " - Remove useless vestigial pessimization in Ordered.pm for cases\n when the position column is part of a unique constraint\n", "style" => "-", "text" => "Remove useless vestigial pessimization in Ordered.pm for cases when the position column is part of a unique constraint" }, { "line" => 316, "raw" => " - Fix dbicadmin to no longer ignore the documented 'config' option\n", "style" => "-", "text" => "Fix dbicadmin to no longer ignore the documented 'config' option" }, { "line" => 317, "raw" => " - The schema-resultsource entanglement is now much more robust\n under threads\n", "style" => "-", "text" => "The schema-resultsource entanglement is now much more robust under threads" }, { "line" => 319, "raw" => " - Fix ::Schema::ddl_filename() failing miserably on paths containing\n certain numeric sequences\n", "style" => "-", "text" => "Fix ::Schema::ddl_filename() failing miserably on paths containing certain numeric sequences" }, { "line" => 321, "raw" => " - t/53lean_startup.t adjusted for new 5.15.x base.pm behavior\n\n", "style" => "-", "text" => "t/53lean_startup.t adjusted for new 5.15.x base.pm behavior" } ], "line" => 275, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 324, "raw" => " - Centralized leak-checks for all instances of DBICTest::Schema\n from within any test\n", "style" => "-", "text" => "Centralized leak-checks for all instances of DBICTest::Schema from within any test" }, { "line" => 326, "raw" => " - Now passes all tests with Test::Builder 1.005\n", "style" => "-", "text" => "Now passes all tests with Test::Builder 1.005" }, { "line" => 327, "raw" => " - Codebase is now trailing-whitespace-free\n", "style" => "-", "text" => "Codebase is now trailing-whitespace-free" }, { "line" => 328, "raw" => " - Cleanup of complex resultset update/delete oprations - storage\n specific code moved back to ResultSet and replaced by checks\n of storage capabilities\n", "style" => "-", "text" => "Cleanup of complex resultset update/delete oprations - storage specific code moved back to ResultSet and replaced by checks of storage capabilities" }, { "line" => 331, "raw" => " - Fixed carp_once only emitting one single warning per package\n regardless of warning content\n", "style" => "-", "text" => "Fixed carp_once only emitting one single warning per package regardless of warning content" }, { "line" => 333, "raw" => " - Test suite now can be safely executed in parallel (prove -jN\n or HARNESS_OPTIONS=jN)\n\n", "style" => "-", "text" => "Test suite now can be safely executed in parallel (prove -jN or HARNESS_OPTIONS=jN)" } ], "line" => 323, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 257, "note" => "(UTC)", "raw" => "0.08197 2012-07-10 10:32 (UTC)\n", "raw_date" => "2012-07-10 10:32", "version" => "0.08197" }, { "date" => "2011-11-29T05:35Z", "entries" => [ { "entries" => [ { "line" => 338, "raw" => " - Fix tests for DBD::SQLite >= 1.34.\n", "style" => "-", "text" => "Fix tests for DBD::SQLite >= 1.34." }, { "line" => 339, "raw" => " - Fix test failures with DBICTEST_SQLITE_USE_FILE set\n", "style" => "-", "text" => "Fix test failures with DBICTEST_SQLITE_USE_FILE set" }, { "line" => 340, "raw" => " - Fix the find() condition heuristics being invoked even when the\n call defaults to 'primary' (i.e. when invoked with bare values)\n", "style" => "-", "text" => "Fix the find() condition heuristics being invoked even when the call defaults to 'primary' (i.e. when invoked with bare values)" }, { "line" => 342, "raw" => " - Throw much clearer error on incorrect inflation spec\n", "style" => "-", "text" => "Throw much clearer error on incorrect inflation spec" }, { "line" => 343, "raw" => " - Fix incorrect storage behavior when first call on a fresh schema\n is with_deferred_fk_checks\n", "style" => "-", "text" => "Fix incorrect storage behavior when first call on a fresh schema is with_deferred_fk_checks" }, { "line" => 345, "raw" => " - Fix incorrect dependency on Test::Simple/Builder (RT#72282)\n", "style" => "-", "text" => "Fix incorrect dependency on Test::Simple/Builder (RT#72282)" }, { "line" => 346, "raw" => " - Fix uninitialized warning in ::Storage::Sybase::ASE\n", "style" => "-", "text" => "Fix uninitialized warning in ::Storage::Sybase::ASE" }, { "line" => 347, "raw" => " - Improve/cache DBD-specific datatype bind checks (also solves a\n nasty memleak with version.pm on multiple ->VERSION invocations)\n", "style" => "-", "text" => "Improve/cache DBD-specific datatype bind checks (also solves a nasty memleak with version.pm on multiple ->VERSION invocations)" }, { "line" => 349, "raw" => " - The internal carp module now correctly skips CAG frames when\n reporting a callsite\n", "style" => "-", "text" => "The internal carp module now correctly skips CAG frames when reporting a callsite" }, { "line" => 351, "raw" => " - Fix test failures on perl < 5.8.7 and new Package::Stash::XS\n", "style" => "-", "text" => "Fix test failures on perl < 5.8.7 and new Package::Stash::XS" }, { "line" => 352, "raw" => " - Fix TxnScopeGuard not behaving correctly when \$\@ is set at the\n time of \$guard instantiation\n", "style" => "-", "text" => "Fix TxnScopeGuard not behaving correctly when \$\@ is set at the time of \$guard instantiation" }, { "line" => 354, "raw" => " - Fix the join/prefetch resolver when dealing with ''/undef/()\n relation specifications\n\n", "style" => "-", "text" => "Fix the join/prefetch resolver when dealing with ''/undef/() relation specifications" } ], "line" => 337, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 358, "raw" => " - No longer depend on Variable::Magic now that a pure-perl\n namespace::clean is available\n", "style" => "-", "text" => "No longer depend on Variable::Magic now that a pure-perl namespace::clean is available" }, { "line" => 360, "raw" => " - Drop Oracle's Math::BigInt req down to 1.80 - no fixes concerning\n us were made since\n\n", "style" => "-", "text" => "Drop Oracle's Math::BigInt req down to 1.80 - no fixes concerning us were made since" } ], "line" => 357, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 336, "note" => "(UTC)", "raw" => "0.08196 2011-11-29 05:35 (UTC)\n", "raw_date" => "2011-11-29 05:35", "version" => "0.08196" }, { "date" => "2011-07-27T16:20Z", "entries" => [ { "entries" => [ { "line" => 365, "raw" => " - Fix horrible oversight in the Oracle sqlmaker when dealing with\n queries updating blobs (RT#69829)\n\n", "style" => "-", "text" => "Fix horrible oversight in the Oracle sqlmaker when dealing with queries updating blobs (RT#69829)" } ], "line" => 364, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" } ], "line" => 363, "note" => "(UTC)", "raw" => "0.08195 2011-07-27 16:20 (UTC)\n", "raw_date" => "2011-07-27 16:20", "version" => "0.08195" }, { "date" => "2011-07-20T16:10Z", "entries" => [ { "entries" => [ { "line" => 370, "raw" => " - Fix \$rs->populate([]) to be a no-op rather than an exception\n", "style" => "-", "text" => "Fix \$rs->populate([]) to be a no-op rather than an exception" }, { "line" => 371, "raw" => " - Overhaul t/53lean_startup.t to better dodge false positives\n", "style" => "-", "text" => "Overhaul t/53lean_startup.t to better dodge false positives" }, { "line" => 372, "raw" => " - Stop Data::Compare from loading random plugins\n", "style" => "-", "text" => "Stop Data::Compare from loading random plugins" }, { "line" => 373, "raw" => " - Oracle: Recalculate LOB bind indices for UPDATE with LOBs in WHERE\n (RT#69548)\n\n", "style" => "-", "text" => "Oracle: Recalculate LOB bind indices for UPDATE with LOBs in WHERE (RT#69548)" } ], "line" => 369, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" } ], "line" => 368, "note" => "(UTC)", "raw" => "0.08194 2011-07-20 16:10 (UTC)\n", "raw_date" => "2011-07-20 16:10", "version" => "0.08194" }, { "date" => "2011-07-14T17:00Z", "entries" => [ { "entries" => [ { "line" => 378, "raw" => " - Allow schema cloning to mutate attributes\n", "style" => "-", "text" => "Allow schema cloning to mutate attributes" }, { "line" => 379, "raw" => " - DBIC now attempts more aggressive de-duplication of where\n conditions on resultset chaining\n", "style" => "-", "text" => "DBIC now attempts more aggressive de-duplication of where conditions on resultset chaining" }, { "line" => 381, "raw" => " - The Ordered component is now smarter wrt reordering of dirty\n objects, and does its job with less storage queries\n", "style" => "-", "text" => "The Ordered component is now smarter wrt reordering of dirty objects, and does its job with less storage queries" }, { "line" => 383, "raw" => " - Logging via DBIC_TRACE=1= no longer overwrites the\n logfile on every program startup, appending loglines instead\n\n", "style" => "-", "text" => "Logging via DBIC_TRACE=1= no longer overwrites the logfile on every program startup, appending loglines instead" } ], "line" => 377, "raw" => " * New Features / Changes\n", "style" => "*", "text" => "New Features / Changes" }, { "entries" => [ { "line" => 387, "raw" => " - Fix issue where the query was becoming overly mangled when trying\n to use pagination with a query that has a sub-select in the WHERE\n clause\n", "style" => "-", "text" => "Fix issue where the query was becoming overly mangled when trying to use pagination with a query that has a sub-select in the WHERE clause" }, { "line" => 390, "raw" => " - Fix possible incorrect pagination on Oracle, when a resultset\n is not ordered by a unique column\n", "style" => "-", "text" => "Fix possible incorrect pagination on Oracle, when a resultset is not ordered by a unique column" }, { "line" => 392, "raw" => " - Revert \"Fix incorrect signature of the default sqlt_deploy_hook\"\n from 0.08191 - documentation was in fact incorrect, not the code\n", "style" => "-", "text" => "Revert \"Fix incorrect signature of the default sqlt_deploy_hook\" from 0.08191 - documentation was in fact incorrect, not the code" }, { "line" => 394, "raw" => " - Fix Sybase ASE IC::DateTime support (::Storage going out of sync\n with new default format expected by DateTime::Format::Sybase)\n", "style" => "-", "text" => "Fix Sybase ASE IC::DateTime support (::Storage going out of sync with new default format expected by DateTime::Format::Sybase)" }, { "line" => 396, "raw" => " - Fix a bug in update_all() resulting in the first row receiving a\n different dataset than the subsequent ones\n", "style" => "-", "text" => "Fix a bug in update_all() resulting in the first row receiving a different dataset than the subsequent ones" }, { "line" => 398, "raw" => " - Accomodate MSAccess supporting only 'INNER JOIN' (not plain 'JOIN')\n", "style" => "-", "text" => "Accomodate MSAccess supporting only 'INNER JOIN' (not plain 'JOIN')" }, { "line" => 399, "raw" => " - InflateColumn::DateTime option datetime_undef_if_invalid no longer\n masks missing dependency exceptions (RT#66823)\n", "style" => "-", "text" => "InflateColumn::DateTime option datetime_undef_if_invalid no longer masks missing dependency exceptions (RT#66823)" }, { "line" => 401, "raw" => " - Fix bug in Schema::Versioned failing to insert a schema version row\n during upgrades at the turn of the second\n", "style" => "-", "text" => "Fix bug in Schema::Versioned failing to insert a schema version row during upgrades at the turn of the second" }, { "line" => 403, "raw" => " - Fix incorrect bind of integers >= 2^^32 (bigint columns) to\n SQL_INTEGER, resulting in silent conversion to '-1'\n", "style" => "-", "text" => "Fix incorrect bind of integers >= 2^^32 (bigint columns) to SQL_INTEGER, resulting in silent conversion to '-1'" }, { "line" => 405, "raw" => " - Fix pre 5.10 failures of t/55namespaces_cleaned.t due to buggy\n require() (RT#68814)\n", "style" => "-", "text" => "Fix pre 5.10 failures of t/55namespaces_cleaned.t due to buggy require() (RT#68814)" }, { "line" => 407, "raw" => " - Oracle autoinc inserts no longer leave open cursors behind\n\n", "style" => "-", "text" => "Oracle autoinc inserts no longer leave open cursors behind" } ], "line" => 386, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" } ], "line" => 376, "note" => "(UTC)", "raw" => "0.08193 2011-07-14 17:00 (UTC)\n", "raw_date" => "2011-07-14 17:00", "version" => "0.08193" }, { "date" => "2011-05-10T04:20Z", "entries" => [ { "entries" => [ { "line" => 411, "raw" => " - Fix serious regression on SQLite, corrupting data when an alphanum\n value does not correspond to a stale numeric datatype in colinfo\n\n", "style" => "-", "text" => "Fix serious regression on SQLite, corrupting data when an alphanum value does not correspond to a stale numeric datatype in colinfo" } ], "line" => 410, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" } ], "line" => 409, "note" => "(UTC)", "raw" => "0.08192 2011-05-10 04:20 (UTC)\n", "raw_date" => "2011-05-10 04:20", "version" => "0.08192" }, { "date" => "2011-05-02T00:45Z", "entries" => [ { "entries" => [ { "line" => 416, "raw" => " - Add quote_names connection option. When set to true automatically\n sets quote_char and name_sep appropriate for your RDBMS\n", "style" => "-", "text" => "Add quote_names connection option. When set to true automatically sets quote_char and name_sep appropriate for your RDBMS" }, { "line" => 418, "raw" => " - Add retrieve_on_insert column info flag, allowing to retrieve any\n column value instead of just autoinc primary keys\n", "style" => "-", "text" => "Add retrieve_on_insert column info flag, allowing to retrieve any column value instead of just autoinc primary keys" }, { "line" => 420, "raw" => " - Bring back strict ordering of selectors in complex search chains\n (an ill-fated attempt was made in 0.08127 to order intelligently)\n", "style" => "-", "text" => "Bring back strict ordering of selectors in complex search chains (an ill-fated attempt was made in 0.08127 to order intelligently)" }, { "line" => 422, "raw" => " - All limit dialects (except for the older Top and FetchFirst) are\n now using bind parameters for the limits/offsets, making DBI's\n prepare_cached useful across paged resutsets\n", "style" => "-", "text" => "All limit dialects (except for the older Top and FetchFirst) are now using bind parameters for the limits/offsets, making DBI's prepare_cached useful across paged resutsets" }, { "line" => 425, "raw" => " - Support for savepoints for SQLite\n", "style" => "-", "text" => "Support for savepoints for SQLite" }, { "line" => 426, "raw" => " - Support for MS Access databases via DBD::ODBC and DBD::ADO (only\n Win32 support currently tested)\n", "style" => "-", "text" => "Support for MS Access databases via DBD::ODBC and DBD::ADO (only Win32 support currently tested)" }, { "line" => 428, "raw" => " - Support for the Firebird RDBMS over the new DBD::Firebird driver\n", "style" => "-", "text" => "Support for the Firebird RDBMS over the new DBD::Firebird driver" }, { "line" => 429, "raw" => " - IC::DateTime support for MSSQL over DBD::ADO\n", "style" => "-", "text" => "IC::DateTime support for MSSQL over DBD::ADO" }, { "line" => 430, "raw" => " - Both the ::ODBC and ::ADO dispatchers now warn if a rdbms-specific\n driver is not found for this connection before falling back to\n plain ::Storage::DBI\n", "style" => "-", "text" => "Both the ::ODBC and ::ADO dispatchers now warn if a rdbms-specific driver is not found for this connection before falling back to plain ::Storage::DBI" }, { "line" => 433, "raw" => " - ::Storage::DBI::sth was mistakenly marked/documented as public,\n privatize and warn on deprecated use\n", "style" => "-", "text" => "::Storage::DBI::sth was mistakenly marked/documented as public, privatize and warn on deprecated use" }, { "line" => 435, "raw" => " - Massive overhaul of bind values/attributes handling - slightly\n changes the output of as_query (should not cause compat issues)\n", "style" => "-", "text" => "Massive overhaul of bind values/attributes handling - slightly changes the output of as_query (should not cause compat issues)" }, { "line" => 437, "raw" => " - Support ancient DB2 versions (5.4 and older), with proper limit\n dialect\n", "style" => "-", "text" => "Support ancient DB2 versions (5.4 and older), with proper limit dialect" }, { "line" => 439, "raw" => " - Support sub-second precision for TIMESTAMPs for Firebird over ODBC\n", "style" => "-", "text" => "Support sub-second precision for TIMESTAMPs for Firebird over ODBC" }, { "line" => 440, "raw" => " - Support BLOBs and CLOBs in WHERE clauses for Oracle, including LIKE\n queries for CLOBs.\n\n", "style" => "-", "text" => "Support BLOBs and CLOBs in WHERE clauses for Oracle, including LIKE queries for CLOBs." } ], "line" => 415, "raw" => " * New Features / Changes\n", "style" => "*", "text" => "New Features / Changes" }, { "entries" => [ { "line" => 444, "raw" => " - Fix ::Storage::DBI::* MRO problems on 5.8.x perls\n", "style" => "-", "text" => "Fix ::Storage::DBI::* MRO problems on 5.8.x perls" }, { "line" => 445, "raw" => " - Disable mysql_auto_reconnect for MySQL - depending on the ENV\n it sometimes defaults to on and causes major borkage on older\n DBD::mysql versions\n", "style" => "-", "text" => "Disable mysql_auto_reconnect for MySQL - depending on the ENV it sometimes defaults to on and causes major borkage on older DBD::mysql versions" }, { "line" => 448, "raw" => " - Fix dropped bind values in select/group_by on Oracle (omission\n from 0542ec57 and 4c2b30d6)\n", "style" => "-", "text" => "Fix dropped bind values in select/group_by on Oracle (omission from 0542ec57 and 4c2b30d6)" }, { "line" => 450, "raw" => " - Fix remaining errors with Oracle and identifiers longer than the\n Oracle-imposed maximum of 30 characters (RT#66390)\n", "style" => "-", "text" => "Fix remaining errors with Oracle and identifiers longer than the Oracle-imposed maximum of 30 characters (RT#66390)" }, { "line" => 452, "raw" => " - Fix older oracle-specific \"WhereJoins\" to work properly with\n name quoting\n", "style" => "-", "text" => "Fix older oracle-specific \"WhereJoins\" to work properly with name quoting" }, { "line" => 454, "raw" => " - Fix problems with M.A.D. under CGI::SpeedyCGI (RT#65131)\n", "style" => "-", "text" => "Fix problems with M.A.D. under CGI::SpeedyCGI (RT#65131)" }, { "line" => 455, "raw" => " - Reenable paging of cached resultsets - breakage erroneously added\n in 0.08127\n", "style" => "-", "text" => "Reenable paging of cached resultsets - breakage erroneously added in 0.08127" }, { "line" => 457, "raw" => " - Better error handling when prepare() fails silently\n", "style" => "-", "text" => "Better error handling when prepare() fails silently" }, { "line" => 458, "raw" => " - Fixes skipped lines when a comment is followed by a statement\n when deploying a schema via sql file\n", "style" => "-", "text" => "Fixes skipped lines when a comment is followed by a statement when deploying a schema via sql file" }, { "line" => 460, "raw" => " - Fix reverse_relationship_info on prototypical result sources\n (sources not yet registered with a schema)\n", "style" => "-", "text" => "Fix reverse_relationship_info on prototypical result sources (sources not yet registered with a schema)" }, { "line" => 462, "raw" => " - Warn and skip relationships missing from a partial schema during\n dbic cascade_delete\n", "style" => "-", "text" => "Warn and skip relationships missing from a partial schema during dbic cascade_delete" }, { "line" => 464, "raw" => " - Automatically require the requested cursor class before use\n (RT#64795)\n", "style" => "-", "text" => "Automatically require the requested cursor class before use (RT#64795)" }, { "line" => 466, "raw" => " - Work around a Firebird ODBC driver bug exposed by DBD::ODBC 1.29\n", "style" => "-", "text" => "Work around a Firebird ODBC driver bug exposed by DBD::ODBC 1.29" }, { "line" => 467, "raw" => " - Fix (to the extent allowed by the driver) transaction support in\n DBD::Sybase compiled against FreeTDS\n", "style" => "-", "text" => "Fix (to the extent allowed by the driver) transaction support in DBD::Sybase compiled against FreeTDS" }, { "line" => 469, "raw" => " - Fix exiting via next warnings in ResultSource::sequence()\n", "style" => "-", "text" => "Fix exiting via next warnings in ResultSource::sequence()" }, { "line" => 470, "raw" => " - Fix stripping of table qualifiers in update/delete in arrayref\n condition elements\n", "style" => "-", "text" => "Fix stripping of table qualifiers in update/delete in arrayref condition elements" }, { "line" => 472, "raw" => " - Change SQLMaker carp-monkeypatch to be compatible with versions\n of SQL::Abstract >= 1.73\n", "style" => "-", "text" => "Change SQLMaker carp-monkeypatch to be compatible with versions of SQL::Abstract >= 1.73" }, { "line" => 474, "raw" => " - Fix using \\[] literals in the from resultset attribute\n", "style" => "-", "text" => "Fix using \\[] literals in the from resultset attribute" }, { "line" => 475, "raw" => " - Fix populate() with \\[], arrays (datatype) and other exotic values\n", "style" => "-", "text" => "Fix populate() with \\[], arrays (datatype) and other exotic values" }, { "line" => 476, "raw" => " - Fix handling of rollbacks in nested transactions\n", "style" => "-", "text" => "Fix handling of rollbacks in nested transactions" }, { "line" => 477, "raw" => " - Fix complex limits (RNO/RowNum/FetchFirst/Top/GenSubq) with\n sub-selects in the selectors list (correlated subqueries)\n", "style" => "-", "text" => "Fix complex limits (RNO/RowNum/FetchFirst/Top/GenSubq) with sub-selects in the selectors list (correlated subqueries)" }, { "line" => 479, "raw" => " - Fix inconsistency between \$rs->next with and without HRI when all\n the \"root\" columns are in fact injected from the right rs side\n", "style" => "-", "text" => "Fix inconsistency between \$rs->next with and without HRI when all the \"root\" columns are in fact injected from the right rs side" }, { "line" => 481, "raw" => " - Fix the join optimizer to correctly preserve the non-multi path to\n a multi relationship ( x -> might_have y -> has_many z )\n", "style" => "-", "text" => "Fix the join optimizer to correctly preserve the non-multi path to a multi relationship ( x -> might_have y -> has_many z )" }, { "line" => 483, "raw" => " - Fix object-derived custom-relationship resultsets to resultsources\n with multilevel monikers (e.g. \$schema->source('Foo::Bar') )\n", "style" => "-", "text" => "Fix object-derived custom-relationship resultsets to resultsources with multilevel monikers (e.g. \$schema->source('Foo::Bar') )" }, { "line" => 485, "raw" => " - Fix incorrect signature of the default sqlt_deploy_hook - it now\n matches the documentation of passing in the result source object\n", "style" => "-", "text" => "Fix incorrect signature of the default sqlt_deploy_hook - it now matches the documentation of passing in the result source object" }, { "line" => 487, "raw" => " - Fix inadequate handling of internal storage methods within\n ::Storage::Replicated (RT#66295)\n\n", "style" => "-", "text" => "Fix inadequate handling of internal storage methods within ::Storage::Replicated (RT#66295)" } ], "line" => 443, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 491, "raw" => " - Rewire all warnings to a new Carp-like implementation internal\n to DBIx::Class, and remove the Carp::Clan dependency\n", "style" => "-", "text" => "Rewire all warnings to a new Carp-like implementation internal to DBIx::Class, and remove the Carp::Clan dependency" }, { "line" => 493, "raw" => " - Only load Class::C3 and friends if necessary (\$] < 5.010)\n", "style" => "-", "text" => "Only load Class::C3 and friends if necessary (\$] < 5.010)" }, { "line" => 494, "raw" => " - Greatly reduced loading of non-essential modules to aid startup\n time (mainly benefiting CGI users)\n", "style" => "-", "text" => "Greatly reduced loading of non-essential modules to aid startup time (mainly benefiting CGI users)" }, { "line" => 496, "raw" => " - Make sure all namespaces are clean of rogue imports\n", "style" => "-", "text" => "Make sure all namespaces are clean of rogue imports" }, { "line" => 497, "raw" => " - Dropped DBI req 2 years back - everything works with 1.57, no\n point requiring something newer\n\n", "style" => "-", "text" => "Dropped DBI req 2 years back - everything works with 1.57, no point requiring something newer" } ], "line" => 490, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 414, "note" => "(UTC) (deleted from CPAN)", "raw" => "0.08191 2011-05-02 00:45 (UTC) (deleted from CPAN)\n", "raw_date" => "2011-05-02 00:45", "version" => "0.08191" }, { "date" => "2011-01-24T15:35Z", "entries" => [ { "entries" => [ { "line" => 503, "raw" => " - Support for completely arbitrary SQL::Abstract-based conditions\n in all types of relationships\n\n", "style" => "-", "text" => "Support for completely arbitrary SQL::Abstract-based conditions in all types of relationships" } ], "line" => 502, "raw" => " * New Features / Changes\n", "style" => "*", "text" => "New Features / Changes" } ], "line" => 500, "note" => "(UTC)", "raw" => "0.08190-TRIAL 2011-01-24 15:35 (UTC)\n\n", "raw_date" => "2011-01-24 15:35", "version" => "0.08190-TRIAL" }, { "date" => "2011-01-19T16:40Z", "entries" => [ { "entries" => [ { "line" => 508, "raw" => " - Schema/resultsource instances are now crossreferenced via a new\n system guaranteeing leak-free mutually assured destruction\n", "style" => "-", "text" => "Schema/resultsource instances are now crossreferenced via a new system guaranteeing leak-free mutually assured destruction" }, { "line" => 510, "raw" => " - DBIx::Class now warns when the user erroneously supplies\n AutoCommit => 0 to connect()\n", "style" => "-", "text" => "DBIx::Class now warns when the user erroneously supplies AutoCommit => 0 to connect()" }, { "line" => 512, "raw" => " - A warning is also issued before forcing the RaiseError\n setting of externally supplied DBI handles\n", "style" => "-", "text" => "A warning is also issued before forcing the RaiseError setting of externally supplied DBI handles" }, { "line" => 514, "raw" => " - Switch to a warning when find() is invoked with both a 'key'\n argument and a NULL-containing condition to satisfy the named\n constraint. Previously (starting with 0.08124) an exception was\n thrown\n", "style" => "-", "text" => "Switch to a warning when find() is invoked with both a 'key' argument and a NULL-containing condition to satisfy the named constraint. Previously (starting with 0.08124) an exception was thrown" }, { "line" => 518, "raw" => " - Switch to a warning when a commit is attempted with an out-of-sync\n transaction_depth (someone issued a begin externally to DBIC).\n Previously (starting with 0.08124) an exception was thrown\n\n", "style" => "-", "text" => "Switch to a warning when a commit is attempted with an out-of-sync transaction_depth (someone issued a begin externally to DBIC). Previously (starting with 0.08124) an exception was thrown" } ], "line" => 507, "raw" => " * New Features / Changes\n", "style" => "*", "text" => "New Features / Changes" }, { "entries" => [ { "line" => 523, "raw" => " - A number of improvements/diagnostics of multiple active resultset\n handling on MSSQL over DBD::ODBC\n", "style" => "-", "text" => "A number of improvements/diagnostics of multiple active resultset handling on MSSQL over DBD::ODBC" }, { "line" => 525, "raw" => " - Revert default selection to being lazy again (eagerness introduced\n in 0.08125) - fixes DBIx::Class::Helper::ResultSet::RemoveColumns\n", "style" => "-", "text" => "Revert default selection to being lazy again (eagerness introduced in 0.08125) - fixes DBIx::Class::Helper::ResultSet::RemoveColumns" }, { "line" => 527, "raw" => " - Fix losing order of columns provided in select/as (regression from\n 0.08125)\n", "style" => "-", "text" => "Fix losing order of columns provided in select/as (regression from 0.08125)" }, { "line" => 529, "raw" => " - Unaliased \"dark\" selectors no longer throw off prefetch\n", "style" => "-", "text" => "Unaliased \"dark\" selectors no longer throw off prefetch" }, { "line" => 530, "raw" => " - Fix proper composition of bind values across all possible\n SQL areas ( group_by => \\[ ... ] now works properly )\n", "style" => "-", "text" => "Fix proper composition of bind values across all possible SQL areas ( group_by => \\[ ... ] now works properly )" }, { "line" => 532, "raw" => " - Allow populate to skip empty has_many relationships which makes\n it easier to pass HashRefInflator data directly to ->populate\n", "style" => "-", "text" => "Allow populate to skip empty has_many relationships which makes it easier to pass HashRefInflator data directly to ->populate" }, { "line" => 534, "raw" => " - Improve freeze/thaw semantics and error messages (RT#62546)\n", "style" => "-", "text" => "Improve freeze/thaw semantics and error messages (RT#62546)" }, { "line" => 535, "raw" => " - Fix inconsistency in Manual::Features (RT#64500)\n", "style" => "-", "text" => "Fix inconsistency in Manual::Features (RT#64500)" }, { "line" => 536, "raw" => " - Fix incorrect SQL when using for => 'shared' with MySQL (RT#64590)\n", "style" => "-", "text" => "Fix incorrect SQL when using for => 'shared' with MySQL (RT#64590)" }, { "line" => 537, "raw" => " - Throw comprehensible exception on erroneous \$schema->source()\n invocation\n", "style" => "-", "text" => "Throw comprehensible exception on erroneous \$schema->source() invocation" }, { "line" => 539, "raw" => " - Fix sloppy refactor of ResultSource::sequence back from 89170201\n (RT#64839)\n", "style" => "-", "text" => "Fix sloppy refactor of ResultSource::sequence back from 89170201 (RT#64839)" }, { "line" => 541, "raw" => " - Fix incorrect error detection during populate() on Oracle\n", "style" => "-", "text" => "Fix incorrect error detection during populate() on Oracle" }, { "line" => 542, "raw" => " - Better handling of result_source-less row objects by\n auto-calling result_source_instance when necessary\n", "style" => "-", "text" => "Better handling of result_source-less row objects by auto-calling result_source_instance when necessary" }, { "line" => 544, "raw" => " - Fix reverse_relationship_info and sqlt deploy on partially\n loaded schemas (relationships point to non-existent sources)\n\n", "style" => "-", "text" => "Fix reverse_relationship_info and sqlt deploy on partially loaded schemas (relationships point to non-existent sources)" } ], "line" => 522, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 548, "raw" => " - Fix test warning on win32 - at this point the test suite is\n warning-free on all known OSes\n", "style" => "-", "text" => "Fix test warning on win32 - at this point the test suite is warning-free on all known OSes" }, { "line" => 550, "raw" => " - Require newest namespace::clean which in turn depends on new\n installable Package::Stash\n\n", "style" => "-", "text" => "Require newest namespace::clean which in turn depends on new installable Package::Stash" } ], "line" => 547, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 506, "note" => "(UTC)", "raw" => "0.08127 2011-01-19 16:40 (UTC)\n", "raw_date" => "2011-01-19 16:40", "version" => "0.08127" }, { "date" => "2010-12-28T18:10Z", "entries" => [ { "entries" => [ { "line" => 555, "raw" => " - Bump forgotten Class::Accessor::Grouped core dependency\n", "style" => "-", "text" => "Bump forgotten Class::Accessor::Grouped core dependency" }, { "line" => 556, "raw" => " - Promote forgotten Hash::Merge optdep to a hard requirement\n", "style" => "-", "text" => "Promote forgotten Hash::Merge optdep to a hard requirement" }, { "line" => 557, "raw" => " - Skip t/storage/error.t on smokers with leaking perls\n", "style" => "-", "text" => "Skip t/storage/error.t on smokers with leaking perls" }, { "line" => 558, "raw" => " - Fix t/storage/txn.t deadlocks on slower machines\n", "style" => "-", "text" => "Fix t/storage/txn.t deadlocks on slower machines" }, { "line" => 559, "raw" => " - Do not run on smokers if a trial Package::Stash is found\n\n", "style" => "-", "text" => "Do not run on smokers if a trial Package::Stash is found" } ], "line" => 554, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" } ], "line" => 553, "note" => "(UTC)", "raw" => "0.08126 2010-12-28 18:10 (UTC)\n", "raw_date" => "2010-12-28 18:10", "version" => "0.08126" }, { "date" => "2010-12-27T04:30Z", "entries" => [ { "entries" => [ { "line" => 563, "raw" => " - New method ResultSource columns_info method, returning multiple\n pairs of column name/info at once\n", "style" => "-", "text" => "New method ResultSource columns_info method, returning multiple pairs of column name/info at once" }, { "line" => 565, "raw" => " - \$rs->search now throws when called in void context, as it makes\n no sense (and is nearly always a sign of a bug/misdesign)\n", "style" => "-", "text" => "\$rs->search now throws when called in void context, as it makes no sense (and is nearly always a sign of a bug/misdesign)" }, { "line" => 567, "raw" => " - Restore long-lost ability to supply unbalanced select/as pairs\n e.g. +select => \\'DISTINCT(foo, bar)', +as => ['foo', 'bar']\n", "style" => "-", "text" => "Restore long-lost ability to supply unbalanced select/as pairs e.g. +select => \\'DISTINCT(foo, bar)', +as => ['foo', 'bar']" }, { "line" => 569, "raw" => " - +columns now behaves just like columns by not stripping a\n fully-qualified 'as' spec (i.e. foo.bar results in \$obj->foo->bar)\n", "style" => "-", "text" => "+columns now behaves just like columns by not stripping a fully-qualified 'as' spec (i.e. foo.bar results in \$obj->foo->bar)" }, { "line" => 571, "raw" => " - Deprecate legacy \$rs->search( %condition ) syntax (warn once per\n callsite)\n", "style" => "-", "text" => "Deprecate legacy \$rs->search( %condition ) syntax (warn once per callsite)" }, { "line" => 573, "raw" => " - NULL is now supplied unquoted to all debug-objects, in order to\n differentiate between a real NULL and the string 'NULL'\n", "style" => "-", "text" => "NULL is now supplied unquoted to all debug-objects, in order to differentiate between a real NULL and the string 'NULL'" }, { "line" => 575, "raw" => " - New search() condition operator -value used to pass complex bind\n values to DBI: search({ array_col => { -value => [1,2,3] }})\n", "style" => "-", "text" => "New search() condition operator -value used to pass complex bind values to DBI: search({ array_col => { -value => [1,2,3] }})" }, { "line" => 577, "raw" => " - Add full INSERT...RETURNING support for Oracle\n", "style" => "-", "text" => "Add full INSERT...RETURNING support for Oracle" }, { "line" => 578, "raw" => " - Deprecate use of -nest in search conditions (warn once per\n callsite)\n", "style" => "-", "text" => "Deprecate use of -nest in search conditions (warn once per callsite)" }, { "line" => 580, "raw" => " - Deprecate the completely useless DBIx::Class::Serialize::Storable\n result component\n\n", "style" => "-", "text" => "Deprecate the completely useless DBIx::Class::Serialize::Storable result component" } ], "line" => 562, "raw" => " * New Features / Changes\n", "style" => "*", "text" => "New Features / Changes" }, { "entries" => [ { "line" => 584, "raw" => " - Fixed read-only attribute set attempt in ::Storage::Replicated\n (RT#62642)\n", "style" => "-", "text" => "Fixed read-only attribute set attempt in ::Storage::Replicated (RT#62642)" }, { "line" => 586, "raw" => " - Fix incomplete logic while detecting correct Oracle sequence\n on insert\n", "style" => "-", "text" => "Fix incomplete logic while detecting correct Oracle sequence on insert" }, { "line" => 588, "raw" => " - Fix detection of Oracle sequences for tables without an explicitly\n specified schema (RT#63493)\n", "style" => "-", "text" => "Fix detection of Oracle sequences for tables without an explicitly specified schema (RT#63493)" }, { "line" => 590, "raw" => " - Major overhaul of Storage::Oracle to handle enabled quoting\n", "style" => "-", "text" => "Major overhaul of Storage::Oracle to handle enabled quoting" }, { "line" => 591, "raw" => " - Fixed incorrect composition of select/as/columns attributes during\n chaining (RT#61235)\n", "style" => "-", "text" => "Fixed incorrect composition of select/as/columns attributes during chaining (RT#61235)" }, { "line" => 593, "raw" => " - Proper serialization of resultsets with open cursors\n", "style" => "-", "text" => "Proper serialization of resultsets with open cursors" }, { "line" => 594, "raw" => " - Refactor handling of RDBMS-side values during insert() - fix\n regression of inserts into a Postgres / ::Replicated combination\n", "style" => "-", "text" => "Refactor handling of RDBMS-side values during insert() - fix regression of inserts into a Postgres / ::Replicated combination" }, { "line" => 596, "raw" => " - Missing dependency check in t/60core.t (RT#62635)\n", "style" => "-", "text" => "Missing dependency check in t/60core.t (RT#62635)" }, { "line" => 597, "raw" => " - Fix regressions in IC::DT registration logic\n", "style" => "-", "text" => "Fix regressions in IC::DT registration logic" }, { "line" => 598, "raw" => " - Fix regression in select-associated bind value handling (RT#61025)\n", "style" => "-", "text" => "Fix regression in select-associated bind value handling (RT#61025)" }, { "line" => 599, "raw" => " - Simplify SQL generated by some LIMITed prefetching queries\n", "style" => "-", "text" => "Simplify SQL generated by some LIMITed prefetching queries" }, { "line" => 600, "raw" => " - Throw an exception when a required group_by on a complex prefetch\n can not be auto-constructed, instead of continuing to eventually\n produce invalid SQL\n", "style" => "-", "text" => "Throw an exception when a required group_by on a complex prefetch can not be auto-constructed, instead of continuing to eventually produce invalid SQL" }, { "line" => 603, "raw" => " - Fix infinite loops on old perls with a recent Try::Tiny\n", "style" => "-", "text" => "Fix infinite loops on old perls with a recent Try::Tiny" }, { "line" => 604, "raw" => " - Improve \"fork()\" on Win32 by reimplementing a more robust DBIC\n thread support (still problematic, pending a DBI fix)\n", "style" => "-", "text" => "Improve \"fork()\" on Win32 by reimplementing a more robust DBIC thread support (still problematic, pending a DBI fix)" }, { "line" => 606, "raw" => " - Properly quote table name on INSERT with no values\n", "style" => "-", "text" => "Properly quote table name on INSERT with no values" }, { "line" => 607, "raw" => " - Work around possible Storage destruction warnings\n", "style" => "-", "text" => "Work around possible Storage destruction warnings" }, { "line" => 608, "raw" => " - Fix count of grouped resultsets using HAVING with aliases\n", "style" => "-", "text" => "Fix count of grouped resultsets using HAVING with aliases" }, { "line" => 609, "raw" => " - Setting belongs_to columns/relationships no longer leaves the\n FK value and related object out of sync\n", "style" => "-", "text" => "Setting belongs_to columns/relationships no longer leaves the FK value and related object out of sync" }, { "line" => 611, "raw" => " - Stop stripping newlines from SQL statements in the limit emulators\n as it is possible that custom sql with comments was provided\n", "style" => "-", "text" => "Stop stripping newlines from SQL statements in the limit emulators as it is possible that custom sql with comments was provided" }, { "line" => 613, "raw" => " - Add forgotten attributes to Admin.pm\n", "style" => "-", "text" => "Add forgotten attributes to Admin.pm" }, { "line" => 614, "raw" => " - Fix incorrect 'having' attribute documentation (RT#64129)\n", "style" => "-", "text" => "Fix incorrect 'having' attribute documentation (RT#64129)" }, { "line" => 615, "raw" => " - Improve fallback-to-master/return-to-slave reporting in\n ::Replicated::Balancer\n", "style" => "-", "text" => "Improve fallback-to-master/return-to-slave reporting in ::Replicated::Balancer" }, { "line" => 617, "raw" => " - Adjust txn_scope_guard code/tests to changes in \$\@ handling on\n recent blead (RT#64251)\n\n", "style" => "-", "text" => "Adjust txn_scope_guard code/tests to changes in \$\@ handling on recent blead (RT#64251)" } ], "line" => 583, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 621, "raw" => " - Add extra option groups to DBIC::Optional::Depencencies, to aid\n users in requesting the prerequisites for a particular RDBMS\n", "style" => "-", "text" => "Add extra option groups to DBIC::Optional::Depencencies, to aid users in requesting the prerequisites for a particular RDBMS" }, { "line" => 623, "raw" => " - Switch all serialization to use Storable::nfreeze for portable\n architecture independent ice\n", "style" => "-", "text" => "Switch all serialization to use Storable::nfreeze for portable architecture independent ice" }, { "line" => 625, "raw" => " - Fix the bogus META.yml dependency injection issue for good\n", "style" => "-", "text" => "Fix the bogus META.yml dependency injection issue for good" }, { "line" => 626, "raw" => " - Refactor DBIx::Class::Storage::Statistics::debugfh() to be lazy\n\n", "style" => "-", "text" => "Refactor DBIx::Class::Storage::Statistics::debugfh() to be lazy" } ], "line" => 620, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 561, "note" => "(UTC)", "raw" => "0.08125 2010-12-27 04:30 (UTC)\n", "raw_date" => "2010-12-27 04:30", "version" => "0.08125" }, { "date" => "2010-10-28T14:23Z", "entries" => [ { "entries" => [ { "line" => 630, "raw" => " - Add new -ident \"function\" indicating rhs is a column name\n { col => { -ident => 'othercol' } } vs { col => \\'othercol' }\n", "style" => "-", "text" => "Add new -ident \"function\" indicating rhs is a column name { col => { -ident => 'othercol' } } vs { col => \\'othercol' }" }, { "line" => 632, "raw" => " - Extend 'proxy' relationship attribute\n", "style" => "-", "text" => "Extend 'proxy' relationship attribute" }, { "line" => 633, "raw" => " - Use DBIx::Class::Storage::Debug::PrettyPrint when the\n environment variable DBIC_TRACE_PROFILE is set, see\n DBIx::Class::Storage for more information\n", "style" => "-", "text" => "Use DBIx::Class::Storage::Debug::PrettyPrint when the environment variable DBIC_TRACE_PROFILE is set, see DBIx::Class::Storage for more information" }, { "line" => 636, "raw" => " - Implemented add_unique_constraints() which delegates to\n add_unique_constraint() as appropriate\n", "style" => "-", "text" => "Implemented add_unique_constraints() which delegates to add_unique_constraint() as appropriate" }, { "line" => 638, "raw" => " - add_unique_constraint() now poparly throws if called with\n multiple constraint definitions\n", "style" => "-", "text" => "add_unique_constraint() now poparly throws if called with multiple constraint definitions" }, { "line" => 640, "raw" => " - No longer depend on SQL::Abstract::Limit - DBIC has been doing\n most of the heavy lifting for a while anyway\n", "style" => "-", "text" => "No longer depend on SQL::Abstract::Limit - DBIC has been doing most of the heavy lifting for a while anyway" }, { "line" => 642, "raw" => " - FilterColumn now passes data through when transformations\n are not specified rather than throwing an exception.\n", "style" => "-", "text" => "FilterColumn now passes data through when transformations are not specified rather than throwing an exception." }, { "line" => 644, "raw" => " - Optimized RowNum based Oracle limit-dialect (RT#61277)\n", "style" => "-", "text" => "Optimized RowNum based Oracle limit-dialect (RT#61277)" }, { "line" => 645, "raw" => " - Requesting a pager on a resultset with cached entries now\n throws an exception, instead of returning a 1-page object\n since the amount of rows is always equal to the \"pagesize\"\n", "style" => "-", "text" => "Requesting a pager on a resultset with cached entries now throws an exception, instead of returning a 1-page object since the amount of rows is always equal to the \"pagesize\"" }, { "line" => 648, "raw" => " - \$rs->pager now uses a lazy count to determine the amount of\n total entries only when really needed, instead of doing it\n at instantiation time\n", "style" => "-", "text" => "\$rs->pager now uses a lazy count to determine the amount of total entries only when really needed, instead of doing it at instantiation time" }, { "line" => 651, "raw" => " - New documentation map organized by features\n (DBIx::Class::Manual::Features)\n", "style" => "-", "text" => "New documentation map organized by features (DBIx::Class::Manual::Features)" }, { "line" => 653, "raw" => " - find( { ... }, { key => \$constraint } ) now throws an exception\n when the supplied data does not fully specify \$constraint\n", "style" => "-", "text" => "find( { ... }, { key => \$constraint } ) now throws an exception when the supplied data does not fully specify \$constraint" }, { "line" => 655, "raw" => " - find( col1 => \$val1, col2 => \$val2, ... ) is no longer supported\n (it has been in deprecated state for more than 4 years)\n", "style" => "-", "text" => "find( col1 => \$val1, col2 => \$val2, ... ) is no longer supported (it has been in deprecated state for more than 4 years)" }, { "line" => 657, "raw" => " - Make sure exception_action does not allow exception-hiding\n due to badly-written handlers (the mechanism was never meant\n to be able to suppress exceptions)\n\n", "style" => "-", "text" => "Make sure exception_action does not allow exception-hiding due to badly-written handlers (the mechanism was never meant to be able to suppress exceptions)" } ], "line" => 629, "raw" => " * New Features / Changes\n", "style" => "*", "text" => "New Features / Changes" }, { "entries" => [ { "line" => 662, "raw" => " - Fix memory leak during populate() on 5.8.x perls\n", "style" => "-", "text" => "Fix memory leak during populate() on 5.8.x perls" }, { "line" => 663, "raw" => " - Temporarily fixed 5.13.x failures (RT#58225)\n (perl-core fix still pending)\n", "style" => "-", "text" => "Temporarily fixed 5.13.x failures (RT#58225) (perl-core fix still pending)" }, { "line" => 665, "raw" => " - Fix result_soutrce_instance leaks on compose_namespace\n", "style" => "-", "text" => "Fix result_soutrce_instance leaks on compose_namespace" }, { "line" => 666, "raw" => " - Fix \$_ volatility on load_namespaces (a class changing \$_\n at compile time no longer causes a massive fail)\n", "style" => "-", "text" => "Fix \$_ volatility on load_namespaces (a class changing \$_ at compile time no longer causes a massive fail)" }, { "line" => 668, "raw" => " - Fix find() without a key attr. choosing constraints even if\n some of the supplied values are NULL (RT#59219)\n", "style" => "-", "text" => "Fix find() without a key attr. choosing constraints even if some of the supplied values are NULL (RT#59219)" }, { "line" => 670, "raw" => " - Fixed rels ending with me breaking subqueried limit realiasing\n", "style" => "-", "text" => "Fixed rels ending with me breaking subqueried limit realiasing" }, { "line" => 671, "raw" => " - Fixed \$rs->update/delete on resutsets constrained by an\n -or condition\n", "style" => "-", "text" => "Fixed \$rs->update/delete on resutsets constrained by an -or condition" }, { "line" => 673, "raw" => " - Remove rogue GROUP BY on non-multiplying prefetch-induced\n subqueries\n", "style" => "-", "text" => "Remove rogue GROUP BY on non-multiplying prefetch-induced subqueries" }, { "line" => 675, "raw" => " - Fix incorrect order_by handling with prefetch on\n \$ordered_rs->search_related ('has_many_rel') resultsets\n", "style" => "-", "text" => "Fix incorrect order_by handling with prefetch on \$ordered_rs->search_related ('has_many_rel') resultsets" }, { "line" => 677, "raw" => " - Oracle sequence detection now *really* works across schemas\n (fixed some ommissions from 0.08123)\n", "style" => "-", "text" => "Oracle sequence detection now *really* works across schemas (fixed some ommissions from 0.08123)" }, { "line" => 679, "raw" => " - dbicadmin now uses a /usr/bin/env shebang to work better with\n perlbrew and other local perl builds\n", "style" => "-", "text" => "dbicadmin now uses a /usr/bin/env shebang to work better with perlbrew and other local perl builds" }, { "line" => 681, "raw" => " - bulk-inserts via \$dbh->bind_array (void \$rs->populate) now\n display properly in DBIC_TRACE\n", "style" => "-", "text" => "bulk-inserts via \$dbh->bind_array (void \$rs->populate) now display properly in DBIC_TRACE" }, { "line" => 683, "raw" => " - Incomplete exception thrown on relationship auto-fk-inference\n failures\n", "style" => "-", "text" => "Incomplete exception thrown on relationship auto-fk-inference failures" }, { "line" => 685, "raw" => " - Fixed distinct with order_by to not double-specify the same\n column in the GROUP BY clause\n", "style" => "-", "text" => "Fixed distinct with order_by to not double-specify the same column in the GROUP BY clause" }, { "line" => 687, "raw" => " - Properly support column names with symbols (e.g. single quote)\n via custom accessors\n", "style" => "-", "text" => "Properly support column names with symbols (e.g. single quote) via custom accessors" }, { "line" => 689, "raw" => " - Fixed ::Schema::Versioned to work properly with quoting on\n (RT#59619)\n", "style" => "-", "text" => "Fixed ::Schema::Versioned to work properly with quoting on (RT#59619)" }, { "line" => 691, "raw" => " - Fixed t/54taint fails under local-lib\n", "style" => "-", "text" => "Fixed t/54taint fails under local-lib" }, { "line" => 692, "raw" => " - Fixed SELECT ... FOR UPDATE with LIMIT regression (RT#58554)\n", "style" => "-", "text" => "Fixed SELECT ... FOR UPDATE with LIMIT regression (RT#58554)" }, { "line" => 693, "raw" => " - Fixed CDBICompat to preserve order of column-group additions,\n so that test relying on the order of %{} will no longer fail\n", "style" => "-", "text" => "Fixed CDBICompat to preserve order of column-group additions, so that test relying on the order of %{} will no longer fail" }, { "line" => 695, "raw" => " - Fixed mysterious ::Storage::DBI goto-shim failures on older\n perl versions\n", "style" => "-", "text" => "Fixed mysterious ::Storage::DBI goto-shim failures on older perl versions" }, { "line" => 697, "raw" => " - Non-blessed reference exceptions are now correctly preserved\n when thrown from udner DBIC (e.g. from txn_do)\n", "style" => "-", "text" => "Non-blessed reference exceptions are now correctly preserved when thrown from udner DBIC (e.g. from txn_do)" }, { "line" => 699, "raw" => " - No longer disconnecting database handles supplied to connect\n via a coderef\n", "style" => "-", "text" => "No longer disconnecting database handles supplied to connect via a coderef" }, { "line" => 701, "raw" => " - Fixed t/inflate/datetime_pg.t failures due to a low dependency\n on DateTime::Format::Pg (RT#61503)\n", "style" => "-", "text" => "Fixed t/inflate/datetime_pg.t failures due to a low dependency on DateTime::Format::Pg (RT#61503)" }, { "line" => 703, "raw" => " - Fix dirtyness detection on source-less objects\n", "style" => "-", "text" => "Fix dirtyness detection on source-less objects" }, { "line" => 704, "raw" => " - Fix incorrect limit_dialect assignment on Replicated pool members\n", "style" => "-", "text" => "Fix incorrect limit_dialect assignment on Replicated pool members" }, { "line" => 705, "raw" => " - Fix invalid sql on relationship attr order_by with prefetch\n", "style" => "-", "text" => "Fix invalid sql on relationship attr order_by with prefetch" }, { "line" => 706, "raw" => " - Fix primary key sequence detection for Oracle\n (first trigger instead of trigger for column)\n", "style" => "-", "text" => "Fix primary key sequence detection for Oracle (first trigger instead of trigger for column)" }, { "line" => 708, "raw" => " - Add various missing things to Optional::Dependencies\n", "style" => "-", "text" => "Add various missing things to Optional::Dependencies" }, { "line" => 709, "raw" => " - Skip a test that breaks due to serious bugs in current DBD::SQLite\n", "style" => "-", "text" => "Skip a test that breaks due to serious bugs in current DBD::SQLite" }, { "line" => 710, "raw" => " - Fix tests related to leaks and leaky perls (5.13.5, 5.13.6)\n\n", "style" => "-", "text" => "Fix tests related to leaks and leaky perls (5.13.5, 5.13.6)" } ], "line" => 661, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 713, "raw" => " - Entire test suite now passes under DBIC_TRACE=1\n", "style" => "-", "text" => "Entire test suite now passes under DBIC_TRACE=1" }, { "line" => 714, "raw" => " - Makefile.PL no longer imports GetOptions() to interoperate\n better with Catalyst installers\n", "style" => "-", "text" => "Makefile.PL no longer imports GetOptions() to interoperate better with Catalyst installers" }, { "line" => 716, "raw" => " - Bumped minimum Module::Install for developers\n", "style" => "-", "text" => "Bumped minimum Module::Install for developers" }, { "line" => 717, "raw" => " - Bumped DBD::SQLite dependency and removed some TODO markers\n from tests (RT#59565)\n", "style" => "-", "text" => "Bumped DBD::SQLite dependency and removed some TODO markers from tests (RT#59565)" }, { "line" => 719, "raw" => " - Do not execute t/zzzzzzz_sqlite_deadlock.t for regular module\n installs - test is prone to spontaneous blow up\n", "style" => "-", "text" => "Do not execute t/zzzzzzz_sqlite_deadlock.t for regular module installs - test is prone to spontaneous blow up" }, { "line" => 721, "raw" => " - DT-related tests now require a DateTime >= 0.55 (RT#60324)\n", "style" => "-", "text" => "DT-related tests now require a DateTime >= 0.55 (RT#60324)" }, { "line" => 722, "raw" => " - Makefile.PL now provides a pre-parsed DBIC version to the\n Opt::Dep pod generator\n", "style" => "-", "text" => "Makefile.PL now provides a pre-parsed DBIC version to the Opt::Dep pod generator" }, { "line" => 724, "raw" => " - t/52leaks.t now performs very aggressive leak detection in\n author/smoker mode\n\n", "style" => "-", "text" => "t/52leaks.t now performs very aggressive leak detection in author/smoker mode" } ], "line" => 712, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 628, "note" => "(UTC)", "raw" => "0.08124 2010-10-28 14:23 (UTC)\n", "raw_date" => "2010-10-28 14:23", "version" => "0.08124" }, { "date" => "2010-06-12T14:46Z", "entries" => [ { "entries" => [ { "line" => 729, "raw" => " - Make sure Oracle identifier shortener applies to auto-generated\n column names, so we stay within the 30-char limit (RT#58271)\n", "style" => "-", "text" => "Make sure Oracle identifier shortener applies to auto-generated column names, so we stay within the 30-char limit (RT#58271)" }, { "line" => 731, "raw" => " - Oracle sequence detection now works across schemas\n", "style" => "-", "text" => "Oracle sequence detection now works across schemas" }, { "line" => 732, "raw" => " - Fix a Storage/\$dbh leak introduced by the migration to\n Try::Tiny (this is *not* a Try::Tiny bug)\n", "style" => "-", "text" => "Fix a Storage/\$dbh leak introduced by the migration to Try::Tiny (this is *not* a Try::Tiny bug)" }, { "line" => 734, "raw" => " - Fix corner case of count with group-by over a 1:1 join column\n where the selector ends up with column name clashes\n", "style" => "-", "text" => "Fix corner case of count with group-by over a 1:1 join column where the selector ends up with column name clashes" }, { "line" => 736, "raw" => " - POD fixes (RT#58247)\n\n", "style" => "-", "text" => "POD fixes (RT#58247)" } ], "line" => 728, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 739, "raw" => " - Test suite default on-disk database now checks for Win32\n fail-conditions even when running on other OSes\n\n", "style" => "-", "text" => "Test suite default on-disk database now checks for Win32 fail-conditions even when running on other OSes" } ], "line" => 738, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 727, "note" => "(UTC)", "raw" => "0.08123 2010-06-12 14:46 (UTC)\n", "raw_date" => "2010-06-12 14:46", "version" => "0.08123" }, { "date" => "2010-06-03T17:41Z", "entries" => [ { "entries" => [ { "line" => 744, "raw" => " - Add DBIx::Class::FilterColumn for non-ref filtering\n", "style" => "-", "text" => "Add DBIx::Class::FilterColumn for non-ref filtering" }, { "line" => 745, "raw" => " - ::Storage::DBI now correctly preserves a parent \$dbh from\n terminating children, even during interpreter-global\n out-of-order destruction\n", "style" => "-", "text" => "::Storage::DBI now correctly preserves a parent \$dbh from terminating children, even during interpreter-global out-of-order destruction" }, { "line" => 748, "raw" => " - dbicadmin supports an -I option with the same semantics as\n perl itself\n", "style" => "-", "text" => "dbicadmin supports an -I option with the same semantics as perl itself" }, { "line" => 750, "raw" => " - InflateColumn::DateTime support for MSSQL via DBD::Sybase\n", "style" => "-", "text" => "InflateColumn::DateTime support for MSSQL via DBD::Sybase" }, { "line" => 751, "raw" => " - Millisecond precision support for MSSQL datetimes for\n InflateColumn::DateTime\n", "style" => "-", "text" => "Millisecond precision support for MSSQL datetimes for InflateColumn::DateTime" }, { "line" => 753, "raw" => " - Oracle-specific hierarchical query syntax support:\n CONNECT BY (NOCYCLE) / START WITH / ORDER SIBLINGS BY\n", "style" => "-", "text" => "Oracle-specific hierarchical query syntax support: CONNECT BY (NOCYCLE) / START WITH / ORDER SIBLINGS BY" }, { "line" => 755, "raw" => " - Support connecting using \$ENV{DBI_DSN} and \$ENV{DBI_DRIVER}\n", "style" => "-", "text" => "Support connecting using \$ENV{DBI_DSN} and \$ENV{DBI_DRIVER}" }, { "line" => 756, "raw" => " - current_source_alias method on ResultSet objects to\n determine the alias to use in programatically assembled\n search()es (originally added in 0.08100 but unmentioned)\n", "style" => "-", "text" => "current_source_alias method on ResultSet objects to determine the alias to use in programatically assembled search()es (originally added in 0.08100 but unmentioned)" }, { "line" => 759, "raw" => " - Rewrite/unification of all subselecting limit emulations\n (RNO, Top, RowNum) to be much more robust wrt complex joined\n resultsets\n", "style" => "-", "text" => "Rewrite/unification of all subselecting limit emulations (RNO, Top, RowNum) to be much more robust wrt complex joined resultsets" }, { "line" => 762, "raw" => " - MSSQL limits now don't require nearly as many applications of\n the unsafe_subselect_ok attribute, due to optimized queries\n", "style" => "-", "text" => "MSSQL limits now don't require nearly as many applications of the unsafe_subselect_ok attribute, due to optimized queries" }, { "line" => 764, "raw" => " - Support for Generic Subquery limit \"emulation\" - awfully slow\n and inefficient but works on almost any db, and is preferred\n to software limit emulation\n", "style" => "-", "text" => "Support for Generic Subquery limit \"emulation\" - awfully slow and inefficient but works on almost any db, and is preferred to software limit emulation" }, { "line" => 767, "raw" => " - Sybase ASE driver now uses SET ROWCOUNT where possible, and\n Generic Subquery otherwise for limit support instead of always\n using software limit emulation\n", "style" => "-", "text" => "Sybase ASE driver now uses SET ROWCOUNT where possible, and Generic Subquery otherwise for limit support instead of always using software limit emulation" }, { "line" => 770, "raw" => " - create_ddl_dir (and derivatives) now attempt to create the given\n \$ddl_dir if it does not already exist\n", "style" => "-", "text" => "create_ddl_dir (and derivatives) now attempt to create the given \$ddl_dir if it does not already exist" }, { "line" => 772, "raw" => " - deployment_statements now automatically supplies the current RDBMS\n version to SQLT producer_args for MySQL, Pg, SQLite and Oracle\n\n", "style" => "-", "text" => "deployment_statements now automatically supplies the current RDBMS version to SQLT producer_args for MySQL, Pg, SQLite and Oracle" } ], "line" => 743, "raw" => " * New Features\n", "style" => "*", "text" => "New Features" }, { "entries" => [ { "line" => 776, "raw" => " - Fix nasty potentially data-eating bug when deleting/updating\n a limited resultset\n", "style" => "-", "text" => "Fix nasty potentially data-eating bug when deleting/updating a limited resultset" }, { "line" => 778, "raw" => " - Fix find() to use result_class set on object\n", "style" => "-", "text" => "Fix find() to use result_class set on object" }, { "line" => 779, "raw" => " - Fix result_class setter behaviour to not mistakenly stuff attrs.\n", "style" => "-", "text" => "Fix result_class setter behaviour to not mistakenly stuff attrs." }, { "line" => 780, "raw" => " - Don't try and ensure_class_loaded an object. This doesn't work.\n", "style" => "-", "text" => "Don't try and ensure_class_loaded an object. This doesn't work." }, { "line" => 781, "raw" => " - Fix as_subselect_rs to not inject resultset class-wide where\n conditions outside of the resulting subquery\n", "style" => "-", "text" => "Fix as_subselect_rs to not inject resultset class-wide where conditions outside of the resulting subquery" }, { "line" => 783, "raw" => " - Fix count() failing with {for} resultset attribute (RT#56257)\n", "style" => "-", "text" => "Fix count() failing with {for} resultset attribute (RT#56257)" }, { "line" => 784, "raw" => " - Fixed incorrect detection of Limit dialect on unconnected \$schema\n", "style" => "-", "text" => "Fixed incorrect detection of Limit dialect on unconnected \$schema" }, { "line" => 785, "raw" => " - update() on row not in_storage no longer throws an exception\n if there are no dirty columns to update (fixes cascaded update\n annoyances)\n", "style" => "-", "text" => "update() on row not in_storage no longer throws an exception if there are no dirty columns to update (fixes cascaded update annoyances)" }, { "line" => 788, "raw" => " - update()/delete() on prefetching resultsets no longer results\n in malformed SQL (some \$rs attributes were erroneously left in)\n", "style" => "-", "text" => "update()/delete() on prefetching resultsets no longer results in malformed SQL (some \$rs attributes were erroneously left in)" }, { "line" => 790, "raw" => " - Fix dbicadmin to allow deploy() on non-versioned schema\n", "style" => "-", "text" => "Fix dbicadmin to allow deploy() on non-versioned schema" }, { "line" => 791, "raw" => " - Fix dbicadmin to respect sql_dir on upgrade() (RT#57732)\n", "style" => "-", "text" => "Fix dbicadmin to respect sql_dir on upgrade() (RT#57732)" }, { "line" => 792, "raw" => " - Update Schema::Versioned to respect hashref style of\n connection_info\n", "style" => "-", "text" => "Update Schema::Versioned to respect hashref style of connection_info" }, { "line" => 794, "raw" => " - Do not recreate the same related object twice during MultiCreate\n (solves the problem of orphaned IC::FS files)\n", "style" => "-", "text" => "Do not recreate the same related object twice during MultiCreate (solves the problem of orphaned IC::FS files)" }, { "line" => 796, "raw" => " - Fully qualify xp_msver selector when using DBD::Sybase with\n MSSQL (RT#57467)\n", "style" => "-", "text" => "Fully qualify xp_msver selector when using DBD::Sybase with MSSQL (RT#57467)" }, { "line" => 798, "raw" => " - Fix ::DBI::Storage to always be able to present a full set of\n connect() attributes to e.g. Schema::Versioned\n", "style" => "-", "text" => "Fix ::DBI::Storage to always be able to present a full set of connect() attributes to e.g. Schema::Versioned" }, { "line" => 800, "raw" => " - Fix Oracle auto-inc trigger detection of \"INSERT OR UPDATE\"-type\n triggers\n\n", "style" => "-", "text" => "Fix Oracle auto-inc trigger detection of \"INSERT OR UPDATE\"-type triggers" } ], "line" => 775, "raw" => " * Fixes\n", "style" => "*", "text" => "Fixes" }, { "entries" => [ { "line" => 804, "raw" => " - Reformatted Changelog \\o/\n", "style" => "-", "text" => "Reformatted Changelog \\o/" }, { "line" => 805, "raw" => " - DBIC goes git://git.shadowcat.co.uk/dbsrgits/DBIx-Class.git\n", "style" => "-", "text" => "DBIC goes git://git.shadowcat.co.uk/dbsrgits/DBIx-Class.git" }, { "line" => 806, "raw" => " - Allow developers to skip optional dependency forcing when working\n from a checkout\n", "style" => "-", "text" => "Allow developers to skip optional dependency forcing when working from a checkout" }, { "line" => 808, "raw" => " - Add a warning to load_namespaces if a class in ResultSet/ is not\n a subclass of DBIx::Class::ResultSet\n", "style" => "-", "text" => "Add a warning to load_namespaces if a class in ResultSet/ is not a subclass of DBIx::Class::ResultSet" }, { "line" => 810, "raw" => " - All DBIC exception-handling switched to Try::Tiny\n", "style" => "-", "text" => "All DBIC exception-handling switched to Try::Tiny" }, { "line" => 811, "raw" => " - All DBIC modules are now free of imports via namespace::clean\n", "style" => "-", "text" => "All DBIC modules are now free of imports via namespace::clean" }, { "line" => 812, "raw" => " - Depend on optimized SQL::Abstract (faster SQL generation)\n", "style" => "-", "text" => "Depend on optimized SQL::Abstract (faster SQL generation)" }, { "line" => 813, "raw" => " - Depend on new Class::Accessor::Grouped reintroducing optional use\n of Class::XSAccessor (just install C::XSA and get lightning fast\n column accessors)\n\n", "style" => "-", "text" => "Depend on new Class::Accessor::Grouped reintroducing optional use of Class::XSAccessor (just install C::XSA and get lightning fast column accessors)" } ], "line" => 803, "raw" => " * Misc\n", "style" => "*", "text" => "Misc" } ], "line" => 742, "note" => "(UTC)", "raw" => "0.08122 2010-06-03 17:41 (UTC)\n", "raw_date" => "2010-06-03 17:41", "version" => "0.08122" }, { "date" => "2010-04-11T18:43:00Z", "entries" => [ { "line" => 818, "raw" => " - Support for Firebird RDBMS with DBD::InterBase and ODBC\n", "style" => "-", "text" => "Support for Firebird RDBMS with DBD::InterBase and ODBC" }, { "line" => 819, "raw" => " - Add core support for INSERT RETURNING (for storages that\n supports this syntax, currently PostgreSQL and Firebird)\n", "style" => "-", "text" => "Add core support for INSERT RETURNING (for storages that supports this syntax, currently PostgreSQL and Firebird)" }, { "line" => 821, "raw" => " - Fix spurious warnings on multiple UTF8Columns component loads\n", "style" => "-", "text" => "Fix spurious warnings on multiple UTF8Columns component loads" }, { "line" => 822, "raw" => " - DBIx::Class::UTF8Columns entered deprecated state\n", "style" => "-", "text" => "DBIx::Class::UTF8Columns entered deprecated state" }, { "line" => 823, "raw" => " - DBIx::Class::InflateColumn::File entered deprecated state\n", "style" => "-", "text" => "DBIx::Class::InflateColumn::File entered deprecated state" }, { "line" => 824, "raw" => " - DBIx::Class::Optional::Dependencies left experimental state\n", "style" => "-", "text" => "DBIx::Class::Optional::Dependencies left experimental state" }, { "line" => 825, "raw" => " - Add req_group_list to Opt::Deps (RT#55211)\n", "style" => "-", "text" => "Add req_group_list to Opt::Deps (RT#55211)" }, { "line" => 826, "raw" => " - Add support for mysql-specific STRAIGHT_JOIN (RT#55579)\n", "style" => "-", "text" => "Add support for mysql-specific STRAIGHT_JOIN (RT#55579)" }, { "line" => 827, "raw" => " - Cascading delete/update are now wrapped in a transaction\n for atomicity\n", "style" => "-", "text" => "Cascading delete/update are now wrapped in a transaction for atomicity" }, { "line" => 829, "raw" => " - Fix accidental autovivification of ENV vars\n", "style" => "-", "text" => "Fix accidental autovivification of ENV vars" }, { "line" => 830, "raw" => " - Fix update_all and delete_all to be wrapped in a transaction\n", "style" => "-", "text" => "Fix update_all and delete_all to be wrapped in a transaction" }, { "line" => 831, "raw" => " - Fix multiple deficiencies when using MultiCreate with\n data-encoder components (e.g. ::EncodedColumn)\n", "style" => "-", "text" => "Fix multiple deficiencies when using MultiCreate with data-encoder components (e.g. ::EncodedColumn)" }, { "line" => 833, "raw" => " - Fix regression where SQL files with comments were not\n handled properly by ::Schema::Versioned.\n", "style" => "-", "text" => "Fix regression where SQL files with comments were not handled properly by ::Schema::Versioned." }, { "line" => 835, "raw" => " - Fix regression on not properly throwing when \$obj->relationship\n is unresolvable\n", "style" => "-", "text" => "Fix regression on not properly throwing when \$obj->relationship is unresolvable" }, { "line" => 837, "raw" => " - Fix the join-optimiser to consider unqualified column names\n whenever possible\n", "style" => "-", "text" => "Fix the join-optimiser to consider unqualified column names whenever possible" }, { "line" => 839, "raw" => " - Fix an issue with multiple same-table joins confusing the join\n optimizier\n", "style" => "-", "text" => "Fix an issue with multiple same-table joins confusing the join optimizier" }, { "line" => 841, "raw" => " - Add has_relationship method to row objects\n", "style" => "-", "text" => "Add has_relationship method to row objects" }, { "line" => 842, "raw" => " - Fix regression in set_column on PK-less objects\n", "style" => "-", "text" => "Fix regression in set_column on PK-less objects" }, { "line" => 843, "raw" => " - Better error text on malformed/missing relationships\n", "style" => "-", "text" => "Better error text on malformed/missing relationships" }, { "line" => 844, "raw" => " - Add POD about the significance of PK columns\n", "style" => "-", "text" => "Add POD about the significance of PK columns" }, { "line" => 845, "raw" => " - Fix for SQLite to ignore the (unsupported) { for => ... }\n attribute\n", "style" => "-", "text" => "Fix for SQLite to ignore the (unsupported) { for => ... } attribute" }, { "line" => 847, "raw" => " - Fix ambiguity in default directory handling of create_ddl_dir\n (RT#54063)\n", "style" => "-", "text" => "Fix ambiguity in default directory handling of create_ddl_dir (RT#54063)" }, { "line" => 849, "raw" => " - Support add_columns('+colname' => { ... }) to augment column\n definitions.\n\n", "style" => "-", "text" => "Support add_columns('+colname' => { ... }) to augment column definitions." } ], "line" => 817, "note" => "(UTC)", "raw" => "0.08121 2010-04-11 18:43:00 (UTC)\n", "raw_date" => "2010-04-11 18:43:00", "version" => "0.08121" }, { "date" => "2010-02-24T08:58:00Z", "entries" => [ { "line" => 853, "raw" => " - Make sure possibly overwritten deployment_statements methods in\n schemas get called on \$schema->deploy\n", "style" => "-", "text" => "Make sure possibly overwritten deployment_statements methods in schemas get called on \$schema->deploy" }, { "line" => 855, "raw" => " - Fix count() with group_by aliased-function resultsets\n", "style" => "-", "text" => "Fix count() with group_by aliased-function resultsets" }, { "line" => 856, "raw" => " - with_deferred_fk_checks() Oracle support\n", "style" => "-", "text" => "with_deferred_fk_checks() Oracle support" }, { "line" => 857, "raw" => " - Massive refactor and cleanup of primary key handling\n", "style" => "-", "text" => "Massive refactor and cleanup of primary key handling" }, { "line" => 858, "raw" => " - Fixed regression losing custom result_class (really this time)\n (RT#54697)\n", "style" => "-", "text" => "Fixed regression losing custom result_class (really this time) (RT#54697)" }, { "line" => 860, "raw" => " - Fixed regression in DBIC SQLT::Parser failing with a classname\n (as opposed to a schema object)\n", "style" => "-", "text" => "Fixed regression in DBIC SQLT::Parser failing with a classname (as opposed to a schema object)" }, { "line" => 862, "raw" => " - Changes to Storage::DBI::Oracle to accomodate changes in latest\n SQL::Translator (quote handling)\n", "style" => "-", "text" => "Changes to Storage::DBI::Oracle to accomodate changes in latest SQL::Translator (quote handling)" }, { "line" => 864, "raw" => " - Make sure deployment_statements is per-storage overridable\n", "style" => "-", "text" => "Make sure deployment_statements is per-storage overridable" }, { "line" => 865, "raw" => " - Fix dbicadmin's (lack of) POD\n\n", "style" => "-", "text" => "Fix dbicadmin's (lack of) POD" } ], "line" => 852, "note" => "(UTC)", "raw" => "0.08120 2010-02-24 08:58:00 (UTC)\n", "raw_date" => "2010-02-24 08:58:00", "version" => "0.08120" }, { "date" => "2010-02-15T09:36:00Z", "entries" => [ { "line" => 868, "raw" => " - Add \$rs->is_ordered to test for existing order_by on a resultset\n", "style" => "-", "text" => "Add \$rs->is_ordered to test for existing order_by on a resultset" }, { "line" => 869, "raw" => " - Add as_subselect_rs to DBIC::ResultSet from\n DBIC::Helper::ResultSet::VirtualView::as_virtual_view\n", "style" => "-", "text" => "Add as_subselect_rs to DBIC::ResultSet from DBIC::Helper::ResultSet::VirtualView::as_virtual_view" }, { "line" => 871, "raw" => " - Refactor dbicadmin adding DDL manipulation capabilities\n", "style" => "-", "text" => "Refactor dbicadmin adding DDL manipulation capabilities" }, { "line" => 872, "raw" => " - New optional dependency manager to aid extension writers\n", "style" => "-", "text" => "New optional dependency manager to aid extension writers" }, { "line" => 873, "raw" => " - Depend on newest bugfixed Moose\n", "style" => "-", "text" => "Depend on newest bugfixed Moose" }, { "line" => 874, "raw" => " - Make resultset chaining consistent wrt selection specification\n", "style" => "-", "text" => "Make resultset chaining consistent wrt selection specification" }, { "line" => 875, "raw" => " - Storage::DBI::Replicated cleanup\n", "style" => "-", "text" => "Storage::DBI::Replicated cleanup" }, { "line" => 876, "raw" => " - Fix autoinc PKs without an autoinc flag on Sybase ASA\n\n", "style" => "-", "text" => "Fix autoinc PKs without an autoinc flag on Sybase ASA" } ], "line" => 867, "note" => "(UTC)", "raw" => "0.08119 2010-02-15 09:36:00 (UTC)\n", "raw_date" => "2010-02-15 09:36:00", "version" => "0.08119" }, { "date" => "2010-02-08T11:53:00Z", "entries" => [ { "line" => 879, "raw" => " - Fix a bug causing UTF8 columns not to be decoded (RT#54395)\n", "style" => "-", "text" => "Fix a bug causing UTF8 columns not to be decoded (RT#54395)" }, { "line" => 880, "raw" => " - Fix bug in One->Many->One prefetch-collapse handling (RT#54039)\n", "style" => "-", "text" => "Fix bug in One->Many->One prefetch-collapse handling (RT#54039)" }, { "line" => 881, "raw" => " - Cleanup handling of relationship accessor types\n\n", "style" => "-", "text" => "Cleanup handling of relationship accessor types" } ], "line" => 878, "note" => "(UTC)", "raw" => "0.08118 2010-02-08 11:53:00 (UTC)\n", "raw_date" => "2010-02-08 11:53:00", "version" => "0.08118" }, { "date" => "2010-02-05T17:10:00Z", "entries" => [ { "line" => 884, "raw" => " - Perl 5.8.1 is now the minimum supported version\n", "style" => "-", "text" => "Perl 5.8.1 is now the minimum supported version" }, { "line" => 885, "raw" => " - Massive optimization of the join resolution code - now joins\n will be removed from the resulting SQL if DBIC can prove they\n are not referenced by anything\n", "style" => "-", "text" => "Massive optimization of the join resolution code - now joins will be removed from the resulting SQL if DBIC can prove they are not referenced by anything" }, { "line" => 888, "raw" => " - Subqueries no longer marked experimental\n", "style" => "-", "text" => "Subqueries no longer marked experimental" }, { "line" => 889, "raw" => " - Support for Informix RDBMS (limit/offset and auto-inc columns)\n", "style" => "-", "text" => "Support for Informix RDBMS (limit/offset and auto-inc columns)" }, { "line" => 890, "raw" => " - Support for Sybase SQLAnywhere, both native and via ODBC\n", "style" => "-", "text" => "Support for Sybase SQLAnywhere, both native and via ODBC" }, { "line" => 891, "raw" => " - might_have/has_one now warn if applied calling class's column\n has is_nullable set to true.\n", "style" => "-", "text" => "might_have/has_one now warn if applied calling class's column has is_nullable set to true." }, { "line" => 893, "raw" => " - Fixed regression in deploy() with a {sources} table limit applied\n (RT#52812)\n", "style" => "-", "text" => "Fixed regression in deploy() with a {sources} table limit applied (RT#52812)" }, { "line" => 895, "raw" => " - Views without a view_definition will throw an exception when\n parsed by SQL::Translator::Parser::DBIx::Class\n", "style" => "-", "text" => "Views without a view_definition will throw an exception when parsed by SQL::Translator::Parser::DBIx::Class" }, { "line" => 897, "raw" => " - Stop the SQLT parser from auto-adding indexes identical to the\n Primary Key\n", "style" => "-", "text" => "Stop the SQLT parser from auto-adding indexes identical to the Primary Key" }, { "line" => 899, "raw" => " - InflateColumn::DateTime refactoring to allow fine grained method\n overloads\n", "style" => "-", "text" => "InflateColumn::DateTime refactoring to allow fine grained method overloads" }, { "line" => 901, "raw" => " - Fix ResultSetColumn improperly selecting more than the requested\n column when +columns/+select is present\n", "style" => "-", "text" => "Fix ResultSetColumn improperly selecting more than the requested column when +columns/+select is present" }, { "line" => 903, "raw" => " - Fix failure when update/delete of resultsets with complex WHERE\n SQLA structures\n", "style" => "-", "text" => "Fix failure when update/delete of resultsets with complex WHERE SQLA structures" }, { "line" => 905, "raw" => " - Fix regression in context sensitiveness of deployment_statements\n", "style" => "-", "text" => "Fix regression in context sensitiveness of deployment_statements" }, { "line" => 906, "raw" => " - Fix regression resulting in overcomplicated query on\n search_related from prefetching resultsets\n", "style" => "-", "text" => "Fix regression resulting in overcomplicated query on search_related from prefetching resultsets" }, { "line" => 908, "raw" => " - Fix regression on all-null returning searches (properly switch\n LEFT JOIN to JOIN in order to distinguish between both cases)\n", "style" => "-", "text" => "Fix regression on all-null returning searches (properly switch LEFT JOIN to JOIN in order to distinguish between both cases)" }, { "line" => 910, "raw" => " - Fix regression in groupedresultset count() used on strict-mode\n MySQL connections\n", "style" => "-", "text" => "Fix regression in groupedresultset count() used on strict-mode MySQL connections" }, { "line" => 912, "raw" => " - Better isolation of RNO-limited queries from the rest of a\n prefetching resultset\n", "style" => "-", "text" => "Better isolation of RNO-limited queries from the rest of a prefetching resultset" }, { "line" => 914, "raw" => " - New MSSQL specific resultset attribute to allow hacky ordered\n subquery support\n", "style" => "-", "text" => "New MSSQL specific resultset attribute to allow hacky ordered subquery support" }, { "line" => 916, "raw" => " - Fix nasty schema/dbhandle leak due to SQL::Translator\n", "style" => "-", "text" => "Fix nasty schema/dbhandle leak due to SQL::Translator" }, { "line" => 917, "raw" => " - Initial implementation of a mechanism for Schema::Version to\n apply multiple step upgrades\n", "style" => "-", "text" => "Initial implementation of a mechanism for Schema::Version to apply multiple step upgrades" }, { "line" => 919, "raw" => " - Fix regression on externally supplied \$dbh with AutoCommit=0\n", "style" => "-", "text" => "Fix regression on externally supplied \$dbh with AutoCommit=0" }, { "line" => 920, "raw" => " - FAQ \"Custom methods in Result classes\"\n", "style" => "-", "text" => "FAQ \"Custom methods in Result classes\"" }, { "line" => 921, "raw" => " - Cookbook POD fix for add_drop_table instead of add_drop_tables\n", "style" => "-", "text" => "Cookbook POD fix for add_drop_table instead of add_drop_tables" }, { "line" => 922, "raw" => " - Schema POD improvement for dclone\n\n", "style" => "-", "text" => "Schema POD improvement for dclone" } ], "line" => 883, "note" => "(UTC)", "raw" => "0.08117 2010-02-05 17:10:00 (UTC)\n", "raw_date" => "2010-02-05 17:10:00", "version" => "0.08117" }, { "date" => "2009-12-10T09:02:00Z", "entries" => [ { "line" => 925, "raw" => " - Real limit/offset support for MSSQL server (via Row_Number)\n", "style" => "-", "text" => "Real limit/offset support for MSSQL server (via Row_Number)" }, { "line" => 926, "raw" => " - Fix distinct => 1 with non-selecting order_by (the columns\n in order_by also need to be aded to the resulting group_by)\n", "style" => "-", "text" => "Fix distinct => 1 with non-selecting order_by (the columns in order_by also need to be aded to the resulting group_by)" }, { "line" => 928, "raw" => " - Do not attempt to deploy FK constraints pointing to a View\n", "style" => "-", "text" => "Do not attempt to deploy FK constraints pointing to a View" }, { "line" => 929, "raw" => " - Fix count/objects from search_related on limited resultset\n", "style" => "-", "text" => "Fix count/objects from search_related on limited resultset" }, { "line" => 930, "raw" => " - Stop propagating distinct => 1 over search_related chains\n", "style" => "-", "text" => "Stop propagating distinct => 1 over search_related chains" }, { "line" => 931, "raw" => " - Make sure populate() inherits the resultset conditions just\n like create() does\n", "style" => "-", "text" => "Make sure populate() inherits the resultset conditions just like create() does" }, { "line" => 933, "raw" => " - Make get_inflated_columns behave identically to get_columns\n wrt +select/+as (RT#46953)\n", "style" => "-", "text" => "Make get_inflated_columns behave identically to get_columns wrt +select/+as (RT#46953)" }, { "line" => 935, "raw" => " - Fix problems with scalarrefs under InflateColumn (RT#51559)\n", "style" => "-", "text" => "Fix problems with scalarrefs under InflateColumn (RT#51559)" }, { "line" => 936, "raw" => " - Throw exception on delete/update of PK-less resultsets\n", "style" => "-", "text" => "Throw exception on delete/update of PK-less resultsets" }, { "line" => 937, "raw" => " - Refactored Sybase storage driver into a central ::DBI::Sybase\n dispatcher, and a sybase-specific ::DBI::Sybase::ASE\n", "style" => "-", "text" => "Refactored Sybase storage driver into a central ::DBI::Sybase dispatcher, and a sybase-specific ::DBI::Sybase::ASE" }, { "line" => 939, "raw" => " - Fixed an atrocious DBD::ADO bind-value bug\n", "style" => "-", "text" => "Fixed an atrocious DBD::ADO bind-value bug" }, { "line" => 940, "raw" => " - Cookbook/Intro POD improvements\n\n", "style" => "-", "text" => "Cookbook/Intro POD improvements" } ], "line" => 924, "note" => "(CST)", "raw" => "0.08115 2009-12-10 09:02:00 (CST)\n", "raw_date" => "2009-12-10 09:02:00", "version" => "0.08115" }, { "date" => "2009-11-14T17:45:00Z", "entries" => [ { "line" => 943, "raw" => " - Preliminary support for MSSQL via DBD::ADO\n", "style" => "-", "text" => "Preliminary support for MSSQL via DBD::ADO" }, { "line" => 944, "raw" => " - Fix botched 0.08113 release (invalid tarball)\n\n", "style" => "-", "text" => "Fix botched 0.08113 release (invalid tarball)" } ], "line" => 942, "note" => "(UTC)", "raw" => "0.08114 2009-11-14 17:45:00 (UTC)\n", "raw_date" => "2009-11-14 17:45:00", "version" => "0.08114" }, { "date" => "2009-11-13T23:13:00Z", "entries" => [ { "line" => 947, "raw" => " - Fix populate with has_many bug\n (RT #50828)\n", "style" => "-", "text" => "Fix populate with has_many bug (RT #50828)" }, { "line" => 949, "raw" => " - Fix Oracle autoincrement broken for Resultsets with scalar refs\n (RT #50874)\n", "style" => "-", "text" => "Fix Oracle autoincrement broken for Resultsets with scalar refs (RT #50874)" }, { "entries" => [ { "line" => 952, "raw" => " - Support for TEXT/IMAGE columns\n", "style" => "-", "text" => "Support for TEXT/IMAGE columns" }, { "line" => 953, "raw" => " - Support for the 'money' datatype\n", "style" => "-", "text" => "Support for the 'money' datatype" }, { "line" => 954, "raw" => " - Transaction savepoints support\n", "style" => "-", "text" => "Transaction savepoints support" }, { "line" => 955, "raw" => " - DateTime inflation support\n", "style" => "-", "text" => "DateTime inflation support" }, { "line" => 956, "raw" => " - Support for bind variables when connecting to a newer Sybase with\n OpenClient libraries\n", "style" => "-", "text" => "Support for bind variables when connecting to a newer Sybase with OpenClient libraries" }, { "line" => 958, "raw" => " - Support for connections via FreeTDS with CASTs for bind variables\n when needed\n", "style" => "-", "text" => "Support for connections via FreeTDS with CASTs for bind variables when needed" }, { "line" => 960, "raw" => " - Support for interpolated variables with proper quoting when\n connecting to an older Sybase and/or via FreeTDS\n", "style" => "-", "text" => "Support for interpolated variables with proper quoting when connecting to an older Sybase and/or via FreeTDS" }, { "line" => 962, "raw" => " - bulk API support for populate()\n", "style" => "-", "text" => "bulk API support for populate()" } ], "line" => 951, "raw" => " - Complete Sybase RDBMS support including:\n", "style" => "-", "text" => "Complete Sybase RDBMS support including:" }, { "line" => 963, "raw" => " - Transaction support for MSSQL via DBD::Sybase\n", "style" => "-", "text" => "Transaction support for MSSQL via DBD::Sybase" }, { "line" => 964, "raw" => " - Add is_paged method to DBIx::Class::ResultSet so that we can\n check that if we want a pager\n", "style" => "-", "text" => "Add is_paged method to DBIx::Class::ResultSet so that we can check that if we want a pager" }, { "line" => 966, "raw" => " - Skip versioning test on really old perls lacking Time::HiRes\n (RT #50209)\n", "style" => "-", "text" => "Skip versioning test on really old perls lacking Time::HiRes (RT #50209)" }, { "line" => 968, "raw" => " - Fixed on_connect_do/call regression when used with a coderef\n connector (RT #50003)\n", "style" => "-", "text" => "Fixed on_connect_do/call regression when used with a coderef connector (RT #50003)" }, { "line" => 970, "raw" => " - A couple of fixes to Ordered to remedy subclassing issues\n", "style" => "-", "text" => "A couple of fixes to Ordered to remedy subclassing issues" }, { "line" => 971, "raw" => " - Fixed another lingering problem with PostgreSQL\n auto-increment support and its interaction with multiple\n schemas\n", "style" => "-", "text" => "Fixed another lingering problem with PostgreSQL auto-increment support and its interaction with multiple schemas" }, { "line" => 974, "raw" => " - Remove some IN workarounds, and require a recent version of\n SQLA instead\n", "style" => "-", "text" => "Remove some IN workarounds, and require a recent version of SQLA instead" }, { "line" => 976, "raw" => " - Improvements to populate's handling of mixed scalarref values\n", "style" => "-", "text" => "Improvements to populate's handling of mixed scalarref values" }, { "line" => 977, "raw" => " - Fixed regression losing result_class after \$rs->find (introduced\n in 0.08108)\n", "style" => "-", "text" => "Fixed regression losing result_class after \$rs->find (introduced in 0.08108)" }, { "line" => 979, "raw" => " - Fix in_storage() to return 1|0 as per existing documentation\n", "style" => "-", "text" => "Fix in_storage() to return 1|0 as per existing documentation" }, { "line" => 980, "raw" => " - Centralize handling of _determine_driver calls prior to certain\n ::Storage::DBI methods\n", "style" => "-", "text" => "Centralize handling of _determine_driver calls prior to certain ::Storage::DBI methods" }, { "line" => 982, "raw" => " - Fix update/delete arbitrary condition handling (RT#51409)\n", "style" => "-", "text" => "Fix update/delete arbitrary condition handling (RT#51409)" }, { "line" => 983, "raw" => " - POD improvements\n\n", "style" => "-", "text" => "POD improvements" } ], "line" => 946, "note" => "(UTC)", "raw" => "0.08113 2009-11-13 23:13:00 (UTC)\n", "raw_date" => "2009-11-13 23:13:00", "version" => "0.08113" }, { "date" => "2009-09-21T10:57:00Z", "entries" => [ { "line" => 986, "raw" => " - Remove the recommends from Makefile.PL, DBIx::Class is not\n supposed to have optional dependencies. ever.\n", "style" => "-", "text" => "Remove the recommends from Makefile.PL, DBIx::Class is not supposed to have optional dependencies. ever." }, { "line" => 988, "raw" => " - Mangle the DBIx/Class.pm POD to be more clear about\n copyright and license\n", "style" => "-", "text" => "Mangle the DBIx/Class.pm POD to be more clear about copyright and license" }, { "line" => 990, "raw" => " - Put back PG's multiple autoinc per table support, accidentally\n dropped during the serial-autodetection rewrite\n", "style" => "-", "text" => "Put back PG's multiple autoinc per table support, accidentally dropped during the serial-autodetection rewrite" }, { "line" => 992, "raw" => " - Make sure ResultSetColumn does not depend on the (undefined)\n return value of ->cursor->reset()\n", "style" => "-", "text" => "Make sure ResultSetColumn does not depend on the (undefined) return value of ->cursor->reset()" }, { "line" => 994, "raw" => " - Add single() to ResultSetColumn (same semantics as ResultSet)\n", "style" => "-", "text" => "Add single() to ResultSetColumn (same semantics as ResultSet)" }, { "line" => 995, "raw" => " - Make sure to turn off IDENTITY_INSERT after insert() on MSSQL\n tables that needed it\n", "style" => "-", "text" => "Make sure to turn off IDENTITY_INSERT after insert() on MSSQL tables that needed it" }, { "line" => 997, "raw" => " - More informative exception on failing _resolve_relationship\n", "style" => "-", "text" => "More informative exception on failing _resolve_relationship" }, { "line" => 998, "raw" => " - Allow undef/NULL as the sole grouping value in Ordered\n", "style" => "-", "text" => "Allow undef/NULL as the sole grouping value in Ordered" }, { "line" => 999, "raw" => " - Fix unreported rollback exceptions in TxnScopeGuard\n", "style" => "-", "text" => "Fix unreported rollback exceptions in TxnScopeGuard" }, { "line" => 1000, "raw" => " - Fix overly-eager left-join chain enforcing code\n", "style" => "-", "text" => "Fix overly-eager left-join chain enforcing code" }, { "line" => 1001, "raw" => " - Warn about using distinct with an existing group_by\n", "style" => "-", "text" => "Warn about using distinct with an existing group_by" }, { "line" => 1002, "raw" => " - Warn about attempting to \$rs->get_column a non-unique column\n when has_many joins are added to resultset\n", "style" => "-", "text" => "Warn about attempting to \$rs->get_column a non-unique column when has_many joins are added to resultset" }, { "line" => 1004, "raw" => " - Refactor of the exception handling system (now everything is a\n DBIx::Class::Exception object)\n\n", "style" => "-", "text" => "Refactor of the exception handling system (now everything is a DBIx::Class::Exception object)" } ], "line" => 985, "note" => "(UTC)", "raw" => "0.08112 2009-09-21 10:57:00 (UTC)\n", "raw_date" => "2009-09-21 10:57:00", "version" => "0.08112" }, { "date" => "2009-09-06T21:58:00Z", "entries" => [ { "line" => 1008, "raw" => " - The hashref to connection_info now accepts a 'dbh_maker'\n coderef, allowing better intergration with Catalyst\n", "style" => "-", "text" => "The hashref to connection_info now accepts a 'dbh_maker' coderef, allowing better intergration with Catalyst" }, { "line" => 1010, "raw" => " - Fixed a complex prefetch + regular join regression introduced\n in 0.08108\n", "style" => "-", "text" => "Fixed a complex prefetch + regular join regression introduced in 0.08108" }, { "line" => 1012, "raw" => " - Fixed insert_bulk rebless handling\n", "style" => "-", "text" => "Fixed insert_bulk rebless handling" }, { "line" => 1013, "raw" => " - Fixed Storable roundtrip regression, and general serialization\n cleanup\n", "style" => "-", "text" => "Fixed Storable roundtrip regression, and general serialization cleanup" }, { "entries" => [ { "line" => 1016, "raw" => " - sqlt_type is now called on the correct storage object\n", "style" => "-", "text" => "sqlt_type is now called on the correct storage object" }, { "line" => 1017, "raw" => " - hooks can now see the correct producer_type (RT#47891)\n", "style" => "-", "text" => "hooks can now see the correct producer_type (RT#47891)" }, { "line" => 1018, "raw" => " - optional SQLT requirements for e.g. deploy() bumped to 0.11002\n", "style" => "-", "text" => "optional SQLT requirements for e.g. deploy() bumped to 0.11002" } ], "line" => 1015, "raw" => " - SQLT related fixes:\n", "style" => "-", "text" => "SQLT related fixes:" }, { "line" => 1019, "raw" => " - Really fixed (and greatly cleaned up) postgresql autoinc sequence\n autodetection\n", "style" => "-", "text" => "Really fixed (and greatly cleaned up) postgresql autoinc sequence autodetection" }, { "line" => 1021, "raw" => " - Automatically detect MySQL v3 and use INNER JOIN instead of JOIN\n", "style" => "-", "text" => "Automatically detect MySQL v3 and use INNER JOIN instead of JOIN" }, { "line" => 1022, "raw" => " - POD improvements (including RT#48769)\n", "style" => "-", "text" => "POD improvements (including RT#48769)" }, { "line" => 1023, "raw" => " - Test suite tweaks (including fixes for recent CPANTS fails)\n", "style" => "-", "text" => "Test suite tweaks (including fixes for recent CPANTS fails)" }, { "line" => 1024, "raw" => " - Better support for MSSQL IDENTITY_INSERT ON\n\n", "style" => "-", "text" => "Better support for MSSQL IDENTITY_INSERT ON" } ], "line" => 1007, "note" => "(UTC)", "raw" => "0.08111 2009-09-06 21:58:00 (UTC)\n", "raw_date" => "2009-09-06 21:58:00", "version" => "0.08111" }, { "date" => "2009-08-18T08:35:00Z", "entries" => [ { "entries" => [ { "line" => 1028, "raw" => " - Improved the replication tests so that they are more reliable\n and accurate, and hopefully solve some cross platform issues.\n", "style" => "-", "text" => "Improved the replication tests so that they are more reliable and accurate, and hopefully solve some cross platform issues." }, { "line" => 1030, "raw" => " - Bugfixes related to naming particular replicants in a\n 'force_pool' attribute.\n", "style" => "-", "text" => "Bugfixes related to naming particular replicants in a 'force_pool' attribute." }, { "line" => 1032, "raw" => " - Lots of documentation updates, including a new Introduction.pod\n file.\n", "style" => "-", "text" => "Lots of documentation updates, including a new Introduction.pod file." }, { "line" => 1034, "raw" => " - Fixed the way we detect transaction to make this more reliable\n and forward looking.\n", "style" => "-", "text" => "Fixed the way we detect transaction to make this more reliable and forward looking." }, { "line" => 1036, "raw" => " - Fixed some trouble with the way Moose Types are used.\n", "style" => "-", "text" => "Fixed some trouble with the way Moose Types are used." }, { "line" => 1037, "raw" => " - Made discard_chages/get_from_storage replication aware (they\n now read from the master storage by default)\n", "style" => "-", "text" => "Made discard_chages/get_from_storage replication aware (they now read from the master storage by default)" } ], "line" => 1027, "raw" => " - Replication updates:\n", "style" => "-", "text" => "Replication updates:" }, { "entries" => [ { "line" => 1040, "raw" => " - Support for placeholders for MSSQL via DBD::Sybase with proper\n autodetection\n", "style" => "-", "text" => "Support for placeholders for MSSQL via DBD::Sybase with proper autodetection" }, { "line" => 1042, "raw" => " - 'uniqueidentifier' support with auto newid()\n", "style" => "-", "text" => "'uniqueidentifier' support with auto newid()" }, { "line" => 1043, "raw" => " - Dynamic cursor support and other MARS options for ODBC\n", "style" => "-", "text" => "Dynamic cursor support and other MARS options for ODBC" }, { "line" => 1044, "raw" => " - savepoints with auto_savepoint => 1\n", "style" => "-", "text" => "savepoints with auto_savepoint => 1" } ], "line" => 1039, "raw" => " - Refactor of MSSQL storage drivers, with some new features:\n", "style" => "-", "text" => "Refactor of MSSQL storage drivers, with some new features:" }, { "line" => 1045, "raw" => " - Support for MSSQL 'money' type\n", "style" => "-", "text" => "Support for MSSQL 'money' type" }, { "line" => 1046, "raw" => " - Support for 'smalldatetime' type used in MSSQL and Sybase for\n InflateColumn::DateTime\n", "style" => "-", "text" => "Support for 'smalldatetime' type used in MSSQL and Sybase for InflateColumn::DateTime" }, { "line" => 1048, "raw" => " - Support for Postgres 'timestamp without timezone' type in\n InflateColumn::DateTime (RT#48389)\n", "style" => "-", "text" => "Support for Postgres 'timestamp without timezone' type in InflateColumn::DateTime (RT#48389)" }, { "line" => 1050, "raw" => " - Added new MySQL specific on_connect_call macro 'set_strict_mode'\n (also known as make_mysql_not_suck_as_much)\n", "style" => "-", "text" => "Added new MySQL specific on_connect_call macro 'set_strict_mode' (also known as make_mysql_not_suck_as_much)" }, { "entries" => [ { "line" => 1053, "raw" => " - Adjust overly agressive subquery join-chain pruning\n", "style" => "-", "text" => "Adjust overly agressive subquery join-chain pruning" }, { "line" => 1054, "raw" => " - Always preserve the outer join-chain - fixes numerous\n problems with search_related chaining\n", "style" => "-", "text" => "Always preserve the outer join-chain - fixes numerous problems with search_related chaining" }, { "line" => 1056, "raw" => " - Deal with the distinct => 1 attribute properly when using\n prefetch\n", "style" => "-", "text" => "Deal with the distinct => 1 attribute properly when using prefetch" } ], "line" => 1052, "raw" => " - Multiple prefetch-related fixes:\n", "style" => "-", "text" => "Multiple prefetch-related fixes:" }, { "line" => 1058, "raw" => " - An extension of the select-hashref syntax, allowing labeling\n SQL-side aliasing: select => [ { max => 'foo', -as => 'bar' } ]\n", "style" => "-", "text" => "An extension of the select-hashref syntax, allowing labeling SQL-side aliasing: select => [ { max => 'foo', -as => 'bar' } ]" }, { "line" => 1060, "raw" => " - Massive optimization of the DBI storage layer - reduce the\n amount of connected() ping-calls\n", "style" => "-", "text" => "Massive optimization of the DBI storage layer - reduce the amount of connected() ping-calls" }, { "line" => 1062, "raw" => " - Some fixes of multi-create corner cases\n", "style" => "-", "text" => "Some fixes of multi-create corner cases" }, { "line" => 1063, "raw" => " - Multiple POD improvements\n", "style" => "-", "text" => "Multiple POD improvements" }, { "line" => 1064, "raw" => " - Added exception when resultset is called without an argument\n", "style" => "-", "text" => "Added exception when resultset is called without an argument" }, { "line" => 1065, "raw" => " - Improved support for non-schema-qualified tables under\n Postgres (fixed last_insert_id sequence name auto-detection)\n\n", "style" => "-", "text" => "Improved support for non-schema-qualified tables under Postgres (fixed last_insert_id sequence name auto-detection)" } ], "line" => 1026, "note" => "(UTC)", "raw" => "0.08109 2009-08-18 08:35:00 (UTC)\n", "raw_date" => "2009-08-18 08:35:00", "version" => "0.08109" }, { "date" => "2009-07-05T23:15:00Z", "entries" => [ { "line" => 1069, "raw" => " - Fixed the has_many prefetch with limit/group deficiency -\n it is now possible to select \"top 5 commenters\" while\n prefetching all their comments\n", "style" => "-", "text" => "Fixed the has_many prefetch with limit/group deficiency - it is now possible to select \"top 5 commenters\" while prefetching all their comments" }, { "line" => 1072, "raw" => " - New resultsed method count_rs, returns a ::ResultSetColumn\n which in turn returns a single count value\n", "style" => "-", "text" => "New resultsed method count_rs, returns a ::ResultSetColumn which in turn returns a single count value" }, { "line" => 1074, "raw" => " - Even better support of count with limit\n", "style" => "-", "text" => "Even better support of count with limit" }, { "line" => 1075, "raw" => " - New on_connect_call/on_disconnect_call functionality (check\n POD of Storage::DBI)\n", "style" => "-", "text" => "New on_connect_call/on_disconnect_call functionality (check POD of Storage::DBI)" }, { "line" => 1077, "raw" => " - Automatic datetime handling environment/session setup for\n Oracle via connect_call_datetime_setup()\n", "style" => "-", "text" => "Automatic datetime handling environment/session setup for Oracle via connect_call_datetime_setup()" }, { "line" => 1079, "raw" => " - count/all on related left-joined empty resultsets now correctly\n returns 0/()\n", "style" => "-", "text" => "count/all on related left-joined empty resultsets now correctly returns 0/()" }, { "line" => 1081, "raw" => " - Fixed regression when both page and offset are specified on\n a resultset\n", "style" => "-", "text" => "Fixed regression when both page and offset are specified on a resultset" }, { "line" => 1083, "raw" => " - Fixed HRI returning too many empty results on multilevel\n nonexisting prefetch\n", "style" => "-", "text" => "Fixed HRI returning too many empty results on multilevel nonexisting prefetch" }, { "line" => 1085, "raw" => " - make_column_dirty() now overwrites the deflated value with an\n inflated one if such exists\n", "style" => "-", "text" => "make_column_dirty() now overwrites the deflated value with an inflated one if such exists" }, { "line" => 1087, "raw" => " - Fixed set_\$rel with where restriction deleting rows outside\n the restriction\n", "style" => "-", "text" => "Fixed set_\$rel with where restriction deleting rows outside the restriction" }, { "line" => 1089, "raw" => " - populate() returns the created objects or an arrayref of the\n created objects depending on scalar vs. list context\n", "style" => "-", "text" => "populate() returns the created objects or an arrayref of the created objects depending on scalar vs. list context" }, { "line" => 1091, "raw" => " - Fixed find_related on 'single' relationships - the former\n implementation would overspecify the WHERE condition, reporting\n no related objects when there in fact is one\n", "style" => "-", "text" => "Fixed find_related on 'single' relationships - the former implementation would overspecify the WHERE condition, reporting no related objects when there in fact is one" }, { "line" => 1094, "raw" => " - SQL::Translator::Parser::DBIx::Class now attaches tables to the\n central schema object in relationship dependency order\n", "style" => "-", "text" => "SQL::Translator::Parser::DBIx::Class now attaches tables to the central schema object in relationship dependency order" }, { "line" => 1096, "raw" => " - Fixed regression in set_column() preventing sourceless object\n manipulations\n", "style" => "-", "text" => "Fixed regression in set_column() preventing sourceless object manipulations" }, { "line" => 1098, "raw" => " - Fixed a bug in search_related doubling a join if the original\n \$rs already joins/prefetches the same relation\n", "style" => "-", "text" => "Fixed a bug in search_related doubling a join if the original \$rs already joins/prefetches the same relation" }, { "line" => 1100, "raw" => " - Storage::DBI::connected() improvements for Oracle and Sybase\n", "style" => "-", "text" => "Storage::DBI::connected() improvements for Oracle and Sybase" }, { "line" => 1101, "raw" => " - Fixed prefetch+incomplete select regression introduced in\n 0.08100\n", "style" => "-", "text" => "Fixed prefetch+incomplete select regression introduced in 0.08100" }, { "line" => 1103, "raw" => " - MSSQL limit (TOP emulation) fixes and improvements\n\n", "style" => "-", "text" => "MSSQL limit (TOP emulation) fixes and improvements" } ], "line" => 1068, "note" => "(UTC)", "raw" => "0.08108 2009-07-05 23:15:00 (UTC)\n", "raw_date" => "2009-07-05 23:15:00", "version" => "0.08108" }, { "date" => "2009-06-14T08:21:00Z", "entries" => [ { "line" => 1106, "raw" => " - Fix serialization regression introduced in 0.08103 (affects\n Cursor::Cached)\n", "style" => "-", "text" => "Fix serialization regression introduced in 0.08103 (affects Cursor::Cached)" }, { "line" => 1108, "raw" => " - POD fixes\n", "style" => "-", "text" => "POD fixes" }, { "line" => 1109, "raw" => " - Fixed incomplete ::Replicated debug output\n\n", "style" => "-", "text" => "Fixed incomplete ::Replicated debug output" } ], "line" => 1105, "note" => "(UTC)", "raw" => "0.08107 2009-06-14 08:21:00 (UTC)\n", "raw_date" => "2009-06-14 08:21:00", "version" => "0.08107" }, { "date" => "2009-06-11T21:42:00Z", "entries" => [ { "line" => 1112, "raw" => " - Switched SQLite storage driver to DateTime::Format::SQLite\n (proper timezone handling)\n", "style" => "-", "text" => "Switched SQLite storage driver to DateTime::Format::SQLite (proper timezone handling)" }, { "line" => 1114, "raw" => " - Fix more test problems\n\n", "style" => "-", "text" => "Fix more test problems" } ], "line" => 1111, "note" => "(UTC)", "raw" => "0.08106 2009-06-11 21:42:00 (UTC)\n", "raw_date" => "2009-06-11 21:42:00", "version" => "0.08106" }, { "date" => "2009-06-11T19:04:00Z", "entries" => [ { "line" => 1117, "raw" => " - Update of numeric columns now properly uses != to determine\n dirtyness instead of the usual eq\n", "style" => "-", "text" => "Update of numeric columns now properly uses != to determine dirtyness instead of the usual eq" }, { "line" => 1119, "raw" => " - Fixes to IC::DT tests\n", "style" => "-", "text" => "Fixes to IC::DT tests" }, { "line" => 1120, "raw" => " - Fixed exception when undef_if_invalid and timezone are both set\n on an invalid datetime column\n\n", "style" => "-", "text" => "Fixed exception when undef_if_invalid and timezone are both set on an invalid datetime column" } ], "line" => 1116, "note" => "(UTC)", "raw" => "0.08105 2009-06-11 19:04:00 (UTC)\n", "raw_date" => "2009-06-11 19:04:00", "version" => "0.08105" }, { "date" => "2009-06-10T13:38:00Z", "entries" => [ { "line" => 1124, "raw" => " - order_by now can take \\[\$sql, \@bind] as in\n order_by => { -desc => \\['colA LIKE ?', 'somestring'] }\n", "style" => "-", "text" => "order_by now can take \\[\$sql, \@bind] as in order_by => { -desc => \\['colA LIKE ?', 'somestring'] }" }, { "line" => 1126, "raw" => " - SQL::Abstract errors are now properly croak()ed with the\n correct trace\n", "style" => "-", "text" => "SQL::Abstract errors are now properly croak()ed with the correct trace" }, { "line" => 1128, "raw" => " - populate() now properly reports the dataset slice in case of\n an exception\n", "style" => "-", "text" => "populate() now properly reports the dataset slice in case of an exception" }, { "line" => 1130, "raw" => " - Fixed corner case when populate() erroneously falls back to\n create()\n", "style" => "-", "text" => "Fixed corner case when populate() erroneously falls back to create()" }, { "line" => 1132, "raw" => " - Work around braindead mysql when doing subquery counts on\n resultsets containing identically named columns from several\n tables\n", "style" => "-", "text" => "Work around braindead mysql when doing subquery counts on resultsets containing identically named columns from several tables" }, { "line" => 1135, "raw" => " - Fixed m2m add_to_\$rel to invoke find_or_create on the far\n side of the relation, to avoid duplicates\n", "style" => "-", "text" => "Fixed m2m add_to_\$rel to invoke find_or_create on the far side of the relation, to avoid duplicates" }, { "line" => 1137, "raw" => " - DBIC now properly handles empty inserts (invoking all default\n values from the DB, normally via INSERT INTO tbl DEFAULT VALUES\n", "style" => "-", "text" => "DBIC now properly handles empty inserts (invoking all default values from the DB, normally via INSERT INTO tbl DEFAULT VALUES" }, { "line" => 1139, "raw" => " - Fix find_or_new/create to stop returning random rows when\n default value insert is requested (RT#28875)\n", "style" => "-", "text" => "Fix find_or_new/create to stop returning random rows when default value insert is requested (RT#28875)" }, { "line" => 1141, "raw" => " - Make IC::DT extra warning state the column name too\n", "style" => "-", "text" => "Make IC::DT extra warning state the column name too" }, { "line" => 1142, "raw" => " - It is now possible to transparrently search() on columns\n requiring DBI bind (i.e. PostgreSQL BLOB)\n", "style" => "-", "text" => "It is now possible to transparrently search() on columns requiring DBI bind (i.e. PostgreSQL BLOB)" }, { "line" => 1144, "raw" => " - as_query is now a Storage::DBI method, so custom cursors can\n be seamlessly used\n", "style" => "-", "text" => "as_query is now a Storage::DBI method, so custom cursors can be seamlessly used" }, { "line" => 1146, "raw" => " - Fix search_related regression introduced in 0.08103\n\n", "style" => "-", "text" => "Fix search_related regression introduced in 0.08103" } ], "line" => 1123, "note" => "(UTC)", "raw" => "0.08104 2009-06-10 13:38:00 (UTC)\n", "raw_date" => "2009-06-10 13:38:00", "version" => "0.08104" }, { "date" => "2009-05-26T19:50:00Z", "entries" => [ { "line" => 1149, "raw" => " - Multiple \$resultset -> count/update/delete fixes. Now any\n of these operations will succeed, regardless of the complexity\n of \$resultset. distinct, group_by, join, prefetch are all\n supported with expected results\n", "style" => "-", "text" => "Multiple \$resultset -> count/update/delete fixes. Now any of these operations will succeed, regardless of the complexity of \$resultset. distinct, group_by, join, prefetch are all supported with expected results" }, { "line" => 1153, "raw" => " - Return value of \$rs->delete is now the storage return value\n and not 1 as it used to be\n", "style" => "-", "text" => "Return value of \$rs->delete is now the storage return value and not 1 as it used to be" }, { "line" => 1155, "raw" => " - don't pass SQL functions into GROUP BY\n", "style" => "-", "text" => "don't pass SQL functions into GROUP BY" }, { "line" => 1156, "raw" => " - Remove MultiDistinctEmulation.pm, effectively deprecating\n { select => { distinct => [ qw/col1 col2/ ] } }\n", "style" => "-", "text" => "Remove MultiDistinctEmulation.pm, effectively deprecating { select => { distinct => [ qw/col1 col2/ ] } }" }, { "line" => 1158, "raw" => " - Change ->count code to work correctly with DISTINCT (distinct => 1)\n via GROUP BY\n", "style" => "-", "text" => "Change ->count code to work correctly with DISTINCT (distinct => 1) via GROUP BY" }, { "line" => 1160, "raw" => " - Removed interpolation of bind vars for as_query - placeholders\n are preserved and nested query bind variables are properly\n merged in the correct order\n", "style" => "-", "text" => "Removed interpolation of bind vars for as_query - placeholders are preserved and nested query bind variables are properly merged in the correct order" }, { "line" => 1163, "raw" => " - Refactor DBIx::Class::Storage::DBI::Sybase to automatically\n load a subclass, namely Microsoft_SQL_Server.pm\n (similar to DBIx::Class::Storage::DBI::ODBC)\n", "style" => "-", "text" => "Refactor DBIx::Class::Storage::DBI::Sybase to automatically load a subclass, namely Microsoft_SQL_Server.pm (similar to DBIx::Class::Storage::DBI::ODBC)" }, { "line" => 1166, "raw" => " - Refactor InflateColumn::DateTime to allow components to\n circumvent DateTime parsing\n", "style" => "-", "text" => "Refactor InflateColumn::DateTime to allow components to circumvent DateTime parsing" }, { "line" => 1168, "raw" => " - Support inflation of timestamp datatype\n", "style" => "-", "text" => "Support inflation of timestamp datatype" }, { "line" => 1169, "raw" => " - Support BLOB and CLOB datatypes on Oracle\n", "style" => "-", "text" => "Support BLOB and CLOB datatypes on Oracle" }, { "line" => 1170, "raw" => " - Storage::DBI::Replicated::Balancer::Random:\n added master_read_weight\n", "style" => "-", "text" => "Storage::DBI::Replicated::Balancer::Random: added master_read_weight" }, { "line" => 1172, "raw" => " - Storage::DBI::Replicated: storage opts from connect_info,\n connect_info merging to replicants, hashref connect_info support,\n improved trace output, other bug fixes/cleanups\n", "style" => "-", "text" => "Storage::DBI::Replicated: storage opts from connect_info, connect_info merging to replicants, hashref connect_info support, improved trace output, other bug fixes/cleanups" }, { "line" => 1175, "raw" => " - distinct => 1 with prefetch now groups by all columns\n", "style" => "-", "text" => "distinct => 1 with prefetch now groups by all columns" }, { "line" => 1176, "raw" => " - on_connect_do accepts a single string equivalent to a one\n element arrayref (RT#45159)\n", "style" => "-", "text" => "on_connect_do accepts a single string equivalent to a one element arrayref (RT#45159)" }, { "line" => 1178, "raw" => " - DB2 limit + offset now works correctly\n", "style" => "-", "text" => "DB2 limit + offset now works correctly" }, { "line" => 1179, "raw" => " - Sybase now supports autoinc PKs (RT#40265)\n", "style" => "-", "text" => "Sybase now supports autoinc PKs (RT#40265)" }, { "line" => 1180, "raw" => " - Prefetch on joins over duplicate relations now works\n correctly (RT#28451)\n", "style" => "-", "text" => "Prefetch on joins over duplicate relations now works correctly (RT#28451)" }, { "line" => 1182, "raw" => " - \"timestamp with time zone\" columns (for Pg) now get inflated with a\n time zone information preserved\n", "style" => "-", "text" => "\"timestamp with time zone\" columns (for Pg) now get inflated with a time zone information preserved" }, { "line" => 1184, "raw" => " - MSSQL Top limit-emulation improvements (GROUP BY and subquery support)\n", "style" => "-", "text" => "MSSQL Top limit-emulation improvements (GROUP BY and subquery support)" }, { "line" => 1185, "raw" => " - ResultSetColumn will not lose the joins infered from a parent\n resultset prefetch\n\n", "style" => "-", "text" => "ResultSetColumn will not lose the joins infered from a parent resultset prefetch" } ], "line" => 1148, "note" => "(UTC)", "raw" => "0.08103 2009-05-26 19:50:00 (UTC)\n", "raw_date" => "2009-05-26 19:50:00", "version" => "0.08103" }, { "date" => "2009-04-30T08:29:00Z", "entries" => [ { "line" => 1189, "raw" => " - Fixed two subtle bugs when using columns or select/as\n paired with a join (limited prefetch)\n", "style" => "-", "text" => "Fixed two subtle bugs when using columns or select/as paired with a join (limited prefetch)" }, { "line" => 1191, "raw" => " - Fixed breakage of cdbi tests (RT#45551)\n", "style" => "-", "text" => "Fixed breakage of cdbi tests (RT#45551)" }, { "line" => 1192, "raw" => " - Some POD improvements\n\n", "style" => "-", "text" => "Some POD improvements" } ], "line" => 1188, "note" => "(UTC)", "raw" => "0.08102 2009-04-30 08:29:00 (UTC)\n", "raw_date" => "2009-04-30 08:29:00", "version" => "0.08102" }, { "date" => "2009-04-27T09:45:00Z", "entries" => [ { "line" => 1195, "raw" => " - Fix +select, +as, +columns and include_columns being stripped\n by \$rs->get_column\n", "style" => "-", "text" => "Fix +select, +as, +columns and include_columns being stripped by \$rs->get_column" }, { "line" => 1197, "raw" => " - move load_optional_class from DBIx::Class::Componentised to\n Class::C3::Componentised, bump dependency\n", "style" => "-", "text" => "move load_optional_class from DBIx::Class::Componentised to Class::C3::Componentised, bump dependency" }, { "line" => 1199, "raw" => " - register_extra_source() now *really* fixed wrt subclassing\n", "style" => "-", "text" => "register_extra_source() now *really* fixed wrt subclassing" }, { "line" => 1200, "raw" => " - Added missing POD descriptions (RT#45195)\n", "style" => "-", "text" => "Added missing POD descriptions (RT#45195)" }, { "line" => 1201, "raw" => " - Fix insert() to not store_column() every present object column\n", "style" => "-", "text" => "Fix insert() to not store_column() every present object column" }, { "line" => 1202, "raw" => " - Multiple Makefile.PL fixes\n\n", "style" => "-", "text" => "Multiple Makefile.PL fixes" } ], "line" => 1194, "note" => "(UTC)", "raw" => "0.08101 2009-04-27 09:45:00 (UTC)\n", "raw_date" => "2009-04-27 09:45:00", "version" => "0.08101" }, { "date" => "2009-04-19T11:39:35Z", "entries" => [ { "line" => 1205, "raw" => " - Todo out the register_extra_source test until after shipping\n\n", "style" => "-", "text" => "Todo out the register_extra_source test until after shipping" } ], "line" => 1204, "note" => "(UTC)", "raw" => "0.08100 2009-04-19 11:39:35 (UTC)\n", "raw_date" => "2009-04-19 11:39:35", "version" => "0.08100" }, { "date" => "2009-03-30T00:00:00Z", "entries" => [ { "line" => 1208, "raw" => " - Fixed taint mode with load_namespaces\n", "style" => "-", "text" => "Fixed taint mode with load_namespaces" }, { "line" => 1209, "raw" => " - Putting IC::DateTime locale, timezone or floating_tz_ok attributes into\n extra => {} has been deprecated. The new way is to put these things\n directly into the columns definition\n", "style" => "-", "text" => "Putting IC::DateTime locale, timezone or floating_tz_ok attributes into extra => {} has been deprecated. The new way is to put these things directly into the columns definition" }, { "line" => 1212, "raw" => " - Switched MI code to MRO::Compat\n", "style" => "-", "text" => "Switched MI code to MRO::Compat" }, { "line" => 1213, "raw" => " - Document db-side default_value caveats\n", "style" => "-", "text" => "Document db-side default_value caveats" }, { "line" => 1214, "raw" => " - Search_like() now warns to indicate deprecation in 0.09.\n", "style" => "-", "text" => "Search_like() now warns to indicate deprecation in 0.09." }, { "line" => 1215, "raw" => " - TxnScopeGuard left experimental state\n\n", "style" => "-", "text" => "TxnScopeGuard left experimental state" } ], "line" => 1207, "note" => "(UTC)", "raw" => "0.08099_08 2009-03-30 00:00:00 (UTC)\n", "raw_date" => "2009-03-30 00:00:00", "version" => "0.08099_08" }, { "date" => "2009-02-27T02:00:00Z", "entries" => [ { "line" => 1218, "raw" => " - multi-create using find_or_create rather than _related for post-insert\n", "style" => "-", "text" => "multi-create using find_or_create rather than _related for post-insert" }, { "line" => 1219, "raw" => " - fix get_inflated_columns to check has_column_loaded\n", "style" => "-", "text" => "fix get_inflated_columns to check has_column_loaded" }, { "line" => 1220, "raw" => " - Add DBIC_MULTICREATE_DEBUG env var (undocumented, quasi-internal)\n", "style" => "-", "text" => "Add DBIC_MULTICREATE_DEBUG env var (undocumented, quasi-internal)" }, { "entries" => [ { "line" => 1222, "raw" => " - correctly propagate columns loaded during multi-insert of rels\n", "style" => "-", "text" => "correctly propagate columns loaded during multi-insert of rels" }, { "line" => 1223, "raw" => " - not try and insert things tagged on via new_related unless required\n", "style" => "-", "text" => "not try and insert things tagged on via new_related unless required" } ], "line" => 1221, "raw" => " - Fix up multi-create to:\n", "style" => "-", "text" => "Fix up multi-create to:" }, { "line" => 1224, "raw" => " - Possible to set locale in IC::DateTime extra => {} config\n", "style" => "-", "text" => "Possible to set locale in IC::DateTime extra => {} config" }, { "line" => 1225, "raw" => " - Calling the accessor of a belongs_to when the foreign_key\n was NULL and the row was not stored would unexpectedly fail\n", "style" => "-", "text" => "Calling the accessor of a belongs_to when the foreign_key was NULL and the row was not stored would unexpectedly fail" }, { "line" => 1227, "raw" => " - Split sql statements for deploy only if SQLT::Producer returned a scalar\n containing all statements to be executed\n", "style" => "-", "text" => "Split sql statements for deploy only if SQLT::Producer returned a scalar containing all statements to be executed" }, { "line" => 1229, "raw" => " - Add as_query() for ResultSet and ResultSetColumn. This makes subqueries\n possible. See the Cookbook for details.\n", "style" => "-", "text" => "Add as_query() for ResultSet and ResultSetColumn. This makes subqueries possible. See the Cookbook for details." }, { "line" => 1231, "raw" => " - Massive rewrite of Ordered to properly handle position constraints and\n to make it more matpath-friendly\n", "style" => "-", "text" => "Massive rewrite of Ordered to properly handle position constraints and to make it more matpath-friendly" }, { "line" => 1233, "raw" => " - deploy_statements called ddl_filename with the \$version and \$dir arguments\n in the wrong order.\n", "style" => "-", "text" => "deploy_statements called ddl_filename with the \$version and \$dir arguments in the wrong order." }, { "line" => 1235, "raw" => " - columns/+columns attributes now support { as => select } hahsrefs\n", "style" => "-", "text" => "columns/+columns attributes now support { as => select } hahsrefs" }, { "line" => 1236, "raw" => " - support for views both in DBIC and via deploy() in SQLT\n\n", "style" => "-", "text" => "support for views both in DBIC and via deploy() in SQLT" } ], "line" => 1217, "note" => "(UTC)", "raw" => "0.08099_07 2009-02-27 02:00:00 (UTC)\n", "raw_date" => "2009-02-27 02:00:00", "version" => "0.08099_07" }, { "date" => "2009-01-23T07:30:00Z", "entries" => [ { "line" => 1239, "raw" => " - Allow a scalarref to be supplied to the 'from' resultset attribute\n", "style" => "-", "text" => "Allow a scalarref to be supplied to the 'from' resultset attribute" }, { "line" => 1240, "raw" => " - Classes submitted as result_class for a resultsource are now\n automatically loaded via ensure_loaded()\n", "style" => "-", "text" => "Classes submitted as result_class for a resultsource are now automatically loaded via ensure_loaded()" }, { "line" => 1242, "raw" => " - 'result_class' resultset attribute, identical to result_class()\n", "style" => "-", "text" => "'result_class' resultset attribute, identical to result_class()" }, { "line" => 1243, "raw" => " - add 'undef_on_null_fk' option for relationship accessors of type 'single'.\n This will prevent DBIC from querying the database if one or more of\n the key columns IS NULL\n", "style" => "-", "text" => "add 'undef_on_null_fk' option for relationship accessors of type 'single'. This will prevent DBIC from querying the database if one or more of the key columns IS NULL" }, { "line" => 1246, "raw" => " - for 'belongs_to' rels, 'undef_on_null_fk' defaults to true.\n", "style" => "-", "text" => "for 'belongs_to' rels, 'undef_on_null_fk' defaults to true." }, { "line" => 1247, "raw" => " - fixed scope unaware last_insert_id fetching for MSSQL\n (http://msdn.microsoft.com/en-us/library/ms190315.aspx)\n", "style" => "-", "text" => "fixed scope unaware last_insert_id fetching for MSSQL (http://msdn.microsoft.com/en-us/library/ms190315.aspx)" }, { "line" => 1249, "raw" => " - an sqlt_deploy_hook can now be shared between result sources using\n a configurable callback trigger\n", "style" => "-", "text" => "an sqlt_deploy_hook can now be shared between result sources using a configurable callback trigger" }, { "line" => 1251, "raw" => " - new order_by => { -desc => 'colname' } syntax supported\n", "style" => "-", "text" => "new order_by => { -desc => 'colname' } syntax supported" }, { "line" => 1252, "raw" => " - PG array datatype supported\n", "style" => "-", "text" => "PG array datatype supported" }, { "line" => 1253, "raw" => " - insert should use store_column, not set_column to avoid marking\n clean just-stored values as dirty. New test for this\n", "style" => "-", "text" => "insert should use store_column, not set_column to avoid marking clean just-stored values as dirty. New test for this" }, { "line" => 1255, "raw" => " - regression test for source_name\n\n", "style" => "-", "text" => "regression test for source_name" } ], "line" => 1238, "note" => "(UTC)", "raw" => "0.08099_06 2009-01-23 07:30:00 (UTC)\n", "raw_date" => "2009-01-23 07:30:00", "version" => "0.08099_06" }, { "date" => "2008-10-30T21:30:00Z", "entries" => [ { "line" => 1258, "raw" => " - Rewrite of Storage::DBI::connect_info(), extended with an\n additional argument format type\n", "style" => "-", "text" => "Rewrite of Storage::DBI::connect_info(), extended with an additional argument format type" }, { "line" => 1260, "raw" => " - InflateColumn::DateTime: add warning about floating timezone\n", "style" => "-", "text" => "InflateColumn::DateTime: add warning about floating timezone" }, { "line" => 1261, "raw" => " - InflateColumn::DateTime: possible to enforce/skip inflation\n", "style" => "-", "text" => "InflateColumn::DateTime: possible to enforce/skip inflation" }, { "line" => 1262, "raw" => " - delete throws exception if passed arguments to prevent drunken mishaps.\n", "style" => "-", "text" => "delete throws exception if passed arguments to prevent drunken mishaps." }, { "line" => 1263, "raw" => " - Fix storage to copy scalar conds before regexping to avoid\n trying to modify a constant in odd edge cases\n", "style" => "-", "text" => "Fix storage to copy scalar conds before regexping to avoid trying to modify a constant in odd edge cases" }, { "line" => 1265, "raw" => " - Related resultsets on uninserted objects are now empty\n", "style" => "-", "text" => "Related resultsets on uninserted objects are now empty" }, { "line" => 1266, "raw" => " - Fixed up related resultsets and multi-create\n", "style" => "-", "text" => "Fixed up related resultsets and multi-create" }, { "line" => 1267, "raw" => " - Fixed superfluous connection in ODBC::_rebless\n", "style" => "-", "text" => "Fixed superfluous connection in ODBC::_rebless" }, { "line" => 1268, "raw" => " - Fixed undef PK for first insert in ODBC::Microsoft_SQL_Server\n", "style" => "-", "text" => "Fixed undef PK for first insert in ODBC::Microsoft_SQL_Server" }, { "line" => 1269, "raw" => " - Added virtual method to Versioned so a user can create upgrade\n path across multiple versions (jgoulah)\n", "style" => "-", "text" => "Added virtual method to Versioned so a user can create upgrade path across multiple versions (jgoulah)" }, { "line" => 1271, "raw" => " - Better (and marginally faster) implementation of the HashRefInflator\n hash construction algorithm\n", "style" => "-", "text" => "Better (and marginally faster) implementation of the HashRefInflator hash construction algorithm" }, { "line" => 1273, "raw" => " - Allow explicit specification of ON DELETE/ON UPDATE constraints\n when using the SQLT parser\n\n", "style" => "-", "text" => "Allow explicit specification of ON DELETE/ON UPDATE constraints when using the SQLT parser" } ], "line" => 1257, "note" => "(UTC)", "raw" => "0.08099_05 2008-10-30 21:30:00 (UTC)\n", "raw_date" => "2008-10-30 21:30:00", "version" => "0.08099_05" }, { "date" => "2008-07-24T01:00:00Z", "entries" => [ { "line" => 1277, "raw" => " - Functionality to storage to enable a sub to be run without FK checks\n", "style" => "-", "text" => "Functionality to storage to enable a sub to be run without FK checks" }, { "line" => 1278, "raw" => " - Fixed \$schema->clone bug which caused clone and source to share\n internal hash refs\n", "style" => "-", "text" => "Fixed \$schema->clone bug which caused clone and source to share internal hash refs" }, { "line" => 1280, "raw" => " - Added register_extra_source methods for additional sources\n", "style" => "-", "text" => "Added register_extra_source methods for additional sources" }, { "line" => 1281, "raw" => " - Added datetime_undef_if_invalid for InflateColumn::DateTime to\n return undef on invalid date/time values\n", "style" => "-", "text" => "Added datetime_undef_if_invalid for InflateColumn::DateTime to return undef on invalid date/time values" }, { "line" => 1283, "raw" => " - Added search_related_rs method to ResultSet\n", "style" => "-", "text" => "Added search_related_rs method to ResultSet" }, { "line" => 1284, "raw" => " - add a make_column_dirty method to Row to force updates\n", "style" => "-", "text" => "add a make_column_dirty method to Row to force updates" }, { "line" => 1285, "raw" => " - throw a clear exception when user tries multi-has_many prefetch\n", "style" => "-", "text" => "throw a clear exception when user tries multi-has_many prefetch" }, { "line" => 1286, "raw" => " - SQLT parser prefixes index names with \${table}_idx_ to avoid clashes\n", "style" => "-", "text" => "SQLT parser prefixes index names with \${table}_idx_ to avoid clashes" }, { "line" => 1287, "raw" => " - mark ResultSetManager as deprecated and undocument it\n", "style" => "-", "text" => "mark ResultSetManager as deprecated and undocument it" }, { "line" => 1288, "raw" => " - pod fix (RT #32988)\n", "style" => "-", "text" => "pod fix (RT #32988)" }, { "line" => 1289, "raw" => " - add Test::Exception to test requirements (RT #34256)\n", "style" => "-", "text" => "add Test::Exception to test requirements (RT #34256)" }, { "line" => 1290, "raw" => " - make ash's build_requires/META.yml fixes work better\n", "style" => "-", "text" => "make ash's build_requires/META.yml fixes work better" }, { "line" => 1291, "raw" => " - is_deferable support on relations used by the SQL::Translator\n parser\n", "style" => "-", "text" => "is_deferable support on relations used by the SQL::Translator parser" }, { "line" => 1293, "raw" => " - Refactored DBIx::Class::Schema::Versioned\n", "style" => "-", "text" => "Refactored DBIx::Class::Schema::Versioned" }, { "line" => 1294, "raw" => " - Syntax errors from resultset components are now reported correctly\n", "style" => "-", "text" => "Syntax errors from resultset components are now reported correctly" }, { "line" => 1295, "raw" => " - sqltargs respected correctly in deploy et al.\n", "style" => "-", "text" => "sqltargs respected correctly in deploy et al." }, { "line" => 1296, "raw" => " - Added support for savepoints, and using them automatically in\n nested transactions if auto_savepoint is set in connect_info.\n", "style" => "-", "text" => "Added support for savepoints, and using them automatically in nested transactions if auto_savepoint is set in connect_info." }, { "line" => 1298, "raw" => " - Changed naming scheme for constraints and keys in the sqlt parser;\n names should now be consistent and collision-free.\n", "style" => "-", "text" => "Changed naming scheme for constraints and keys in the sqlt parser; names should now be consistent and collision-free." }, { "line" => 1300, "raw" => " - Improve handling of explicit key attr in ResultSet::find\n", "style" => "-", "text" => "Improve handling of explicit key attr in ResultSet::find" }, { "line" => 1301, "raw" => " - Add warnings for non-unique ResultSet::find queries\n", "style" => "-", "text" => "Add warnings for non-unique ResultSet::find queries" }, { "line" => 1302, "raw" => " - Changed Storage::DBI::Replication to Storage::DBI::Replicated and\n refactored support.\n", "style" => "-", "text" => "Changed Storage::DBI::Replication to Storage::DBI::Replicated and refactored support." }, { "line" => 1304, "raw" => " - By default now deploy/diff et al. will ignore constraint and index\n names\n", "style" => "-", "text" => "By default now deploy/diff et al. will ignore constraint and index names" }, { "line" => 1306, "raw" => " - Add ResultSet::_is_deterministic_value, make new_result filter the\n values passed to new to drop values that would generate invalid SQL.\n", "style" => "-", "text" => "Add ResultSet::_is_deterministic_value, make new_result filter the values passed to new to drop values that would generate invalid SQL." }, { "line" => 1308, "raw" => " - Use Sub::Name to name closures before installing them. Fixes\n incompatibility with Moose method modifiers on generated methods.\n\n", "style" => "-", "text" => "Use Sub::Name to name closures before installing them. Fixes incompatibility with Moose method modifiers on generated methods." } ], "line" => 1276, "raw" => "0.08099_04 2008-07-24 01:00:00\n", "raw_date" => "2008-07-24 01:00:00", "version" => "0.08099_04" }, { "date" => "2008-03-01T10:30Z", "entries" => [ { "line" => 1312, "raw" => " - Fix t/94versioning.t so it passes with latest SQL::Translator\n\n", "style" => "-", "text" => "Fix t/94versioning.t so it passes with latest SQL::Translator" } ], "line" => 1311, "raw" => "0.08010 2008-03-01 10:30\n", "raw_date" => "2008-03-01 10:30", "version" => "0.08010" }, { "date" => "2008-01-20T13:30Z", "entries" => [ { "line" => 1315, "raw" => " - Made search_rs smarter about when to preserve the cache to fix\n mm prefetch usage\n", "style" => "-", "text" => "Made search_rs smarter about when to preserve the cache to fix mm prefetch usage" }, { "line" => 1317, "raw" => " - Added Storage::DBI subclass for MSSQL over ODBC.\n", "style" => "-", "text" => "Added Storage::DBI subclass for MSSQL over ODBC." }, { "line" => 1318, "raw" => " - Added freeze, thaw and dclone methods to Schema so that thawed\n objects will get re-attached to the schema.\n", "style" => "-", "text" => "Added freeze, thaw and dclone methods to Schema so that thawed objects will get re-attached to the schema." }, { "line" => 1320, "raw" => " - Moved dbicadmin to JSON::Any wrapped JSON.pm for a sane API\n (also fixes RT #32393)\n", "style" => "-", "text" => "Moved dbicadmin to JSON::Any wrapped JSON.pm for a sane API (also fixes RT #32393)" }, { "line" => 1322, "raw" => " - introduced DBIx::Class::set_inflated_columns\n", "style" => "-", "text" => "introduced DBIx::Class::set_inflated_columns" }, { "line" => 1323, "raw" => " - DBIx::Class::Row::copy uses set_inflated_columns\n\n", "style" => "-", "text" => "DBIx::Class::Row::copy uses set_inflated_columns" } ], "line" => 1314, "raw" => "0.08009 2008-01-20 13:30\n", "raw_date" => "2008-01-20 13:30", "version" => "0.08009" }, { "date" => "2007-11-16T14:30:00Z", "entries" => [ { "line" => 1326, "raw" => " - Fixed join merging bug (test from Zby)\n", "style" => "-", "text" => "Fixed join merging bug (test from Zby)" }, { "line" => 1327, "raw" => " - When adding relationships, it will throw an exception if you get the\n foreign and self parts the wrong way round in the condition\n", "style" => "-", "text" => "When adding relationships, it will throw an exception if you get the foreign and self parts the wrong way round in the condition" }, { "line" => 1329, "raw" => " - ResultSetColumn::func() now returns all results if called in list\n context; this makes things like func('DISTINCT') work as expected\n", "style" => "-", "text" => "ResultSetColumn::func() now returns all results if called in list context; this makes things like func('DISTINCT') work as expected" }, { "line" => 1331, "raw" => " - Many-to-many relationships now warn if the utility methods would\n clash\n", "style" => "-", "text" => "Many-to-many relationships now warn if the utility methods would clash" }, { "line" => 1333, "raw" => " - InflateColumn::DateTime now accepts an extra parameter of timezone\n to set timezone on the DT object (thanks Sergio Salvi)\n", "style" => "-", "text" => "InflateColumn::DateTime now accepts an extra parameter of timezone to set timezone on the DT object (thanks Sergio Salvi)" }, { "line" => 1335, "raw" => " - Added sqlt_deploy_hook to result classes so that indexes can be\n added.\n", "style" => "-", "text" => "Added sqlt_deploy_hook to result classes so that indexes can be added." }, { "line" => 1337, "raw" => " - Added startup checks to warn loudly if we appear to be running on\n RedHat systems from perl-5.8.8-10 and up that have the bless/overload\n patch applied (badly) which causes 2x -> 100x performance penalty.\n (Jon Schutz)\n", "style" => "-", "text" => "Added startup checks to warn loudly if we appear to be running on RedHat systems from perl-5.8.8-10 and up that have the bless/overload patch applied (badly) which causes 2x -> 100x performance penalty. (Jon Schutz)" }, { "line" => 1341, "raw" => " - ResultSource::reverse_relationship_info can distinguish between\n sources using the same table\n", "style" => "-", "text" => "ResultSource::reverse_relationship_info can distinguish between sources using the same table" }, { "line" => 1343, "raw" => " - Row::insert will now not fall over if passed duplicate related objects\n", "style" => "-", "text" => "Row::insert will now not fall over if passed duplicate related objects" }, { "line" => 1344, "raw" => " - Row::copy will not fall over if you have two relationships to the\n same source with a unique constraint on it\n\n", "style" => "-", "text" => "Row::copy will not fall over if you have two relationships to the same source with a unique constraint on it" } ], "line" => 1325, "raw" => "0.08008 2007-11-16 14:30:00\n", "raw_date" => "2007-11-16 14:30:00", "version" => "0.08008" }, { "date" => "2007-09-04T19:36:00Z", "entries" => [ { "line" => 1348, "raw" => " - patch for Oracle datetime inflation (abram\@arin.net)\n", "style" => "-", "text" => "patch for Oracle datetime inflation (abram\@arin.net)" }, { "line" => 1349, "raw" => " - added on_disconnect_do\n", "style" => "-", "text" => "added on_disconnect_do" }, { "line" => 1350, "raw" => " - on_connect_do and on_disconnect_do take coderefs and arrayrefs\n\n", "style" => "-", "text" => "on_connect_do and on_disconnect_do take coderefs and arrayrefs" } ], "line" => 1347, "raw" => "0.08007 2007-09-04 19:36:00\n", "raw_date" => "2007-09-04 19:36:00", "version" => "0.08007" }, { "date" => "2007-08-12T15:12:00Z", "entries" => [ { "line" => 1353, "raw" => " - Move to using Class::C3::Componentised\n", "style" => "-", "text" => "Move to using Class::C3::Componentised" }, { "line" => 1354, "raw" => " - Remove warn statement from DBIx::Class::Row\n\n", "style" => "-", "text" => "Remove warn statement from DBIx::Class::Row" } ], "line" => 1352, "raw" => "0.08006 2007-08-12 15:12:00\n", "raw_date" => "2007-08-12 15:12:00", "version" => "0.08006" }, { "date" => "2007-08-06", "entries" => [ { "line" => 1357, "raw" => " - add timestamp fix re rt.cpan 26978 - no test yet but change\n clearly should cause no regressions\n", "style" => "-", "text" => "add timestamp fix re rt.cpan 26978 - no test yet but change clearly should cause no regressions" }, { "line" => 1359, "raw" => " - provide alias for related_resultset via local() so it's set\n correctly at resultset construction time (fixes RestrictWithObject)\n", "style" => "-", "text" => "provide alias for related_resultset via local() so it's set correctly at resultset construction time (fixes RestrictWithObject)" }, { "line" => 1361, "raw" => " - fixes bind params in debug statements\n (original test from abraxxa)\n", "style" => "-", "text" => "fixes bind params in debug statements (original test from abraxxa)" }, { "line" => 1363, "raw" => " - fixed storage->connected fork bug\n (test and fix from Radu Greab)\n", "style" => "-", "text" => "fixed storage->connected fork bug (test and fix from Radu Greab)" }, { "line" => 1365, "raw" => " - add 1; to AccessorGroup.pm for stuff that still uses it\n", "style" => "-", "text" => "add 1; to AccessorGroup.pm for stuff that still uses it" }, { "line" => 1366, "raw" => " - refactor Statistics to create debugging filehandle to fix bug with\n closed STDERR, update docs and modify Versioned to use Statistics\n (original fix from diz)\n\n", "style" => "-", "text" => "refactor Statistics to create debugging filehandle to fix bug with closed STDERR, update docs and modify Versioned to use Statistics (original fix from diz)" } ], "line" => 1356, "raw" => "0.08005 2007-08-06\n", "raw_date" => "2007-08-06", "version" => "0.08005" }, { "date" => "2007-08-06T19:00:00Z", "entries" => [ { "line" => 1371, "raw" => " - fix storage connect code to not trigger bug via auto-viv\n (test from aherzog)\n", "style" => "-", "text" => "fix storage connect code to not trigger bug via auto-viv (test from aherzog)" }, { "line" => 1373, "raw" => " - fixup cursor_class to be an 'inherited' attr for per-package defaults\n", "style" => "-", "text" => "fixup cursor_class to be an 'inherited' attr for per-package defaults" }, { "line" => 1374, "raw" => " - add default_resultset_attributes entry to Schema\n", "style" => "-", "text" => "add default_resultset_attributes entry to Schema" }, { "line" => 1375, "raw" => " - optimisation in DBI::Cursor to check software_limit before falling\n back to base Cursor->all\n", "style" => "-", "text" => "optimisation in DBI::Cursor to check software_limit before falling back to base Cursor->all" }, { "line" => 1377, "raw" => " - fix bug with create_multi not inserting non-storage objects\n (test and fix from davinchi)\n", "style" => "-", "text" => "fix bug with create_multi not inserting non-storage objects (test and fix from davinchi)" }, { "line" => 1379, "raw" => " - DBIx::Class::AccessorGroup made empty subclass of\n Class::Accessor::Grouped\n", "style" => "-", "text" => "DBIx::Class::AccessorGroup made empty subclass of Class::Accessor::Grouped" }, { "line" => 1381, "raw" => " - fixed an ugly bug regarding \$dbh->{AutoCommit} and transactions\n", "style" => "-", "text" => "fixed an ugly bug regarding \$dbh->{AutoCommit} and transactions" }, { "line" => 1382, "raw" => " - ensure_class_loaded handles non-classnames better.\n", "style" => "-", "text" => "ensure_class_loaded handles non-classnames better." }, { "line" => 1383, "raw" => " - non-destructive hashref handling for connect_info options\n", "style" => "-", "text" => "non-destructive hashref handling for connect_info options" }, { "line" => 1384, "raw" => " - count no longer returns negative values after slice\n (report and test from JOHANL)\n", "style" => "-", "text" => "count no longer returns negative values after slice (report and test from JOHANL)" }, { "line" => 1386, "raw" => " - rebless before building datetime_parser\n (patch from mattlaw / Matt Lawrence)\n\n", "style" => "-", "text" => "rebless before building datetime_parser (patch from mattlaw / Matt Lawrence)" } ], "line" => 1370, "raw" => "0.08004 2007-08-06 19:00:00\n", "raw_date" => "2007-08-06 19:00:00", "version" => "0.08004" }, { "date" => "2007-07-14T18:01:00Z", "entries" => [ { "line" => 1390, "raw" => " - improved populate bulk_insert mode\n", "style" => "-", "text" => "improved populate bulk_insert mode" }, { "line" => 1391, "raw" => " - fixed up multi_create to be more intelligent about PK<->PK rels\n", "style" => "-", "text" => "fixed up multi_create to be more intelligent about PK<->PK rels" }, { "line" => 1392, "raw" => " - fix many-many rels to not use set_columns\n", "style" => "-", "text" => "fix many-many rels to not use set_columns" }, { "line" => 1393, "raw" => " - Unmarked deploy as experimental since it isn't anymore\n", "style" => "-", "text" => "Unmarked deploy as experimental since it isn't anymore" }, { "line" => 1394, "raw" => " - Removed Cwd dep since it's not required and causes problems\n with debian packaging\n", "style" => "-", "text" => "Removed Cwd dep since it's not required and causes problems with debian packaging" }, { "line" => 1396, "raw" => " - Patch to fix ? in data for NoBindVars (from Tom Hukins)\n", "style" => "-", "text" => "Patch to fix ? in data for NoBindVars (from Tom Hukins)" }, { "line" => 1397, "raw" => " - Restored mk_classaccessor method for compatibility\n", "style" => "-", "text" => "Restored mk_classaccessor method for compatibility" }, { "line" => 1398, "raw" => " - Fixed group_by problem with oracle limit syntax\n", "style" => "-", "text" => "Fixed group_by problem with oracle limit syntax" }, { "line" => 1399, "raw" => " - Fixed attr merging problem\n", "style" => "-", "text" => "Fixed attr merging problem" }, { "line" => 1400, "raw" => " - Fixed \$rs->get_column w/prefetch problem\n\n", "style" => "-", "text" => "Fixed \$rs->get_column w/prefetch problem" } ], "line" => 1389, "raw" => "0.08003 2007-07-14 18:01:00\n", "raw_date" => "2007-07-14 18:01:00", "version" => "0.08003" }, { "date" => "2007-06-20T06:10:00Z", "entries" => [ { "line" => 1403, "raw" => " - add scope guard to Row::insert to ensure rollback gets called\n", "style" => "-", "text" => "add scope guard to Row::insert to ensure rollback gets called" }, { "line" => 1404, "raw" => " - more heuristics in Row::insert to try and get insert order right\n", "style" => "-", "text" => "more heuristics in Row::insert to try and get insert order right" }, { "line" => 1405, "raw" => " - eliminate vestigial code in PK::Auto\n", "style" => "-", "text" => "eliminate vestigial code in PK::Auto" }, { "line" => 1406, "raw" => " - more expressive DBI errors\n", "style" => "-", "text" => "more expressive DBI errors" }, { "line" => 1407, "raw" => " - soften errors during deploy\n", "style" => "-", "text" => "soften errors during deploy" }, { "line" => 1408, "raw" => " - ensure_connected before txn_begin to catch stomping on transaction\n depth\n", "style" => "-", "text" => "ensure_connected before txn_begin to catch stomping on transaction depth" }, { "line" => 1410, "raw" => " - new method \"rethrow\" for our exception objects\n\n", "style" => "-", "text" => "new method \"rethrow\" for our exception objects" } ], "line" => 1402, "raw" => "0.08002 2007-06-20 06:10:00\n", "raw_date" => "2007-06-20 06:10:00", "version" => "0.08002" }, { "date" => "2007-06-17T21:21:02Z", "entries" => [ { "line" => 1413, "raw" => " - Cleaned up on_connect handling for versioned\n", "style" => "-", "text" => "Cleaned up on_connect handling for versioned" }, { "line" => 1414, "raw" => " - removed DateTime use line from multi_create test\n", "style" => "-", "text" => "removed DateTime use line from multi_create test" }, { "line" => 1415, "raw" => " - hid DBIx::ContextualFetch::st override in CDBICompat\n\n", "style" => "-", "text" => "hid DBIx::ContextualFetch::st override in CDBICompat" } ], "line" => 1412, "raw" => "0.08001 2007-06-17 21:21:02\n", "raw_date" => "2007-06-17 21:21:02", "version" => "0.08001" }, { "date" => "2007-06-17T18:06:12Z", "entries" => [ { "line" => 1418, "raw" => " - Fixed DBIC_TRACE debug filehandles to set ->autoflush(1)\n", "style" => "-", "text" => "Fixed DBIC_TRACE debug filehandles to set ->autoflush(1)" }, { "line" => 1419, "raw" => " - Fixed circular dbh<->storage in HandleError with weakref\n\n", "style" => "-", "text" => "Fixed circular dbh<->storage in HandleError with weakref" } ], "line" => 1417, "raw" => "0.08000 2007-06-17 18:06:12\n", "raw_date" => "2007-06-17 18:06:12", "version" => "0.08000" }, { "date" => "2007-06-13T04:45:00Z", "entries" => [ { "line" => 1422, "raw" => " - tweaked Row.pm to make last_insert_id take multiple column names\n", "style" => "-", "text" => "tweaked Row.pm to make last_insert_id take multiple column names" }, { "line" => 1423, "raw" => " - Fixed DBIC::Storage::DBI::Cursor::DESTROY bug that was\n messing up exception handling\n", "style" => "-", "text" => "Fixed DBIC::Storage::DBI::Cursor::DESTROY bug that was messing up exception handling" }, { "line" => 1425, "raw" => " - added exception objects to eliminate stacktrace/Carp::Clan\n output redundancy\n", "style" => "-", "text" => "added exception objects to eliminate stacktrace/Carp::Clan output redundancy" }, { "line" => 1427, "raw" => " - setting \$ENV{DBIC_TRACE} defaults stacktrace on.\n", "style" => "-", "text" => "setting \$ENV{DBIC_TRACE} defaults stacktrace on." }, { "line" => 1428, "raw" => " - added stacktrace option to Schema, makes throw_exception\n use \"confess\"\n", "style" => "-", "text" => "added stacktrace option to Schema, makes throw_exception use \"confess\"" }, { "line" => 1430, "raw" => " - make database handles use throw_exception by default\n", "style" => "-", "text" => "make database handles use throw_exception by default" }, { "line" => 1431, "raw" => " - make database handles supplied by a coderef use our\n standard HandleError/RaiseError/PrintError\n", "style" => "-", "text" => "make database handles supplied by a coderef use our standard HandleError/RaiseError/PrintError" }, { "line" => 1433, "raw" => " - add \"unsafe\" connect_info option to suppress our setting\n of HandleError/RaiseError/PrintError\n", "style" => "-", "text" => "add \"unsafe\" connect_info option to suppress our setting of HandleError/RaiseError/PrintError" }, { "line" => 1435, "raw" => " - removed several redundant evals whose sole purpose was to\n provide extra debugging info\n", "style" => "-", "text" => "removed several redundant evals whose sole purpose was to provide extra debugging info" }, { "line" => 1437, "raw" => " - fixed page-within-page bug (reported by nilsonsfj)\n", "style" => "-", "text" => "fixed page-within-page bug (reported by nilsonsfj)" }, { "line" => 1438, "raw" => " - fixed rare bug when database is disconnected inbetween\n \"\$dbh->prepare_cached\" and \"\$sth->execute\"\n\n", "style" => "-", "text" => "fixed rare bug when database is disconnected inbetween \"\$dbh->prepare_cached\" and \"\$sth->execute\"" } ], "line" => 1421, "raw" => "0.07999_06 2007-06-13 04:45:00\n", "raw_date" => "2007-06-13 04:45:00", "version" => "0.07999_06" }, { "date" => "2007-06-07T23:00:00Z", "entries" => [ { "line" => 1442, "raw" => " - Made source_name rw in ResultSource\n", "style" => "-", "text" => "Made source_name rw in ResultSource" }, { "line" => 1443, "raw" => " - Fixed up SQL::Translator test/runtime dependencies\n", "style" => "-", "text" => "Fixed up SQL::Translator test/runtime dependencies" }, { "line" => 1444, "raw" => " - Fixed t/60core.t in the absence of DateTime::Format::MySQL\n", "style" => "-", "text" => "Fixed t/60core.t in the absence of DateTime::Format::MySQL" }, { "line" => 1445, "raw" => " - Test cleanup and doc note (ribasushi)\n\n", "style" => "-", "text" => "Test cleanup and doc note (ribasushi)" } ], "line" => 1441, "raw" => "0.07999_05 2007-06-07 23:00:00\n", "raw_date" => "2007-06-07 23:00:00", "version" => "0.07999_05" }, { "date" => "2007-06-01T14:04:00Z", "entries" => [ { "line" => 1448, "raw" => " - pulled in Replication storage from branch and marked EXPERIMENTAL\n", "style" => "-", "text" => "pulled in Replication storage from branch and marked EXPERIMENTAL" }, { "line" => 1449, "raw" => " - fixup to ensure join always LEFT after first LEFT join depthwise\n", "style" => "-", "text" => "fixup to ensure join always LEFT after first LEFT join depthwise" }, { "line" => 1450, "raw" => " - converted the vendor tests to use schema objects intead of schema\n classes, made cleaned more reliable with END blocks\n", "style" => "-", "text" => "converted the vendor tests to use schema objects intead of schema classes, made cleaned more reliable with END blocks" }, { "line" => 1452, "raw" => " - versioning support via DBIx::Class::Schema::Versioned\n", "style" => "-", "text" => "versioning support via DBIx::Class::Schema::Versioned" }, { "line" => 1453, "raw" => " - find/next now return undef rather than () on fail from Bernhard Graf\n", "style" => "-", "text" => "find/next now return undef rather than () on fail from Bernhard Graf" }, { "line" => 1454, "raw" => " - rewritten collapse_result to fix prefetch\n", "style" => "-", "text" => "rewritten collapse_result to fix prefetch" }, { "line" => 1455, "raw" => " - moved populate to resultset\n", "style" => "-", "text" => "moved populate to resultset" }, { "line" => 1456, "raw" => " - added support for creation of related rows via insert and populate\n", "style" => "-", "text" => "added support for creation of related rows via insert and populate" }, { "line" => 1457, "raw" => " - transaction support more robust now in the face of varying AutoCommit\n and manual txn_begin usage\n", "style" => "-", "text" => "transaction support more robust now in the face of varying AutoCommit and manual txn_begin usage" }, { "line" => 1459, "raw" => " - unbreak back-compat for Row/ResultSet->new_result\n", "style" => "-", "text" => "unbreak back-compat for Row/ResultSet->new_result" }, { "line" => 1460, "raw" => " - Added Oracle/WhereJoins.pm for Oracle >= 8 to support\n Oracle <= 9i, and provide Oracle with a better join method for\n later versions. (I use the term better loosely.)\n", "style" => "-", "text" => "Added Oracle/WhereJoins.pm for Oracle >= 8 to support Oracle <= 9i, and provide Oracle with a better join method for later versions. (I use the term better loosely.)" }, { "line" => 1463, "raw" => " - The SQL::T parser class now respects a relationship attribute of\n is_foreign_key_constrain to allow explicit control over wether or\n not a foreign constraint is needed\n", "style" => "-", "text" => "The SQL::T parser class now respects a relationship attribute of is_foreign_key_constrain to allow explicit control over wether or not a foreign constraint is needed" }, { "line" => 1466, "raw" => " - resultset_class/result_class now (again) auto loads the specified\n class; requires Class::Accessor::Grouped 0.05002+\n", "style" => "-", "text" => "resultset_class/result_class now (again) auto loads the specified class; requires Class::Accessor::Grouped 0.05002+" }, { "line" => 1468, "raw" => " - added get_inflated_columns to Row\n", "style" => "-", "text" => "added get_inflated_columns to Row" }, { "line" => 1469, "raw" => " - %colinfo accessor and inflate_column now work together\n", "style" => "-", "text" => "%colinfo accessor and inflate_column now work together" }, { "line" => 1470, "raw" => " - More documentation updates\n", "style" => "-", "text" => "More documentation updates" }, { "line" => 1471, "raw" => " - Error messages from ->deploy made more informative\n", "style" => "-", "text" => "Error messages from ->deploy made more informative" }, { "line" => 1472, "raw" => " - connect_info will now always return the arguments it was\n originally given\n", "style" => "-", "text" => "connect_info will now always return the arguments it was originally given" }, { "line" => 1474, "raw" => " - A few small efficiency improvements for load_classes\n and compose_namespace\n\n", "style" => "-", "text" => "A few small efficiency improvements for load_classes and compose_namespace" } ], "line" => 1447, "raw" => "0.07999_04 2007-06-01 14:04:00\n", "raw_date" => "2007-06-01 14:04:00", "version" => "0.07999_04" }, { "date" => "2007-04-17T23:18:00Z", "entries" => [ { "line" => 1478, "raw" => " - Lots of documentation updates\n", "style" => "-", "text" => "Lots of documentation updates" }, { "line" => 1479, "raw" => " - deploy now takes an optional 'source_names' parameter (dec)\n", "style" => "-", "text" => "deploy now takes an optional 'source_names' parameter (dec)" }, { "line" => 1480, "raw" => " - Quoting for for columns_info_for\n", "style" => "-", "text" => "Quoting for for columns_info_for" }, { "line" => 1481, "raw" => " - RT#25683 fixed (multiple open sths on DBD::Sybase)\n", "style" => "-", "text" => "RT#25683 fixed (multiple open sths on DBD::Sybase)" }, { "line" => 1482, "raw" => " - CDBI compat infers has_many from has_a (Schwern)\n", "style" => "-", "text" => "CDBI compat infers has_many from has_a (Schwern)" }, { "line" => 1483, "raw" => " - Fix ddl_filename transformation (Carl Vincent)\n\n", "style" => "-", "text" => "Fix ddl_filename transformation (Carl Vincent)" } ], "line" => 1477, "raw" => "0.07006 2007-04-17 23:18:00\n", "raw_date" => "2007-04-17 23:18:00", "version" => "0.07006" }, { "date" => "2007-01-25T20:11:00Z", "entries" => [ { "line" => 1486, "raw" => " - add support for binding BYTEA and similar parameters (w/Pg impl)\n", "style" => "-", "text" => "add support for binding BYTEA and similar parameters (w/Pg impl)" }, { "line" => 1487, "raw" => " - add support to Ordered for multiple ordering columns\n", "style" => "-", "text" => "add support to Ordered for multiple ordering columns" }, { "line" => 1488, "raw" => " - mark DB.pm and compose_connection as deprecated\n", "style" => "-", "text" => "mark DB.pm and compose_connection as deprecated" }, { "line" => 1489, "raw" => " - switch tests to compose_namespace\n", "style" => "-", "text" => "switch tests to compose_namespace" }, { "line" => 1490, "raw" => " - ResultClass::HashRefInflator added\n", "style" => "-", "text" => "ResultClass::HashRefInflator added" }, { "line" => 1491, "raw" => " - Changed row and rs objects to not have direct handle to a source,\n instead a (schema,source_name) tuple of type ResultSourceHandle\n\n", "style" => "-", "text" => "Changed row and rs objects to not have direct handle to a source, instead a (schema,source_name) tuple of type ResultSourceHandle" } ], "line" => 1485, "raw" => "0.07999_02 2007-01-25 20:11:00\n", "raw_date" => "2007-01-25 20:11:00", "version" => "0.07999_02" }, { "date" => "2007-01-10T18:36:00Z", "entries" => [ { "line" => 1495, "raw" => " - fixup changes file\n", "style" => "-", "text" => "fixup changes file" }, { "line" => 1496, "raw" => " - remove erroneous .orig files - oops\n\n", "style" => "-", "text" => "remove erroneous .orig files - oops" } ], "line" => 1494, "raw" => "0.07005 2007-01-10 18:36:00\n", "raw_date" => "2007-01-10 18:36:00", "version" => "0.07005" }, { "date" => "2007-01-09T21:52:00Z", "entries" => [ { "line" => 1499, "raw" => " - fix find_related-based queries to correctly grep the unique key\n", "style" => "-", "text" => "fix find_related-based queries to correctly grep the unique key" }, { "line" => 1500, "raw" => " - fix InflateColumn to inflate/deflate all refs but scalar refs\n\n", "style" => "-", "text" => "fix InflateColumn to inflate/deflate all refs but scalar refs" } ], "line" => 1498, "raw" => "0.07004 2007-01-09 21:52:00\n", "raw_date" => "2007-01-09 21:52:00", "version" => "0.07004" }, { "date" => "2006-11-16T11:52:00Z", "entries" => [ { "line" => 1503, "raw" => " - fix for rt.cpan.org #22740 (use \$^X instead of hardcoded \"perl\")\n", "style" => "-", "text" => "fix for rt.cpan.org #22740 (use \$^X instead of hardcoded \"perl\")" }, { "line" => 1504, "raw" => " - Tweaks to resultset to allow inflate_result to return an array\n", "style" => "-", "text" => "Tweaks to resultset to allow inflate_result to return an array" }, { "line" => 1505, "raw" => " - Fix UTF8Columns to work under Perl <= 5.8.0\n", "style" => "-", "text" => "Fix UTF8Columns to work under Perl <= 5.8.0" }, { "line" => 1506, "raw" => " - Fix up new_result in ResultSet to avoid alias-related bugs\n", "style" => "-", "text" => "Fix up new_result in ResultSet to avoid alias-related bugs" }, { "line" => 1507, "raw" => " - Made new/update/find handle 'single' rel accessor correctly\n", "style" => "-", "text" => "Made new/update/find handle 'single' rel accessor correctly" }, { "line" => 1508, "raw" => " - Fix NoBindVars to be safer and handle non-true bind values\n", "style" => "-", "text" => "Fix NoBindVars to be safer and handle non-true bind values" }, { "line" => 1509, "raw" => " - Don't blow up if columns_info_for returns useless results\n", "style" => "-", "text" => "Don't blow up if columns_info_for returns useless results" }, { "line" => 1510, "raw" => " - Documentation updates\n\n", "style" => "-", "text" => "Documentation updates" } ], "line" => 1502, "raw" => "0.07003 2006-11-16 11:52:00\n", "raw_date" => "2006-11-16 11:52:00", "version" => "0.07003" }, { "date" => "2006-10-05T21:00:00Z", "entries" => [ { "line" => 1513, "raw" => " - add connect_info option \"disable_statement_caching\"\n", "style" => "-", "text" => "add connect_info option \"disable_statement_caching\"" }, { "line" => 1514, "raw" => " - create insert_bulk using execute_array, populate uses it\n", "style" => "-", "text" => "create insert_bulk using execute_array, populate uses it" }, { "line" => 1515, "raw" => " - added DBIx::Class::Schema::load_namespaces, alternative to\n load_classes\n", "style" => "-", "text" => "added DBIx::Class::Schema::load_namespaces, alternative to load_classes" }, { "line" => 1517, "raw" => " - added source_info method for source-level metadata (kinda like\n column_info)\n", "style" => "-", "text" => "added source_info method for source-level metadata (kinda like column_info)" }, { "line" => 1519, "raw" => " - Some of ::Storage::DBI's code/docs moved to ::Storage\n", "style" => "-", "text" => "Some of ::Storage::DBI's code/docs moved to ::Storage" }, { "line" => 1520, "raw" => " - DBIx::Class::Schema::txn_do code moved to ::Storage\n", "style" => "-", "text" => "DBIx::Class::Schema::txn_do code moved to ::Storage" }, { "line" => 1521, "raw" => " - Storage::DBI now uses exceptions instead of ->ping/->{Active} checks\n", "style" => "-", "text" => "Storage::DBI now uses exceptions instead of ->ping/->{Active} checks" }, { "line" => 1522, "raw" => " - Storage exceptions are thrown via the schema class's throw_exception\n", "style" => "-", "text" => "Storage exceptions are thrown via the schema class's throw_exception" }, { "line" => 1523, "raw" => " - DBIx::Class::Schema::throw_exception's behavior can be modified via\n ->exception_action\n", "style" => "-", "text" => "DBIx::Class::Schema::throw_exception's behavior can be modified via ->exception_action" }, { "line" => 1525, "raw" => " - columns_info_for is deprecated, and no longer runs automatically.\n You can make it work like before via\n __PACKAGE__->column_info_from_storage(1) for now\n", "style" => "-", "text" => "columns_info_for is deprecated, and no longer runs automatically. You can make it work like before via __PACKAGE__->column_info_from_storage(1) for now" }, { "line" => 1528, "raw" => " - Replaced DBIx::Class::AccessorGroup and Class::Data::Accessor with\n Class::Accessor::Grouped. Only user noticible change is to\n table_class on ResultSourceProxy::Table (i.e. table objects in\n schemas) and, resultset_class and result_class in ResultSource.\n These accessors no longer automatically require the classes when\n set.\n\n", "style" => "-", "text" => "Replaced DBIx::Class::AccessorGroup and Class::Data::Accessor with Class::Accessor::Grouped. Only user noticible change is to table_class on ResultSourceProxy::Table (i.e. table objects in schemas) and, resultset_class and result_class in ResultSource. These accessors no longer automatically require the classes when set." } ], "line" => 1512, "raw" => "0.07999_01 2006-10-05 21:00:00\n", "raw_date" => "2006-10-05 21:00:00", "version" => "0.07999_01" }, { "date" => "2006-09-14T21:17:32Z", "entries" => [ { "line" => 1536, "raw" => " - fix quote tests for recent versions of SQLite\n", "style" => "-", "text" => "fix quote tests for recent versions of SQLite" }, { "line" => 1537, "raw" => " - added reference implementation of Manual::Example\n", "style" => "-", "text" => "added reference implementation of Manual::Example" }, { "line" => 1538, "raw" => " - backported column_info_from_storage accessor from -current, but\n", "style" => "-", "text" => "backported column_info_from_storage accessor from -current, but" }, { "line" => 1539, "raw" => " - fixed inflate_datetime.t tests/stringify under older Test::More\n", "style" => "-", "text" => "fixed inflate_datetime.t tests/stringify under older Test::More" }, { "line" => 1540, "raw" => " - minor fixes for many-to-many relationship helpers\n", "style" => "-", "text" => "minor fixes for many-to-many relationship helpers" }, { "line" => 1541, "raw" => " - cleared up Relationship docs, and fixed some typos\n", "style" => "-", "text" => "cleared up Relationship docs, and fixed some typos" }, { "line" => 1542, "raw" => " - use ref instead of eval to check limit syntax (to avoid issues with\n Devel::StackTrace)\n", "style" => "-", "text" => "use ref instead of eval to check limit syntax (to avoid issues with Devel::StackTrace)" }, { "line" => 1544, "raw" => " - update ResultSet::_cond_for_update_delete to handle more complicated\n queries\n", "style" => "-", "text" => "update ResultSet::_cond_for_update_delete to handle more complicated queries" }, { "line" => 1546, "raw" => " - bugfix to Oracle columns_info_for\n", "style" => "-", "text" => "bugfix to Oracle columns_info_for" }, { "line" => 1547, "raw" => " - remove_columns now deletes columns from _columns\n\n", "style" => "-", "text" => "remove_columns now deletes columns from _columns" } ], "line" => 1535, "raw" => "0.07002 2006-09-14 21:17:32\n", "raw_date" => "2006-09-14 21:17:32", "version" => "0.07002" }, { "date" => "2006-08-18T19:55:00Z", "entries" => [ { "line" => 1550, "raw" => " - add directory argument to deploy()\n", "style" => "-", "text" => "add directory argument to deploy()" }, { "line" => 1551, "raw" => " - support default aliases in many_to_many accessors.\n", "style" => "-", "text" => "support default aliases in many_to_many accessors." }, { "line" => 1552, "raw" => " - support for relationship attributes in many_to_many accessors.\n", "style" => "-", "text" => "support for relationship attributes in many_to_many accessors." }, { "line" => 1553, "raw" => " - stop search_rs being destructive to attrs\n", "style" => "-", "text" => "stop search_rs being destructive to attrs" }, { "line" => 1554, "raw" => " - better error reporting when loading components\n", "style" => "-", "text" => "better error reporting when loading components" }, { "line" => 1555, "raw" => " - UTF8Columns changed to use \"utf8\" instead of \"Encode\"\n", "style" => "-", "text" => "UTF8Columns changed to use \"utf8\" instead of \"Encode\"" }, { "line" => 1556, "raw" => " - restore automatic aliasing in ResultSet::find() on nonunique queries\n", "style" => "-", "text" => "restore automatic aliasing in ResultSet::find() on nonunique queries" }, { "line" => 1557, "raw" => " - allow aliases in ResultSet::find() queries (in cases of relationships\n with prefetch)\n", "style" => "-", "text" => "allow aliases in ResultSet::find() queries (in cases of relationships with prefetch)" }, { "line" => 1559, "raw" => " - pass \$attrs to find from update_or_create so a specific key can be\n provided\n", "style" => "-", "text" => "pass \$attrs to find from update_or_create so a specific key can be provided" }, { "line" => 1561, "raw" => " - remove anonymous blesses to avoid major speed hit on Fedora Core 5's\n Perl and possibly others; for more information see:\n https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=196836\n", "style" => "-", "text" => "remove anonymous blesses to avoid major speed hit on Fedora Core 5's Perl and possibly others; for more information see: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=196836" }, { "line" => 1564, "raw" => " - fix a pathological prefetch case\n", "style" => "-", "text" => "fix a pathological prefetch case" }, { "line" => 1565, "raw" => " - table case fix for Oracle in columns_info_for\n", "style" => "-", "text" => "table case fix for Oracle in columns_info_for" }, { "line" => 1566, "raw" => " - stopped search_rs deleting attributes from passed hash\n\n", "style" => "-", "text" => "stopped search_rs deleting attributes from passed hash" } ], "line" => 1549, "raw" => "0.07001 2006-08-18 19:55:00\n", "raw_date" => "2006-08-18 19:55:00", "version" => "0.07001" }, { "date" => "2006-07-23T02:30:00Z", "entries" => [ { "line" => 1569, "raw" => " - supress warnings for possibly non-unique queries, since\n _is_unique_query doesn't infer properly in all cases\n", "style" => "-", "text" => "supress warnings for possibly non-unique queries, since _is_unique_query doesn't infer properly in all cases" }, { "line" => 1571, "raw" => " - skip empty queries to eliminate spurious warnings on ->deploy\n", "style" => "-", "text" => "skip empty queries to eliminate spurious warnings on ->deploy" }, { "line" => 1572, "raw" => " - fixups to ORDER BY, tweaks to deepen some copies in ResultSet\n", "style" => "-", "text" => "fixups to ORDER BY, tweaks to deepen some copies in ResultSet" }, { "line" => 1573, "raw" => " - fixup for RowNum limit syntax with functions\n\n", "style" => "-", "text" => "fixup for RowNum limit syntax with functions" } ], "line" => 1568, "raw" => "0.07000 2006-07-23 02:30:00\n", "raw_date" => "2006-07-23 02:30:00", "version" => "0.07000" }, { "date" => "2006-07-12T20:58:05Z", "entries" => [ { "line" => 1576, "raw" => " - fix issue with from attr copying introduced in last release\n\n", "style" => "-", "text" => "fix issue with from attr copying introduced in last release" } ], "line" => 1575, "raw" => "0.06999_07 2006-07-12 20:58:05\n", "raw_date" => "2006-07-12 20:58:05", "version" => "0.06999_07" }, { "date" => "2006-07-12T17:16:55Z", "entries" => [ { "line" => 1579, "raw" => " - documentation for new storage options, fix S::A::L hanging on to \$dbh\n", "style" => "-", "text" => "documentation for new storage options, fix S::A::L hanging on to \$dbh" }, { "line" => 1580, "raw" => " - substantial refactor of search_related code to fix alias numbering\n", "style" => "-", "text" => "substantial refactor of search_related code to fix alias numbering" }, { "line" => 1581, "raw" => " - don't generate partial unique keys in ResultSet::find() when a table\n has more than one unique constraint which share a column and only one\n is satisfied\n", "style" => "-", "text" => "don't generate partial unique keys in ResultSet::find() when a table has more than one unique constraint which share a column and only one is satisfied" }, { "line" => 1584, "raw" => " - cleanup UTF8Columns and make more efficient\n", "style" => "-", "text" => "cleanup UTF8Columns and make more efficient" }, { "line" => 1585, "raw" => " - rename DBIX_CLASS_STORAGE_DBI_DEBUG to DBIC_TRACE (with compat)\n", "style" => "-", "text" => "rename DBIX_CLASS_STORAGE_DBI_DEBUG to DBIC_TRACE (with compat)" }, { "line" => 1586, "raw" => " - rename _parent_rs to _parent_source in ResultSet\n", "style" => "-", "text" => "rename _parent_rs to _parent_source in ResultSet" }, { "line" => 1587, "raw" => " - new FAQ.pod!\n\n", "style" => "-", "text" => "new FAQ.pod!" } ], "line" => 1578, "raw" => "0.06999_06 2006-07-12 17:16:55\n", "raw_date" => "2006-07-12 17:16:55", "version" => "0.06999_06" }, { "date" => "2006-07-04T14:40:01Z", "entries" => [ { "line" => 1590, "raw" => " - fix issue with incorrect \$rs->{attrs}{alias}\n", "style" => "-", "text" => "fix issue with incorrect \$rs->{attrs}{alias}" }, { "line" => 1591, "raw" => " - fix subclassing issue with source_name\n", "style" => "-", "text" => "fix subclassing issue with source_name" }, { "line" => 1592, "raw" => " - tweak quotes test to output text on failure\n", "style" => "-", "text" => "tweak quotes test to output text on failure" }, { "line" => 1593, "raw" => " - fix Schema->txn_do to not fail as a classmethod\n\n", "style" => "-", "text" => "fix Schema->txn_do to not fail as a classmethod" } ], "line" => 1589, "raw" => "0.06999_05 2006-07-04 14:40:01\n", "raw_date" => "2006-07-04 14:40:01", "version" => "0.06999_05" }, { "date" => "2006-06-29T20:18:47Z", "entries" => [ { "line" => 1596, "raw" => " - disable cdbi-t/02-Film.t warning tests under AS perl\n", "style" => "-", "text" => "disable cdbi-t/02-Film.t warning tests under AS perl" }, { "line" => 1597, "raw" => " - fixups to MySQL tests (aka \"work round mysql being retarded\")\n", "style" => "-", "text" => "fixups to MySQL tests (aka \"work round mysql being retarded\")" }, { "line" => 1598, "raw" => " - compat tweaks for Storage debug logging\n\n", "style" => "-", "text" => "compat tweaks for Storage debug logging" } ], "line" => 1595, "raw" => "0.06999_04 2006-06-29 20:18:47\n", "raw_date" => "2006-06-29 20:18:47", "version" => "0.06999_04" }, { "date" => "2006-06-26T21:04:44Z", "entries" => [ { "line" => 1601, "raw" => " - various documentation improvements\n", "style" => "-", "text" => "various documentation improvements" }, { "line" => 1602, "raw" => " - fixes to pass test suite on Windows\n", "style" => "-", "text" => "fixes to pass test suite on Windows" }, { "line" => 1603, "raw" => " - rewrote and cleaned up SQL::Translator tests\n", "style" => "-", "text" => "rewrote and cleaned up SQL::Translator tests" }, { "line" => 1604, "raw" => " - changed relationship helpers to only call ensure_class_loaded when the\n join condition is inferred\n", "style" => "-", "text" => "changed relationship helpers to only call ensure_class_loaded when the join condition is inferred" }, { "line" => 1606, "raw" => " - rewrote many_to_many implementation, now provides helpers for adding\n and deleting objects without dealing with the link table\n", "style" => "-", "text" => "rewrote many_to_many implementation, now provides helpers for adding and deleting objects without dealing with the link table" }, { "line" => 1608, "raw" => " - reworked InflateColumn implementation to lazily deflate where\n possible; now handles passing an inflated object to new()\n", "style" => "-", "text" => "reworked InflateColumn implementation to lazily deflate where possible; now handles passing an inflated object to new()" }, { "line" => 1610, "raw" => " - changed join merging to not create a rel_2 alias when adding a join\n that already exists in a parent resultset\n", "style" => "-", "text" => "changed join merging to not create a rel_2 alias when adding a join that already exists in a parent resultset" }, { "line" => 1612, "raw" => " - Storage::DBI::deployment_statements now calls ensure_connected\n if it isn't passed a type\n", "style" => "-", "text" => "Storage::DBI::deployment_statements now calls ensure_connected if it isn't passed a type" }, { "line" => 1614, "raw" => " - fixed Componentized::ensure_class_loaded\n", "style" => "-", "text" => "fixed Componentized::ensure_class_loaded" }, { "line" => 1615, "raw" => " - InflateColumn::DateTime supports date as well as datetime\n", "style" => "-", "text" => "InflateColumn::DateTime supports date as well as datetime" }, { "line" => 1616, "raw" => " - split Storage::DBI::MSSQL into MSSQL and Sybase::MSSQL\n", "style" => "-", "text" => "split Storage::DBI::MSSQL into MSSQL and Sybase::MSSQL" }, { "line" => 1617, "raw" => " - fixed wrong debugging hook call in Storage::DBI\n", "style" => "-", "text" => "fixed wrong debugging hook call in Storage::DBI" }, { "line" => 1618, "raw" => " - set connect_info properly before setting any ->sql_maker things\n\n", "style" => "-", "text" => "set connect_info properly before setting any ->sql_maker things" } ], "line" => 1600, "raw" => "0.06999_03 2006-06-26 21:04:44\n", "raw_date" => "2006-06-26 21:04:44", "version" => "0.06999_03" }, { "date" => "2006-06-09T23:58:33Z", "entries" => [ { "line" => 1621, "raw" => " - Fixed up POD::Coverage tests, filled in some POD holes\n", "style" => "-", "text" => "Fixed up POD::Coverage tests, filled in some POD holes" }, { "line" => 1622, "raw" => " - Added a warning for incorrect component order in load_components\n", "style" => "-", "text" => "Added a warning for incorrect component order in load_components" }, { "line" => 1623, "raw" => " - Fixed resultset bugs to do with related searches\n", "style" => "-", "text" => "Fixed resultset bugs to do with related searches" }, { "line" => 1624, "raw" => " - added code and tests for Componentized::ensure_class_found and\n load_optional_class\n", "style" => "-", "text" => "added code and tests for Componentized::ensure_class_found and load_optional_class" }, { "line" => 1626, "raw" => " - NoBindVars + Sybase + MSSQL stuff\n", "style" => "-", "text" => "NoBindVars + Sybase + MSSQL stuff" }, { "line" => 1627, "raw" => " - only rebless S::DBI if it is still S::DBI and not a subclass\n", "style" => "-", "text" => "only rebless S::DBI if it is still S::DBI and not a subclass" }, { "line" => 1628, "raw" => " - Added `use' statement for DBD::Pg in Storage::DBI::Pg\n", "style" => "-", "text" => "Added `use' statement for DBD::Pg in Storage::DBI::Pg" }, { "line" => 1629, "raw" => " - stopped test relying on order of unordered search\n", "style" => "-", "text" => "stopped test relying on order of unordered search" }, { "line" => 1630, "raw" => " - bugfix for join-types in nested joins using the from attribute\n", "style" => "-", "text" => "bugfix for join-types in nested joins using the from attribute" }, { "line" => 1631, "raw" => " - obscure prefetch problem fixed\n", "style" => "-", "text" => "obscure prefetch problem fixed" }, { "line" => 1632, "raw" => " - tightened up deep search_related\n", "style" => "-", "text" => "tightened up deep search_related" }, { "line" => 1633, "raw" => " - Fixed 'DBIx/Class/DB.pm did not return a true value' error\n", "style" => "-", "text" => "Fixed 'DBIx/Class/DB.pm did not return a true value' error" }, { "line" => 1634, "raw" => " - Revert change to test for deprecated find usage and swallow warnings\n", "style" => "-", "text" => "Revert change to test for deprecated find usage and swallow warnings" }, { "line" => 1635, "raw" => " - Slight wording change to new_related() POD\n", "style" => "-", "text" => "Slight wording change to new_related() POD" }, { "line" => 1636, "raw" => " - new specific test for connect_info coderefs\n", "style" => "-", "text" => "new specific test for connect_info coderefs" }, { "line" => 1637, "raw" => " - POD clarification and content bugfixing + a few code formatting fixes\n", "style" => "-", "text" => "POD clarification and content bugfixing + a few code formatting fixes" }, { "line" => 1638, "raw" => " - POD::Coverage additions\n", "style" => "-", "text" => "POD::Coverage additions" }, { "line" => 1639, "raw" => " - fixed debugfh\n", "style" => "-", "text" => "fixed debugfh" }, { "line" => 1640, "raw" => " - Fix column_info stomping\n\n", "style" => "-", "text" => "Fix column_info stomping" } ], "line" => 1620, "raw" => "0.06999_02 2006-06-09 23:58:33\n", "raw_date" => "2006-06-09 23:58:33", "version" => "0.06999_02" }, { "date" => "2006-05-28T17:19:30Z", "entries" => [ { "line" => 1643, "raw" => " - add automatic naming of unique constraints\n", "style" => "-", "text" => "add automatic naming of unique constraints" }, { "line" => 1644, "raw" => " - marked DB.pm as deprecated and noted it will be removed by 1.0\n", "style" => "-", "text" => "marked DB.pm as deprecated and noted it will be removed by 1.0" }, { "line" => 1645, "raw" => " - add ResultSetColumn\n", "style" => "-", "text" => "add ResultSetColumn" }, { "line" => 1646, "raw" => " - refactor ResultSet code to resolve attrs as late as possible\n", "style" => "-", "text" => "refactor ResultSet code to resolve attrs as late as possible" }, { "line" => 1647, "raw" => " - merge prefetch attrs into join attrs\n", "style" => "-", "text" => "merge prefetch attrs into join attrs" }, { "line" => 1648, "raw" => " - add +select and +as attributes to ResultSet\n", "style" => "-", "text" => "add +select and +as attributes to ResultSet" }, { "line" => 1649, "raw" => " - added InflateColumn::DateTime component\n", "style" => "-", "text" => "added InflateColumn::DateTime component" }, { "line" => 1650, "raw" => " - refactor debugging to allow for profiling using Storage::Statistics\n", "style" => "-", "text" => "refactor debugging to allow for profiling using Storage::Statistics" }, { "line" => 1651, "raw" => " - removed Data::UUID from deps, made other optionals required\n", "style" => "-", "text" => "removed Data::UUID from deps, made other optionals required" }, { "line" => 1652, "raw" => " - modified SQLT parser to skip dupe table names\n", "style" => "-", "text" => "modified SQLT parser to skip dupe table names" }, { "line" => 1653, "raw" => " - added remove_column(s) to ResultSource/ResultSourceProxy\n", "style" => "-", "text" => "added remove_column(s) to ResultSource/ResultSourceProxy" }, { "line" => 1654, "raw" => " - added add_column alias to ResultSourceProxy\n", "style" => "-", "text" => "added add_column alias to ResultSourceProxy" }, { "line" => 1655, "raw" => " - added source_name to ResultSource\n", "style" => "-", "text" => "added source_name to ResultSource" }, { "line" => 1656, "raw" => " - load_classes now uses source_name and sets it if necessary\n", "style" => "-", "text" => "load_classes now uses source_name and sets it if necessary" }, { "line" => 1657, "raw" => " - add update_or_create_related to Relationship::Base\n", "style" => "-", "text" => "add update_or_create_related to Relationship::Base" }, { "line" => 1658, "raw" => " - add find_or_new to ResultSet/ResultSetProxy and find_or_new_related\n to Relationship::Base\n", "style" => "-", "text" => "add find_or_new to ResultSet/ResultSetProxy and find_or_new_related to Relationship::Base" }, { "line" => 1660, "raw" => " - add accessors for unique constraint names and coulums to\n ResultSource/ResultSourceProxy\n", "style" => "-", "text" => "add accessors for unique constraint names and coulums to ResultSource/ResultSourceProxy" }, { "line" => 1662, "raw" => " - rework ResultSet::find() to search unique constraints\n", "style" => "-", "text" => "rework ResultSet::find() to search unique constraints" }, { "line" => 1663, "raw" => " - CDBICompat: modify retrieve to fix column casing when ColumnCase is\n loaded\n", "style" => "-", "text" => "CDBICompat: modify retrieve to fix column casing when ColumnCase is loaded" }, { "line" => 1665, "raw" => " - CDBICompat: override find_or_create to fix column casing when\n ColumnCase is loaded\n", "style" => "-", "text" => "CDBICompat: override find_or_create to fix column casing when ColumnCase is loaded" }, { "line" => 1667, "raw" => " - reorganized and simplified tests\n", "style" => "-", "text" => "reorganized and simplified tests" }, { "line" => 1668, "raw" => " - added Ordered\n", "style" => "-", "text" => "added Ordered" }, { "line" => 1669, "raw" => " - added the ability to set on_connect_do and the various sql_maker\n options as part of Storage::DBI's connect_info.\n\n", "style" => "-", "text" => "added the ability to set on_connect_do and the various sql_maker options as part of Storage::DBI's connect_info." } ], "line" => 1642, "raw" => "0.06999_01 2006-05-28 17:19:30\n", "raw_date" => "2006-05-28 17:19:30", "version" => "0.06999_01" }, { "date" => "2006-05-19T15:37:30Z", "entries" => [ { "line" => 1673, "raw" => " - make find_or_create_related check defined() instead of truth\n", "style" => "-", "text" => "make find_or_create_related check defined() instead of truth" }, { "line" => 1674, "raw" => " - don't unnecessarily fetch rels for cascade_update\n", "style" => "-", "text" => "don't unnecessarily fetch rels for cascade_update" }, { "line" => 1675, "raw" => " - don't set_columns explicitly in update_or_create; instead use\n update(\$hashref) so InflateColumn works\n", "style" => "-", "text" => "don't set_columns explicitly in update_or_create; instead use update(\$hashref) so InflateColumn works" }, { "line" => 1677, "raw" => " - fix for has_many prefetch with 0 related rows\n", "style" => "-", "text" => "fix for has_many prefetch with 0 related rows" }, { "line" => 1678, "raw" => " - make limit error if rows => 0\n", "style" => "-", "text" => "make limit error if rows => 0" }, { "line" => 1679, "raw" => " - added memory cycle tests and a long-needed weaken call\n\n", "style" => "-", "text" => "added memory cycle tests and a long-needed weaken call" } ], "line" => 1672, "raw" => "0.06003 2006-05-19 15:37:30\n", "raw_date" => "2006-05-19 15:37:30", "version" => "0.06003" }, { "date" => "2006-04-20T00:42:41Z", "entries" => [ { "line" => 1682, "raw" => " - fix set_from_related to accept undef\n", "style" => "-", "text" => "fix set_from_related to accept undef" }, { "line" => 1683, "raw" => " - fix to Dumper-induced hash iteration bug\n", "style" => "-", "text" => "fix to Dumper-induced hash iteration bug" }, { "line" => 1684, "raw" => " - fix to copy() with non-composed resultsource\n", "style" => "-", "text" => "fix to copy() with non-composed resultsource" }, { "line" => 1685, "raw" => " - fix to ->search without args to clone rs but maintain cache\n", "style" => "-", "text" => "fix to ->search without args to clone rs but maintain cache" }, { "line" => 1686, "raw" => " - grab \$self->dbh once per function in Storage::DBI\n", "style" => "-", "text" => "grab \$self->dbh once per function in Storage::DBI" }, { "line" => 1687, "raw" => " - nuke ResultSource caching of ->resultset for consistency reasons\n", "style" => "-", "text" => "nuke ResultSource caching of ->resultset for consistency reasons" }, { "line" => 1688, "raw" => " - fix for -and conditions when updating or deleting on a ResultSet\n\n", "style" => "-", "text" => "fix for -and conditions when updating or deleting on a ResultSet" } ], "line" => 1681, "raw" => "0.06002 2006-04-20 00:42:41\n", "raw_date" => "2006-04-20 00:42:41", "version" => "0.06002" }, { "entries" => [ { "line" => 1691, "raw" => " - Added fix for quoting with single table\n", "style" => "-", "text" => "Added fix for quoting with single table" }, { "line" => 1692, "raw" => " - Substantial fixes and improvements to deploy\n", "style" => "-", "text" => "Substantial fixes and improvements to deploy" }, { "line" => 1693, "raw" => " - slice now uses search directly\n", "style" => "-", "text" => "slice now uses search directly" }, { "line" => 1694, "raw" => " - fixes for update() on resultset\n", "style" => "-", "text" => "fixes for update() on resultset" }, { "line" => 1695, "raw" => " - bugfix to Cursor to avoid error during DESTROY\n", "style" => "-", "text" => "bugfix to Cursor to avoid error during DESTROY" }, { "line" => 1696, "raw" => " - transaction DBI operations now in debug trace output\n\n", "style" => "-", "text" => "transaction DBI operations now in debug trace output" } ], "line" => 1690, "raw" => "0.06001\n", "version" => "0.06001" }, { "date" => "2006-03-25T18:03:46Z", "entries" => [ { "line" => 1699, "raw" => " - Lots of documentation improvements\n", "style" => "-", "text" => "Lots of documentation improvements" }, { "line" => 1700, "raw" => " - Minor tweak to related_resultset to prevent it storing a searched rs\n", "style" => "-", "text" => "Minor tweak to related_resultset to prevent it storing a searched rs" }, { "line" => 1701, "raw" => " - Fixup to columns_info_for when database returns type(size)\n", "style" => "-", "text" => "Fixup to columns_info_for when database returns type(size)" }, { "line" => 1702, "raw" => " - Made do_txn respect void context (on the off-chance somebody cares)\n", "style" => "-", "text" => "Made do_txn respect void context (on the off-chance somebody cares)" }, { "line" => 1703, "raw" => " - Fix exception text for nonexistent key in ResultSet::find()\n\n", "style" => "-", "text" => "Fix exception text for nonexistent key in ResultSet::find()" } ], "line" => 1698, "raw" => "0.06000 2006-03-25 18:03:46\n", "raw_date" => "2006-03-25 18:03:46", "version" => "0.06000" }, { "date" => "2006-03-18T19:20:49Z", "entries" => [ { "line" => 1706, "raw" => " - Fix for delete on full-table resultsets\n", "style" => "-", "text" => "Fix for delete on full-table resultsets" }, { "line" => 1707, "raw" => " - Removed caching on count() and added _count for pager()\n", "style" => "-", "text" => "Removed caching on count() and added _count for pager()" }, { "line" => 1708, "raw" => " - ->connection does nothing if ->storage defined and no args\n (and hence ->connect acts like ->clone under the same conditions)\n", "style" => "-", "text" => "->connection does nothing if ->storage defined and no args (and hence ->connect acts like ->clone under the same conditions)" }, { "line" => 1710, "raw" => " - Storage::DBI throws better exception if no connect info\n", "style" => "-", "text" => "Storage::DBI throws better exception if no connect info" }, { "line" => 1711, "raw" => " - columns_info_for made more robust / informative\n", "style" => "-", "text" => "columns_info_for made more robust / informative" }, { "line" => 1712, "raw" => " - ithreads compat added, fork compat improved\n", "style" => "-", "text" => "ithreads compat added, fork compat improved" }, { "line" => 1713, "raw" => " - weaken result_source in all resultsets\n", "style" => "-", "text" => "weaken result_source in all resultsets" }, { "line" => 1714, "raw" => " - Make pg seq extractor less sensitive.\n\n", "style" => "-", "text" => "Make pg seq extractor less sensitive." } ], "line" => 1705, "raw" => "0.05999_04 2006-03-18 19:20:49\n", "raw_date" => "2006-03-18 19:20:49", "version" => "0.05999_04" }, { "date" => "2006-03-14T01:58:10Z", "entries" => [ { "line" => 1717, "raw" => " - has_many prefetch fixes\n", "style" => "-", "text" => "has_many prefetch fixes" }, { "line" => 1718, "raw" => " - deploy now adds drop statements before creates\n", "style" => "-", "text" => "deploy now adds drop statements before creates" }, { "line" => 1719, "raw" => " - deploy outputs debugging statements if DBIX_CLASS_STORAGE_DBI_DEBUG\n is set\n\n", "style" => "-", "text" => "deploy outputs debugging statements if DBIX_CLASS_STORAGE_DBI_DEBUG is set" } ], "line" => 1716, "raw" => "0.05999_03 2006-03-14 01:58:10\n", "raw_date" => "2006-03-14 01:58:10", "version" => "0.05999_03" }, { "date" => "2006-03-10T13:31:37Z", "entries" => [ { "line" => 1723, "raw" => " - remove test dep on YAML\n", "style" => "-", "text" => "remove test dep on YAML" }, { "line" => 1724, "raw" => " - additional speed tweaks for C3\n", "style" => "-", "text" => "additional speed tweaks for C3" }, { "line" => 1725, "raw" => " - allow scalarefs passed to order_by to go straight through to SQL\n", "style" => "-", "text" => "allow scalarefs passed to order_by to go straight through to SQL" }, { "line" => 1726, "raw" => " - renamed insert_or_update to update_or_insert (with compat alias)\n", "style" => "-", "text" => "renamed insert_or_update to update_or_insert (with compat alias)" }, { "line" => 1727, "raw" => " - hidden lots of packages from the PAUSE Indexer\n\n", "style" => "-", "text" => "hidden lots of packages from the PAUSE Indexer" } ], "line" => 1722, "raw" => "0.05999_02 2006-03-10 13:31:37\n", "raw_date" => "2006-03-10 13:31:37", "version" => "0.05999_02" }, { "date" => "2006-03-09T18:31:44Z", "entries" => [ { "line" => 1730, "raw" => " - renamed cols attribute to columns (cols still supported)\n", "style" => "-", "text" => "renamed cols attribute to columns (cols still supported)" }, { "line" => 1731, "raw" => " - added has_column_loaded to Row\n", "style" => "-", "text" => "added has_column_loaded to Row" }, { "line" => 1732, "raw" => " - Storage::DBI connect_info supports coderef returning dbh as 1st arg\n", "style" => "-", "text" => "Storage::DBI connect_info supports coderef returning dbh as 1st arg" }, { "line" => 1733, "raw" => " - load_components() doesn't prepend base when comp. prefixed with +\n", "style" => "-", "text" => "load_components() doesn't prepend base when comp. prefixed with +" }, { "line" => 1734, "raw" => " - \$schema->deploy\n", "style" => "-", "text" => "\$schema->deploy" }, { "line" => 1735, "raw" => " - HAVING support\n", "style" => "-", "text" => "HAVING support" }, { "line" => 1736, "raw" => " - prefetch for has_many\n", "style" => "-", "text" => "prefetch for has_many" }, { "line" => 1737, "raw" => " - cache attr for resultsets\n", "style" => "-", "text" => "cache attr for resultsets" }, { "line" => 1738, "raw" => " - PK::Auto::* no longer required since Storage::DBI::* handle auto-inc\n", "style" => "-", "text" => "PK::Auto::* no longer required since Storage::DBI::* handle auto-inc" }, { "line" => 1739, "raw" => " - minor tweak to tests for join edge case\n", "style" => "-", "text" => "minor tweak to tests for join edge case" }, { "line" => 1740, "raw" => " - added cascade_copy relationship attribute\n (sponsored by Airspace Software, http://www.airspace.co.uk/)\n", "style" => "-", "text" => "added cascade_copy relationship attribute (sponsored by Airspace Software, http://www.airspace.co.uk/)" }, { "line" => 1742, "raw" => " - clean up set_from_related\n", "style" => "-", "text" => "clean up set_from_related" }, { "line" => 1743, "raw" => " - made copy() automatically null out auto-inc columns\n", "style" => "-", "text" => "made copy() automatically null out auto-inc columns" }, { "line" => 1744, "raw" => " - added txn_do() method to Schema, which allows a coderef to be\n executed atomically\n\n", "style" => "-", "text" => "added txn_do() method to Schema, which allows a coderef to be executed atomically" } ], "line" => 1729, "raw" => "0.05999_01 2006-03-09 18:31:44\n", "raw_date" => "2006-03-09 18:31:44", "version" => "0.05999_01" }, { "date" => "2006-02-24T00:59:00Z", "entries" => [ { "line" => 1748, "raw" => " - tweak to Componentised for Class::C3 0.11\n", "style" => "-", "text" => "tweak to Componentised for Class::C3 0.11" }, { "line" => 1749, "raw" => " - fixes for auto-inc under MSSQL\n\n", "style" => "-", "text" => "fixes for auto-inc under MSSQL" } ], "line" => 1747, "raw" => "0.05007 2006-02-24 00:59:00\n", "raw_date" => "2006-02-24 00:59:00", "version" => "0.05007" }, { "date" => "2006-02-17T15:32:40Z", "entries" => [ { "line" => 1752, "raw" => " - storage fix for fork() and workaround for Apache::DBI\n", "style" => "-", "text" => "storage fix for fork() and workaround for Apache::DBI" }, { "line" => 1753, "raw" => " - made update(\\%hash) work on row as well as rs\n", "style" => "-", "text" => "made update(\\%hash) work on row as well as rs" }, { "line" => 1754, "raw" => " - another fix for count with scalar group_by\n", "style" => "-", "text" => "another fix for count with scalar group_by" }, { "line" => 1755, "raw" => " - remove dependency on Module::Find in 40resultsetmanager.t (RT #17598)\n\n", "style" => "-", "text" => "remove dependency on Module::Find in 40resultsetmanager.t (RT #17598)" } ], "line" => 1751, "raw" => "0.05006 2006-02-17 15:32:40\n", "raw_date" => "2006-02-17 15:32:40", "version" => "0.05006" }, { "date" => "2006-02-13T21:24:51Z", "entries" => [ { "line" => 1758, "raw" => " - remove build dependency on version.pm\n\n", "style" => "-", "text" => "remove build dependency on version.pm" } ], "line" => 1757, "raw" => "0.05005 2006-02-13 21:24:51\n", "raw_date" => "2006-02-13 21:24:51", "version" => "0.05005" }, { "date" => "2006-02-13T20:59:00Z", "entries" => [ { "line" => 1761, "raw" => " - allow specification of related columns via cols attr when primary\n keys of the related table are not fetched\n", "style" => "-", "text" => "allow specification of related columns via cols attr when primary keys of the related table are not fetched" }, { "line" => 1763, "raw" => " - fix count for group_by as scalar\n", "style" => "-", "text" => "fix count for group_by as scalar" }, { "line" => 1764, "raw" => " - add horrific fix to make Oracle's retarded limit syntax work\n", "style" => "-", "text" => "add horrific fix to make Oracle's retarded limit syntax work" }, { "line" => 1765, "raw" => " - remove Carp require\n", "style" => "-", "text" => "remove Carp require" }, { "line" => 1766, "raw" => " - changed UUIDColumns to use new UUIDMaker classes for uuid creation\n using whatever module may be available\n\n", "style" => "-", "text" => "changed UUIDColumns to use new UUIDMaker classes for uuid creation using whatever module may be available" } ], "line" => 1760, "raw" => "0.05004 2006-02-13 20:59:00\n", "raw_date" => "2006-02-13 20:59:00", "version" => "0.05004" }, { "date" => "2006-02-08T17:50:20Z", "entries" => [ { "line" => 1770, "raw" => " - add component_class accessors and use them for *_class\n", "style" => "-", "text" => "add component_class accessors and use them for *_class" }, { "line" => 1771, "raw" => " - small fixes to Serialize and ResultSetManager\n", "style" => "-", "text" => "small fixes to Serialize and ResultSetManager" }, { "line" => 1772, "raw" => " - rollback on disconnect, and disconnect on DESTROY\n\n", "style" => "-", "text" => "rollback on disconnect, and disconnect on DESTROY" } ], "line" => 1769, "raw" => "0.05003 2006-02-08 17:50:20\n", "raw_date" => "2006-02-08 17:50:20", "version" => "0.05003" }, { "date" => "2006-02-06T12:12:03Z", "entries" => [ { "line" => 1775, "raw" => " - Added recommends for Class::Inspector\n", "style" => "-", "text" => "Added recommends for Class::Inspector" }, { "line" => 1776, "raw" => " - Added skip_all to t/40resultsetmanager.t if no Class::Inspector\n available\n\n", "style" => "-", "text" => "Added skip_all to t/40resultsetmanager.t if no Class::Inspector available" } ], "line" => 1774, "raw" => "0.05002 2006-02-06 12:12:03\n", "raw_date" => "2006-02-06 12:12:03", "version" => "0.05002" }, { "date" => "2006-02-05T15:28:10Z", "entries" => [ { "line" => 1780, "raw" => " - debug output now prints NULL for undef params\n", "style" => "-", "text" => "debug output now prints NULL for undef params" }, { "line" => 1781, "raw" => " - multi-step prefetch along the same rel (e.g. for trees) now works\n", "style" => "-", "text" => "multi-step prefetch along the same rel (e.g. for trees) now works" }, { "line" => 1782, "raw" => " - added multi-join (join => [ 'foo', 'foo' ]), aliases second to foo_2\n", "style" => "-", "text" => "added multi-join (join => [ 'foo', 'foo' ]), aliases second to foo_2" }, { "line" => 1783, "raw" => " - hack PK::Auto::Pg for \"table\" names referencing a schema\n", "style" => "-", "text" => "hack PK::Auto::Pg for \"table\" names referencing a schema" }, { "line" => 1784, "raw" => " - find() with attributes works\n", "style" => "-", "text" => "find() with attributes works" }, { "line" => 1785, "raw" => " - added experimental Serialize and ResultSetManager components\n", "style" => "-", "text" => "added experimental Serialize and ResultSetManager components" }, { "line" => 1786, "raw" => " - added code attribute recording to DBIx::Class\n", "style" => "-", "text" => "added code attribute recording to DBIx::Class" }, { "line" => 1787, "raw" => " - fix to find() for complex resultsets\n", "style" => "-", "text" => "fix to find() for complex resultsets" }, { "line" => 1788, "raw" => " - added of \$storage->debugcb(sub { ... })\n", "style" => "-", "text" => "added of \$storage->debugcb(sub { ... })" }, { "line" => 1789, "raw" => " - added \$source->resultset_attributes accessor\n", "style" => "-", "text" => "added \$source->resultset_attributes accessor" }, { "line" => 1790, "raw" => " - added include_columns rs attr\n\n", "style" => "-", "text" => "added include_columns rs attr" } ], "line" => 1779, "raw" => "0.05001 2006-02-05 15:28:10\n", "raw_date" => "2006-02-05 15:28:10", "version" => "0.05001" }, { "date" => "2006-02-01T16:48:30Z", "entries" => [ { "line" => 1793, "raw" => " - assorted doc fixes\n", "style" => "-", "text" => "assorted doc fixes" }, { "line" => 1794, "raw" => " - remove ObjectCache, not yet working in 0.05\n", "style" => "-", "text" => "remove ObjectCache, not yet working in 0.05" }, { "line" => 1795, "raw" => " - let many_to_many rels have attrs\n", "style" => "-", "text" => "let many_to_many rels have attrs" }, { "line" => 1796, "raw" => " - fix ID method in PK.pm to be saner for new internals\n", "style" => "-", "text" => "fix ID method in PK.pm to be saner for new internals" }, { "line" => 1797, "raw" => " - fix t/30dbicplain.t to use ::Schema instead of\n Catalyst::Model::DBIC::Plain\n\n", "style" => "-", "text" => "fix t/30dbicplain.t to use ::Schema instead of Catalyst::Model::DBIC::Plain" } ], "line" => 1792, "raw" => "0.05000 2006-02-01 16:48:30\n", "raw_date" => "2006-02-01 16:48:30", "version" => "0.05000" }, { "date" => "2006-01-28T21:20:32Z", "entries" => [ { "line" => 1801, "raw" => " - fix Storage/DBI (tried to load deprecated ::Exception component)\n\n", "style" => "-", "text" => "fix Storage/DBI (tried to load deprecated ::Exception component)" } ], "line" => 1800, "raw" => "0.04999_06 2006-01-28 21:20:32\n", "raw_date" => "2006-01-28 21:20:32", "version" => "0.04999_06" }, { "date" => "2006-01-28T20:13:52Z", "entries" => [ { "line" => 1804, "raw" => " - count will now work for grouped resultsets\n", "style" => "-", "text" => "count will now work for grouped resultsets" }, { "line" => 1805, "raw" => " - added accessor => option to column_info to specify accessor name\n", "style" => "-", "text" => "added accessor => option to column_info to specify accessor name" }, { "line" => 1806, "raw" => " - added \$schema->populate to load test data (similar to AR fixtures)\n", "style" => "-", "text" => "added \$schema->populate to load test data (similar to AR fixtures)" }, { "line" => 1807, "raw" => " - removed cdbi-t dependencies, only run tests if installed\n", "style" => "-", "text" => "removed cdbi-t dependencies, only run tests if installed" }, { "line" => 1808, "raw" => " - Removed DBIx::Class::Exception\n", "style" => "-", "text" => "Removed DBIx::Class::Exception" }, { "line" => 1809, "raw" => " - unified throw_exception stuff, using Carp::Clan\n", "style" => "-", "text" => "unified throw_exception stuff, using Carp::Clan" }, { "line" => 1810, "raw" => " - report query when sth generation fails.\n", "style" => "-", "text" => "report query when sth generation fails." }, { "line" => 1811, "raw" => " - multi-step prefetch!\n", "style" => "-", "text" => "multi-step prefetch!" }, { "line" => 1812, "raw" => " - inheritance fixes\n", "style" => "-", "text" => "inheritance fixes" }, { "line" => 1813, "raw" => " - test tweaks\n\n", "style" => "-", "text" => "test tweaks" } ], "line" => 1803, "raw" => "0.04999_05 2006-01-28 20:13:52\n", "raw_date" => "2006-01-28 20:13:52", "version" => "0.04999_05" }, { "date" => "2006-01-24T21:48:21Z", "entries" => [ { "line" => 1816, "raw" => " - more documentation improvements\n", "style" => "-", "text" => "more documentation improvements" }, { "line" => 1817, "raw" => " - add columns_info_for for vendor-specific column info (Zbigniew\n Lukasiak)\n", "style" => "-", "text" => "add columns_info_for for vendor-specific column info (Zbigniew Lukasiak)" }, { "line" => 1819, "raw" => " - add SQL::Translator::Producer for DBIx::Class table classes (Jess\n Robinson)\n", "style" => "-", "text" => "add SQL::Translator::Producer for DBIx::Class table classes (Jess Robinson)" }, { "line" => 1821, "raw" => " - add unique constraint declaration (Daniel Westermann-Clark)\n", "style" => "-", "text" => "add unique constraint declaration (Daniel Westermann-Clark)" }, { "line" => 1822, "raw" => " - add new update_or_create method (Daniel Westermann-Clark)\n", "style" => "-", "text" => "add new update_or_create method (Daniel Westermann-Clark)" }, { "line" => 1823, "raw" => " - rename ResultSetInstance class to ResultSetProxy, ResultSourceInstance\n to ResultSourceProxy, and TableInstance to ResultSourceProxy::Table\n", "style" => "-", "text" => "rename ResultSetInstance class to ResultSetProxy, ResultSourceInstance to ResultSourceProxy, and TableInstance to ResultSourceProxy::Table" }, { "line" => 1825, "raw" => " - minor fixes to UUIDColumns\n", "style" => "-", "text" => "minor fixes to UUIDColumns" }, { "line" => 1826, "raw" => " - add debugfh method and ENV magic for tracing SQL (Nigel Metheringham)\n\n", "style" => "-", "text" => "add debugfh method and ENV magic for tracing SQL (Nigel Metheringham)" } ], "line" => 1815, "raw" => "0.04999_04 2006-01-24 21:48:21\n", "raw_date" => "2006-01-24 21:48:21", "version" => "0.04999_04" }, { "date" => "2006-01-20T06:05:27Z", "entries" => [ { "line" => 1829, "raw" => " - imported Jess Robinson's SQL::Translator::Parser::DBIx::Class\n", "style" => "-", "text" => "imported Jess Robinson's SQL::Translator::Parser::DBIx::Class" }, { "line" => 1830, "raw" => " - lots of internals cleanup to eliminate result_source_instance\n requirement\n", "style" => "-", "text" => "lots of internals cleanup to eliminate result_source_instance requirement" }, { "line" => 1832, "raw" => " - added register_column and register_relationship class APIs\n", "style" => "-", "text" => "added register_column and register_relationship class APIs" }, { "line" => 1833, "raw" => " - made Storage::DBI use prepare_cached safely (thanks to Tim Bunce)\n", "style" => "-", "text" => "made Storage::DBI use prepare_cached safely (thanks to Tim Bunce)" }, { "line" => 1834, "raw" => " - many documentation improvements (thanks guys!)\n", "style" => "-", "text" => "many documentation improvements (thanks guys!)" }, { "line" => 1835, "raw" => " - added ->connection, ->connect, ->register_source and ->clone schema\n methods\n", "style" => "-", "text" => "added ->connection, ->connect, ->register_source and ->clone schema methods" }, { "line" => 1837, "raw" => " - Use croak instead of die for user errors.\n\n", "style" => "-", "text" => "Use croak instead of die for user errors." } ], "line" => 1828, "raw" => "0.04999_03 2006-01-20 06:05:27\n", "raw_date" => "2006-01-20 06:05:27", "version" => "0.04999_03" }, { "date" => "2006-01-14T07:17:35Z", "entries" => [ { "line" => 1840, "raw" => " - Schema is now self-contained; no requirement for co-operation\n", "style" => "-", "text" => "Schema is now self-contained; no requirement for co-operation" }, { "line" => 1841, "raw" => " - add_relationship, relationships, relationship_info, has_relationship\n", "style" => "-", "text" => "add_relationship, relationships, relationship_info, has_relationship" }, { "line" => 1842, "raw" => " - relationship handling on ResultSource\n", "style" => "-", "text" => "relationship handling on ResultSource" }, { "line" => 1843, "raw" => " - all table handling now in Table.pm / ResultSource.pm\n", "style" => "-", "text" => "all table handling now in Table.pm / ResultSource.pm" }, { "line" => 1844, "raw" => " - added GROUP BY and DISTINCT support\n", "style" => "-", "text" => "added GROUP BY and DISTINCT support" }, { "line" => 1845, "raw" => " - hacked around SQL::Abstract::Limit some more in DBIC::SQL::Abstract\n (this may have fixed complex quoting)\n", "style" => "-", "text" => "hacked around SQL::Abstract::Limit some more in DBIC::SQL::Abstract (this may have fixed complex quoting)" }, { "line" => 1847, "raw" => " - moved inflation to inflate_result in Row.pm\n", "style" => "-", "text" => "moved inflation to inflate_result in Row.pm" }, { "line" => 1848, "raw" => " - added \$rs->search_related\n", "style" => "-", "text" => "added \$rs->search_related" }, { "line" => 1849, "raw" => " - split compose_namespace out of compose_connection in Schema\n", "style" => "-", "text" => "split compose_namespace out of compose_connection in Schema" }, { "line" => 1850, "raw" => " - ResultSet now handles find\n", "style" => "-", "text" => "ResultSet now handles find" }, { "line" => 1851, "raw" => " - various *_related methods are now ->search_related->*\n", "style" => "-", "text" => "various *_related methods are now ->search_related->*" }, { "line" => 1852, "raw" => " - added new_result to ResultSet\n\n", "style" => "-", "text" => "added new_result to ResultSet" } ], "line" => 1839, "raw" => "0.04999_02 2006-01-14 07:17:35\n", "raw_date" => "2006-01-14 07:17:35", "version" => "0.04999_02" }, { "date" => "2005-12-27T03:33:42Z", "entries" => [ { "line" => 1855, "raw" => " - search and related methods moved to ResultSet\n", "style" => "-", "text" => "search and related methods moved to ResultSet" }, { "line" => 1856, "raw" => " - select and as added to ResultSet attrs\n", "style" => "-", "text" => "select and as added to ResultSet attrs" }, { "line" => 1857, "raw" => " - added DBIx::Class::Table and TableInstance for table-per-class\n", "style" => "-", "text" => "added DBIx::Class::Table and TableInstance for table-per-class" }, { "line" => 1858, "raw" => " - added DBIx::Class::ResultSetInstance which handles proxying\n search etc. as a superclass of DBIx::Class::DB\n", "style" => "-", "text" => "added DBIx::Class::ResultSetInstance which handles proxying search etc. as a superclass of DBIx::Class::DB" }, { "line" => 1860, "raw" => " - assorted test and code cleanup work\n\n", "style" => "-", "text" => "assorted test and code cleanup work" } ], "line" => 1854, "raw" => "0.04999_01 2005-12-27 03:33:42\n", "raw_date" => "2005-12-27 03:33:42", "version" => "0.04999_01" }, { "date" => "2005-12-13T22:00:00Z", "entries" => [ { "line" => 1863, "raw" => " - Fix so set_inflated_column calls set_column\n", "style" => "-", "text" => "Fix so set_inflated_column calls set_column" }, { "line" => 1864, "raw" => " - Syntax errors in relationship classes are now reported\n", "style" => "-", "text" => "Syntax errors in relationship classes are now reported" }, { "line" => 1865, "raw" => " - Better error detection in set_primary_key and columns methods\n", "style" => "-", "text" => "Better error detection in set_primary_key and columns methods" }, { "line" => 1866, "raw" => " - Documentation improvements\n", "style" => "-", "text" => "Documentation improvements" }, { "line" => 1867, "raw" => " - Better transaction support with txn_* methods\n", "style" => "-", "text" => "Better transaction support with txn_* methods" }, { "line" => 1868, "raw" => " - belongs_to now works when \$cond is a string\n", "style" => "-", "text" => "belongs_to now works when \$cond is a string" }, { "line" => 1869, "raw" => " - PK::Auto::Pg updated, only tries primary keys instead of all cols\n\n", "style" => "-", "text" => "PK::Auto::Pg updated, only tries primary keys instead of all cols" } ], "line" => 1862, "raw" => "0.04001 2005-12-13 22:00:00\n", "raw_date" => "2005-12-13 22:00:00", "version" => "0.04001" }, { "date" => "2005-11-26", "entries" => [ { "line" => 1872, "raw" => " - Moved get_simple and set_simple into AccessorGroup\n", "style" => "-", "text" => "Moved get_simple and set_simple into AccessorGroup" }, { "line" => 1873, "raw" => " - Made 'new' die if given invalid columns\n", "style" => "-", "text" => "Made 'new' die if given invalid columns" }, { "line" => 1874, "raw" => " - Added has_column and column_info to Table.pm\n", "style" => "-", "text" => "Added has_column and column_info to Table.pm" }, { "line" => 1875, "raw" => " - Refactored away from direct use of _columns and _primaries\n", "style" => "-", "text" => "Refactored away from direct use of _columns and _primaries" }, { "line" => 1876, "raw" => " - Switched from NEXT to Class::C3\n\n", "style" => "-", "text" => "Switched from NEXT to Class::C3" } ], "line" => 1871, "raw" => "0.04 2005-11-26\n", "raw_date" => "2005-11-26", "version" => "0.04" }, { "entries" => [ { "line" => 1879, "raw" => " - Added an || '' to the CDBICompat stringify to avoid null warnings\n", "style" => "-", "text" => "Added an || '' to the CDBICompat stringify to avoid null warnings" }, { "line" => 1880, "raw" => " - Updated name section for manual pods\n", "style" => "-", "text" => "Updated name section for manual pods" } ], "line" => 1878, "raw" => "0.03004\n", "version" => "0.03004" }, { "date" => "2005-11-03T17:00:00Z", "entries" => [ { "line" => 1882, "raw" => " - POD fixes.\n", "style" => "-", "text" => "POD fixes." }, { "line" => 1883, "raw" => " - Changed use to require in Relationship/Base to avoid import.\n\n", "style" => "-", "text" => "Changed use to require in Relationship/Base to avoid import." } ], "line" => 1881, "raw" => "0.03003 2005-11-03 17:00:00\n", "raw_date" => "2005-11-03 17:00:00", "version" => "0.03003" }, { "date" => "2005-10-20T22:35:00Z", "entries" => [ { "line" => 1886, "raw" => " - Minor bugfix to new (Row.pm)\n", "style" => "-", "text" => "Minor bugfix to new (Row.pm)" }, { "line" => 1887, "raw" => " - Schema doesn't die if it can't load a class (Schema.pm)\n", "style" => "-", "text" => "Schema doesn't die if it can't load a class (Schema.pm)" }, { "line" => 1888, "raw" => " - New UUID columns plugin (UUIDColumns.pm)\n", "style" => "-", "text" => "New UUID columns plugin (UUIDColumns.pm)" }, { "line" => 1889, "raw" => " - Documentation improvements.\n\n", "style" => "-", "text" => "Documentation improvements." } ], "line" => 1885, "raw" => "0.03002 2005-10-20 22:35:00\n", "raw_date" => "2005-10-20 22:35:00", "version" => "0.03002" }, { "date" => "2005-09-23T14:00:00Z", "entries" => [ { "line" => 1892, "raw" => " - Fixes to relationship helpers\n", "style" => "-", "text" => "Fixes to relationship helpers" }, { "line" => 1893, "raw" => " - IMPORTANT: prefetch/schema combination bug fix\n\n", "style" => "-", "text" => "IMPORTANT: prefetch/schema combination bug fix" } ], "line" => 1891, "raw" => "0.03001 2005-09-23 14:00:00\n", "raw_date" => "2005-09-23 14:00:00", "version" => "0.03001" }, { "date" => "2005-09-19T19:35:00Z", "entries" => [ { "line" => 1896, "raw" => " - Paging support\n", "style" => "-", "text" => "Paging support" }, { "line" => 1897, "raw" => " - Join support on search\n", "style" => "-", "text" => "Join support on search" }, { "line" => 1898, "raw" => " - Prefetch support on search\n\n", "style" => "-", "text" => "Prefetch support on search" } ], "line" => 1895, "raw" => "0.03 2005-09-19 19:35:00\n", "raw_date" => "2005-09-19 19:35:00", "version" => "0.03" }, { "date" => "2005-08-12T18:00:00Z", "entries" => [ { "line" => 1901, "raw" => " - Test fixes.\n", "style" => "-", "text" => "Test fixes." }, { "line" => 1902, "raw" => " - Performance improvements.\n", "style" => "-", "text" => "Performance improvements." }, { "line" => 1903, "raw" => " - Oracle primary key support.\n", "style" => "-", "text" => "Oracle primary key support." }, { "line" => 1904, "raw" => " - MS-SQL primary key support.\n", "style" => "-", "text" => "MS-SQL primary key support." }, { "line" => 1905, "raw" => " - SQL::Abstract::Limit integration for database-agnostic limiting.\n\n", "style" => "-", "text" => "SQL::Abstract::Limit integration for database-agnostic limiting." } ], "line" => 1900, "raw" => "0.02 2005-08-12 18:00:00\n", "raw_date" => "2005-08-12 18:00:00", "version" => "0.02" }, { "date" => "2005-08-08T17:10:00Z", "entries" => [ { "line" => 1908, "raw" => " - initial release\n\n", "style" => "-", "text" => "initial release" } ], "line" => 1907, "raw" => "0.01 2005-08-08 17:10:00\n", "raw_date" => "2005-08-08 17:10:00", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/SWISH-Prog.parsed000644 000000 000000 00000154102 14472651645 017664 0ustar00000000 000000 { "preamble" => "Revision history for Perl extension Prog.", "raw_preamble" => "Revision history for Perl extension Prog.\n\n", "releases" => [ { "entries" => [ { "entries" => [ { "line" => 5, "raw" => " * remove --lucy_highlightable and replace with -I (--Indexer_opts)\n", "style" => "*", "text" => "remove --lucy_highlightable and replace with -I (--Indexer_opts)" }, { "line" => 6, "raw" => " * rename --aggregator_opts to --Aggregator_opts\n \n", "style" => "*", "text" => "rename --aggregator_opts to --Aggregator_opts" } ], "line" => 4, "raw" => " - 3.1.0 release of swish3 cli:\n", "style" => "-", "text" => "3.1.0 release of swish3 cli:" } ], "line" => 3, "note" => "11 Dec 2013", "raw" => "0.75 11 Dec 2013\n", "version" => "0.75" }, { "entries" => [ { "line" => 9, "raw" => " - packaaging clean up only\n\n", "style" => "-", "text" => "packaaging clean up only" } ], "line" => 8, "note" => "01 Oct 2013", "raw" => "0.74 01 Oct 2013\n", "version" => "0.74" }, { "entries" => [ { "line" => 12, "raw" => " - turn off Pod tests unless RELEASE_TESTING env var set. Pod::Coverage\n failures were because optional dependencies were not present but module\n load was attempted in order to walk symbol tree for pod tests.\n\n", "style" => "-", "text" => "turn off Pod tests unless RELEASE_TESTING env var set. Pod::Coverage failures were because optional dependencies were not present but module load was attempted in order to walk symbol tree for pod tests." } ], "line" => 11, "note" => "12 Sept 2013", "raw" => "0.73 12 Sept 2013\n", "version" => "0.73" }, { "entries" => [ { "line" => 17, "raw" => " - add TRACE_ALL to pod-coverage test to discover why it suddenly started\n epic fail\n", "style" => "-", "text" => "add TRACE_ALL to pod-coverage test to discover why it suddenly started epic fail" }, { "line" => 19, "raw" => " - add explicit port to t/17-spider-server, running on 5002\n\n", "style" => "-", "text" => "add explicit port to t/17-spider-server, running on 5002" } ], "line" => 16, "note" => "10 Sept 2013", "raw" => "0.72 10 Sept 2013\n", "version" => "0.72" }, { "entries" => [ { "line" => 22, "raw" => " - add --null_term feature to swish3 example\n", "style" => "-", "text" => "add --null_term feature to swish3 example" }, { "line" => 23, "raw" => " - add sitemap support to Spider\n", "style" => "-", "text" => "add sitemap support to Spider" }, { "line" => 24, "raw" => " - swish3 -W sets SWISH_PARSER_WARNINGS env var\n\n", "style" => "-", "text" => "swish3 -W sets SWISH_PARSER_WARNINGS env var" } ], "line" => 21, "note" => "1 Aug 2013", "raw" => "0.71 1 Aug 2013\n", "version" => "0.71" }, { "entries" => [ { "line" => 27, "raw" => " - add tests for Utils class.\n", "style" => "-", "text" => "add tests for Utils class." }, { "line" => 28, "raw" => " - Utils extension regex now matches \\w+ rather than hardcoded document\n extensions.\n\n", "style" => "-", "text" => "Utils extension regex now matches \\w+ rather than hardcoded document extensions." } ], "line" => 26, "note" => "10 Feb 2013", "raw" => "0.70 10 Feb 2013\n", "version" => "0.70" }, { "entries" => [ { "line" => 32, "raw" => " - fix documentation for SWISH::Prog::InvIndex::Meta, add data() accessor\n method.\n\n", "style" => "-", "text" => "fix documentation for SWISH::Prog::InvIndex::Meta, add data() accessor method." } ], "line" => 31, "note" => "05 Feb 2013", "raw" => "0.69 05 Feb 2013\n", "version" => "0.69" }, { "entries" => [ { "line" => 36, "raw" => " - fix failing test t/17-spider-server with 'use base' vs '\@ISA'\n", "style" => "-", "text" => "fix failing test t/17-spider-server with 'use base' vs '\@ISA'" }, { "line" => 37, "raw" => " - force URI objects to stringify when passing in/out of cache\n\n", "style" => "-", "text" => "force URI objects to stringify when passing in/out of cache" } ], "line" => 35, "note" => "23 Jan 2013", "raw" => "0.68 23 Jan 2013\n", "version" => "0.68" }, { "entries" => [ { "line" => 40, "raw" => " - Spider now uses LWP::RobotUA to respect robots.txt. Dependency on\n WWW::Mechanize is removed.\n", "style" => "-", "text" => "Spider now uses LWP::RobotUA to respect robots.txt. Dependency on WWW::Mechanize is removed." }, { "line" => 42, "raw" => " - Spider authorization features now work. Added bona fide test suite for\n spidering.\n", "style" => "-", "text" => "Spider authorization features now work. Added bona fide test suite for spidering." }, { "line" => 44, "raw" => " - expand Queue API to add remove() and clean() and internal locking on\n get()\n", "style" => "-", "text" => "expand Queue API to add remove() and clean() and internal locking on get()" }, { "line" => 46, "raw" => " - Spider->modified_since feature to allow for incremental crawls\n", "style" => "-", "text" => "Spider->modified_since feature to allow for incremental crawls" }, { "line" => 47, "raw" => " - Added new class SWISH::Prog::Aggregator::Spider::Response, refactoring\n appropriate UA methods into Response class since WWW::Mechanize was\n intentionally blurring the logical distinction.\n", "style" => "-", "text" => "Added new class SWISH::Prog::Aggregator::Spider::Response, refactoring appropriate UA methods into Response class since WWW::Mechanize was intentionally blurring the logical distinction." }, { "line" => 50, "raw" => " - Spider->file_rules (new feature) follows same code path as\n Aggregator::FS.\n", "style" => "-", "text" => "Spider->file_rules (new feature) follows same code path as Aggregator::FS." }, { "line" => 52, "raw" => " - added Utils::write_log and ::write_log_line methods for standardizing\n debug output\n\n", "style" => "-", "text" => "added Utils::write_log and ::write_log_line methods for standardizing debug output" } ], "line" => 39, "note" => "19 Jan 2013", "raw" => "0.67 19 Jan 2013\n", "version" => "0.67" }, { "entries" => [ { "line" => 56, "raw" => " - yanked redundant test t/09 as it is now part of Search::Tools\n", "style" => "-", "text" => "yanked redundant test t/09 as it is now part of Search::Tools" }, { "line" => 57, "raw" => " - fix t/05 spider to warn on correct missing module; fix spider count\n\n", "style" => "-", "text" => "fix t/05 spider to warn on correct missing module; fix spider count" } ], "line" => 55, "note" => "8 Dec 2012", "raw" => "0.66 8 Dec 2012\n", "version" => "0.66" }, { "entries" => [ { "line" => 60, "raw" => " - add more tests for MailFS aggregator\n", "style" => "-", "text" => "add more tests for MailFS aggregator" }, { "line" => 61, "raw" => " - all Aggregators now set content-type to valid MIME instead of custom\n Swish types\n", "style" => "-", "text" => "all Aggregators now set content-type to valid MIME instead of custom Swish types" }, { "line" => 63, "raw" => " - Aggregator->set_parser_from_type() will now not override a defined\n Doc->parser() value \n\n", "style" => "-", "text" => "Aggregator->set_parser_from_type() will now not override a defined Doc->parser() value" } ], "line" => 59, "note" => "5 Nov 2012", "raw" => "0.65 5 Nov 2012\n", "version" => "0.65" }, { "entries" => [ { "line" => 67, "raw" => " - add --aggregator_opts to swish3 and SWISH::Prog\n", "style" => "-", "text" => "add --aggregator_opts to swish3 and SWISH::Prog" }, { "line" => 68, "raw" => " - add looks_like_feed() to Spider, and add dependency on XML::Feed\n", "style" => "-", "text" => "add looks_like_feed() to Spider, and add dependency on XML::Feed" }, { "line" => 69, "raw" => " - switch Spider::UA parent class to WWW::Mechanize::GZip\n\n", "style" => "-", "text" => "switch Spider::UA parent class to WWW::Mechanize::GZip" } ], "line" => 66, "note" => "12 Oct 2012", "raw" => "0.64 12 Oct 2012\n", "version" => "0.64" }, { "entries" => [ { "line" => 72, "raw" => " - add TagAlias support to Config. TagAlias is a Swish3 feature.\n", "style" => "-", "text" => "add TagAlias support to Config. TagAlias is a Swish3 feature." }, { "line" => 73, "raw" => " - improve SWISH::Prog documentation\n", "style" => "-", "text" => "improve SWISH::Prog documentation" }, { "line" => 74, "raw" => " - add --doc_filter to swish3, to allow for set_filter to work from an\n external Perl file.\n\n", "style" => "-", "text" => "add --doc_filter to swish3, to allow for set_filter to work from an external Perl file." } ], "line" => 71, "note" => "11 Sept 2012", "raw" => "0.63 11 Sept 2012\n", "version" => "0.63" }, { "entries" => [ { "line" => 78, "raw" => " - support subclassing of Indexer in start() sanity check introduced in\n 0.61\n", "style" => "-", "text" => "support subclassing of Indexer in start() sanity check introduced in 0.61" }, { "line" => 80, "raw" => " - add InvIndex->meta_file method and avoid referring to swish.xml directly\n\n", "style" => "-", "text" => "add InvIndex->meta_file method and avoid referring to swish.xml directly" } ], "line" => 77, "note" => "3 Sept 2012", "raw" => "0.62 3 Sept 2012\n", "version" => "0.62" }, { "entries" => [ { "line" => 83, "raw" => " - swish3 now catches exceptions and re-throws errors\n", "style" => "-", "text" => "swish3 now catches exceptions and re-throws errors" }, { "line" => 84, "raw" => " - swish3 now passes --debug flag into Searcher->new\n", "style" => "-", "text" => "swish3 now passes --debug flag into Searcher->new" }, { "line" => 85, "raw" => " - base Indexer now performs check on existing indexes to verify that you\n aren't trying to run one format's Indexer against a different format's\n index.\n", "style" => "-", "text" => "base Indexer now performs check on existing indexes to verify that you aren't trying to run one format's Indexer against a different format's index." }, { "line" => 88, "raw" => " - swish_last_start file now created by base Indexer class, not swish3 cli.\n\n", "style" => "-", "text" => "swish_last_start file now created by base Indexer class, not swish3 cli." } ], "line" => 82, "note" => "23 Aug 2012", "raw" => "0.61 23 Aug 2012\n", "version" => "0.61" }, { "entries" => [ { "line" => 91, "raw" => " - add *_property methods to InvIndex::Meta\n", "style" => "-", "text" => "add *_property methods to InvIndex::Meta" }, { "line" => 92, "raw" => " - SWISH::3 now required dependency\n", "style" => "-", "text" => "SWISH::3 now required dependency" }, { "line" => 93, "raw" => " - added use_quotes and quote_char features to Aggregator::DBI, inspired by\n patch from Miko O'Sullivan.\n\n", "style" => "-", "text" => "added use_quotes and quote_char features to Aggregator::DBI, inspired by patch from Miko O'Sullivan." } ], "line" => 90, "note" => "28 July 2012", "raw" => "0.60 28 July 2012\n", "version" => "0.60" }, { "entries" => [ { "line" => 97, "raw" => " - add FollowXInclude support for Swish3\n\n", "style" => "-", "text" => "add FollowXInclude support for Swish3" } ], "line" => 96, "note" => "26 July 2012", "raw" => "0.59 26 July 2012\n", "version" => "0.59" }, { "entries" => [ { "line" => 100, "raw" => " - fix Config class for FuzzyIndexingMode conversion to XML (ver3)\n\n", "style" => "-", "text" => "fix Config class for FuzzyIndexingMode conversion to XML (ver3)" } ], "line" => 99, "note" => "26 June 2012", "raw" => "0.58 26 June 2012\n", "version" => "0.58" }, { "entries" => [ { "line" => 103, "raw" => " - change default max_depth in Spider to 1 (makes it actually work by\n default)\n\n", "style" => "-", "text" => "change default max_depth in Spider to 1 (makes it actually work by default)" } ], "line" => 102, "note" => "7 May 2012", "raw" => "0.57 7 May 2012\n", "version" => "0.57" }, { "entries" => [ { "line" => 107, "raw" => " - make swish3 stdin/stdout utf8 safe\n\n", "style" => "-", "text" => "make swish3 stdin/stdout utf8 safe" } ], "line" => 106, "note" => "2 Apr 2012", "raw" => "0.56 2 Apr 2012\n", "version" => "0.56" }, { "entries" => [ { "line" => 110, "raw" => " - fix skip test count in t/15\n\n", "style" => "-", "text" => "fix skip test count in t/15" } ], "line" => 109, "note" => "6 Nov 2011", "raw" => "0.55 6 Nov 2011\n", "version" => "0.55" }, { "entries" => [ { "line" => 113, "raw" => " - \$SWISH::Prog::Utils::DefaultExtension now let's you configure default\n file extension\n", "style" => "-", "text" => "\$SWISH::Prog::Utils::DefaultExtension now let's you configure default file extension" }, { "line" => 115, "raw" => " - fix SWISH::Prog::Config->new() to support perldoc's claims of passing in\n a hashref or named attribute pairs.\n\n", "style" => "-", "text" => "fix SWISH::Prog::Config->new() to support perldoc's claims of passing in a hashref or named attribute pairs." } ], "line" => 112, "note" => "14 Oct 2011", "raw" => "0.54 14 Oct 2011\n", "version" => "0.54" }, { "entries" => [ { "line" => 119, "raw" => " - fix DBI Aggregator to make code support docs for swishtitle and\n swishdescription. Bug reported by Logan Bell.\n", "style" => "-", "text" => "fix DBI Aggregator to make code support docs for swishtitle and swishdescription. Bug reported by Logan Bell." }, { "line" => 121, "raw" => " - fix FS Aggregator behavior to work like 2.x and not skip files with no\n extension.\n", "style" => "-", "text" => "fix FS Aggregator behavior to work like 2.x and not skip files with no extension." }, { "line" => 123, "raw" => " - fix bug in swish3 where index dir is not created before swish_last_start\n is touched.\n", "style" => "-", "text" => "fix bug in swish3 where index dir is not created before swish_last_start is touched." }, { "line" => 125, "raw" => " - confess() when swish.xml does not exist\n", "style" => "-", "text" => "confess() when swish.xml does not exist" }, { "line" => 126, "raw" => " - base Aggregator class no longer requires an indexer in new().\n\n", "style" => "-", "text" => "base Aggregator class no longer requires an indexer in new()." } ], "line" => 118, "note" => "09 Oct 2011", "raw" => "0.53 09 Oct 2011\n", "version" => "0.53" }, { "entries" => [ { "line" => 129, "raw" => " - add support for IndexFile config option\n", "style" => "-", "text" => "add support for IndexFile config option" }, { "line" => 130, "raw" => " - add --lucy_highlightable option to swish3\n", "style" => "-", "text" => "add --lucy_highlightable option to swish3" }, { "line" => 131, "raw" => " - new class SWISH::Prog::ReplaceRules for backcompat\n", "style" => "-", "text" => "new class SWISH::Prog::ReplaceRules for backcompat" }, { "line" => 132, "raw" => " - add get_stemmer_lang() method to Config class for Snowball stemmer\n forward-compat.\n\n", "style" => "-", "text" => "add get_stemmer_lang() method to Config class for Snowball stemmer forward-compat." } ], "line" => 128, "note" => "26 Sept 2011", "raw" => "0.52 26 Sept 2011\n", "version" => "0.52" }, { "entries" => [ { "line" => 136, "raw" => " - add 'Lucy' backend\n\n", "style" => "-", "text" => "add 'Lucy' backend" } ], "line" => 135, "note" => "28 June 2011", "raw" => "0.51 28 June 2011\n", "version" => "0.51" }, { "entries" => [ { "line" => 139, "raw" => " - make swish3 -N flag argument optional, defaulting to\n indexdir/swish_last_start\n", "style" => "-", "text" => "make swish3 -N flag argument optional, defaulting to indexdir/swish_last_start" }, { "line" => 141, "raw" => " - error check in base Indexer for valid invindex param\n", "style" => "-", "text" => "error check in base Indexer for valid invindex param" }, { "line" => 142, "raw" => " - misc doc fixes\n\n", "style" => "-", "text" => "misc doc fixes" } ], "line" => 138, "note" => "22 Feb 2011", "raw" => "0.50 22 Feb 2011\n", "version" => "0.50" }, { "entries" => [ { "line" => 145, "raw" => " - refactor FileRules feature into File::Rules module\n\n", "style" => "-", "text" => "refactor FileRules feature into File::Rules module" } ], "line" => 144, "note" => "07 Jan 2011", "raw" => "0.49 07 Jan 2011\n", "version" => "0.49" }, { "entries" => [ { "line" => 148, "raw" => " - added progress() feature to Aggregator classes, and 'expected' param to\n swish3.\n", "style" => "-", "text" => "added progress() feature to Aggregator classes, and 'expected' param to swish3." }, { "line" => 150, "raw" => " - add CascadeMetaContext config option for Swish3 compatibility\n", "style" => "-", "text" => "add CascadeMetaContext config option for Swish3 compatibility" }, { "line" => 151, "raw" => " - bump SWISH::3 (optional) dependency to 0.09\n", "style" => "-", "text" => "bump SWISH::3 (optional) dependency to 0.09" }, { "line" => 152, "raw" => " - fix MailFS aggregator to preserve filesystem paths as Doc url\n\n", "style" => "-", "text" => "fix MailFS aggregator to preserve filesystem paths as Doc url" } ], "line" => 147, "note" => "03 Nov 2010", "raw" => "0.48 03 Nov 2010\n", "version" => "0.48" }, { "entries" => [ { "line" => 155, "raw" => " - add Search time to swish3 (3.0.7)\n", "style" => "-", "text" => "add Search time to swish3 (3.0.7)" }, { "line" => 156, "raw" => " - fix bug in Native::Searcher affecting fieldtypes\n\n", "style" => "-", "text" => "fix bug in Native::Searcher affecting fieldtypes" } ], "line" => 154, "note" => "25 July 2010", "raw" => "0.47 25 July 2010\n", "version" => "0.47" }, { "entries" => [ { "line" => 159, "raw" => " - add dep on Search::Query\n", "style" => "-", "text" => "add dep on Search::Query" }, { "line" => 160, "raw" => " - add default_boolop feature to Native::Searcher\n", "style" => "-", "text" => "add default_boolop feature to Native::Searcher" }, { "line" => 161, "raw" => " - fix IncludeConfigFile recursionin Config->ver2_to_ver()\n\n", "style" => "-", "text" => "fix IncludeConfigFile recursionin Config->ver2_to_ver()" } ], "line" => 158, "note" => "22 June 2010", "raw" => "0.46 22 June 2010\n", "version" => "0.46" }, { "entries" => [ { "line" => 164, "raw" => " - fix swish3 to allow \"swishrank\" as -x option\n", "style" => "-", "text" => "fix swish3 to allow \"swishrank\" as -x option" }, { "line" => 165, "raw" => " - enable -H option in swish3\n", "style" => "-", "text" => "enable -H option in swish3" }, { "line" => 166, "raw" => " - SWISH::3->slurp optimization now uses transparent gunzip feature.\n Requires SWISH::3 >= 0.06.\n", "style" => "-", "text" => "SWISH::3->slurp optimization now uses transparent gunzip feature. Requires SWISH::3 >= 0.06." }, { "line" => 168, "raw" => " - fix backcompat for DefaultContents config in Config->ver2_to_ver3()\n\n", "style" => "-", "text" => "fix backcompat for DefaultContents config in Config->ver2_to_ver3()" } ], "line" => 163, "note" => "08 May 2010", "raw" => "0.45 08 May 2010\n", "version" => "0.45" }, { "entries" => [ { "line" => 171, "raw" => " - register MailFS aggregator as 'mailfs' for use with swish3 -S\n\n", "style" => "-", "text" => "register MailFS aggregator as 'mailfs' for use with swish3 -S" } ], "line" => 170, "note" => "19 Mar 2010", "raw" => "0.44 19 Mar 2010\n", "version" => "0.44" }, { "entries" => [ { "line" => 174, "raw" => " - remove docs and method for 'sort_order' in abstract Searcher class. No\n subclass uses it, deferring to 'order' in the search() method opts.\n", "style" => "-", "text" => "remove docs and method for 'sort_order' in abstract Searcher class. No subclass uses it, deferring to 'order' in the search() method opts." }, { "line" => 176, "raw" => " - FS->crawl now returns count\n", "style" => "-", "text" => "FS->crawl now returns count" }, { "line" => 177, "raw" => " - add MailFS aggregator class\n\n", "style" => "-", "text" => "add MailFS aggregator class" } ], "line" => 173, "note" => "19 Mar 2010", "raw" => "0.43 19 Mar 2010\n", "version" => "0.43" }, { "entries" => [ { "line" => 180, "raw" => " - add invindex format to search output headers in swish3\n", "style" => "-", "text" => "add invindex format to search output headers in swish3" }, { "line" => 181, "raw" => " - add parsed query to search output headers in swish3; add query() method\n to base Results class.\n", "style" => "-", "text" => "add parsed query to search output headers in swish3; add query() method to base Results class." }, { "line" => 183, "raw" => " - add progress_size to Aggregator and implement in FS.\n\n", "style" => "-", "text" => "add progress_size to Aggregator and implement in FS." } ], "line" => 179, "note" => "27 Feb 2010", "raw" => "0.42 27 Feb 2010\n", "version" => "0.42" }, { "entries" => [ { "line" => 186, "raw" => " - fix the check_swish() feature in Native::Indexer to only return the\n version number, not the whole output of swish-e -V (fixes the -D fix in\n 0.40).\n\n", "style" => "-", "text" => "fix the check_swish() feature in Native::Indexer to only return the version number, not the whole output of swish-e -V (fixes the -D fix in 0.40)." } ], "line" => 185, "note" => "10 Feb 2010", "raw" => "0.41 10 Feb 2010\n", "version" => "0.41" }, { "entries" => [ { "line" => 191, "raw" => " - make -D '\\x03' optional in Native::Indexer based on which version of\n swish-e is available. The -D feature is only in 2.4.8 or newer.\n\n", "style" => "-", "text" => "make -D '\\x03' optional in Native::Indexer based on which version of swish-e is available. The -D feature is only in 2.4.8 or newer." } ], "line" => 190, "note" => "09 Feb 2010", "raw" => "0.40 09 Feb 2010\n", "version" => "0.40" }, { "entries" => [ { "line" => 195, "raw" => " - add fix for systems using Swish-e 2.6, which doesn't create a\n index.swish-e file.\n", "style" => "-", "text" => "add fix for systems using Swish-e 2.6, which doesn't create a index.swish-e file." }, { "line" => 197, "raw" => " - remove the requires_external_bin from Makefile.PL since KSx and Xapian\n do not require swish-e but do require SWISH::Prog. Fix tests (which also\n check for swish-e) to SKIP the correct number of tests.\n\n", "style" => "-", "text" => "remove the requires_external_bin from Makefile.PL since KSx and Xapian do not require swish-e but do require SWISH::Prog. Fix tests (which also check for swish-e) to SKIP the correct number of tests." } ], "line" => 194, "note" => "07 Feb 2010", "raw" => "0.39 07 Feb 2010\n", "version" => "0.39" }, { "entries" => [ { "line" => 202, "raw" => " - add support for 'order', 'limit', 'start', 'max' and 'rank_scheme' in\n Native::Searcher.\n", "style" => "-", "text" => "add support for 'order', 'limit', 'start', 'max' and 'rank_scheme' in Native::Searcher." }, { "line" => 204, "raw" => " - Utils->perl_to_xml() moved to Search::Tools::XML (where it really\n belonged).\n", "style" => "-", "text" => "Utils->perl_to_xml() moved to Search::Tools::XML (where it really belonged)." }, { "line" => 206, "raw" => " - enable more options to swish3\n\n", "style" => "-", "text" => "enable more options to swish3" } ], "line" => 201, "note" => "05 Feb 2010", "raw" => "0.38 05 Feb 2010\n", "version" => "0.38" }, { "entries" => [ { "line" => 209, "raw" => " - add -D '\\x03' to the Native::Indexer exec command. This mimics\n libswish3.\n", "style" => "-", "text" => "add -D '\\x03' to the Native::Indexer exec command. This mimics libswish3." }, { "line" => 211, "raw" => " - examples/swish3 now installed by default with usual make install.\n", "style" => "-", "text" => "examples/swish3 now installed by default with usual make install." }, { "line" => 212, "raw" => " - added -N option to swish3, along with ok_if_newer_than feature in\n Aggregator.\n", "style" => "-", "text" => "added -N option to swish3, along with ok_if_newer_than feature in Aggregator." }, { "line" => 214, "raw" => " - added dependency on Rose::DateTime.\n", "style" => "-", "text" => "added dependency on Rose::DateTime." }, { "line" => 215, "raw" => " - Native Indexer can now merge() and add().\n", "style" => "-", "text" => "Native Indexer can now merge() and add()." }, { "line" => 216, "raw" => " - -l and -M options now supported in swish3\n", "style" => "-", "text" => "-l and -M options now supported in swish3" }, { "line" => 217, "raw" => " - yank Query.pm and QueryParser.pm. They weren't used and the idea is now\n fleshed out in Search::Query if we ever need it.\n", "style" => "-", "text" => "yank Query.pm and QueryParser.pm. They weren't used and the idea is now fleshed out in Search::Query if we ever need it." }, { "line" => 219, "raw" => " - Searcher may now take an array of invindex values, and always returns an\n array ref of values.\n\n", "style" => "-", "text" => "Searcher may now take an array of invindex values, and always returns an array ref of values." } ], "line" => 208, "note" => "01 Feb 2010", "raw" => "0.37 01 Feb 2010\n", "version" => "0.37" }, { "entries" => [ { "line" => 223, "raw" => " - fix Config bug where StoreDescription was ignored in ver2_to_ver3()\n", "style" => "-", "text" => "fix Config bug where StoreDescription was ignored in ver2_to_ver3()" }, { "line" => 224, "raw" => " - switch to Module::Install \n", "style" => "-", "text" => "switch to Module::Install" }, { "line" => 225, "raw" => " - updates to example/swish3\n", "style" => "-", "text" => "updates to example/swish3" }, { "line" => 226, "raw" => " - fix t/03_object.t to test for JSON not YAML::Syck (see RT#53275)\n\n", "style" => "-", "text" => "fix t/03_object.t to test for JSON not YAML::Syck (see RT#53275)" } ], "line" => 222, "note" => "12 Jan 2009", "raw" => "0.36 12 Jan 2009\n", "version" => "0.36" }, { "entries" => [ { "line" => 229, "raw" => " - fix bug in Config where \$append flag was being interpreted as a\n MetaName/Property\n", "style" => "-", "text" => "fix bug in Config where \$append flag was being interpreted as a MetaName/Property" }, { "line" => 231, "raw" => " - fix bug in Config where ver2_to_ver3 was calling \$self->new instead of\n \$class->new when passed a filename.\n", "style" => "-", "text" => "fix bug in Config where ver2_to_ver3 was calling \$self->new instead of \$class->new when passed a filename." }, { "line" => 233, "raw" => " - fix bug in Spider where filter was not being passed correctly.\n\n", "style" => "-", "text" => "fix bug in Spider where filter was not being passed correctly." } ], "line" => 228, "note" => "09 Jan 2009", "raw" => "0.35 09 Jan 2009\n", "version" => "0.35" }, { "entries" => [ { "line" => 236, "raw" => " - fix mem leak test to include only those outside our control.\n", "style" => "-", "text" => "fix mem leak test to include only those outside our control." }, { "line" => 237, "raw" => " - add version() to SWISH::Prog::Doc to pick header style per instance.\n\n", "style" => "-", "text" => "add version() to SWISH::Prog::Doc to pick header style per instance." } ], "line" => 235, "note" => "07 Jan 2009", "raw" => "0.34 07 Jan 2009\n", "version" => "0.34" }, { "entries" => [ { "line" => 240, "raw" => " - fix bug where SWISH::3->slurp was being called with out binmode flag and\n .gz files were getting their NUL bytes stripped.\n", "style" => "-", "text" => "fix bug where SWISH::3->slurp was being called with out binmode flag and .gz files were getting their NUL bytes stripped." }, { "line" => 242, "raw" => " - add test_mode feature (set with SWISH_TEST env var)\n", "style" => "-", "text" => "add test_mode feature (set with SWISH_TEST env var)" }, { "line" => 243, "raw" => " - fix some memory leaks\n", "style" => "-", "text" => "fix some memory leaks" }, { "line" => 244, "raw" => " - fix JSON::XS dependency (JSON required, not JSON::XS).\n\n", "style" => "-", "text" => "fix JSON::XS dependency (JSON required, not JSON::XS)." } ], "line" => 239, "note" => "02 Jan 2010", "raw" => "0.33 02 Jan 2010\n", "version" => "0.33" }, { "entries" => [ { "line" => 247, "raw" => " - Config->ver2_to_ver3() method now supported.\n", "style" => "-", "text" => "Config->ver2_to_ver3() method now supported." }, { "line" => 248, "raw" => " - fix bug in Prog.pm to allow Config passed in aggregator and Indexer\n passed in aggregator\n", "style" => "-", "text" => "fix bug in Prog.pm to allow Config passed in aggregator and Indexer passed in aggregator" }, { "line" => 250, "raw" => " - removed dependency on Class::Accessor for Config.pm\n", "style" => "-", "text" => "removed dependency on Class::Accessor for Config.pm" }, { "line" => 251, "raw" => " - refactor internal handling of Config object so there is only ever one\n per Prog instance\n", "style" => "-", "text" => "refactor internal handling of Config object so there is only ever one per Prog instance" }, { "line" => 253, "raw" => " - refactor internal handling of Config to support SWISH::3::Config\n", "style" => "-", "text" => "refactor internal handling of Config to support SWISH::3::Config" }, { "line" => 254, "raw" => " - FileRules support now in Aggregator::FS\n\n", "style" => "-", "text" => "FileRules support now in Aggregator::FS" } ], "line" => 246, "note" => "12 Dec 2009", "raw" => "0.32 12 Dec 2009\n", "version" => "0.32" }, { "entries" => [ { "line" => 257, "raw" => " - POD fixes\n\n", "style" => "-", "text" => "POD fixes" } ], "line" => 256, "note" => "1 Dec 2009", "raw" => "0.31 1 Dec 2009\n", "version" => "0.31" }, { "entries" => [ { "line" => 260, "raw" => " - change KinoSearch to KSx in implementation registry\n", "style" => "-", "text" => "change KinoSearch to KSx in implementation registry" }, { "line" => 261, "raw" => " - fix bug in base Searcher where InvIndex class was not loaded.\n\n", "style" => "-", "text" => "fix bug in base Searcher where InvIndex class was not loaded." } ], "line" => 259, "note" => "29 Nov 2009", "raw" => "0.30 29 Nov 2009\n", "version" => "0.30" }, { "entries" => [ { "line" => 264, "raw" => " - add strip_plural option to Utils->perl_to_xml()\n", "style" => "-", "text" => "add strip_plural option to Utils->perl_to_xml()" }, { "line" => 265, "raw" => " - add count attribute to arrayref values of hashrefs in perl_to_xml()\n", "style" => "-", "text" => "add count attribute to arrayref values of hashrefs in perl_to_xml()" }, { "line" => 266, "raw" => " - fix method/param name strictness bug revealed by Rose::ObjectX::CAF\n 0.03. This mostly required internal param name changes to official\n method names.\n\n", "style" => "-", "text" => "fix method/param name strictness bug revealed by Rose::ObjectX::CAF 0.03. This mostly required internal param name changes to official method names." } ], "line" => 263, "note" => "8 Nov 2009", "raw" => "0.29 8 Nov 2009\n", "version" => "0.29" }, { "entries" => [ { "line" => 271, "raw" => " - add some missing calls to SUPER::init()\n\n", "style" => "-", "text" => "add some missing calls to SUPER::init()" } ], "line" => 270, "note" => "30 Sept 2009", "raw" => "0.28 30 Sept 2009\n", "version" => "0.28" }, { "entries" => [ { "line" => 274, "raw" => " - make QueryParser and Query part of the official install, even though\n there are still TODO items\n", "style" => "-", "text" => "make QueryParser and Query part of the official install, even though there are still TODO items" }, { "line" => 276, "raw" => " - add all_metanames() method to Config\n", "style" => "-", "text" => "add all_metanames() method to Config" }, { "line" => 277, "raw" => " - refactor to use Search::Tools and Rose::ObjectX::CAF instead of\n Class::Accessor::Fast\n\n", "style" => "-", "text" => "refactor to use Search::Tools and Rose::ObjectX::CAF instead of Class::Accessor::Fast" } ], "line" => 273, "note" => "28 Sep 2009", "raw" => "0.27 28 Sep 2009\n", "version" => "0.27" }, { "entries" => [ { "line" => 281, "raw" => " - fix off-by-one error in skip test count in t/03-object.t\n\n", "style" => "-", "text" => "fix off-by-one error in skip test count in t/03-object.t" } ], "line" => 280, "note" => "26 Feb 2009", "raw" => "0.26 26 Feb 2009\n", "version" => "0.26" }, { "entries" => [ { "line" => 284, "raw" => " - added more features to example/swish3\n", "style" => "-", "text" => "added more features to example/swish3" }, { "line" => 285, "raw" => " - add missing test file to MANIFEST\n", "style" => "-", "text" => "add missing test file to MANIFEST" }, { "line" => 286, "raw" => " - tests clean up after themselves wrt swish.xml header files\n\n", "style" => "-", "text" => "tests clean up after themselves wrt swish.xml header files" } ], "line" => 283, "note" => "26 Jan 2009", "raw" => "0.25 26 Jan 2009\n", "version" => "0.25" }, { "entries" => [ { "line" => 289, "raw" => " - add base Searcher, Results and Result classes\n", "style" => "-", "text" => "add base Searcher, Results and Result classes" }, { "line" => 290, "raw" => " - refactor QueryParser to use Search::QueryParser::SQL\n", "style" => "-", "text" => "refactor QueryParser to use Search::QueryParser::SQL" }, { "line" => 291, "raw" => " - flesh out the InvIndex::Meta class, adding XML::Simple dependency\n", "style" => "-", "text" => "flesh out the InvIndex::Meta class, adding XML::Simple dependency" }, { "line" => 292, "raw" => " - IMPORTANT: rename Native classes to match naming convention\n\n", "style" => "-", "text" => "IMPORTANT: rename Native classes to match naming convention" } ], "line" => 288, "note" => "20 Jan 2009 (Happy Obama Day!)", "raw" => "0.24 20 Jan 2009 (Happy Obama Day!)\n", "version" => "0.24" }, { "entries" => [ { "line" => 295, "raw" => " - properly clean up temp Config files\n\n", "style" => "-", "text" => "properly clean up temp Config files" } ], "line" => 294, "note" => "11 Dec 2008", "raw" => "0.23 11 Dec 2008\n", "version" => "0.23" }, { "entries" => [ { "line" => 298, "raw" => " - added support for SWISH::Prog::DBI\n", "style" => "-", "text" => "added support for SWISH::Prog::DBI" }, { "line" => 299, "raw" => " - use SWISH::3 for slurping files, if available.\n", "style" => "-", "text" => "use SWISH::3 for slurping files, if available." }, { "line" => 300, "raw" => " - fix bug in SWISH::Prog::Utils->perl_to_xml where hash refs were not\n getting tagged.\n\n", "style" => "-", "text" => "fix bug in SWISH::Prog::Utils->perl_to_xml where hash refs were not getting tagged." } ], "line" => 297, "note" => "10 Dec 2008", "raw" => "0.22 10 Dec 2008\n", "version" => "0.22" }, { "entries" => [ { "line" => 304, "raw" => " - fix tests to skip correct numbers if swish-e not installed\n", "style" => "-", "text" => "fix tests to skip correct numbers if swish-e not installed" }, { "line" => 305, "raw" => " - change to JSON::XS and make json default format in Aggregator::Object\n", "style" => "-", "text" => "change to JSON::XS and make json default format in Aggregator::Object" }, { "line" => 306, "raw" => " - add perl_to_xml() in Utils\n", "style" => "-", "text" => "add perl_to_xml() in Utils" }, { "line" => 307, "raw" => " - change t/04 to manually create dirs at test time\n\n", "style" => "-", "text" => "change t/04 to manually create dirs at test time" } ], "line" => 303, "note" => "31 Oct 2008", "raw" => "0.21 31 Oct 2008\n", "version" => "0.21" }, { "entries" => [ { "line" => 310, "raw" => " - complete rewrite of the API for Swish3 development\n\n", "style" => "-", "text" => "complete rewrite of the API for Swish3 development" } ], "line" => 309, "note" => "23 April 2008", "raw" => "0.20 23 April 2008\n", "version" => "0.20" }, { "entries" => [ { "line" => 313, "raw" => " - added S::P::Mail class and example swishmail.pl script\n", "style" => "-", "text" => "added S::P::Mail class and example swishmail.pl script" }, { "line" => 314, "raw" => " - sync all \$VERSION vars to same value\n", "style" => "-", "text" => "sync all \$VERSION vars to same value" }, { "line" => 315, "raw" => " - allow for non-standard docclass names\n\n", "style" => "-", "text" => "allow for non-standard docclass names" } ], "line" => 312, "note" => "22 Nov 2007", "raw" => "0.08 22 Nov 2007\n", "version" => "0.08" }, { "entries" => [], "line" => 317, "note" => "S::P::Object iterator now uses more idiomatic while/next algorithm.", "raw" => "0.07 * S::P::Object iterator now uses more idiomatic while/next algorithm.\n\n", "version" => "0.07" }, { "entries" => [], "line" => 319, "note" => "S::P::Object now defers to explicit 'config' passed in new().", "raw" => "0.06 * S::P::Object now defers to explicit 'config' passed in new().\n\n", "version" => "0.06" }, { "entries" => [ { "line" => 322, "raw" => " - This change is sync'd with SWISH::API::Object 0.0.6\n\n", "style" => "-", "text" => "This change is sync'd with SWISH::API::Object 0.0.6" } ], "line" => 321, "note" => "S::P::Object now uses JSON or YAML to serialize values instead of Data::Dump", "raw" => "0.05 * S::P::Object now uses JSON or YAML to serialize values instead of Data::Dump\n", "version" => "0.05" }, { "entries" => [ { "line" => 325, "raw" => " - fixed bug with auto-defining metanames\n", "style" => "-", "text" => "fixed bug with auto-defining metanames" }, { "line" => 326, "raw" => " - S::P::Config always returns arrayref on directive method calls\n", "style" => "-", "text" => "S::P::Config always returns arrayref on directive method calls" }, { "line" => 327, "raw" => " - use MIME::Types instead of File::Type\n", "style" => "-", "text" => "use MIME::Types instead of File::Type" }, { "line" => 328, "raw" => " - S::P::Find now uses File::Find instead of Path::Class::Iterator\n", "style" => "-", "text" => "S::P::Find now uses File::Find instead of Path::Class::Iterator" }, { "line" => 329, "raw" => " - S::P::Object obj_filter() must return an object of some kind\n", "style" => "-", "text" => "S::P::Object obj_filter() must return an object of some kind" }, { "line" => 330, "raw" => " - S::P::Object will not dump() scalar strings, thus avoiding extra quotes\n", "style" => "-", "text" => "S::P::Object will not dump() scalar strings, thus avoiding extra quotes" }, { "line" => 331, "raw" => " - S::P::Config added stringify() method and reverted from IO::All to\n File::Slurp\n", "style" => "-", "text" => "S::P::Config added stringify() method and reverted from IO::All to File::Slurp" }, { "line" => 333, "raw" => " - S::Prog added elapsed() method\n", "style" => "-", "text" => "S::Prog added elapsed() method" }, { "line" => 334, "raw" => " - S::Prog new() verbose now defaults to 1\n\n", "style" => "-", "text" => "S::Prog new() verbose now defaults to 1" } ], "line" => 324, "note" => "S::P::DBI no longer calls disconnect() on db handle in DESTROY", "raw" => "0.04 * S::P::DBI no longer calls disconnect() on db handle in DESTROY\n", "version" => "0.04" }, { "entries" => [ { "line" => 337, "raw" => " - test indexes are removed as part of 'make clean'\n", "style" => "-", "text" => "test indexes are removed as part of 'make clean'" }, { "line" => 338, "raw" => " - switched from Data::Dumper to Data::Dump\n", "style" => "-", "text" => "switched from Data::Dumper to Data::Dump" }, { "line" => 339, "raw" => " - added new SWISH::Prog::Object example\n", "style" => "-", "text" => "added new SWISH::Prog::Object example" }, { "line" => 340, "raw" => " - fixed bug in SWISH::Prog::Headers to test defined()\t rather than\n simply eval true/false\n", "style" => "-", "text" => "fixed bug in SWISH::Prog::Headers to test defined()\t rather than simply eval true/false" }, { "line" => 342, "raw" => " - fixed bug in SWISH::Prog::DBI with accepting DBI handle in init()\n", "style" => "-", "text" => "fixed bug in SWISH::Prog::DBI with accepting DBI handle in init()" }, { "line" => 343, "raw" => " - changed to using IO::All instead of File::stat and File::Slurp for\n better UTF8 support\n", "style" => "-", "text" => "changed to using IO::All instead of File::stat and File::Slurp for better UTF8 support" }, { "line" => 345, "raw" => " - changed default order of init() and init_indexer() to work more\n intuitively. Fixed S::P::DBI accordingly. To prevent an indexer from\n being init'd (as in 0.02) simply override init_indexer() and don't call\n SUPER::init_indexer().\n", "style" => "-", "text" => "changed default order of init() and init_indexer() to work more intuitively. Fixed S::P::DBI accordingly. To prevent an indexer from being init'd (as in 0.02) simply override init_indexer() and don't call SUPER::init_indexer()." }, { "line" => 349, "raw" => " - new feature: SWISH::Prog::Find\n", "style" => "-", "text" => "new feature: SWISH::Prog::Find" }, { "line" => 350, "raw" => " - renamed meta() to table_meta() in SWISH::Prog::DBI for clarity.\n", "style" => "-", "text" => "renamed meta() to table_meta() in SWISH::Prog::DBI for clarity." }, { "line" => 351, "raw" => " - S::P::Config now always handles config params as arrays\n", "style" => "-", "text" => "S::P::Config now always handles config params as arrays" }, { "line" => 352, "raw" => " - Config metanames() propertynames() and propertynamesnostripchars() are\n no longer available \n", "style" => "-", "text" => "Config metanames() propertynames() and propertynamesnostripchars() are no longer available" }, { "line" => 354, "raw" => " - S::P::Config now requires IO::All and Config::General; added read2()\n method.\n", "style" => "-", "text" => "S::P::Config now requires IO::All and Config::General; added read2() method." }, { "line" => 356, "raw" => " - new feature placeholder: SWISH::Prog::Spider\n\n", "style" => "-", "text" => "new feature placeholder: SWISH::Prog::Spider" } ], "line" => 336, "note" => "removed all mentions of SWISH3", "raw" => "0.03 * removed all mentions of SWISH3\n", "version" => "0.03" }, { "entries" => [ { "line" => 359, "raw" => " - added merge() add() and mv() methods to S::P::Index and t/3merge.t and\n t/4add.t\n", "style" => "-", "text" => "added merge() add() and mv() methods to S::P::Index and t/3merge.t and t/4add.t" }, { "line" => 361, "raw" => " - added 2 more test docs\n", "style" => "-", "text" => "added 2 more test docs" }, { "line" => 362, "raw" => " - added format() accessor to S::P::Index\n", "style" => "-", "text" => "added format() accessor to S::P::Index" }, { "line" => 363, "raw" => " - changed S::P::I to use Class::Accessor::Fast since we don't need to\n override get/set\n", "style" => "-", "text" => "changed S::P::I to use Class::Accessor::Fast since we don't need to override get/set" }, { "line" => 365, "raw" => " - S::P now always inits an indexer even if fh=>0\n", "style" => "-", "text" => "S::P now always inits an indexer even if fh=>0" }, { "line" => 366, "raw" => " - added private _index_methods to S::P\n\n", "style" => "-", "text" => "added private _index_methods to S::P" } ], "line" => 358, "note" => "POD fixes", "raw" => "0.02 POD fixes\n", "version" => "0.02" }, { "date" => "2005-11-22T21:54:37Z", "entries" => [ { "line" => 369, "raw" => " - original version; created by h2xs 1.22 with options -XA -n Prog\n\n", "style" => "-", "text" => "original version; created by h2xs 1.22 with options -XA -n Prog" } ], "line" => 368, "raw" => "0.01 2005-11-22T21:54:37Z\n", "raw_date" => "2005-11-22T21:54:37Z", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/Email-MIME-ContentType.changes000644 000000 000000 00000002303 14472651645 022235 0ustar00000000 000000 Revision history for Perl extension Email::MIME::ContentType {{$NEXT}} 1.017 2013-08-10 23:19:14 America/New_York - make $STRICT_PARAMS actually work! (thanks, Matthew Green!) [rt.cpan.org #87460] 1.016 2013-08-10 23:14:42 America/New_York - correct the longstanding and embarrassing misuse of "discrete" and "composite" to mean "type" and "subtype"; the returned data still contains the wrong old names so your code shouldn't break - repackage to update bugtracker, repo, etc. 1.015 2009-01-22 - add repo metadata 1.014 2007-03-22 - packaging improvements 1.013 2007-03-20 - fix significantly broken SYNOPSIS 1.012 2006-11-25 - allow carp-avoidance through (ugh) package variable; bug 14076 1.011 2006-10-12 - clearer special case for undef/empty content-type (thanks, JESSE!) 1.01 - typo fix in documentation by John Linderman. - new author, Casey West. - Fix bug with blank space following parameters. 0.01 Wed Jan 7 17:38:23 2004 - original version; created by h2xs 1.22 with options -AX -b 5.6.0 -n Email::MIME::ContentType CPAN-Changes-0.500005/corpus/dists/Dancer-Logger-Syslog.parsed000644 000000 000000 00000003303 14472651645 021745 0ustar00000000 000000 { "preamble" => "Revision history for Dancer-Logger-Syslog", "raw_preamble" => "Revision history for Dancer-Logger-Syslog\n\n", "releases" => [ { "entries" => [ { "line" => 4, "raw" => " * Call 'openlog()' in all child processes. (GH#4, Sam Crawley)\n\n", "style" => "*", "text" => "Call 'openlog()' in all child processes. (GH#4, Sam Crawley)" } ], "line" => 3, "note" => "April 22nd, 2013", "raw" => "0.4 April 22nd, 2013\n", "version" => "0.4" }, { "entries" => [ { "line" => 7, "raw" => " * Add 'info' in the log levels. (GH#2, Sam Crawley)\n", "style" => "*", "text" => "Add 'info' in the log levels. (GH#2, Sam Crawley)" }, { "line" => 8, "raw" => " * Facility can be set via config. (GH#1, Sam Crawley)\n\n", "style" => "*", "text" => "Facility can be set via config. (GH#1, Sam Crawley)" } ], "line" => 6, "note" => "April 14th, 2013", "raw" => "0.3 April 14th, 2013\n", "version" => "0.3" }, { "entries" => [], "line" => 10, "note" => "October 5th, 2010", "raw" => "0.2 October 5th, 2010\n \n", "version" => "0.2" }, { "entries" => [ { "line" => 13, "raw" => " * First version, released on an unsuspecting world.\n", "style" => "*", "text" => "First version, released on an unsuspecting world." } ], "line" => 12, "note" => "Jan 29th, 2010", "raw" => "0.1 Jan 29th, 2010\n", "version" => "0.1" } ] } CPAN-Changes-0.500005/corpus/dists/Dist-Zilla-App-Command-podpreview.changes000644 000000 000000 00000000346 14472651645 024444 0ustar00000000 000000 Revision history for Dist-Zilla-App-Command-podpreview * fixed use of smartmatch (warns as experimental in 5.18) (ether) 0.002 01/04/2011 * Fix error in pod 0.001 01/04/2011 * Initial upload to CPAN CPAN-Changes-0.500005/corpus/dists/Sub-Identify.parsed000644 000000 000000 00000030306 14472651645 020363 0ustar00000000 000000 { "raw_preamble" => "", "releases" => [ { "entries" => [ { "line" => 2, "raw" => " Update changes for 0.11\n", "style" => "", "text" => "Update changes for 0.11" }, { "line" => 3, "raw" => " Fix build on perl 5.8\n\n", "style" => "", "text" => "Fix build on perl 5.8" } ], "line" => 1, "note" => "Rafael Garcia-Suarez (2):", "raw" => "0.12- Rafael Garcia-Suarez (2):\n", "version" => "0.12" }, { "entries" => [ { "line" => 6, "raw" => " Adding new test for signatures as part of Feb 2015 PRC.\n\n", "style" => "", "text" => "Adding new test for signatures as part of Feb 2015 PRC." }, { "line" => 8, "raw" => " Rafael Garcia-Suarez (8):\n", "style" => "", "text" => "Rafael Garcia-Suarez (8):" }, { "line" => 9, "raw" => " Bump version to 0.10\n", "style" => "", "text" => "Bump version to 0.10" }, { "line" => 10, "raw" => " Merge pull request #6 from estrabd/Issue-5-add-signature-test\n", "style" => "", "text" => "Merge pull request #6 from estrabd/Issue-5-add-signature-test" }, { "line" => 11, "raw" => " Fix skipping tests on earliers perls\n", "style" => "", "text" => "Fix skipping tests on earliers perls" }, { "line" => 12, "raw" => " Add new test to MANIFEST\n", "style" => "", "text" => "Add new test to MANIFEST" }, { "line" => 13, "raw" => " Do not let get_code_location() segfault on XSUBs\n", "style" => "", "text" => "Do not let get_code_location() segfault on XSUBs" }, { "line" => 14, "raw" => " Add a test for calling get_code_location on XSUBs\n", "style" => "", "text" => "Add a test for calling get_code_location on XSUBs" }, { "line" => 15, "raw" => " Add a pure-perl version of last test\n", "style" => "", "text" => "Add a pure-perl version of last test" }, { "line" => 16, "raw" => " Bump version\n\n", "style" => "", "text" => "Bump version" } ], "line" => 5, "note" => "B. Estrade (1):", "raw" => "0.11- B. Estrade (1):\n", "version" => "0.11" }, { "entries" => [], "line" => 18, "note" => "No changes", "raw" => "0.10- No changes\n\n", "version" => "0.10" }, { "entries" => [ { "line" => 21, "raw" => " Fix test failure due to hard-coded filenames.\n\n", "style" => "", "text" => "Fix test failure due to hard-coded filenames." } ], "line" => 20, "note" => "A. Sinan Unur (1):", "raw" => "0.09- A. Sinan Unur (1):\n", "version" => "0.09" }, { "entries" => [ { "line" => 24, "raw" => " Require at least perl 5.8.0\n", "style" => "", "text" => "Require at least perl 5.8.0" }, { "line" => 25, "raw" => " Improve docs beyond a really terse synopsis\n\n", "style" => "", "text" => "Improve docs beyond a really terse synopsis" } ], "line" => 23, "note" => "Rafael Garcia-Suarez (2):", "raw" => "0.08- Rafael Garcia-Suarez (2):\n", "version" => "0.08" }, { "entries" => [ { "line" => 28, "raw" => " Require B unconditionally on older perls\n\n", "style" => "", "text" => "Require B unconditionally on older perls" } ], "line" => 27, "note" => "Rafael Garcia-Suarez (1):", "raw" => "0.07- Rafael Garcia-Suarez (1):\n", "version" => "0.07" }, { "entries" => [ { "line" => 31, "raw" => " Remove perl version requirement\n", "style" => "", "text" => "Remove perl version requirement" }, { "line" => 32, "raw" => " Skip tests that rely on perls more recent than 5.14.0\n", "style" => "", "text" => "Skip tests that rely on perls more recent than 5.14.0" }, { "line" => 33, "raw" => " Update ppport.h\n", "style" => "", "text" => "Update ppport.h" }, { "line" => 34, "raw" => " Use the pure-perl version of is_sub_constant on perls earlier than 5.16\n\n", "style" => "", "text" => "Use the pure-perl version of is_sub_constant on perls earlier than 5.16" } ], "line" => 30, "note" => "Rafael Garcia-Suarez (4):", "raw" => "0.06- Rafael Garcia-Suarez (4):\n", "version" => "0.06" }, { "entries" => [ { "line" => 37, "raw" => " Add test for function prototypes\n", "style" => "", "text" => "Add test for function prototypes" }, { "line" => 38, "raw" => " Require at least perl 5.14.1\n", "style" => "", "text" => "Require at least perl 5.14.1" }, { "line" => 39, "raw" => " Better, simpler code for testing if we can load the XS version\n", "style" => "", "text" => "Better, simpler code for testing if we can load the XS version" }, { "line" => 40, "raw" => " Add gitignore file\n", "style" => "", "text" => "Add gitignore file" }, { "line" => 41, "raw" => " Experimental implementation of get_code_location\n", "style" => "", "text" => "Experimental implementation of get_code_location" }, { "line" => 42, "raw" => " Add XS implementation of get_code_location()\n", "style" => "", "text" => "Add XS implementation of get_code_location()" }, { "line" => 43, "raw" => " Add test for the prototype of get_code_location\n", "style" => "", "text" => "Add test for the prototype of get_code_location" }, { "line" => 44, "raw" => " Make get_code_location work on undefined subs\n", "style" => "", "text" => "Make get_code_location work on undefined subs" }, { "line" => 45, "raw" => " Add link to github repo in the meta file\n", "style" => "", "text" => "Add link to github repo in the meta file" }, { "line" => 46, "raw" => " Add TODO file\n", "style" => "", "text" => "Add TODO file" }, { "line" => 47, "raw" => " Add pure-perl implementation of is_sub_constant()\n", "style" => "", "text" => "Add pure-perl implementation of is_sub_constant()" }, { "line" => 48, "raw" => " Add XS implemetation of is_constant_sub()\n", "style" => "", "text" => "Add XS implemetation of is_constant_sub()" }, { "line" => 49, "raw" => " Add documentation\n\n", "style" => "", "text" => "Add documentation" } ], "line" => 36, "note" => "Rafael Garcia-Suarez (13):", "raw" => "0.05- Rafael Garcia-Suarez (13):\n", "version" => "0.05" }, { "entries" => [ { "line" => 52, "raw" => " First stab as a dual implementation XS / pure Perl\n", "style" => "", "text" => "First stab as a dual implementation XS / pure Perl" }, { "line" => 53, "raw" => " Update MANIFEST and add ppport.h from bleadperl\n", "style" => "", "text" => "Update MANIFEST and add ppport.h from bleadperl" }, { "line" => 54, "raw" => " Bump version to 0.04\n", "style" => "", "text" => "Bump version to 0.04" }, { "line" => 55, "raw" => " Add license to Makefile.PL\n", "style" => "", "text" => "Add license to Makefile.PL" }, { "line" => 56, "raw" => " Re-add \"use strict\"\n", "style" => "", "text" => "Re-add \"use strict\"" }, { "line" => 57, "raw" => " Mortalize return values\n", "style" => "", "text" => "Mortalize return values" }, { "line" => 58, "raw" => " Add tests for a bug reported on P5P by Ren\303\251e B\303\244cker\n", "style" => "", "text" => "Add tests for a bug reported on P5P by Ren\303\251e B\303\244cker" }, { "line" => 59, "raw" => " Fix segfault / compilation error by returning nothing for a sub being compiled\n", "style" => "", "text" => "Fix segfault / compilation error by returning nothing for a sub being compiled" }, { "line" => 60, "raw" => " Regenerate META.yml\n\n", "style" => "", "text" => "Regenerate META.yml" } ], "line" => 51, "note" => "Rafael Garcia-Suarez (9):", "raw" => "0.04- Rafael Garcia-Suarez (9):\n", "version" => "0.04" }, { "entries" => [ { "line" => 63, "raw" => " Import Sub-Identify 0.02\n", "style" => "", "text" => "Import Sub-Identify 0.02" }, { "line" => 64, "raw" => " Add MANIFEST.SKIP file\n", "style" => "", "text" => "Add MANIFEST.SKIP file" }, { "line" => 65, "raw" => " Add get_code_info, as suggested by Shawn M Moore\n", "style" => "", "text" => "Add get_code_info, as suggested by Shawn M Moore" }, { "line" => 66, "raw" => " Export get_code_info()\n", "style" => "", "text" => "Export get_code_info()" }, { "line" => 67, "raw" => " Add tests for get_code_info()\n", "style" => "", "text" => "Add tests for get_code_info()" }, { "line" => 68, "raw" => " More tests for undefined subroutines\n", "style" => "", "text" => "More tests for undefined subroutines" }, { "line" => 69, "raw" => " Fix email address\n", "style" => "", "text" => "Fix email address" }, { "line" => 70, "raw" => " New tests for errors\n", "style" => "", "text" => "New tests for errors" }, { "line" => 71, "raw" => " Merge branch 'moose'\n", "style" => "", "text" => "Merge branch 'moose'" }, { "line" => 72, "raw" => " Add pod test file\n", "style" => "", "text" => "Add pod test file" }, { "line" => 73, "raw" => " Pre-require Test::More\n", "style" => "", "text" => "Pre-require Test::More" }, { "line" => 74, "raw" => " Add copyright and license\n", "style" => "", "text" => "Add copyright and license" }, { "line" => 75, "raw" => " Bump version and regenerate the META.yml\n", "style" => "", "text" => "Bump version and regenerate the META.yml" } ], "line" => 62, "note" => "Rafael Garcia-Suarez (13):", "raw" => "0.03- Rafael Garcia-Suarez (13):\n", "version" => "0.03" } ] } CPAN-Changes-0.500005/corpus/dists/MySQL-Sandbox.parsed000644 000000 000000 00000457157 14472651645 020443 0ustar00000000 000000 { "raw_preamble" => "", "releases" => [ { "entries" => [ { "line" => 2, "raw" => "\t- Added option --init_option to add options at initialization time.\n", "style" => "-", "text" => "Added option --init_option to add options at initialization time." }, { "line" => 3, "raw" => "\t- Added option --init_my_cnf to load \$sandbox_dir/my.sandbox.cnf during\n\tinitialization instead of --no-defaults.\n", "style" => "-", "text" => "Added option --init_my_cnf to load \$sandbox_dir/my.sandbox.cnf during initialization instead of --no-defaults." }, { "line" => 5, "raw" => "\t- Added option --init_use_cnf to load a custom options file during\n\tinitialization instead of --no-defaults.\n", "style" => "-", "text" => "Added option --init_use_cnf to load a custom options file during initialization instead of --no-defaults." } ], "line" => 1, "note" => "02-Nov-2016", "raw" => "3.2.03\t02-Nov-2016\n", "version" => "3.2.03" }, { "entries" => [ { "line" => 8, "raw" => "\t- Fixed download parameter for make_sandbox_from_url\n", "style" => "-", "text" => "Fixed download parameter for make_sandbox_from_url" } ], "line" => 7, "note" => "12-Sep-2016", "raw" => "3.2.02\t12-Sep-2016\n", "version" => "3.2.02" }, { "entries" => [ { "line" => 10, "raw" => "\t- Added early check for USER, HOME, and PWD variables.\n", "style" => "-", "text" => "Added early check for USER, HOME, and PWD variables." }, { "line" => 11, "raw" => "\t- Added early check for spaces in HOME variable.\n", "style" => "-", "text" => "Added early check for spaces in HOME variable." }, { "line" => 12, "raw" => "\t- Fixed wrong server_id when using both --slaveof and --check_port\n", "style" => "-", "text" => "Fixed wrong server_id when using both --slaveof and --check_port" }, { "line" => 13, "raw" => "\t- Added test for server_id with --check_port\n", "style" => "-", "text" => "Added test for server_id with --check_port" }, { "line" => 14, "raw" => "\t- Updated make_sandbox_from_url to use MySQL 8.0 remote builds (when\n\t available)\n", "style" => "-", "text" => "Updated make_sandbox_from_url to use MySQL 8.0 remote builds (when available)" }, { "line" => 16, "raw" => "\t- Added remote catalog to make_sandbox_from_url\n", "style" => "-", "text" => "Added remote catalog to make_sandbox_from_url" } ], "line" => 9, "note" => "10-Sep-2016", "raw" => "3.2.01\t10-Sep-2016\n", "version" => "3.2.01" }, { "entries" => [ { "line" => 18, "raw" => "\t- Add compatibility with MySQL 8.0.0\n", "style" => "-", "text" => "Add compatibility with MySQL 8.0.0" }, { "line" => 19, "raw" => "\t- Adapt tests to use MySQL 8.0.0\n", "style" => "-", "text" => "Adapt tests to use MySQL 8.0.0" }, { "entries" => [ { "line" => 21, "raw" => "\t\t- plugin_mysqlx : installs the X-plugin permanently\n", "style" => "-", "text" => "plugin_mysqlx : installs the X-plugin permanently" }, { "line" => 22, "raw" => "\t\t- mysqlx_port : with the above option, sets the X-plugin port\n", "style" => "-", "text" => "mysqlx_port : with the above option, sets the X-plugin port" } ], "line" => 20, "raw" => "\t- Added options:\n", "style" => "-", "text" => "Added options:" }, { "line" => 23, "raw" => "\t- Changed mysqlsh script to use --sql or --js options.\n", "style" => "-", "text" => "Changed mysqlsh script to use --sql or --js options." } ], "line" => 17, "note" => "28-Aug-2016", "raw" => "3.2.00\t28-Aug-2016\n", "version" => "3.2.00" }, { "entries" => [ { "line" => 25, "raw" => "\t- added --master_ip to make_replication_sandbox\n", "style" => "-", "text" => "added --master_ip to make_replication_sandbox" } ], "line" => 24, "note" => "21-Aug-2016", "raw" => "3.1.13\t21-Aug-2016\n", "version" => "3.1.13" }, { "entries" => [ { "line" => 27, "raw" => "\t- added syntax for make_sandbox get:#.# (invokes make_sandbox_from_url)\n", "style" => "-", "text" => "added syntax for make_sandbox get:#.# (invokes make_sandbox_from_url)" }, { "line" => 28, "raw" => "\t- Added check for wrong requested version in make_sandbox_from_url\n", "style" => "-", "text" => "Added check for wrong requested version in make_sandbox_from_url" }, { "line" => 29, "raw" => "\t- removed duplicate function from test_sandbox\n", "style" => "-", "text" => "removed duplicate function from test_sandbox" } ], "line" => 26, "note" => "07-Aug-2016", "raw" => "3.1.12\t07-Aug-2016\n", "version" => "3.1.12" }, { "entries" => [ { "line" => 31, "raw" => "\t- Added make_sandbox_from_url to the installation list\n", "style" => "-", "text" => "Added make_sandbox_from_url to the installation list" }, { "line" => 32, "raw" => "\t- Use https for GitHub URLs (contributed by D. Van Eeden)\n", "style" => "-", "text" => "Use https for GitHub URLs (contributed by D. Van Eeden)" } ], "line" => 30, "note" => "11-Jul-2016", "raw" => "3.1.11\t11-Jul-2016\n", "version" => "3.1.11" }, { "entries" => [ { "line" => 34, "raw" => "\t- Fixed a test error that made the package not-installable\n", "style" => "-", "text" => "Fixed a test error that made the package not-installable" } ], "line" => 33, "note" => "10-Jul-2016", "raw" => "3.1.10\t10-Jul-2016\n", "version" => "3.1.10" }, { "entries" => [ { "line" => 36, "raw" => "\t- Added make_sandbox_from_url, which installs a sandbox from the web\n", "style" => "-", "text" => "Added make_sandbox_from_url, which installs a sandbox from the web" }, { "line" => 37, "raw" => "\t- Fixed a warning about negative length of options (only fires in recent\n\t versions of Perl)\n", "style" => "-", "text" => "Fixed a warning about negative length of options (only fires in recent versions of Perl)" }, { "line" => 39, "raw" => "\t- Cleaned up test execution for environments where it can't run properly.\n", "style" => "-", "text" => "Cleaned up test execution for environments where it can't run properly." } ], "line" => 35, "note" => "08-Jul-2016", "raw" => "3.1.09\t08-Jul-2016\n", "version" => "3.1.09" }, { "entries" => [ { "line" => 41, "raw" => "\t- Fixed major issue with XPlugin installation. The grants script was\n\t removing the account created by the X-plugin. Now this account is\n\t whitelisted. (https://bugs.mysql.com/bug.php?id=81257)\n", "style" => "-", "text" => "Fixed major issue with XPlugin installation. The grants script was removing the account created by the X-plugin. Now this account is whitelisted. (https://bugs.mysql.com/bug.php?id=81257)" }, { "line" => 44, "raw" => "\t- Fixed minor naming in MANIFEST\n", "style" => "-", "text" => "Fixed minor naming in MANIFEST" }, { "line" => 45, "raw" => "\t- Fixed compatibility issues in deploy_to_remote_sandboxes.sh\n", "style" => "-", "text" => "Fixed compatibility issues in deploy_to_remote_sandboxes.sh" } ], "line" => 40, "note" => "04-Jun-2016", "raw" => "3.1.08\t04-Jun-2016\n", "version" => "3.1.08" }, { "entries" => [ { "line" => 47, "raw" => "\t- Added support for \$NOPASSWORD variable in ./use script. When this\n\tvariable is enabled, the client runs without a password. Useful to call it\n\tbefore grants are loaded.\n", "style" => "-", "text" => "Added support for \$NOPASSWORD variable in ./use script. When this variable is enabled, the client runs without a password. Useful to call it before grants are loaded." }, { "line" => 50, "raw" => "\t- Added option to install plugin right after the installation\n\t --load_plugin=plugin_name[=filename]\n", "style" => "-", "text" => "Added option to install plugin right after the installation --load_plugin=plugin_name[=filename]" }, { "line" => 52, "raw" => "\t- Added options to execute SQL before and after loading grants\n\t --pre_grants_sql --pre_grants_file --post_grants_sql --post_grants_file\n", "style" => "-", "text" => "Added options to execute SQL before and after loading grants --pre_grants_sql --pre_grants_file --post_grants_sql --post_grants_file" }, { "line" => 54, "raw" => "\t- Similar options can execute shell commands \n\t --pre_start_exec --pre_grants_exec --post_grants_exec\n", "style" => "-", "text" => "Similar options can execute shell commands --pre_start_exec --pre_grants_exec --post_grants_exec" }, { "line" => 56, "raw" => "\t- Added test cases for the above options\n", "style" => "-", "text" => "Added test cases for the above options" } ], "line" => 46, "note" => "15-May-2016", "raw" => "3.1.07\t15-May-2016\n", "version" => "3.1.07" }, { "entries" => [ { "line" => 58, "raw" => "\t- Added explicit return code to test_replication script\n", "style" => "-", "text" => "Added explicit return code to test_replication script" }, { "line" => 59, "raw" => "\t- Enables sbtool to remove incomplete group sandboxes\n", "style" => "-", "text" => "Enables sbtool to remove incomplete group sandboxes" }, { "line" => 60, "raw" => "\t- Test_Helper now cleans environment variables before starting a test\n", "style" => "-", "text" => "Test_Helper now cleans environment variables before starting a test" }, { "line" => 61, "raw" => "\t- Added temporary support for mysqlsh\n", "style" => "-", "text" => "Added temporary support for mysqlsh" }, { "line" => 62, "raw" => "\t- merge contribution by kaiwangchen to fix make_sandbox_from source and\n\tmake_sandbox with mysqld-debug\n", "style" => "-", "text" => "merge contribution by kaiwangchen to fix make_sandbox_from source and make_sandbox with mysqld-debug" }, { "line" => 64, "raw" => "\t- Added --gtid option dor make_sandbox, make_replication_sandbox, and\n\tmake_multiple_sandbox \n", "style" => "-", "text" => "Added --gtid option dor make_sandbox, make_replication_sandbox, and make_multiple_sandbox" } ], "line" => 57, "note" => "09-May-2016", "raw" => "3.1.06\t09-May-2016\n", "version" => "3.1.06" }, { "entries" => [ { "line" => 67, "raw" => "\t- Fixed mismatch in version checking to determnine whether to use\n\tmysql_install_db or mysqld --initialize\n", "style" => "-", "text" => "Fixed mismatch in version checking to determnine whether to use mysql_install_db or mysqld --initialize" }, { "line" => 69, "raw" => "\t- Updated copyright notice\n", "style" => "-", "text" => "Updated copyright notice" }, { "line" => 70, "raw" => "\t- Added test for installation method used\n", "style" => "-", "text" => "Added test for installation method used" }, { "line" => 71, "raw" => "\t- Added test for generated UUID\n", "style" => "-", "text" => "Added test for generated UUID" }, { "line" => 72, "raw" => "\t- Merged pull request from Alexandr Ciornii : \"Display repository URL\n\t on MetaCPAN\"\n", "style" => "-", "text" => "Merged pull request from Alexandr Ciornii : \"Display repository URL on MetaCPAN\"" } ], "line" => 66, "note" => "17-Jan-2016", "raw" => "3.1.05\t17-Jan-2016 \n", "version" => "3.1.05" }, { "entries" => [ { "line" => 75, "raw" => "\t- Fixed wrong version comparison (affects usage of MySQL 5.7.10)\n", "style" => "-", "text" => "Fixed wrong version comparison (affects usage of MySQL 5.7.10)" }, { "line" => 76, "raw" => "\t- Changed tests to use smarter version comparison\n", "style" => "-", "text" => "Changed tests to use smarter version comparison" } ], "line" => 74, "note" => "07-Dec-2015", "raw" => "3.1.04\t07-Dec-2015 \n", "version" => "3.1.04" }, { "entries" => [ { "line" => 78, "raw" => "\t- Increased timeout for 'start' script, needed when restart requires \n\ta longer time.\n", "style" => "-", "text" => "Increased timeout for 'start' script, needed when restart requires a longer time." } ], "line" => 77, "note" => "04-Dec-2015", "raw" => "3.1.03\t04-Dec-2015 \n", "version" => "3.1.03" }, { "entries" => [ { "line" => 81, "raw" => "\t- Fixed error in UUID generation for server-id=110\n", "style" => "-", "text" => "Fixed error in UUID generation for server-id=110" }, { "line" => 82, "raw" => "\t- Merged change by Mark Leith to preserve mysql.sys user\n", "style" => "-", "text" => "Merged change by Mark Leith to preserve mysql.sys user" }, { "line" => 83, "raw" => "\t- Adapted privileges test for the above change\n", "style" => "-", "text" => "Adapted privileges test for the above change" } ], "line" => 80, "note" => "21-Nov-2015", "raw" => "3.1.02\t21-Nov-2015 \n", "version" => "3.1.02" }, { "entries" => [ { "line" => 85, "raw" => "\t- Removed message that should only appear with debug\n", "style" => "-", "text" => "Removed message that should only appear with debug" }, { "line" => 86, "raw" => "\t- Modified Makefile.PL to generate correct licensing metadata\n", "style" => "-", "text" => "Modified Makefile.PL to generate correct licensing metadata" }, { "line" => 87, "raw" => "\t- Added port info to replication status and check-slaves (Thanks to Mark\n\tLeith)\n", "style" => "-", "text" => "Added port info to replication status and check-slaves (Thanks to Mark Leith)" }, { "line" => 89, "raw" => "\t- Changed 'create schema' to 'create' database to allow installation in\n\tMySQL 4.1 (thanks to Dani\303\253l van Eeden)\n", "style" => "-", "text" => "Changed 'create schema' to 'create' database to allow installation in MySQL 4.1 (thanks to Dani\303\253l van Eeden)" }, { "line" => 91, "raw" => "\t- Updated sbtool to prevent deletion of the whole sandboxes directory\n", "style" => "-", "text" => "Updated sbtool to prevent deletion of the whole sandboxes directory" }, { "line" => 92, "raw" => "\t- Minor changes to semi-sync plugin test\n", "style" => "-", "text" => "Minor changes to semi-sync plugin test" }, { "line" => 93, "raw" => "\t- Added debug message in make_sandbox_from_source\n", "style" => "-", "text" => "Added debug message in make_sandbox_from_source" }, { "line" => 94, "raw" => "\t- Tested with MySQL 5.7.9 and MariaDB 10.1.6\n", "style" => "-", "text" => "Tested with MySQL 5.7.9 and MariaDB 10.1.6" } ], "line" => 84, "note" => "04-Oct-2015", "raw" => "3.1.01\t04-Oct-2015 \n", "version" => "3.1.01" }, { "entries" => [ { "line" => 96, "raw" => "\t- Migrated repository to github (github.com/datacharmer/mysql-sandbox)\n", "style" => "-", "text" => "Migrated repository to github (github.com/datacharmer/mysql-sandbox)" }, { "line" => 97, "raw" => "\t- Changed license to Apache 2.0\n", "style" => "-", "text" => "Changed license to Apache 2.0" }, { "line" => 98, "raw" => "\t- Limited workaround for bug#77732 to MySQL 5.7.8 only\n", "style" => "-", "text" => "Limited workaround for bug#77732 to MySQL 5.7.8 only" }, { "line" => 99, "raw" => "\t- Added usability feature for Server-UUID. Whenever server-id is used, the\n\tserver-uuid is converted into an easy-to-read string of numbers\n", "style" => "-", "text" => "Added usability feature for Server-UUID. Whenever server-id is used, the server-uuid is converted into an easy-to-read string of numbers" }, { "line" => 101, "raw" => "\t- Simplified './clear' script. Does not attempt to remove stored routines.\n\tMakes the intrusive mysqldump that was running with load_grants\n\tunnecessary\n", "style" => "-", "text" => "Simplified './clear' script. Does not attempt to remove stored routines. Makes the intrusive mysqldump that was running with load_grants unnecessary" }, { "line" => 104, "raw" => "\t- Changed location for MySQL history in group sandboxes to be shared\n\tbetween single ones. \n", "style" => "-", "text" => "Changed location for MySQL history in group sandboxes to be shared between single ones." } ], "line" => 95, "note" => "22-Aug-2015", "raw" => "3.1.00\t22-Aug-2015 \n", "version" => "3.1.00" }, { "entries" => [ { "line" => 107, "raw" => "\t- Added MYSQL_EDITOR variable to ./use script\n", "style" => "-", "text" => "Added MYSQL_EDITOR variable to ./use script" }, { "line" => 108, "raw" => "\t- Added ./mycli script to invoke the mycli command\n\t \n", "style" => "-", "text" => "Added ./mycli script to invoke the mycli command " } ], "line" => 106, "note" => "07-Aug-2015", "raw" => "3.0.66\t07-Aug-2015 \n", "version" => "3.0.66" }, { "entries" => [ { "line" => 111, "raw" => "\t- Added show_relaylog script, similar to show_binlog\n", "style" => "-", "text" => "Added show_relaylog script, similar to show_binlog" } ], "line" => 110, "note" => "06-Aug-2015", "raw" => "3.0.65\t06-Aug-2015 \n", "version" => "3.0.65" }, { "entries" => [ { "line" => 113, "raw" => "\t- Fixed quoting error in show_binlog script\n", "style" => "-", "text" => "Fixed quoting error in show_binlog script" } ], "line" => 112, "note" => "05-Aug-2015", "raw" => "3.0.64\t05-Aug-2015 \n", "version" => "3.0.64" }, { "entries" => [ { "line" => 115, "raw" => "\t- Modified test add_option.sb.pl so that it can also run on MySQL 5.0\n", "style" => "-", "text" => "Modified test add_option.sb.pl so that it can also run on MySQL 5.0" }, { "line" => 116, "raw" => "\t- modified sandbox script json_in_db to use type JSON when version >=\n\t5.7.8\n", "style" => "-", "text" => "modified sandbox script json_in_db to use type JSON when version >= 5.7.8" }, { "line" => 118, "raw" => "\t- Simplified grants.mysql and show_binlogs scripts\n", "style" => "-", "text" => "Simplified grants.mysql and show_binlogs scripts" } ], "line" => 114, "note" => "04-Aug-2015", "raw" => "3.0.63\t04-Aug-2015 \n", "version" => "3.0.63" }, { "entries" => [ { "line" => 120, "raw" => "\t- Added default name for relay log files.\n", "style" => "-", "text" => "Added default name for relay log files." }, { "line" => 121, "raw" => "\t- Added 'show_binlog' and 'add_option' scripts in each sandbox\n", "style" => "-", "text" => "Added 'show_binlog' and 'add_option' scripts in each sandbox" }, { "line" => 122, "raw" => "\t- improved tests by getting all the version components from a single\n\tfunction call\n", "style" => "-", "text" => "improved tests by getting all the version components from a single function call" }, { "line" => 124, "raw" => "\t- Added GTID initialization options for MySQL 5.6, 5.7, and MariaDB 10\n", "style" => "-", "text" => "Added GTID initialization options for MySQL 5.6, 5.7, and MariaDB 10" }, { "line" => 125, "raw" => "\t- Added GTID enabling test for MySQL 5.6 and 5.7\n", "style" => "-", "text" => "Added GTID enabling test for MySQL 5.6 and 5.7" }, { "line" => 126, "raw" => "\t- added and improved more tests\n", "style" => "-", "text" => "added and improved more tests" } ], "line" => 119, "note" => "02-Aug-2015", "raw" => "3.0.62\t02-Aug-2015\n", "version" => "3.0.62" }, { "entries" => [ { "line" => 128, "raw" => "\t- Simplified workaround for Bug#77732. No defaults are changed.\n\tThe only addition is a GRANT SELECT on a given table to the replication\n\tuser for MySQL 5.7.6+\n", "style" => "-", "text" => "Simplified workaround for Bug#77732. No defaults are changed. The only addition is a GRANT SELECT on a given table to the replication user for MySQL 5.7.6+" }, { "line" => 131, "raw" => "\t- Removed unnecessary FLUSH PRIVILEGES\n", "style" => "-", "text" => "Removed unnecessary FLUSH PRIVILEGES" } ], "line" => 127, "note" => "27-Jul-2015", "raw" => "3.0.61\t27-Jul-2015\n", "version" => "3.0.61" }, { "entries" => [ { "line" => 133, "raw" => "\t- Changed installation method for MySQL 5.7.6 and later. \n\tUsing 'mysqld --initialize' instead of deprecated mysql_install_db.\n\tInstallation for earlier MySQL versions and MariaDB still use\n\tmysql_install_db.\n", "style" => "-", "text" => "Changed installation method for MySQL 5.7.6 and later. Using 'mysqld --initialize' instead of deprecated mysql_install_db. Installation for earlier MySQL versions and MariaDB still use mysql_install_db." }, { "line" => 137, "raw" => "\t- Due to the above change, low_level_make_sandbox will now filter the\n\t\"error\" message in the output for the text '[Warning]'. If an \"error\"\n\tappears as warning, the installation is not halted.\n", "style" => "-", "text" => "Due to the above change, low_level_make_sandbox will now filter the \"error\" message in the output for the text '[Warning]'. If an \"error\" appears as warning, the installation is not halted." }, { "line" => 140, "raw" => "\t- Incompatible change: when using --force to install on top of an existing\n\tsandbox, the old data directory is copied to 'old_data' instead of being\n\toverwritten. This is due to the different behavior of 'mysqld --initialize' \n\tthat does not support initializing an existing data directory.\n", "style" => "-", "text" => "Incompatible change: when using --force to install on top of an existing sandbox, the old data directory is copied to 'old_data' instead of being overwritten. This is due to the different behavior of 'mysqld --initialize' that does not support initializing an existing data directory." }, { "line" => 144, "raw" => "\t- Added more tests. Improved a few of the existing ones.\n", "style" => "-", "text" => "Added more tests. Improved a few of the existing ones." }, { "line" => 145, "raw" => "\t- Fixed test for user privileges that was broken in 5.7.6+\n", "style" => "-", "text" => "Fixed test for user privileges that was broken in 5.7.6+" } ], "line" => 132, "note" => "25-Jul-2015", "raw" => "3.0.60\t25-Jul-2015\n", "version" => "3.0.60" }, { "entries" => [], "line" => 146, "note" => "to 3.0.59 not released", "raw" => "3.0.57\tto 3.0.59 not released\n", "version" => "3.0.57" }, { "entries" => [ { "line" => 148, "raw" => "\t- Adjusted credis date\n", "style" => "-", "text" => "Adjusted credis date" } ], "line" => 147, "note" => "20-Jul-2015", "raw" => "3.0.56\t20-Jul-2015\n", "version" => "3.0.56" }, { "entries" => [ { "line" => 150, "raw" => "\t- Fixed issue with the latest script added to the test suite.\n", "style" => "-", "text" => "Fixed issue with the latest script added to the test suite." } ], "line" => 149, "note" => "19-Jul-2015", "raw" => "3.0.55\t19-Jul-2015\n", "version" => "3.0.55" }, { "entries" => [ { "line" => 152, "raw" => "\t- Added test_replication script to test both regular and circular\n\treplication. It is also used in the test suite\n", "style" => "-", "text" => "Added test_replication script to test both regular and circular replication. It is also used in the test suite" } ], "line" => 151, "note" => "19-Jul-2015", "raw" => "3.0.54\t19-Jul-2015\n", "version" => "3.0.54" }, { "entries" => [ { "line" => 155, "raw" => "\t- Improved workaround for Bug#77732. Deployments with --master would only\n\twork within the test suite, but would fail in standalone installations.\n", "style" => "-", "text" => "Improved workaround for Bug#77732. Deployments with --master would only work within the test suite, but would fail in standalone installations." } ], "line" => 154, "note" => "16-Jul-2015", "raw" => "3.0.53\t16-Jul-2015\n", "version" => "3.0.53" }, { "entries" => [ { "entries" => [ { "line" => 159, "raw" => "\t -- https://bugs.mysql.com/bug.php?id=77732 --\n", "style" => "--", "text" => "https://bugs.mysql.com/bug.php?id=77732 --" } ], "line" => 158, "raw" => "\t- Added a workaround for Bug#77732 in MySQL 5.7.8 \n", "style" => "-", "text" => "Added a workaround for Bug#77732 in MySQL 5.7.8" } ], "line" => 157, "note" => "15-Jul-2015", "raw" => "3.0.52\t15-Jul-2015\n", "version" => "3.0.52" }, { "entries" => [ { "line" => 161, "raw" => "\t- Added ability of opening tarball with name like 123456.mysql*.tar.gz\n", "style" => "-", "text" => "Added ability of opening tarball with name like 123456.mysql*.tar.gz" }, { "line" => 162, "raw" => "\t- Added many tests for tarball name checking\n", "style" => "-", "text" => "Added many tests for tarball name checking" } ], "line" => 160, "note" => "14-Jul-2015", "raw" => "3.0.51\t14-Jul-2015\n", "version" => "3.0.51" }, { "entries" => [ { "line" => 164, "raw" => "\t- Fixed issue with the 'clear' script in MySQL 5.7.7. Since a new default\n\tdatabase was added ('sys') and the clear command did not know about it, \n\tthe new database was being removed.\n", "style" => "-", "text" => "Fixed issue with the 'clear' script in MySQL 5.7.7. Since a new default database was added ('sys') and the clear command did not know about it, the new database was being removed." } ], "line" => 163, "note" => "11-Apr-2015", "raw" => "3.0.50\t11-Apr-2015\n", "version" => "3.0.50" }, { "entries" => [ { "line" => 168, "raw" => "\t- Fixed version detection to support also MySLQL 5.7.7 and MySQL 5.7.8.\n\t A more resilient patch will follow.\n\t Notice that, due to a change (possibly a bug) in MySQL 5.7.7, circular\n\t replication and in general any topology containing a relay slave may fail.\n", "style" => "-", "text" => "Fixed version detection to support also MySLQL 5.7.7 and MySQL 5.7.8. A more resilient patch will follow. Notice that, due to a change (possibly a bug) in MySQL 5.7.7, circular replication and in general any topology containing a relay slave may fail." } ], "line" => 167, "note" => "08-Apr-2015", "raw" => "3.0.49\t08-Apr-2015\n", "version" => "3.0.49" }, { "entries" => [ { "line" => 173, "raw" => "\t- Added provisional support for MySQL 5.7.6 (changed syntax for SET\n\tPASSWORD but keep using deprecated mysql_install_db)\n", "style" => "-", "text" => "Added provisional support for MySQL 5.7.6 (changed syntax for SET PASSWORD but keep using deprecated mysql_install_db)" } ], "line" => 172, "note" => "09-Mar-2015", "raw" => "3.0.48\t09-Mar-2015\n", "version" => "3.0.48" }, { "entries" => [ { "line" => 176, "raw" => "\t- Added support for MySQL with data dictionary (5.7.5 labs edition)\n", "style" => "-", "text" => "Added support for MySQL with data dictionary (5.7.5 labs edition)" } ], "line" => 175, "note" => "19-Oct-2014", "raw" => "3.0.47\t19-Oct-2014\n", "version" => "3.0.47" }, { "entries" => [ { "line" => 178, "raw" => "\t- Modified smoke test in test_sandbox to check correctly older and newer versions\n", "style" => "-", "text" => "Modified smoke test in test_sandbox to check correctly older and newer versions" }, { "entries" => [ { "line" => 180, "raw" => "\t\t- added creation of 'test' database\n", "style" => "-", "text" => "added creation of 'test' database" }, { "line" => 181, "raw" => "\t\t- moved lower_case_table_names to the my.sandbox.cnf file (mysql_install_db does not support this option)\n", "style" => "-", "text" => "moved lower_case_table_names to the my.sandbox.cnf file (mysql_install_db does not support this option)" }, { "line" => 182, "raw" => "\t\t- allow for changed syntax --insecure instead of --skip-random-password\n", "style" => "-", "text" => "allow for changed syntax --insecure instead of --skip-random-password" }, { "line" => 183, "raw" => "\t\t- removed tmpdir from options to mysql_install_db\n", "style" => "-", "text" => "removed tmpdir from options to mysql_install_db" } ], "line" => 179, "raw" => "\t- Changes to allow installation of MySQL 5.7.5:\n", "style" => "-", "text" => "Changes to allow installation of MySQL 5.7.5:" }, { "line" => 184, "raw" => "\t- Updated test_sandbox to avoid a 'skip-innodb' test with MariaDB 10.x\n", "style" => "-", "text" => "Updated test_sandbox to avoid a 'skip-innodb' test with MariaDB 10.x" }, { "line" => 185, "raw" => "\t- Updated test_sandbox to detect correctly MariaDB versions\n", "style" => "-", "text" => "Updated test_sandbox to detect correctly MariaDB versions" } ], "line" => 177, "note" => "25-Sep-2014", "raw" => "3.0.46\t25-Sep-2014\n", "version" => "3.0.46" }, { "entries" => [ { "line" => 187, "raw" => "\t- Fixing bug#1361851 \"start/stop/status scripts don't actually check if\n\t running\"\n", "style" => "-", "text" => "Fixing bug#1361851 \"start/stop/status scripts don't actually check if running\"" }, { "line" => 189, "raw" => "\t- Fixing freshly submitted but long overdue Bug#1362014 \n\t \"Sandbox scripts can't deal with stale PID files\"\n", "style" => "-", "text" => "Fixing freshly submitted but long overdue Bug#1362014 \"Sandbox scripts can't deal with stale PID files\"" } ], "line" => 186, "note" => "30-Aug-2014", "raw" => "3.0.45\t30-Aug-2014\n", "version" => "3.0.45" }, { "entries" => [ { "line" => 192, "raw" => " - Fixing bug#1313672 : MySQL Sandbox can't install with MySQL 5.7.4\n", "style" => "-", "text" => "Fixing bug#1313672 : MySQL Sandbox can't install with MySQL 5.7.4" }, { "line" => 193, "raw" => " - Removed some deprecated options that were removed in latest version of\n\tMySQL\n", "style" => "-", "text" => "Removed some deprecated options that were removed in latest version of MySQL" } ], "line" => 191, "note" => "29-Apr-2014", "raw" => "3.0.44\t29-Apr-2014\n", "version" => "3.0.44" }, { "entries" => [ { "line" => 196, "raw" => "\t- Fixed bug#1155517 The \"my\" scripts excludes mysql_upgrade from\n\t--default-options incorrectly \n", "style" => "-", "text" => "Fixed bug#1155517 The \"my\" scripts excludes mysql_upgrade from --default-options incorrectly" }, { "line" => 198, "raw" => "\t- Also added mysql_config_editor to the scripts that should not get\n\tdefaults-options\n", "style" => "-", "text" => "Also added mysql_config_editor to the scripts that should not get defaults-options" } ], "line" => 195, "note" => "24-Oct-2013", "raw" => "3.0.43\t24-Oct-2013\n", "version" => "3.0.43" }, { "entries" => [ { "line" => 201, "raw" => "\t- Fixed bug in sb renaming. The new name was not updated in the MANIFEST\n", "style" => "-", "text" => "Fixed bug in sb renaming. The new name was not updated in the MANIFEST" } ], "line" => 200, "note" => "30-Sep-2013", "raw" => "3.0.42\t30-Sep-2013\n", "version" => "3.0.42" }, { "entries" => [ { "line" => 203, "raw" => "\t- INCOMPATIBLE CHANGE: Renamed 'sb' to 'msb' to avoid name clashes in\n", "style" => "-", "text" => "INCOMPATIBLE CHANGE: Renamed 'sb' to 'msb' to avoid name clashes in" }, { "line" => 204, "raw" => "\t- INCOMPATIBLE CHANGE: Renamed 'sb' to 'msb' to avoid name clashes in\n\tLinux distributions\n", "style" => "-", "text" => "INCOMPATIBLE CHANGE: Renamed 'sb' to 'msb' to avoid name clashes in Linux distributions" } ], "line" => 202, "note" => "30-Sep-2013", "raw" => "3.0.41\t30-Sep-2013\n", "version" => "3.0.41" }, { "entries" => [ { "line" => 207, "raw" => "\t- enhanced deploy_to_remote_sandboxes.sh with the ability of using a\n\ttemplate my.cnf for remote deployment (-y file-name)\n", "style" => "-", "text" => "enhanced deploy_to_remote_sandboxes.sh with the ability of using a template my.cnf for remote deployment (-y file-name)" } ], "line" => 206, "note" => "12-Jul-2013", "raw" => "3.0.40\t12-Jul-2013\n", "version" => "3.0.40" }, { "entries" => [ { "line" => 210, "raw" => "\t- added server_id option to deploy_to_remote_sandboxes\n", "style" => "-", "text" => "added server_id option to deploy_to_remote_sandboxes" }, { "line" => 211, "raw" => "\t- added info about group directory to multiple sandbox 'start/stop/clear'\n\tscripts\n", "style" => "-", "text" => "added info about group directory to multiple sandbox 'start/stop/clear' scripts" }, { "line" => 213, "raw" => "\t- added ruby connection info to connection.json\n", "style" => "-", "text" => "added ruby connection info to connection.json" }, { "line" => 214, "raw" => "\t- Fixed display bug in credits (were reported twice in replication README)\n", "style" => "-", "text" => "Fixed display bug in credits (were reported twice in replication README)" } ], "line" => 209, "note" => "29-May-2013", "raw" => "3.0.39\t29-May-2013\n", "version" => "3.0.39" }, { "entries" => [ { "line" => 216, "raw" => "\t- Fixed typos and formatting in embedded docs.\n", "style" => "-", "text" => "Fixed typos and formatting in embedded docs." } ], "line" => 215, "note" => "05-May-2013", "raw" => "3.0.38\t05-May-2013\n", "version" => "3.0.38" }, { "entries" => [ { "line" => 218, "raw" => "\t- Added connection samples (for PHP, Perl, Python, Java, shell) to 'connection.json'\n", "style" => "-", "text" => "Added connection samples (for PHP, Perl, Python, Java, shell) to 'connection.json'" }, { "line" => 219, "raw" => "\t- Added validation tests for JSON contents\n", "style" => "-", "text" => "Added validation tests for JSON contents" } ], "line" => 217, "note" => "05-May-2013", "raw" => "3.0.37\t05-May-2013\n", "version" => "3.0.37" }, { "entries" => [ { "entries" => [ { "line" => 222, "raw" => "\t - Added connection.json to each sandbox (simple or multiple) The file\n\t contains information to use the sandbox with third party applications.\n", "style" => "-", "text" => "Added connection.json to each sandbox (simple or multiple) The file contains information to use the sandbox with third party applications." }, { "line" => 224, "raw" => "\t - Added default_connection.json to each sandbox (it has only the default\n\t items from connection.json)\n", "style" => "-", "text" => "Added default_connection.json to each sandbox (it has only the default items from connection.json)" }, { "line" => 226, "raw" => "\t - Added README file to each sandbox (simple or multiple)\n", "style" => "-", "text" => "Added README file to each sandbox (simple or multiple)" } ], "line" => 221, "raw" => "\t- IMPORTANT CHANGES:\n", "style" => "-", "text" => "IMPORTANT CHANGES:" }, { "line" => 227, "raw" => "\t- enhanced check_slaves. It now includes \"show master status\";\n", "style" => "-", "text" => "enhanced check_slaves. It now includes \"show master status\";" }, { "line" => 228, "raw" => "\t- Fixed bug in circular replication: enable_gtid was not created;\n", "style" => "-", "text" => "Fixed bug in circular replication: enable_gtid was not created;" }, { "line" => 229, "raw" => "\t- Added 25 more integrity tests;\n", "style" => "-", "text" => "Added 25 more integrity tests;" }, { "line" => 230, "raw" => "\t- Changed default version for testing. It now looks for MySQL 5.5.31\n", "style" => "-", "text" => "Changed default version for testing. It now looks for MySQL 5.5.31" } ], "line" => 220, "note" => "04-May-2013", "raw" => "3.0.36\t04-May-2013\n", "version" => "3.0.36" }, { "entries" => [ { "line" => 232, "raw" => "\t- Fixed bug in the 'check_slaves' script created with circular replication\n", "style" => "-", "text" => "Fixed bug in the 'check_slaves' script created with circular replication" }, { "line" => 233, "raw" => "\t- Fixed bug in 'clear_all' script created in circular replication\n", "style" => "-", "text" => "Fixed bug in 'clear_all' script created in circular replication" }, { "line" => 234, "raw" => "\t- added 50 new integrity tests to test_sandbox\n", "style" => "-", "text" => "added 50 new integrity tests to test_sandbox" } ], "line" => 231, "note" => "03-May-2013", "raw" => "3.0.35\t03-May-2013\n", "version" => "3.0.35" }, { "entries" => [ { "line" => 236, "raw" => "\t- Added option --bind_address, to define how MySQL::Sandbox servers\n\tconnect to TCP/IP\n", "style" => "-", "text" => "Added option --bind_address, to define how MySQL::Sandbox servers connect to TCP/IP" }, { "line" => 238, "raw" => "\t- Fixed bug with handling 5.7 builds. Replicated systems did not create\n\tthe script enable_gtid \t(BUG#1171977)\n", "style" => "-", "text" => "Fixed bug with handling 5.7 builds. Replicated systems did not create the script enable_gtid \t(BUG#1171977)" }, { "line" => 240, "raw" => "\t- The changes made by enable_gtid are now durable (Bug#1171986)\n", "style" => "-", "text" => "The changes made by enable_gtid are now durable (Bug#1171986)" }, { "line" => 241, "raw" => "\t- Fixed various patterns that prevented MariaDB 10.0 builds from being\n\trecognized.\n", "style" => "-", "text" => "Fixed various patterns that prevented MariaDB 10.0 builds from being recognized." }, { "line" => 243, "raw" => "\t- Fixed bug in test_sandbox, where warning messages were mixed with the\n\ttest output in MYSQL 5.5.30+\n", "style" => "-", "text" => "Fixed bug in test_sandbox, where warning messages were mixed with the test output in MYSQL 5.5.30+" }, { "line" => 245, "raw" => "\t- Fixed bug in test_sandbox, where a test that skips innodb was being\n\twrongly applied to MySQL 5.7\n", "style" => "-", "text" => "Fixed bug in test_sandbox, where a test that skips innodb was being wrongly applied to MySQL 5.7" }, { "line" => 247, "raw" => "\t- Added 10.0 among supported versions\n", "style" => "-", "text" => "Added 10.0 among supported versions" }, { "line" => 248, "raw" => "\t- Added documentation about remote sandboxes (in MySQL::Sandbox::Recipes)\n", "style" => "-", "text" => "Added documentation about remote sandboxes (in MySQL::Sandbox::Recipes)" }, { "line" => 249, "raw" => "\t- Added a test that checks if enable_gtid is created when needed.\n", "style" => "-", "text" => "Added a test that checks if enable_gtid is created when needed." } ], "line" => 235, "note" => "29-Apr-2013", "raw" => "3.0.34\t29-Apr-2013\n", "version" => "3.0.34" }, { "entries" => [ { "line" => 251, "raw" => "\t- Fixed Bug #1167794 '--log option deprecated'\n", "style" => "-", "text" => "Fixed Bug #1167794 '--log option deprecated'" }, { "line" => 252, "raw" => "\t- fixed minot working issue in deploy_to_remote_sandboxes.sh\n", "style" => "-", "text" => "fixed minot working issue in deploy_to_remote_sandboxes.sh" } ], "line" => 250, "note" => "11-Apr-2013", "raw" => "3.0.33\t11-Apr-2013\n", "version" => "3.0.33" }, { "entries" => [ { "line" => 254, "raw" => "\t- Fixed minor bug in deploy_to_remote_sandboxes.sh\n", "style" => "-", "text" => "Fixed minor bug in deploy_to_remote_sandboxes.sh" }, { "line" => 255, "raw" => "\t- Added deploy_to_remote_sandboxes.sh to the list of scripts to install\n", "style" => "-", "text" => "Added deploy_to_remote_sandboxes.sh to the list of scripts to install" } ], "line" => 253, "note" => "12-Mar-2013", "raw" => "3.0.32\t12-Mar-2013\n", "version" => "3.0.32" }, { "entries" => [ { "line" => 257, "raw" => "\t- Fixed Bug#1133186 make_sandbox_from_source does not recognize version\n", "style" => "-", "text" => "Fixed Bug#1133186 make_sandbox_from_source does not recognize version" }, { "line" => 258, "raw" => "\t- removed diagnostic lines that printed MySQL version and temporary\n\tdirectory\n", "style" => "-", "text" => "removed diagnostic lines that printed MySQL version and temporary directory" }, { "line" => 260, "raw" => "\t- removed diagnostic lines that printed ports and directories being\n\tsearched when the option --check_port was used\n", "style" => "-", "text" => "removed diagnostic lines that printed ports and directories being searched when the option --check_port was used" }, { "line" => 262, "raw" => "\t- added bin/deploy_to_remote_sandboxes.sh, which installs sandboxes to\n\tremote hosts\n", "style" => "-", "text" => "added bin/deploy_to_remote_sandboxes.sh, which installs sandboxes to remote hosts" } ], "line" => 256, "note" => "08-Mar-2013", "raw" => "3.0.31\t08-Mar-2013\n", "version" => "3.0.31" }, { "entries" => [ { "line" => 265, "raw" => "\t- Fixed Bug#1116760 Uninitalized \$ENV{\"SANDBOX_BINARY\"} \n", "style" => "-", "text" => "Fixed Bug#1116760 Uninitalized \$ENV{\"SANDBOX_BINARY\"}" }, { "line" => 266, "raw" => "\t- Removed obnoxious warning introduced in MySQL 5.5.30 when using\n\tmysqldump\n", "style" => "-", "text" => "Removed obnoxious warning introduced in MySQL 5.5.30 when using mysqldump" } ], "line" => 264, "note" => "06-Feb-2013", "raw" => "3.0.30\t06-Feb-2013\n", "version" => "3.0.30" }, { "entries" => [ { "line" => 269, "raw" => "\t- fixed bug#1103918 (affects sandboxes using MySQL 4.1)\n", "style" => "-", "text" => "fixed bug#1103918 (affects sandboxes using MySQL 4.1)" } ], "line" => 268, "note" => "24-Jan-2013", "raw" => "3.0.29\t24-Jan-2013\n", "version" => "3.0.29" }, { "entries" => [ { "line" => 271, "raw" => "\t- changed initialization scripts to avoid most of the annoying messages\n\tthat MySQL 5.6 creates during tests \n", "style" => "-", "text" => "changed initialization scripts to avoid most of the annoying messages that MySQL 5.6 creates during tests" }, { "line" => 273, "raw" => "\t- Added script to enable GTID in MySQL 5.6\n", "style" => "-", "text" => "Added script to enable GTID in MySQL 5.6" } ], "line" => 270, "note" => "06-Jan-2013", "raw" => "3.0.28\t06-Jan-2013\n", "version" => "3.0.28" }, { "entries" => [ { "entries" => [ { "line" => 276, "raw" => "\t # improved 'clear' and 'start' scripts to handle innodb tables in the\n\t 'mysql' database\n", "style" => "#", "text" => "improved 'clear' and 'start' scripts to handle innodb tables in the 'mysql' database" }, { "line" => 278, "raw" => "\t # fixed usage of deprecated features in tests \n", "style" => "#", "text" => "fixed usage of deprecated features in tests" }, { "line" => 279, "raw" => "\t # removed obnoxious listing when data directory is created\n", "style" => "#", "text" => "removed obnoxious listing when data directory is created" } ], "line" => 275, "raw" => "\t- added compatibility features to use MySQL 5.6\n", "style" => "-", "text" => "added compatibility features to use MySQL 5.6" } ], "line" => 274, "note" => "05-Jan-2013", "raw" => "3.0.27\t05-Jan-2013\n", "version" => "3.0.27" }, { "entries" => [ { "line" => 281, "raw" => "\t- Removed dependency on table mysql.host, which can't be found anymore in\n\t\tMySQL 5.6.7\n", "style" => "-", "text" => "Removed dependency on table mysql.host, which can't be found anymore in MySQL 5.6.7" } ], "line" => 280, "note" => "30-Sep-2012", "raw" => "3.0.26\t30-Sep-2012\n", "version" => "3.0.26" }, { "entries" => [ { "line" => 284, "raw" => "\t- fixed typos and credits. (Thanks to Mateusz Kijowski for noticing)\n", "style" => "-", "text" => "fixed typos and credits. (Thanks to Mateusz Kijowski for noticing)" } ], "line" => 283, "note" => "01-Feb-2012", "raw" => "3.0.25\t01-Feb-2012\n", "version" => "3.0.25" }, { "entries" => [ { "line" => 286, "raw" => "\t- added --master option to low_level_make_sandbox (enables binlogs and\n\tserver-ID)\n", "style" => "-", "text" => "added --master option to low_level_make_sandbox (enables binlogs and server-ID)" }, { "line" => 288, "raw" => "\t- added --slaveof option to low_level_make_sandbox (creates a slave of\n\tanother sandbox or regular server)\n", "style" => "-", "text" => "added --slaveof option to low_level_make_sandbox (creates a slave of another sandbox or regular server)" }, { "line" => 290, "raw" => "\t- added tests for the above ones\n", "style" => "-", "text" => "added tests for the above ones" } ], "line" => 285, "note" => "17-Dec-2011", "raw" => "3.0.24\t17-Dec-2011\n", "version" => "3.0.24" }, { "entries" => [ { "entries" => [ { "line" => 294, "raw" => "\t- Added arguments to deal with node options in replication and multiple\n\tsandbox. --node_options, --slave_options, --master_options,\n\t--one_slave_options, --one_node_options\n", "style" => "-", "text" => "Added arguments to deal with node options in replication and multiple sandbox. --node_options, --slave_options, --master_options, --one_slave_options, --one_node_options" }, { "line" => 297, "raw" => "\t- added --high_performance option to low_level_make_sandbox: adds the following features to the\n\tconfiguration file:\n innodb-thread-concurrency=0\n sync_binlog=0\n innodb-log-buffer-size=50M\n innodb-additional-mem-pool-size=100M\n max-connections=350\n max_allowed_packet=48M\n innodb_buffer_pool_size=512M\n innodb-log-file-size=50M\n innodb-flush-method=O_DIRECT\n \n", "style" => "-", "text" => "added --high_performance option to low_level_make_sandbox: adds the following features to the configuration file: innodb-thread-concurrency=0 sync_binlog=0 innodb-log-buffer-size=50M innodb-additional-mem-pool-size=100M max-connections=350 max_allowed_packet=48M innodb_buffer_pool_size=512M innodb-log-file-size=50M innodb-flush-method=O_DIRECT" } ], "line" => 292, "raw" => " - fixed bug in prefixed version names (e.g.: now you can use make_sandbox\n\tps5.1.57 or mp5.2.10)\n", "style" => "-", "text" => "fixed bug in prefixed version names (e.g.: now you can use make_sandbox ps5.1.57 or mp5.2.10)" } ], "line" => 291, "note" => "13-Dec-2011", "raw" => "3.0.23\t13-Dec-2011\n", "version" => "3.0.23" }, { "entries" => [ { "line" => 310, "raw" => "\t- Add support for directories named after a prefixed version (my5.1.56,\n\tps5.1.56, giuseppe_5.1.56, etc)\n", "style" => "-", "text" => "Add support for directories named after a prefixed version (my5.1.56, ps5.1.56, giuseppe_5.1.56, etc)" } ], "line" => 309, "note" => "26-Oct-2011", "raw" => "3.0.22\t26-Oct-2011\n", "version" => "3.0.22" }, { "entries" => [ { "line" => 313, "raw" => "\t- Added test to MANIFEST (and to tarball). Forgotten in previous version\n", "style" => "-", "text" => "Added test to MANIFEST (and to tarball). Forgotten in previous version" } ], "line" => 312, "note" => "10-Oct-2011", "raw" => "3.0.21\t10-Oct-2011\n", "version" => "3.0.21" }, { "entries" => [ { "line" => 315, "raw" => "\t- Fixed bug in make_sandbox. \"--add_prefix\" did not work in combination\n\twith \"--export_binaries\"\n", "style" => "-", "text" => "Fixed bug in make_sandbox. \"--add_prefix\" did not work in combination with \"--export_binaries\"" }, { "line" => 317, "raw" => "\t- changed port checking tests to not depend on a specific MySQL version\n", "style" => "-", "text" => "changed port checking tests to not depend on a specific MySQL version" } ], "line" => 314, "note" => "10-Oct-2011", "raw" => "3.0.20\t10-Oct-2011\n", "version" => "3.0.20" }, { "entries" => [ { "line" => 319, "raw" => "\t- INCOMPATIBLE CHANGE: make_sandbox now requires '--' before adding\n\toptions supported by low_level_make_sandbox\n", "style" => "-", "text" => "INCOMPATIBLE CHANGE: make_sandbox now requires '--' before adding options supported by low_level_make_sandbox" }, { "line" => 321, "raw" => "\t- INCOMPATIBLE CHANGE: the option --export_binaries for make_sandbox must\n\tbe inserted BEFORE the tarball name\n", "style" => "-", "text" => "INCOMPATIBLE CHANGE: the option --export_binaries for make_sandbox must be inserted BEFORE the tarball name" }, { "line" => 323, "raw" => "\t- make_sandbox now recognizes Percona and MariaDB binaries \n", "style" => "-", "text" => "make_sandbox now recognizes Percona and MariaDB binaries" }, { "line" => 324, "raw" => "\t- make_sandbox accepts the option --add_prefix=NAME, which will be added\n\tto the version number of the rename expanded tarball. (e.g.\n\t--add_prefix=yell mysql-5.1.8-linux.tar.gz will create yell5.1.58)\n", "style" => "-", "text" => "make_sandbox accepts the option --add_prefix=NAME, which will be added to the version number of the rename expanded tarball. (e.g. --add_prefix=yell mysql-5.1.8-linux.tar.gz will create yell5.1.58)" } ], "line" => 318, "note" => "09-Oct-2011", "raw" => "3.0.19\t09-Oct-2011\n", "version" => "3.0.19" }, { "entries" => [ { "line" => 328, "raw" => "\t- fixed CPAN Ticket 70470 MySQL::Sandbox - make_sandbox warns with Perl 5.14 and 5.14.1\n", "style" => "-", "text" => "fixed CPAN Ticket 70470 MySQL::Sandbox - make_sandbox warns with Perl 5.14 and 5.14.1" }, { "line" => 329, "raw" => "\t- Fixed report-port in replication. The port used was the master's, but it\n\tshould be the slave's\n", "style" => "-", "text" => "Fixed report-port in replication. The port used was the master's, but it should be the slave's" } ], "line" => 327, "note" => "08-Oct-2011", "raw" => "3.0.18\t08-Oct-2011\n", "version" => "3.0.18" }, { "entries" => [ { "line" => 332, "raw" => "\t- incompatible change: default mask for msandbox user is now '127.%'\n\tinstead of '%'. You can resume the old mask with --remote_access='%'\n", "style" => "-", "text" => "incompatible change: default mask for msandbox user is now '127.%' instead of '%'. You can resume the old mask with --remote_access='%'" }, { "line" => 334, "raw" => "\t- added low privilege users msandbox_ro (SELECT EXECUTE), msandbox_rw (SELECT INSERT\n\tUPDATE CREATE DROP LOCK EXECUTE), and rsandbox (REPLICATION SLAVE)\n", "style" => "-", "text" => "added low privilege users msandbox_ro (SELECT EXECUTE), msandbox_rw (SELECT INSERT UPDATE CREATE DROP LOCK EXECUTE), and rsandbox (REPLICATION SLAVE)" }, { "line" => 336, "raw" => "\t- fixed bug in test_smoke (assumed 2 directories after cleaning, but 5.5\n\thas also performance_schema)\n", "style" => "-", "text" => "fixed bug in test_smoke (assumed 2 directories after cleaning, but 5.5 has also performance_schema)" } ], "line" => 331, "note" => "07-Jan-2011", "raw" => "3.0.17\t07-Jan-2011\n", "version" => "3.0.17" }, { "entries" => [ { "line" => 339, "raw" => "\t- fixed bug in TestHelper (wrong assumption on all directories in\n\t\$SANDBOX_BINARIES containing MySQL files)\n", "style" => "-", "text" => "fixed bug in TestHelper (wrong assumption on all directories in \$SANDBOX_BINARIES containing MySQL files)" }, { "line" => 341, "raw" => "\t- added information to check_slaves to report master logfile and position\n", "style" => "-", "text" => "added information to check_slaves to report master logfile and position" } ], "line" => 338, "note" => "30-Dec-2010", "raw" => "3.0.16\t30-Dec-2010\n", "version" => "3.0.16" }, { "entries" => [ { "line" => 343, "raw" => "\t- added a 'msb' script to each sandbox, to mimick the mysql.server script\n", "style" => "-", "text" => "added a 'msb' script to each sandbox, to mimick the mysql.server script" }, { "line" => 344, "raw" => "\t- fixed test visualization bug for Mac OSX with case insensitive storage\n", "style" => "-", "text" => "fixed test visualization bug for Mac OSX with case insensitive storage" }, { "line" => 345, "raw" => "\t- fixed algorithm to convert version number to ports\n", "style" => "-", "text" => "fixed algorithm to convert version number to ports" }, { "line" => 346, "raw" => "\t- fixed test suite for MySQL 5.5 (can't disable innodb for testing)\n", "style" => "-", "text" => "fixed test suite for MySQL 5.5 (can't disable innodb for testing)" } ], "line" => 342, "note" => "23-Dec-2010", "raw" => "3.0.15\t23-Dec-2010\n", "version" => "3.0.15" }, { "entries" => [ { "line" => 348, "raw" => "\t- Added a 'rsandbox' user with REPLICATION SLAVE grants for replication\n\t systems\n", "style" => "-", "text" => "Added a 'rsandbox' user with REPLICATION SLAVE grants for replication systems" } ], "line" => 347, "note" => "31-Aug-2010 (not released)", "raw" => "3.0.14\t31-Aug-2010 (not released)\n", "version" => "3.0.14" }, { "entries" => [ { "line" => 351, "raw" => "\t- fixed minor problems in the test suite about testing on Windows\n", "style" => "-", "text" => "fixed minor problems in the test suite about testing on Windows" }, { "line" => 352, "raw" => "\t- added a prototype for MySQL Cluster integration\n", "style" => "-", "text" => "added a prototype for MySQL Cluster integration" } ], "line" => 350, "note" => "28-Jun-2010 (not released)", "raw" => "3.0.13\t28-Jun-2010 (not released)\n", "version" => "3.0.13" }, { "entries" => [ { "line" => 354, "raw" => "\t- Fixed bug in test_sandbox. When a test evaluates only the result code\n\t and there is no output from a failing command, test_result was not able\n\t to detect the failure.\n", "style" => "-", "text" => "Fixed bug in test_sandbox. When a test evaluates only the result code and there is no output from a failing command, test_result was not able to detect the failure." }, { "line" => 357, "raw" => "\t- fixed bug in test_sandbox. Due to a change in behavior in the mysql\n\t client, where './use -B -N' with a \\G terminated query does not\n\t show the headers since 5.1.43, We need to take into account the pre \n\t and post fix behaviors in the test.\n", "style" => "-", "text" => "fixed bug in test_sandbox. Due to a change in behavior in the mysql client, where './use -B -N' with a \\G terminated query does not show the headers since 5.1.43, We need to take into account the pre and post fix behaviors in the test." }, { "line" => 361, "raw" => "\t- Integrated set_plugins into sbtool\n", "style" => "-", "text" => "Integrated set_plugins into sbtool" }, { "line" => 362, "raw" => "\t- Updated documentation\n", "style" => "-", "text" => "Updated documentation" }, { "line" => 363, "raw" => "\t- added tests for innodb plugin installation\n", "style" => "-", "text" => "added tests for innodb plugin installation" }, { "line" => 364, "raw" => "\t- added tests for semi-synch plugin installation\n", "style" => "-", "text" => "added tests for semi-synch plugin installation" }, { "line" => 365, "raw" => "\t- Fixed bug in 'stop' script. It did not accept \$MYCLIENT_OPTION\n", "style" => "-", "text" => "Fixed bug in 'stop' script. It did not accept \$MYCLIENT_OPTION" }, { "line" => 366, "raw" => "\t- Fixed bug#487864 - tar was using '--help' instead of '--version' to\n\t detect the supported version.\n", "style" => "-", "text" => "Fixed bug#487864 - tar was using '--help' instead of '--version' to detect the supported version." }, { "line" => 368, "raw" => "\t- Fixed bug in sbtool. It did not display credits in the help.\n", "style" => "-", "text" => "Fixed bug in sbtool. It did not display credits in the help." }, { "line" => 369, "raw" => "\t- Added test to skip testing on Windows.\n", "style" => "-", "text" => "Added test to skip testing on Windows." }, { "line" => 370, "raw" => "\t- added instrumentation to all MySQL Sandbox scripts. If you set the\n\t \$SBINSTR environment variable with the name of a file, all sandbox\n\t scripts will write an entry to that file with their run time params.\n", "style" => "-", "text" => "added instrumentation to all MySQL Sandbox scripts. If you set the \$SBINSTR environment variable with the name of a file, all sandbox scripts will write an entry to that file with their run time params." } ], "line" => 353, "note" => "29-May-2010", "raw" => "3.0.12\t29-May-2010\n", "version" => "3.0.12" }, { "entries" => [ { "line" => 374, "raw" => "\t- Fixed bug in ./clear script. In version 5.5 and bigger, it erased\n\t the performance_schema database, which should not be removed. If it\n\t exists, its tables are now truncated.\n", "style" => "-", "text" => "Fixed bug in ./clear script. In version 5.5 and bigger, it erased the performance_schema database, which should not be removed. If it exists, its tables are now truncated." }, { "line" => 377, "raw" => "\t- Fixed bug in ./clear script. The removal of databases was not\n\t executed in a clean mode.\n", "style" => "-", "text" => "Fixed bug in ./clear script. The removal of databases was not executed in a clean mode." }, { "line" => 379, "raw" => "\t- Added a script to install plugins in ./drafts \n", "style" => "-", "text" => "Added a script to install plugins in ./drafts" } ], "line" => 373, "note" => "24-May-2010", "raw" => "3.0.11\t24-May-2010\n", "version" => "3.0.11" }, { "entries" => [ { "line" => 381, "raw" => "\t- Fixed the help() function. It displayed an example that was only\n\tappropriate for a single sandbox, but not for group ones.\n", "style" => "-", "text" => "Fixed the help() function. It displayed an example that was only appropriate for a single sandbox, but not for group ones." } ], "line" => 380, "note" => "04-May-2010", "raw" => "3.0.10\t04-May-2010\n", "version" => "3.0.10" }, { "entries" => [ { "line" => 384, "raw" => "\t- added a check in the 'start' script to verify that mysqld_safe exists\n\t and can run properly.\n", "style" => "-", "text" => "added a check in the 'start' script to verify that mysqld_safe exists and can run properly." }, { "line" => 386, "raw" => "\t- Added an exit code to the 'start' script to alert when the server does\n\t not start\n", "style" => "-", "text" => "Added an exit code to the 'start' script to alert when the server does not start" }, { "line" => 388, "raw" => "\t- added help to make_sandbox_from_installed. Added /usr/sbin as source\n\tdirectory\n", "style" => "-", "text" => "added help to make_sandbox_from_installed. Added /usr/sbin as source directory" }, { "line" => 390, "raw" => "\t- added instructions to the 'clear' script to remove functions and plugins \n", "style" => "-", "text" => "added instructions to the 'clear' script to remove functions and plugins" } ], "line" => 383, "note" => "25-Mar-2010", "raw" => "3.0.09\t25-Mar-2010\n", "version" => "3.0.09" }, { "entries" => [ { "line" => 392, "raw" => "\t- Fixed make_sandbox_from_source failure due to changes in modified \n\t configure.in (Thanks to Padraig O'Sullivan for noticing)\n", "style" => "-", "text" => "Fixed make_sandbox_from_source failure due to changes in modified configure.in (Thanks to Padraig O'Sullivan for noticing)" }, { "line" => 394, "raw" => "\t- modified the \"USING\" file, which now includes the Sandbox version\n", "style" => "-", "text" => "modified the \"USING\" file, which now includes the Sandbox version" }, { "line" => 395, "raw" => "\t- Changed default test version from 5.0.77 to 5.0.86\n", "style" => "-", "text" => "Changed default test version from 5.0.77 to 5.0.86" } ], "line" => 391, "note" => "17-Feb-2010", "raw" => "3.0.08\t17-Feb-2010\n", "version" => "3.0.08" }, { "entries" => [ { "line" => 397, "raw" => "\t- Fixed bud in make_multiple_custom_sandbox. With some versions of bash,\n\t it broke on tests with \"use_all\"\n", "style" => "-", "text" => "Fixed bud in make_multiple_custom_sandbox. With some versions of bash, it broke on tests with \"use_all\"" }, { "line" => 399, "raw" => "\t- fixed bug on symlink access on some platforms.\n", "style" => "-", "text" => "fixed bug on symlink access on some platforms." }, { "line" => 400, "raw" => "\t- Fixed Bug#504789 export_binaries fails on some OS when crossing file systems\n", "style" => "-", "text" => "Fixed Bug#504789 export_binaries fails on some OS when crossing file systems" } ], "line" => 396, "note" => "08-Jan-2010", "raw" => "3.0.07\t08-Jan-2010\n", "version" => "3.0.07" }, { "entries" => [ { "line" => 402, "raw" => "\t- Fixed bug in prompt definition. A stray quote was added at the start of\n\teach user-defined prompt.\n", "style" => "-", "text" => "Fixed bug in prompt definition. A stray quote was added at the start of each user-defined prompt." }, { "line" => 404, "raw" => "\t- Fixed Bug#456949 \"each sandbox should have a dedicated temporary\n\tdirectory\".\n", "style" => "-", "text" => "Fixed Bug#456949 \"each sandbox should have a dedicated temporary directory\"." }, { "line" => 406, "raw" => "\t- Fixed Bug#439226 \"sandbox_action script uses wrong version of Perl\"\n", "style" => "-", "text" => "Fixed Bug#439226 \"sandbox_action script uses wrong version of Perl\"" }, { "line" => 407, "raw" => "\t- Improved documentation to resolve Bug#392996 \"make install Sandbox.pm path\n\tissues\".\n", "style" => "-", "text" => "Improved documentation to resolve Bug#392996 \"make install Sandbox.pm path issues\"." }, { "line" => 409, "raw" => "\t- added 'status' script to sandboxes\n", "style" => "-", "text" => "added 'status' script to sandboxes" }, { "line" => 410, "raw" => "\t- fixed db_user definition, which could write trail character to the\n\toption file.\n", "style" => "-", "text" => "fixed db_user definition, which could write trail character to the option file." } ], "line" => 401, "note" => "03-Jan-2010", "raw" => "3.0.06\t03-Jan-2010\n", "version" => "3.0.06" }, { "entries" => [ { "line" => 413, "raw" => "\t- Fixed Bug#428274 make_sandbox fails on Mac OSX 10.6 \"snow Leopard\"\n", "style" => "-", "text" => "Fixed Bug#428274 make_sandbox fails on Mac OSX 10.6 \"snow Leopard\"" }, { "entries" => [ { "line" => 416, "raw" => "\t- Added a dedicated history file per each sandbox (Thanks to Gerardo Narvaja\n\t for suggesting it) \n", "style" => "-", "text" => "Added a dedicated history file per each sandbox (Thanks to Gerardo Narvaja for suggesting it)" }, { "line" => 418, "raw" => "\t- fixed bug in make_sandbox when dealing with a non-standard answer to the\n\t\"which\" Unix utility\n", "style" => "-", "text" => "fixed bug in make_sandbox when dealing with a non-standard answer to the \"which\" Unix utility" }, { "line" => 420, "raw" => "\t- added error checking for 'bash' to low_level_make_sandbox\n", "style" => "-", "text" => "added error checking for 'bash' to low_level_make_sandbox" }, { "line" => 421, "raw" => "\t- improved error checking for mysql_install_db script\n", "style" => "-", "text" => "improved error checking for mysql_install_db script" }, { "line" => 422, "raw" => "\t- renamed 'sandbox' tool -> 'msandbox' to prevent clash\n\t with existing tool in Linux distros\n", "style" => "-", "text" => "renamed 'sandbox' tool -> 'msandbox' to prevent clash with existing tool in Linux distros" }, { "line" => 424, "raw" => "\t- Added \"--no_run\" option to low_level_make_sandbox, to stop\n\t the server when using the \"--load_grants\" option. The purpose is \n\t to end the command without leaving any running sub-process.\n", "style" => "-", "text" => "Added \"--no_run\" option to low_level_make_sandbox, to stop the server when using the \"--load_grants\" option. The purpose is to end the command without leaving any running sub-process." } ], "line" => 414, "raw" => " - Increased starting timeout from 20 to 60, because some recent versions\n\t of MySQL are quite slower to start.\n", "style" => "-", "text" => "Increased starting timeout from 20 to 60, because some recent versions of MySQL are quite slower to start." } ], "line" => 412, "note" => "12-Sep-2009", "raw" => "3.0.05 12-Sep-2009\n", "version" => "3.0.05" }, { "entries" => [ { "line" => 428, "raw" => "\t- fixed bug in test_sandbox. A \"\$\" sign in a directory name was not\n\t escaped properly\n", "style" => "-", "text" => "fixed bug in test_sandbox. A \"\$\" sign in a directory name was not escaped properly" }, { "line" => 430, "raw" => "\t- added the \"--no_show\" option to low_level_make_sandbox\n", "style" => "-", "text" => "added the \"--no_show\" option to low_level_make_sandbox" }, { "line" => 431, "raw" => "\t- fixed a bug in the \"sb\" script. Calling it in \"create mode\" did\n\t fail if \$SANDBOX_HOME does not exist yet.\n", "style" => "-", "text" => "fixed a bug in the \"sb\" script. Calling it in \"create mode\" did fail if \$SANDBOX_HOME does not exist yet." } ], "line" => 427, "note" => "14-Jun-2009", "raw" => "3.0.04 14-Jun-2009\n", "version" => "3.0.04" }, { "entries" => [ { "line" => 434, "raw" => "\t- added the 'sb' shortcut script to create and invoke sandboxes easily.\n", "style" => "-", "text" => "added the 'sb' shortcut script to create and invoke sandboxes easily." } ], "line" => 433, "note" => "11-Jun-2009", "raw" => "3.0.03 11-Jun-2009\n", "version" => "3.0.03" }, { "entries" => [ { "line" => 436, "raw" => "\t- Added a check for all scripts, to prevent MySQL::Sandbox \n\t from running as root without explicit awareness\n", "style" => "-", "text" => "Added a check for all scripts, to prevent MySQL::Sandbox from running as root without explicit awareness" } ], "line" => 435, "note" => "30-May-2009", "raw" => "3.0.02 30-May-2009\n", "version" => "3.0.02" }, { "entries" => [ { "line" => 439, "raw" => "\t- Fixed Bug#381044 \"my\" script fails on some executables\n", "style" => "-", "text" => "Fixed Bug#381044 \"my\" script fails on some executables" }, { "line" => 440, "raw" => "\t- moved function \"exists_in_path\" to MySQL::Sandbox module\n", "style" => "-", "text" => "moved function \"exists_in_path\" to MySQL::Sandbox module" } ], "line" => 438, "note" => "28-May-2009", "raw" => "3.0.01 28-May-2009\n", "version" => "3.0.01" }, { "entries" => [ { "line" => 442, "raw" => "\t- GA release\n", "style" => "-", "text" => "GA release" }, { "line" => 443, "raw" => "\t- no code modification. Same codebase as 2.0.99f\n", "style" => "-", "text" => "no code modification. Same codebase as 2.0.99f" }, { "line" => 444, "raw" => "\t- completed cookbook (41 recipes in MySQL::Sandbox::Recipes)\n", "style" => "-", "text" => "completed cookbook (41 recipes in MySQL::Sandbox::Recipes)" }, { "line" => 445, "raw" => "\t- added script_templates directory (No modification in current version,\n\t just preparation for 3.1.xx)\n", "style" => "-", "text" => "added script_templates directory (No modification in current version, just preparation for 3.1.xx)" }, { "line" => 447, "raw" => "\t- added drafts directory\n", "style" => "-", "text" => "added drafts directory" }, { "entries" => [ { "line" => 449, "raw" => "\t- fixed bug in make_sandbox_from_installed. Some system use /lib64 \n\t instead of /lib \n", "style" => "-", "text" => "fixed bug in make_sandbox_from_installed. Some system use /lib64 instead of /lib" }, { "line" => 451, "raw" => "\t- added more recipes to MySQL::Sandbox::Recipes\n", "style" => "-", "text" => "added more recipes to MySQL::Sandbox::Recipes" } ], "line" => 448, "raw" => "2.0.99f 03-May-2009\n", "style" => "", "text" => "2.0.99f 03-May-2009" }, { "entries" => [ { "line" => 453, "raw" => "\t- added make_sandbox_from_installed to install from binaries already\n\t installed via packages such as .deb, .rpm. \n", "style" => "-", "text" => "added make_sandbox_from_installed to install from binaries already installed via packages such as .deb, .rpm." }, { "line" => 455, "raw" => "\t- added sample perl test script to MANIFEST. Missed during the previous release\n", "style" => "-", "text" => "added sample perl test script to MANIFEST. Missed during the previous release" }, { "line" => 456, "raw" => "\t- added MySQL::Sandbox::Recipes, a cookbook with short How-To tutorials\n", "style" => "-", "text" => "added MySQL::Sandbox::Recipes, a cookbook with short How-To tutorials" }, { "line" => 457, "raw" => "\t- cleaned up tests. Added 8 more test to check replication parameters\n", "style" => "-", "text" => "cleaned up tests. Added 8 more test to check replication parameters" } ], "line" => 452, "raw" => "2.0.99e 03-May-2009\n", "style" => "", "text" => "2.0.99e 03-May-2009" }, { "entries" => [ { "line" => 459, "raw" => "\t- Added user defined test in Perl, in addition to the ones written in\n\t the test_sandbox script language\n", "style" => "-", "text" => "Added user defined test in Perl, in addition to the ones written in the test_sandbox script language" }, { "line" => 461, "raw" => "\t- Updated documentation\n", "style" => "-", "text" => "Updated documentation" } ], "line" => 458, "raw" => "2.0.99d 02-May-2009\n", "style" => "", "text" => "2.0.99d 02-May-2009" }, { "entries" => [ { "line" => 463, "raw" => "\t- Fixed conceptual bug in \"start\" and \"restart\". Group sandboxes\n\t were not allowing it\n", "style" => "-", "text" => "Fixed conceptual bug in \"start\" and \"restart\". Group sandboxes were not allowing it" }, { "line" => 465, "raw" => "\t- added \"restart_all\" in group sandboxes\n", "style" => "-", "text" => "added \"restart_all\" in group sandboxes" }, { "line" => 466, "raw" => "\t- Added 18 new tests to check the above problem\n", "style" => "-", "text" => "Added 18 new tests to check the above problem" }, { "line" => 467, "raw" => "\t- Added documentation about port checking and parameters accepted by\n\t'start' and 'restart'\n", "style" => "-", "text" => "Added documentation about port checking and parameters accepted by 'start' and 'restart'" } ], "line" => 462, "raw" => "2.0.99c 01-May-2009\n", "style" => "", "text" => "2.0.99c 01-May-2009" }, { "entries" => [ { "line" => 470, "raw" => "\t- added group port checking to make_replication_sandbox and\n\t make_multiple_sandbox\n", "style" => "-", "text" => "added group port checking to make_replication_sandbox and make_multiple_sandbox" }, { "line" => 472, "raw" => "\t- added 2 new tests to the test suite to test singkle and group\n\t port checking\n", "style" => "-", "text" => "added 2 new tests to the test suite to test singkle and group port checking" }, { "line" => 474, "raw" => "\t- added documentation on port checking\n", "style" => "-", "text" => "added documentation on port checking" } ], "line" => 469, "raw" => "2.0.99b 26-Apr-2009\n", "style" => "", "text" => "2.0.99b 26-Apr-2009" }, { "entries" => [ { "line" => 476, "raw" => "\t- fixed bug in make_replication_sandbox and make_multiple_sandbox. If a\n\tgroup sandbox was the first to be created under \$SANDBOX_HOME, it failed.\n", "style" => "-", "text" => "fixed bug in make_replication_sandbox and make_multiple_sandbox. If a group sandbox was the first to be created under \$SANDBOX_HOME, it failed." }, { "line" => 478, "raw" => "\t- added check_replication.sb as user defined sample test\n", "style" => "-", "text" => "added check_replication.sb as user defined sample test" } ], "line" => 475, "raw" => "2.0.99a 12-Apr-2009\n", "style" => "", "text" => "2.0.99a 12-Apr-2009" } ], "line" => 441, "note" => "09-May-2009", "raw" => "3.0.00 09-May-2009\n", "version" => "3.0.00" }, { "entries" => [ { "line" => 480, "raw" => "\t- implemented user defined test modules\n", "style" => "-", "text" => "implemented user defined test modules" }, { "line" => 481, "raw" => "\t- fixed some documentation glitches\n", "style" => "-", "text" => "fixed some documentation glitches" }, { "line" => 482, "raw" => "\t- Added documentation about user defined tests\n", "style" => "-", "text" => "Added documentation about user defined tests" }, { "entries" => [ { "line" => 484, "raw" => "\t- added script make_sandbox_from_source, which will create\n\t a sandbox from a build directory\n", "style" => "-", "text" => "added script make_sandbox_from_source, which will create a sandbox from a build directory" }, { "line" => 486, "raw" => "\t- Extended maximum port to 64000\n", "style" => "-", "text" => "Extended maximum port to 64000" }, { "line" => 487, "raw" => "\t- added MySQL versions 5.[2345] as accepted for a Sandbox\n", "style" => "-", "text" => "added MySQL versions 5.[2345] as accepted for a Sandbox" } ], "line" => 483, "raw" => "2.0.98i 09-Apr-2009\n", "style" => "", "text" => "2.0.98i 09-Apr-2009" }, { "entries" => [ { "line" => 489, "raw" => "\t- Changed test_sandbox to use IPC::Open3 instead of qx, when\n\t available. This will make the 'make test' output more readable.\n", "style" => "-", "text" => "Changed test_sandbox to use IPC::Open3 instead of qx, when available. This will make the 'make test' output more readable." }, { "line" => 491, "raw" => " - added Test_Helper.pm to the test suite\n", "style" => "-", "text" => "added Test_Helper.pm to the test suite" } ], "line" => 488, "raw" => "2.0.98h 08-Apr-2009\n", "style" => "", "text" => "2.0.98h 08-Apr-2009" }, { "entries" => [ { "line" => 493, "raw" => "\t- added --master_node option to sbtool\n", "style" => "-", "text" => "added --master_node option to sbtool" }, { "line" => 494, "raw" => "\t- added 'preserve' and 'unpreserve' options to sbtool\n", "style" => "-", "text" => "added 'preserve' and 'unpreserve' options to sbtool" }, { "line" => 495, "raw" => "\t- made test_sandbox TAP compatible\n", "style" => "-", "text" => "made test_sandbox TAP compatible" }, { "line" => 496, "raw" => "\t- updated the test suite\n", "style" => "-", "text" => "updated the test suite" }, { "line" => 497, "raw" => "\t- written the documentation on sbtool to MySQL::Sandbox POD\n", "style" => "-", "text" => "written the documentation on sbtool to MySQL::Sandbox POD" } ], "line" => 492, "raw" => "2.0.98g 07-Apr-2009\n", "style" => "", "text" => "2.0.98g 07-Apr-2009" }, { "entries" => [ { "entries" => [ { "line" => 500, "raw" => "\t- introduced --export_binaries to make_sandbox\n", "style" => "-", "text" => "introduced --export_binaries to make_sandbox" }, { "line" => 501, "raw" => "\t- added 03_test_sandbox.t, which uses test_sandbox within\n\t the test suite\n", "style" => "-", "text" => "added 03_test_sandbox.t, which uses test_sandbox within the test suite" }, { "line" => 503, "raw" => "\t- fixed bug in sbtool. Moving sandbox failed becaus of wrong regular\n", "style" => "-", "text" => "fixed bug in sbtool. Moving sandbox failed becaus of wrong regular" }, { "entries" => [ { "line" => 505, "raw" => "\t- added a test suite for sbtool to test_sandbox \n\t test_sandbox --tests=sbtool\n", "style" => "-", "text" => "added a test suite for sbtool to test_sandbox test_sandbox --tests=sbtool" } ], "line" => 504, "raw" => " expression\n", "style" => "", "text" => "expression" } ], "line" => 499, "raw" => " - added 'delete' action to sbtool\n", "style" => "-", "text" => "added 'delete' action to sbtool" } ], "line" => 498, "raw" => "2.0.98f 06-Apr-2009\n", "style" => "", "text" => "2.0.98f 06-Apr-2009" }, { "entries" => [ { "line" => 508, "raw" => "\t- fixed error in low_level_make_sandbox --interactive. Array values\n\t were not preserved correctly wit a default\n", "style" => "-", "text" => "fixed error in low_level_make_sandbox --interactive. Array values were not preserved correctly wit a default" }, { "line" => 510, "raw" => "\t- implemented interactive confirmation for group sandboxes\n", "style" => "-", "text" => "implemented interactive confirmation for group sandboxes" } ], "line" => 507, "raw" => "2.0.98e 02-Apr-2009\n", "style" => "", "text" => "2.0.98e 02-Apr-2009" }, { "entries" => [ { "line" => 512, "raw" => "\t- Deprecated \"query_analyzer\" option :)\n", "style" => "-", "text" => "Deprecated \"query_analyzer\" option :)" }, { "line" => 513, "raw" => "\t- moved the POD to MySQL::Sandbox\n", "style" => "-", "text" => "moved the POD to MySQL::Sandbox" }, { "line" => 514, "raw" => "\t- produced mew README from the POD\n", "style" => "-", "text" => "produced mew README from the POD" }, { "line" => 515, "raw" => "\t- implemented --no_check_port (to use as a safeguard with group sandboxes)\n", "style" => "-", "text" => "implemented --no_check_port (to use as a safeguard with group sandboxes)" } ], "line" => 511, "raw" => "2.0.98d 01-Apr-2009\n", "style" => "", "text" => "2.0.98d 01-Apr-2009" }, { "entries" => [ { "line" => 517, "raw" => "\t- added query_analyzer option\n", "style" => "-", "text" => "added query_analyzer option" } ], "line" => 516, "raw" => "2.0.98c 01-Apr-2009\n", "style" => "", "text" => "2.0.98c 01-Apr-2009" }, { "entries" => [ { "line" => 519, "raw" => "\t- taken most function from sbtool to MySQL::Sandbox module\n", "style" => "-", "text" => "taken most function from sbtool to MySQL::Sandbox module" }, { "line" => 520, "raw" => "\t- implemented --check_port for single sandboxes\n", "style" => "-", "text" => "implemented --check_port for single sandboxes" }, { "line" => 521, "raw" => "\t- fixed bug#352222 \"report-port incorrect with --master-master\"\n", "style" => "-", "text" => "fixed bug#352222 \"report-port incorrect with --master-master\"" }, { "line" => 522, "raw" => "\t- cleaned up code for parse_options in all scripts\n", "style" => "-", "text" => "cleaned up code for parse_options in all scripts" }, { "line" => 523, "raw" => "\t- enhanced test case with some tests for the script correctness\n", "style" => "-", "text" => "enhanced test case with some tests for the script correctness" } ], "line" => 518, "raw" => "2.0.98b 31-Mar-2009\n", "style" => "", "text" => "2.0.98b 31-Mar-2009" } ], "line" => 479, "note" => "11-Apr-2009", "raw" => "2.0.99 11-Apr-2009\n", "version" => "2.0.99" }, { "entries" => [ { "line" => 525, "raw" => "\t- Preparation for version 3.0\n", "style" => "-", "text" => "Preparation for version 3.0" }, { "line" => 526, "raw" => "\t- refactoring code to use with ExtUtilis::MakeMaker and install a proper\n\t Perl module \n", "style" => "-", "text" => "refactoring code to use with ExtUtilis::MakeMaker and install a proper Perl module" }, { "line" => 528, "raw" => "\t- updated README\n", "style" => "-", "text" => "updated README" }, { "line" => 529, "raw" => "\t- fixed sandbox_action to support 'send_kill'\n", "style" => "-", "text" => "fixed sandbox_action to support 'send_kill'" }, { "line" => 530, "raw" => "\t- added \$VERSION to both modules \n", "style" => "-", "text" => "added \$VERSION to both modules" } ], "line" => 524, "note" => "29-Mar-2009", "raw" => "2.0.98 29-Mar-2009\n", "version" => "2.0.98" }, { "entries" => [ { "line" => 532, "raw" => "\t- added change_port script to installed sandboxes\n", "style" => "-", "text" => "added change_port script to installed sandboxes" }, { "line" => 533, "raw" => "\t- added 'port' operation to sbtool\n", "style" => "-", "text" => "added 'port' operation to sbtool" }, { "line" => 534, "raw" => "\t- added --new_port option to sbtool\n", "style" => "-", "text" => "added --new_port option to sbtool" } ], "line" => 531, "note" => "22-Mar-2009", "raw" => "2.0.18 22-Mar-2009\n", "version" => "2.0.18" }, { "entries" => [ { "line" => 536, "raw" => "\t- improved sbtool error checking\n", "style" => "-", "text" => "improved sbtool error checking" }, { "line" => 537, "raw" => "\t- improved sbtool built-in help\n", "style" => "-", "text" => "improved sbtool built-in help" }, { "line" => 538, "raw" => "\t- added \"report-port\" to replication slave setup\n", "style" => "-", "text" => "added \"report-port\" to replication slave setup" } ], "line" => 535, "note" => "15-Mar-2009", "raw" => "2.0.17 15-Mar-2009\n", "version" => "2.0.17" }, { "entries" => [ { "line" => 540, "raw" => "\t- added 'copy' option to sbtool, to clone a sandbox data directory into another.\n", "style" => "-", "text" => "added 'copy' option to sbtool, to clone a sandbox data directory into another." } ], "line" => 539, "note" => "14-Mar-2009", "raw" => "2.0.16 14-Mar-2009\n", "version" => "2.0.16" }, { "entries" => [ { "line" => 542, "raw" => "\t- added \"report-host\" option to slave creation\n", "style" => "-", "text" => "added \"report-host\" option to slave creation" }, { "line" => 543, "raw" => "\t- fixed server_id for values larger than 10. Instead of folding from 109\n\t to 100, it was doing 109 to 1010.\n", "style" => "-", "text" => "fixed server_id for values larger than 10. Instead of folding from 109 to 100, it was doing 109 to 1010." } ], "line" => 541, "note" => "09-Mar-2009", "raw" => "2.0.15 09-Mar-2009\n", "version" => "2.0.15" }, { "entries" => [ { "line" => 546, "raw" => "\t- added sbtool, a multi purpose program to do administrative tasks\n\t with the sandbox. Supported operations: port list, replication tree,\n\t moving single and multiple sandboxes\n", "style" => "-", "text" => "added sbtool, a multi purpose program to do administrative tasks with the sandbox. Supported operations: port list, replication tree, moving single and multiple sandboxes" } ], "line" => 545, "note" => "19-Feb-2009", "raw" => "2.0.15 19-Feb-2009\n", "version" => "2.0.15" }, { "entries" => [ { "line" => 550, "raw" => "\t- added code to the \"clear\" script to truncate the table logs if they\n\t exist\n", "style" => "-", "text" => "added code to the \"clear\" script to truncate the table logs if they exist" }, { "line" => 552, "raw" => "\t- improved error messages when using wrong directories or tarballs\n", "style" => "-", "text" => "improved error messages when using wrong directories or tarballs" }, { "line" => 553, "raw" => "\t- added a \"change_paths\" script to change the sandbox paths quickly\n\t when moving the sandbox to a new location.\n", "style" => "-", "text" => "added a \"change_paths\" script to change the sandbox paths quickly when moving the sandbox to a new location." } ], "line" => 549, "note" => "08-Feb-2009", "raw" => "2.0.14 08-Feb-2009\n", "version" => "2.0.14" }, { "entries" => [ { "line" => 556, "raw" => "\t- added parameters to \"start\" and \"restart\" scripts. If you pass an option,\n\t it will be passed directly to mysqld_safe. e.g. \"start --log=mylog.log\"\n", "style" => "-", "text" => "added parameters to \"start\" and \"restart\" scripts. If you pass an option, it will be passed directly to mysqld_safe. e.g. \"start --log=mylog.log\"" }, { "line" => 558, "raw" => "\t- fixed bug in test_sandbox.pl. Using \"ls -d /path/*/\" doesn't work on\n\t Solaris. Replaced with a more robust routine.\n", "style" => "-", "text" => "fixed bug in test_sandbox.pl. Using \"ls -d /path/*/\" doesn't work on Solaris. Replaced with a more robust routine." }, { "line" => 560, "raw" => "\t- Allow the unpacking of tarballs to work on Solaris if \"gtar\" is found.\n", "style" => "-", "text" => "Allow the unpacking of tarballs to work on Solaris if \"gtar\" is found." } ], "line" => 555, "note" => "27-Jan-2009", "raw" => "2.0.13 27-Jan-2009\n", "version" => "2.0.13" }, { "entries" => [ { "line" => 562, "raw" => "\t- Fixed small bug in 'clear' script. When the server is not responsive,\n\t it was calling the wrong 'kill' script\n", "style" => "-", "text" => "Fixed small bug in 'clear' script. When the server is not responsive, it was calling the wrong 'kill' script" }, { "line" => 564, "raw" => "\t- Applied Greg Haase patch to fix a bug in --datadir_from=dir:xxxx\n", "style" => "-", "text" => "Applied Greg Haase patch to fix a bug in --datadir_from=dir:xxxx" } ], "line" => 561, "note" => "16-Oct-2008", "raw" => "2.0.12 16-Oct-2008\n", "version" => "2.0.12" }, { "entries" => [ { "line" => 566, "raw" => "\t- Fixed bug#278394, \"character '-' in database names\" (added backticks to\n\t'clear' script)\n", "style" => "-", "text" => "Fixed bug#278394, \"character '-' in database names\" (added backticks to 'clear' script)" }, { "line" => 568, "raw" => "\t- added a command to change read attributes inside expanded tarballs\n\t to avoid a possible failure in MySQL test suite, should a user run it\n", "style" => "-", "text" => "added a command to change read attributes inside expanded tarballs to avoid a possible failure in MySQL test suite, should a user run it" } ], "line" => 565, "note" => "05-Oct-2008", "raw" => "2.0.11 05-Oct-2008\n", "version" => "2.0.11" }, { "entries" => [ { "line" => 571, "raw" => "\t- fixed minor bug in make_multiple_sandbox and make_replication_sandbox\n\t when passing additional parameters. No space were added at the end.\n\t Further parameters were glued together, resulting in a startup error.\n", "style" => "-", "text" => "fixed minor bug in make_multiple_sandbox and make_replication_sandbox when passing additional parameters. No space were added at the end. Further parameters were glued together, resulting in a startup error." }, { "line" => 574, "raw" => "\t- added NODE_OPTIONS to work in make_replication_sandbox (it adds options\n\t to both MASTER_OPTIONS and SLAVE_OPTIONS)\n", "style" => "-", "text" => "added NODE_OPTIONS to work in make_replication_sandbox (it adds options to both MASTER_OPTIONS and SLAVE_OPTIONS)" } ], "line" => 570, "note" => "27-Aug-2008", "raw" => "2.0.10 27-Aug-2008\n", "version" => "2.0.10" }, { "entries" => [ { "entries" => [ { "line" => 578, "raw" => "\t - removed \"log-error\" from default file\n", "style" => "-", "text" => "removed \"log-error\" from default file" }, { "line" => 579, "raw" => "\t - added this option conditionally only if major version > 4\n", "style" => "-", "text" => "added this option conditionally only if major version > 4" } ], "line" => 577, "raw" => "\t- fixed bug#260265 \"installation fails with log-error option and version < 5\"\n", "style" => "-", "text" => "fixed bug#260265 \"installation fails with log-error option and version < 5\"" } ], "line" => 576, "note" => "22-Aug-2008", "raw" => "2.0.9 22-Aug-2008\n", "version" => "2.0.9" }, { "entries" => [ { "line" => 581, "raw" => "\t- fixed problem with \"~\" not being expanded as \$HOME\n", "style" => "-", "text" => "fixed problem with \"~\" not being expanded as \$HOME" }, { "line" => 582, "raw" => "\t- fixed problem with not existent path for tarball\n", "style" => "-", "text" => "fixed problem with not existent path for tarball" }, { "line" => 583, "raw" => "\t- fixed bug#258523 Mysql Sandbox looks for tar.gz in wrong location\n\t in make_replication_sandbox, make_sandbox, make_multiple_sandbox,\n\t make_multiple_custom_sandbox, and in the test suite\n", "style" => "-", "text" => "fixed bug#258523 Mysql Sandbox looks for tar.gz in wrong location in make_replication_sandbox, make_sandbox, make_multiple_sandbox, make_multiple_custom_sandbox, and in the test suite" }, { "line" => 586, "raw" => "\t- fixed minor problem in MyScripts.pm. log-slow-queries was misspelled,\n\t although commented.\n", "style" => "-", "text" => "fixed minor problem in MyScripts.pm. log-slow-queries was misspelled, although commented." } ], "line" => 580, "note" => "16-Aug-2008", "raw" => "2.0.8 16-Aug-2008\n", "version" => "2.0.8" }, { "entries" => [ { "line" => 589, "raw" => "\t- added shortcut option \"--circular=N\" to make_replication_sandbox\n\t corresponding to \"--topology=circular --how_many_nodes=N\"\n", "style" => "-", "text" => "added shortcut option \"--circular=N\" to make_replication_sandbox corresponding to \"--topology=circular --how_many_nodes=N\"" }, { "line" => 591, "raw" => "\t- added Falcon creation to smoke test (if version >= 6)\n", "style" => "-", "text" => "added Falcon creation to smoke test (if version >= 6)" } ], "line" => 588, "note" => "06-Aug-2008", "raw" => "2.0.7 06-Aug-2008\n", "version" => "2.0.7" }, { "entries" => [ { "line" => 593, "raw" => "\t- added \"check_slaves\" script to replication sandboxes\n", "style" => "-", "text" => "added \"check_slaves\" script to replication sandboxes" } ], "line" => 592, "note" => "20-Jul-2008", "raw" => "2.0.6 20-Jul-2008\n", "version" => "2.0.6" }, { "entries" => [ { "line" => 595, "raw" => "\t- added named error log to configuration file\n", "style" => "-", "text" => "added named error log to configuration file" }, { "line" => 596, "raw" => "\t- add removal of *.err-old files in \"clear\" script\n", "style" => "-", "text" => "add removal of *.err-old files in \"clear\" script" }, { "line" => 597, "raw" => "\t- Fixed bug in circular replication. Unnecessary initialization\n\t after stop_all. Added the same check used in standard replication\n", "style" => "-", "text" => "Fixed bug in circular replication. Unnecessary initialization after stop_all. Added the same check used in standard replication" }, { "line" => 599, "raw" => "\t- fixed bug in circular replication. start_all and\n\t set_circular_replication.sh were not stopping and starting the\n\t slaves in the righ order.\n", "style" => "-", "text" => "fixed bug in circular replication. start_all and set_circular_replication.sh were not stopping and starting the slaves in the righ order." }, { "line" => 602, "raw" => "\t- improved 'stop' script. If the server is a slave, calls \"stop slave\"\n\t before closing down.\n", "style" => "-", "text" => "improved 'stop' script. If the server is a slave, calls \"stop slave\" before closing down." } ], "line" => 594, "note" => "14-Jul-2008", "raw" => "2.0.5 14-Jul-2008\n", "version" => "2.0.5" }, { "entries" => [ { "line" => 605, "raw" => "\t- fixed bug in test suite. Parameter passing to check routine \n", "style" => "-", "text" => "fixed bug in test suite. Parameter passing to check routine" }, { "line" => 606, "raw" => " was often failing on negative tests. Added subroutine prototype\n\t to fix the problem.\n", "style" => "", "text" => "was often failing on negative tests. Added subroutine prototype to fix the problem." } ], "line" => 604, "note" => "12-Jul-2008", "raw" => "2.0.4 12-Jul-2008\n", "version" => "2.0.4" }, { "entries" => [ { "entries" => [ { "line" => 610, "raw" => "\t - fixed race condition while checking the pid file\n", "style" => "-", "text" => "fixed race condition while checking the pid file" }, { "line" => 611, "raw" => "\t - added cleanup of extracted binary with smoke test\n", "style" => "-", "text" => "added cleanup of extracted binary with smoke test" }, { "line" => 612, "raw" => "\t - added stricter check for InnoDB tables\n", "style" => "-", "text" => "added stricter check for InnoDB tables" } ], "line" => 609, "raw" => "\t- Fixed smoke test bugs in test suite.\n", "style" => "-", "text" => "Fixed smoke test bugs in test suite." }, { "line" => 613, "raw" => "\t- added some replication tests to test suite\n", "style" => "-", "text" => "added some replication tests to test suite" } ], "line" => 608, "note" => "12-Jul-2008", "raw" => "2.0.3 12-Jul-2008\n", "version" => "2.0.3" }, { "entries" => [ { "entries" => [ { "line" => 616, "raw" => "\t - When started with --force and --load grants, it said that it \n\t failed to comply. In fact, the grants were already loaded.\n", "style" => "-", "text" => "When started with --force and --load grants, it said that it failed to comply. In fact, the grants were already loaded." }, { "line" => 618, "raw" => "\t - when started with --force, it invokes \$sandbox_dir/start\n\t without checking if such script exists\n", "style" => "-", "text" => "when started with --force, it invokes \$sandbox_dir/start without checking if such script exists" } ], "line" => 615, "raw" => "\t- Fixed minor bugs in low_level_make_sandbox. \n", "style" => "-", "text" => "Fixed minor bugs in low_level_make_sandbox." } ], "line" => 614, "note" => "6-Jul-2008", "raw" => "2.0.2 6-Jul-2008\n", "version" => "2.0.2" }, { "entries" => [ { "line" => 621, "raw" => "\t- fixed minor bug on test suite. It fails on Solaris with \"ps -ea\". Changed\n\t to \"ps -ef\"\n", "style" => "-", "text" => "fixed minor bug on test suite. It fails on Solaris with \"ps -ea\". Changed to \"ps -ef\"" }, { "line" => 623, "raw" => "\t- added README.wiki\n", "style" => "-", "text" => "added README.wiki" }, { "line" => 624, "raw" => "\t- added \"smoke\" test to test suite\n", "style" => "-", "text" => "added \"smoke\" test to test suite" }, { "line" => 625, "raw" => "\t- added --no_confirm to all single sandbox testing\n", "style" => "-", "text" => "added --no_confirm to all single sandbox testing" } ], "line" => 620, "note" => "5-Jul-2008", "raw" => "2.0.1 5-Jul-2008\n", "version" => "2.0.1" }, { "entries" => [ { "line" => 627, "raw" => "\t- fixed minor bug in generated scripts. Removed bash-specific operator\n\t\"==\"\n", "style" => "-", "text" => "fixed minor bug in generated scripts. Removed bash-specific operator \"==\"" } ], "line" => 626, "note" => "2-Jul-2008", "raw" => "2.0.0 2-Jul-2008\n", "version" => "2.0.0" }, { "entries" => [ { "line" => 630, "raw" => "\t- Fixed bug in test suite. Process count was not taking into account the\n\t pre-test processes.\n", "style" => "-", "text" => "Fixed bug in test suite. Process count was not taking into account the pre-test processes." }, { "line" => 632, "raw" => "\t- Fixed bug in test suite. Portability. ps was being used with non\n\t portable options.\n", "style" => "-", "text" => "Fixed bug in test suite. Portability. ps was being used with non portable options." }, { "entries" => [ { "line" => 635, "raw" => "\t- added \$SANDBOX_BINARY environment variable, to replace default\n \t \$HOME/opt/mysql\n", "style" => "-", "text" => "added \$SANDBOX_BINARY environment variable, to replace default \$HOME/opt/mysql" }, { "line" => 637, "raw" => "\t- fixed error message of make_sandbox when invoked without options\n", "style" => "-", "text" => "fixed error message of make_sandbox when invoked without options" }, { "line" => 638, "raw" => "\t- added a check in make_sandbox to make sure that we are using GNU tar.\n", "style" => "-", "text" => "added a check in make_sandbox to make sure that we are using GNU tar." } ], "line" => 634, "raw" => " - added --prompt_body option to low_level_make_sandbox\n", "style" => "-", "text" => "added --prompt_body option to low_level_make_sandbox" } ], "line" => 629, "note" => "1-Jul-2008", "raw" => "1.99.10 1-Jul-2008\n", "version" => "1.99.10" }, { "entries" => [ { "line" => 640, "raw" => "\t- Fixed bug #244236 (low_level_make_sandbox accepts unnecessary arguments)\n", "style" => "-", "text" => "Fixed bug #244236 (low_level_make_sandbox accepts unnecessary arguments)" }, { "line" => 641, "raw" => "\t- Fixed bug in low_level_make_sandbox. sandbox_home was not checked\n\t for correctness. It is a simple name, and it should not accept \n\t full paths.\n", "style" => "-", "text" => "Fixed bug in low_level_make_sandbox. sandbox_home was not checked for correctness. It is a simple name, and it should not accept full paths." }, { "line" => 644, "raw" => "\t- INCOMPATIBLE CHANGE\n\t home_directory was not supposed to be home. Its name is misleading, and\n\t thus it was changed to upper_directory.\n", "style" => "-", "text" => "INCOMPATIBLE CHANGE home_directory was not supposed to be home. Its name is misleading, and thus it was changed to upper_directory." }, { "line" => 647, "raw" => "\t- Fixed typos in README\n", "style" => "-", "text" => "Fixed typos in README" }, { "line" => 648, "raw" => "\t- Initial fix for bug #239630 (possible failure on non-GNU tar)\n", "style" => "-", "text" => "Initial fix for bug #239630 (possible failure on non-GNU tar)" }, { "line" => 649, "raw" => "\t- fixed script names in \"sandbox\" script\n", "style" => "-", "text" => "fixed script names in \"sandbox\" script" }, { "line" => 650, "raw" => " - (Thanks to John Embretsen for most of the reports on today's changes)\n", "style" => "-", "text" => "(Thanks to John Embretsen for most of the reports on today's changes)" } ], "line" => 639, "note" => "30-Jun-2008", "raw" => "1.99.9 30-Jun-2008\n", "version" => "1.99.9" }, { "entries" => [ { "line" => 652, "raw" => "\t- INCOMPATIBLE CHANGE\n\t \$HOME/sandboxes is now the default SANDBOX_HOME, which users\n\t however can override.\n", "style" => "-", "text" => "INCOMPATIBLE CHANGE \$HOME/sandboxes is now the default SANDBOX_HOME, which users however can override." }, { "line" => 655, "raw" => "\t- INCOMPATIBLE CHANGE\n\t \"multi_cmd\" was renamed \"use_all\" for name consistency\n", "style" => "-", "text" => "INCOMPATIBLE CHANGE \"multi_cmd\" was renamed \"use_all\" for name consistency" }, { "line" => 657, "raw" => "\t- added a call to low_level_make_sandbox --help when \n\t make_sandbox is invoked without the proper syntax.\n", "style" => "-", "text" => "added a call to low_level_make_sandbox --help when make_sandbox is invoked without the proper syntax." }, { "line" => 659, "raw" => "\t- README has been completely rewritten\n", "style" => "-", "text" => "README has been completely rewritten" }, { "line" => 660, "raw" => "\t- added a ./docs directory with the README.pod source for README\n", "style" => "-", "text" => "added a ./docs directory with the README.pod source for README" }, { "line" => 661, "raw" => "\t- added POD to ./sandbox script, to show the documentation\n\t when called as \"./sandbox manual|help\"\n", "style" => "-", "text" => "added POD to ./sandbox script, to show the documentation when called as \"./sandbox manual|help\"" } ], "line" => 651, "note" => "29-Jun-2008", "raw" => "1.99.8 29-Jun-2008\n", "version" => "1.99.8" }, { "entries" => [ { "line" => 664, "raw" => "\t- added configurable options for test suite\n\t users can now choose which versions and which tests to run\n\t from the command line\n", "style" => "-", "text" => "added configurable options for test suite users can now choose which versions and which tests to run from the command line" }, { "line" => 667, "raw" => "\t- removed deprecated test_sandbox.sh\n", "style" => "-", "text" => "removed deprecated test_sandbox.sh" }, { "line" => 668, "raw" => "\t- moved test suite to ./tests directory\n", "style" => "-", "text" => "moved test suite to ./tests directory" }, { "line" => 669, "raw" => "\t- added tests/README\n", "style" => "-", "text" => "added tests/README" }, { "line" => 670, "raw" => "\t- improved \"stop\" script by combining it with the \"kill\" script\n", "style" => "-", "text" => "improved \"stop\" script by combining it with the \"kill\" script" }, { "line" => 671, "raw" => "\t- adjusted make_dist script to use the ./test directory\n", "style" => "-", "text" => "adjusted make_dist script to use the ./test directory" }, { "line" => 672, "raw" => "\t- improved test suite with the ability of running from one or more\n\t tarballs instead of the default directories ([\$HOME]/opt/mysql)\n", "style" => "-", "text" => "improved test suite with the ability of running from one or more tarballs instead of the default directories ([\$HOME]/opt/mysql)" } ], "line" => 663, "note" => "28-Jun-2008", "raw" => "1.99.7 28-Jun-2008\n", "version" => "1.99.7" }, { "entries" => [ { "line" => 675, "raw" => "\t- enhanced the \"clear\" script. Now it removes all databases form the\n\t data directory, first trying via SQL, then using the OS.\n", "style" => "-", "text" => "enhanced the \"clear\" script. Now it removes all databases form the data directory, first trying via SQL, then using the OS." }, { "line" => 677, "raw" => "\t- added tests to the test suite to check on this feature\n", "style" => "-", "text" => "added tests to the test suite to check on this feature" } ], "line" => 674, "note" => "28-Jun-2008", "raw" => "1.99.6 28-Jun-2008\n", "version" => "1.99.6" }, { "entries" => [ { "line" => 679, "raw" => "\t- INCOMPATIBLE CHANGE\n\t make_sandbox renamed low_level_make_sandbox\n\t easy_sandbox renamed make_sandbox\n", "style" => "-", "text" => "INCOMPATIBLE CHANGE make_sandbox renamed low_level_make_sandbox easy_sandbox renamed make_sandbox" }, { "line" => 682, "raw" => "\t- fixed bug in make_replication_sandbox (base port was not isolated)\n", "style" => "-", "text" => "fixed bug in make_replication_sandbox (base port was not isolated)" }, { "line" => 683, "raw" => "\t- added test for circular replication\n", "style" => "-", "text" => "added test for circular replication" }, { "line" => 684, "raw" => "\t- improved testing for number of processes in the test suite\n", "style" => "-", "text" => "improved testing for number of processes in the test suite" }, { "line" => 685, "raw" => "\t- added circular replication features to make_multiple_sandbox \n\t with options --master_master and --circular (this should not be\n\t used directly)\n", "style" => "-", "text" => "added circular replication features to make_multiple_sandbox with options --master_master and --circular (this should not be used directly)" }, { "line" => 688, "raw" => "\t- added circular replication features to make_replication_sandbox\n\t with options --master_master and --topology={standard|circular} .\n\t This feature uses make_multiple_sandbox internally. \n", "style" => "-", "text" => "added circular replication features to make_replication_sandbox with options --master_master and --topology={standard|circular} . This feature uses make_multiple_sandbox internally." }, { "line" => 691, "raw" => "\t- circular replication uses a separate directory name and port\n", "style" => "-", "text" => "circular replication uses a separate directory name and port" }, { "line" => 692, "raw" => "\t- fixed bug in make_multiple_sandbox. It did not use the \$SANDBOX_HOME\n\t directory.\n", "style" => "-", "text" => "fixed bug in make_multiple_sandbox. It did not use the \$SANDBOX_HOME directory." } ], "line" => 678, "note" => "27-Jun-2008", "raw" => "1.99.5 27-Jun-2008\n", "version" => "1.99.5" }, { "entries" => [ { "line" => 695, "raw" => "\t- added more extensive test suite in Perl \n", "style" => "-", "text" => "added more extensive test suite in Perl" }, { "line" => 696, "raw" => "\t- fixed bug in make_multiple_custom_sandbox (install directory was not set\n\t when calling easy_sandbox)\n", "style" => "-", "text" => "fixed bug in make_multiple_custom_sandbox (install directory was not set when calling easy_sandbox)" } ], "line" => 694, "note" => "21-Jun-2008", "raw" => "1.99.4 21-Jun-2008\n", "version" => "1.99.4" }, { "entries" => [ { "line" => 699, "raw" => "\t- INCOMPATIBLE CHANGE\n\t all Perl script names were changed to make them more intuitive\n\t\tinstall.pl -> make_sandbox\n\t\texpress_install.pl -> easy_sandbox\n\t\tset_replication.pl -> make_replication_sandbox\n\t\tset_many -> make_multiple_sandbox\n\t\tset_custom_many.pl -> make_multiple_custom_sandbox\n", "style" => "-", "text" => "INCOMPATIBLE CHANGE all Perl script names were changed to make them more intuitive install.pl -> make_sandbox express_install.pl -> easy_sandbox set_replication.pl -> make_replication_sandbox set_many -> make_multiple_sandbox set_custom_many.pl -> make_multiple_custom_sandbox" }, { "line" => 706, "raw" => "\t- created a './sandbox' script that lists all applications and eventually\n\t executes the one that is passed as argument\n", "style" => "-", "text" => "created a './sandbox' script that lists all applications and eventually executes the one that is passed as argument" }, { "line" => 708, "raw" => "\t- mapped \"stop\" script to faster and safer \"kill\" script\n", "style" => "-", "text" => "mapped \"stop\" script to faster and safer \"kill\" script" }, { "line" => 709, "raw" => "\t- replaced \"sleep 3\" with a loop + timeout in shell scripts\n", "style" => "-", "text" => "replaced \"sleep 3\" with a loop + timeout in shell scripts" }, { "line" => 710, "raw" => "\t- removed \"sleep\" commands from Perl scripts\n", "style" => "-", "text" => "removed \"sleep\" commands from Perl scripts" }, { "line" => 711, "raw" => "\t- fixed bug in get_help() : parse_options were not passed to the \$msb object\n", "style" => "-", "text" => "fixed bug in get_help() : parse_options were not passed to the \$msb object" } ], "line" => 698, "note" => "21-Jun-2008", "raw" => "1.99.3 21-Jun-2008\n", "version" => "1.99.3" }, { "entries" => [ { "line" => 713, "raw" => "\t- fixed minor bug. mysql_install_db script in some cases is\n\t found in the \"bin\" directory rather than \"scripts\"\n", "style" => "-", "text" => "fixed minor bug. mysql_install_db script in some cases is found in the \"bin\" directory rather than \"scripts\"" }, { "line" => 715, "raw" => "\t- added ability to log start operations into a log file\n", "style" => "-", "text" => "added ability to log start operations into a log file" } ], "line" => 712, "note" => "20-Jun-2008", "raw" => "1.99.2 20-Jun-2008\n", "version" => "1.99.2" }, { "entries" => [ { "line" => 717, "raw" => "\t- added \"kill\" script to each sandbox\n", "style" => "-", "text" => "added \"kill\" script to each sandbox" }, { "line" => 718, "raw" => "\t- replace call to \"stop\" with \"kill\" in \"clear\" script\n", "style" => "-", "text" => "replace call to \"stop\" with \"kill\" in \"clear\" script" } ], "line" => 716, "note" => "19-Jun-2008", "raw" => "1.99.1 19-Jun-2008\n", "version" => "1.99.1" }, { "entries" => [ { "line" => 720, "raw" => "\t- Started new development branch for Sandbox 2.0\n", "style" => "-", "text" => "Started new development branch for Sandbox 2.0" }, { "line" => 721, "raw" => "\t- added MySandbox.pm module, to use the same routines across scripts\n", "style" => "-", "text" => "added MySandbox.pm module, to use the same routines across scripts" } ], "line" => 719, "note" => "15-Jun-2008", "raw" => "1.99.0 15-Jun-2008\n", "version" => "1.99.0" }, { "entries" => [ { "line" => 723, "raw" => "\t- added support for default options file (\$HOME/.msandboxrc)\n", "style" => "-", "text" => "added support for default options file (\$HOME/.msandboxrc)" }, { "line" => 724, "raw" => "\t- fixed minor bug in set_replication.pl. Added #master to multi_cmd\n", "style" => "-", "text" => "fixed minor bug in set_replication.pl. Added #master to multi_cmd" }, { "entries" => [ { "line" => 726, "raw" => "\t- fixed bug related to location of sample option files. The installer\n\t was only looking under \"./support-files\" while recent packaging use\n\t \"./share/mysql\"\n", "style" => "-", "text" => "fixed bug related to location of sample option files. The installer was only looking under \"./support-files\" while recent packaging use \"./share/mysql\"" } ], "line" => 725, "raw" => " output.\n", "style" => "", "text" => "output." }, { "entries" => [ { "line" => 730, "raw" => "\t- added the execution of a \"./clear\" command when \"--force\" was used\n\t to avoid overwriting a running server.\n", "style" => "-", "text" => "added the execution of a \"./clear\" command when \"--force\" was used to avoid overwriting a running server." }, { "line" => 732, "raw" => "\t- cleaned up current_changes to contain only not empty options\n", "style" => "-", "text" => "cleaned up current_changes to contain only not empty options" }, { "line" => 733, "raw" => "\t- created a basic test suite (not in distribution yet, only in RCS)\n", "style" => "-", "text" => "created a basic test suite (not in distribution yet, only in RCS)" } ], "line" => 729, "raw" => " - fixed Bug#240121, with a collision between my_file and replication.\n", "style" => "-", "text" => "fixed Bug#240121, with a collision between my_file and replication." } ], "line" => 722, "note" => "15-Jun-2008", "raw" => "1.22 15-Jun-2008\n", "version" => "1.22" }, { "entries" => [ { "line" => 735, "raw" => "\t- added SANDBOX_HOME environmental variable to override \$HOME\n", "style" => "-", "text" => "added SANDBOX_HOME environmental variable to override \$HOME" }, { "line" => 736, "raw" => "\t- default sandbox home is now \$HOME/sandboxes (if exists) or else\n\t it is \$HOME, as before\n", "style" => "-", "text" => "default sandbox home is now \$HOME/sandboxes (if exists) or else it is \$HOME, as before" }, { "line" => 738, "raw" => "\t- added scripts to start/stop/clear/use all sandboxes at once (if\n\t \$SANDBOX_HOME != \$HOME)\n", "style" => "-", "text" => "added scripts to start/stop/clear/use all sandboxes at once (if \$SANDBOX_HOME != \$HOME)" } ], "line" => 734, "note" => "09-Jun-2008", "raw" => "1.21 09-Jun-2008\n", "version" => "1.21" }, { "entries" => [ { "line" => 741, "raw" => "\t- Added set_custom_many.pl to install different versions of the server\n\t in one go. (Thanks to Ronald Bradford for the idea)\n", "style" => "-", "text" => "Added set_custom_many.pl to install different versions of the server in one go. (Thanks to Ronald Bradford for the idea)" }, { "line" => 743, "raw" => "\t- enhanced \"multi_cmd\" to say which server is running\n", "style" => "-", "text" => "enhanced \"multi_cmd\" to say which server is running" }, { "line" => 744, "raw" => "\t- added support for MYCLIENT_OPTION user variable to pass\n\t options to the client (./use and ./multi_cmd)\n", "style" => "-", "text" => "added support for MYCLIENT_OPTION user variable to pass options to the client (./use and ./multi_cmd)" } ], "line" => 740, "note" => "11-Apr-2008", "raw" => "1.20 11-Apr-2008\n", "version" => "1.20" }, { "entries" => [ { "line" => 747, "raw" => "\t- changed installer files so that they can be called from \n\t outside the installation directory.\n", "style" => "-", "text" => "changed installer files so that they can be called from outside the installation directory." } ], "line" => 746, "note" => "06-Apr-2008", "raw" => "1.19 06-Apr-2008\n", "version" => "1.19" }, { "entries" => [ { "line" => 750, "raw" => "\t- Fixed bug in set_many and set_replication. Undefined group directory \n\t when setting custom port\n", "style" => "-", "text" => "Fixed bug in set_many and set_replication. Undefined group directory when setting custom port" }, { "line" => 752, "raw" => "\t- Added help to ./express_install\n", "style" => "-", "text" => "Added help to ./express_install" } ], "line" => 749, "note" => "02-Apr-2008", "raw" => "1.18 02-Apr-2008 \n", "version" => "1.18" }, { "entries" => [ { "line" => 754, "raw" => "\t- fixed minor bug in \"clear: script. It did not remove subdirectories in\n\t test db\n", "style" => "-", "text" => "fixed minor bug in \"clear: script. It did not remove subdirectories in test db" }, { "line" => 756, "raw" => "\t- fixed minor bug on the choice od source dir. If \$HOME/opt/mysql exists,\n\t it is preferred to /opt/mysql\n", "style" => "-", "text" => "fixed minor bug on the choice od source dir. If \$HOME/opt/mysql exists, it is preferred to /opt/mysql" } ], "line" => 753, "note" => "16-Mar-2008 (not released)", "raw" => "1.17 16-Mar-2008 (not released)\n", "version" => "1.17" }, { "entries" => [ { "entries" => [ { "line" => 760, "raw" => "\t- added removal of general log files and falcon files with \n\t the \"clear\" command.\n", "style" => "-", "text" => "added removal of general log files and falcon files with the \"clear\" command." } ], "line" => 759, "raw" => " - added stronger check on the result of mysql_install_db.\n", "style" => "-", "text" => "added stronger check on the result of mysql_install_db." } ], "line" => 758, "note" => "04-Jan-2008 (not released)", "raw" => "1.16 04-Jan-2008 (not released)\n", "version" => "1.16" }, { "entries" => [ { "line" => 763, "raw" => "\t- fixed bug in grants.mysql. Removed anonymous users \n\t from mysql.db\n", "style" => "-", "text" => "fixed bug in grants.mysql. Removed anonymous users from mysql.db" }, { "line" => 765, "raw" => "\t- added \$HOME/opt/mysql as possible default for binaries.\n", "style" => "-", "text" => "added \$HOME/opt/mysql as possible default for binaries." }, { "line" => 766, "raw" => "\t- added proxy_start script to start a MySQL Proxy instance\n\t using the sandboxed server\n\n", "style" => "-", "text" => "added proxy_start script to start a MySQL Proxy instance using the sandboxed server" } ], "line" => 762, "note" => "09-Dec-2007", "raw" => "1.15 09-Dec-2007\n", "version" => "1.15" }, { "entries" => [ { "line" => 770, "raw" => "\t- added a set_many.pl command to create several servers\n\t not in replication\n", "style" => "-", "text" => "added a set_many.pl command to create several servers not in replication" }, { "line" => 772, "raw" => "\t- fixed bug in replication ports assignment. Two replication\n\t systems using adjacent versions (e.g. 5.1.22 and 5.1.23) would\n\t have clashing port numbers.\n\n", "style" => "-", "text" => "fixed bug in replication ports assignment. Two replication systems using adjacent versions (e.g. 5.1.22 and 5.1.23) would have clashing port numbers." } ], "line" => 769, "note" => "24-Oct-2007", "raw" => "1.14 24-Oct-2007\n", "version" => "1.14" }, { "entries" => [ { "line" => 777, "raw" => "\t- (INCOMPATIBLE CHANGE) removed '.sh' suffix from all scripts\n", "style" => "-", "text" => "(INCOMPATIBLE CHANGE) removed '.sh' suffix from all scripts" }, { "line" => 778, "raw" => "\t- added version differentiation to replication port and\n\t directory. Instead of being always the same, now they \n\t are based on the version number, unless modified by\n\t the user.\n", "style" => "-", "text" => "added version differentiation to replication port and directory. Instead of being always the same, now they are based on the version number, unless modified by the user." }, { "line" => 782, "raw" => "\t- added a multi_cmd script to the replication system,\n\t to send a query to each node.\n", "style" => "-", "text" => "added a multi_cmd script to the replication system, to send a query to each node." }, { "line" => 784, "raw" => "\t- added a 'my' script to call mysql* tools\n", "style" => "-", "text" => "added a 'my' script to call mysql* tools" }, { "line" => 785, "raw" => "\t- fixed bug about using 6.0 binaries on Mac OS X (dynamic library\n\t path requires a different environment variable)\n", "style" => "-", "text" => "fixed bug about using 6.0 binaries on Mac OS X (dynamic library path requires a different environment variable)" }, { "line" => 787, "raw" => "\t- fixed bug in replication. After a \"clear_all\", the replication\n\t did not start again. Added a \"initialize_slaves\" script that\n\t get called by \"start_all\" if a clear_all was called.\n\n", "style" => "-", "text" => "fixed bug in replication. After a \"clear_all\", the replication did not start again. Added a \"initialize_slaves\" script that get called by \"start_all\" if a clear_all was called." } ], "line" => 776, "note" => "23-Oct-2007", "raw" => "1.13 23-Oct-2007\n", "version" => "1.13" }, { "entries" => [ { "line" => 792, "raw" => "\t- hidden mysql_install_db output on successful execution\n", "style" => "-", "text" => "hidden mysql_install_db output on successful execution" }, { "line" => 793, "raw" => "\t- fixed argument handling bug in replication scripts\n\n", "style" => "-", "text" => "fixed argument handling bug in replication scripts" } ], "line" => 791, "note" => "17-Oct-2007", "raw" => "1.12 17-Oct-2007\n", "version" => "1.12" }, { "entries" => [ { "line" => 796, "raw" => "\t- all shell scripts are now created from install.pl (not copied)\n", "style" => "-", "text" => "all shell scripts are now created from install.pl (not copied)" }, { "line" => 797, "raw" => "\t- changed default username, password, and sandbox directory name\n", "style" => "-", "text" => "changed default username, password, and sandbox directory name" }, { "line" => 798, "raw" => "\t- forbid using a relative path of tarball\n\n", "style" => "-", "text" => "forbid using a relative path of tarball" } ], "line" => 795, "note" => "16-Oct-2007", "raw" => "1.11 16-Oct-2007\n", "version" => "1.11" }, { "entries" => [ { "line" => 801, "raw" => "\t- fixed bug on mysql_install_db usage \n\n", "style" => "-", "text" => "fixed bug on mysql_install_db usage" } ], "line" => 800, "note" => "16-Oct-2007 (not released)", "raw" => "1.10 16-Oct-2007 (not released)\n", "version" => "1.10" }, { "entries" => [ { "line" => 804, "raw" => "\t- deprecated the 'archive' method of installation and removed\n\t the compressed data directories\n", "style" => "-", "text" => "deprecated the 'archive' method of installation and removed the compressed data directories" }, { "line" => 806, "raw" => "\t- express_install can now expand a server tarball.\n", "style" => "-", "text" => "express_install can now expand a server tarball." }, { "line" => 807, "raw" => "\t- added support for replicated servers (set_replication.pl)\n\t using CHANGE MASTER TO rather than replication options\n", "style" => "-", "text" => "added support for replicated servers (set_replication.pl) using CHANGE MASTER TO rather than replication options" }, { "line" => 809, "raw" => "\t- added 'load_grants' option to install.pl\n", "style" => "-", "text" => "added 'load_grants' option to install.pl" }, { "line" => 810, "raw" => "\t- added 'prompt_prefix' option to install.pl\n", "style" => "-", "text" => "added 'prompt_prefix' option to install.pl" }, { "line" => 811, "raw" => "\t- fixed bug about client library not being available due\n\t to LD_LIBRARY_PATH not set\n\n", "style" => "-", "text" => "fixed bug about client library not being available due to LD_LIBRARY_PATH not set" } ], "line" => 803, "note" => "15-Oct-2007 (not released)", "raw" => "1.9 15-Oct-2007 (not released)\n", "version" => "1.9" }, { "entries" => [ { "line" => 815, "raw" => "\t- Added support for MySQL 6.0\n\n", "style" => "-", "text" => "Added support for MySQL 6.0" } ], "line" => 814, "note" => "14-Sep-2007", "raw" => "1.8 14-Sep-2007\n", "version" => "1.8" }, { "entries" => [ { "line" => 818, "raw" => " - Added support for Mysql 5.2-alpha\n\n", "style" => "-", "text" => "Added support for Mysql 5.2-alpha" } ], "line" => 817, "note" => "05-Jul-2006 (not released)", "raw" => "1.7 05-Jul-2006 (not released)\n", "version" => "1.7" }, { "entries" => [ { "line" => 821, "raw" => " - Added 'my_clause' command line option to define my.cnf file parameters;\n", "style" => "-", "text" => "Added 'my_clause' command line option to define my.cnf file parameters;" }, { "line" => 822, "raw" => " - changed interactive routine to allow multi-item options;\n", "style" => "-", "text" => "changed interactive routine to allow multi-item options;" }, { "line" => 823, "raw" => " - changed the shell scripts to be less bash specific. the sandbox\n should be now more cross-platform than before.\n During the installation, if bash is not found, then tcsh is used.\n", "style" => "-", "text" => "changed the shell scripts to be less bash specific. the sandbox should be now more cross-platform than before. During the installation, if bash is not found, then tcsh is used." }, { "line" => 826, "raw" => " - new Tutorial available at http://datacharmer.org/#tutorials\n", "style" => "-", "text" => "new Tutorial available at http://datacharmer.org/#tutorials" }, { "entries" => [ { "line" => 828, "raw" => " -- clear.sh was using \$HOME directory instead of _HOME_DIR_\n", "style" => "--", "text" => "clear.sh was using \$HOME directory instead of _HOME_DIR_" }, { "line" => 829, "raw" => " -- install_version calculated by express_install.pl could be lower\n than 1024.\n", "style" => "--", "text" => "install_version calculated by express_install.pl could be lower than 1024." }, { "line" => 831, "raw" => " -- install_version was added twice when loading options from\n 'current_options.conf' (Thanks to Imran Chaudhry for reporting it)\n\n", "style" => "--", "text" => "install_version was added twice when loading options from 'current_options.conf' (Thanks to Imran Chaudhry for reporting it)" } ], "line" => 827, "raw" => " - bugs fixed:\n", "style" => "-", "text" => "bugs fixed:" } ], "line" => 820, "note" => "27-May-2006", "raw" => "1.6 27-May-2006\n", "version" => "1.6" }, { "entries" => [ { "line" => 835, "raw" => " - added 'back' and 'quit' keywords in interactive mode\n", "style" => "-", "text" => "added 'back' and 'quit' keywords in interactive mode" }, { "line" => 836, "raw" => " - added express_install.pl, to install quickly from a binary package\n", "style" => "-", "text" => "added express_install.pl, to install quickly from a binary package" }, { "line" => 837, "raw" => " - Bug fixed. 'start.sh' and 'stop.sh' scripts where using\n\t the actual \$HOME dorectory instead of the user's defined\n\t _HOME_DIR_\n\n", "style" => "-", "text" => "Bug fixed. 'start.sh' and 'stop.sh' scripts where using the actual \$HOME dorectory instead of the user's defined _HOME_DIR_" } ], "line" => 834, "note" => "24-May-2006", "raw" => "1.5 24-May-2006\n", "version" => "1.5" }, { "entries" => [ { "line" => 842, "raw" => " - added support for 3.23, 4.0 and 4.1 installs\n", "style" => "-", "text" => "added support for 3.23, 4.0 and 4.1 installs" }, { "line" => 843, "raw" => " - default install is now 5.0\n", "style" => "-", "text" => "default install is now 5.0" }, { "line" => 844, "raw" => " - default addition of version to sandbox directory name\n", "style" => "-", "text" => "default addition of version to sandbox directory name" }, { "line" => 845, "raw" => " - added option \"no_ver_after_name\" to control the above change\n\n", "style" => "-", "text" => "added option \"no_ver_after_name\" to control the above change" } ], "line" => 841, "note" => "17-May-2006 (not released)", "raw" => "1.4 17-May-2006 (not released)\n", "version" => "1.4" }, { "entries" => [ { "line" => 848, "raw" => " - added \"interactive\" option to install through a sort of a wizard \n", "style" => "-", "text" => "added \"interactive\" option to install through a sort of a wizard" }, { "line" => 849, "raw" => " - added current_options.conf to record the options used for installing\n", "style" => "-", "text" => "added current_options.conf to record the options used for installing" }, { "line" => 850, "raw" => " - fix bug in configuration file\n\n", "style" => "-", "text" => "fix bug in configuration file" } ], "line" => 847, "note" => "05-May-2006", "raw" => "1.3 05-May-2006\n", "version" => "1.3" }, { "entries" => [ { "line" => 853, "raw" => " - minor bug fixes \n\n", "style" => "-", "text" => "minor bug fixes" } ], "line" => 852, "note" => "02-May-2006", "raw" => "1.2 02-May-2006\n", "version" => "1.2" }, { "entries" => [ { "line" => 856, "raw" => " - added multiple sources for data directory\n\n", "style" => "-", "text" => "added multiple sources for data directory" } ], "line" => 855, "note" => "19-Apr-2006", "raw" => "1.1 19-Apr-2006\n", "version" => "1.1" }, { "entries" => [ { "line" => 859, "raw" => " - initial release.\n", "style" => "-", "text" => "initial release." } ], "line" => 858, "note" => "18-Apr-2006", "raw" => "1.0 18-Apr-2006\n", "version" => "1.0" } ] } CPAN-Changes-0.500005/corpus/dists/File-RegexMatch.changes000644 000000 000000 00000001703 14472651645 021116 0ustar00000000 000000 Revision history for Perl module File::RegexMatch 0.1.2 Mon July 29 2013 - Renamed match() parameter from regex_pattern to match_pattern. - Added functionality to ignore file names based on regular expression. 0.1.1 Wed July 24 2013 - Updated documentation 0.1 Tue July 23 2013 - Module pretty much re-written, old code was smelly. - Instead of returning the path of each file, a File::RegexMatch::Object is returned. 0.03 Thur Dec 29 2011 - Now checks hidden files for matches - Updated documentation - If the given base directory path is relative, the absolute path of the files found in the base directory are returned instead of the relative path - Warnings added for chdir if verbose is enabled - Support for hidden files added - Cleanup of code 0.02 Mon Dec 19 2011 - Was a problem when verbose was disabled, now fixed. 0.01 Sat Dec 17 2011 - Original version; created by ExtUtils::ModuleMaker 0.51 CPAN-Changes-0.500005/corpus/dists/LucyX-Simple.parsed000644 000000 000000 00000003733 14472651645 020360 0ustar00000000 000000 { "raw_preamble" => "", "releases" => [ { "entries" => [ { "line" => 2, "raw" => " no changes, I accidently deleted the tar.gz from cpan, had to reupload, can't upload same version twice\n", "style" => "", "text" => "no changes, I accidently deleted the tar.gz from cpan, had to reupload, can't upload same version twice" } ], "line" => 1, "raw" => "0.005\n", "version" => "0.005" }, { "entries" => [ { "line" => 4, "raw" => " version bump for inc::Module::Install upgrade (http://weblog.bulknews.net/post/33907905561/do-not-ship-modules-with-module-install-1-04)\n", "style" => "", "text" => "version bump for inc::Module::Install upgrade (http://weblog.bulknews.net/post/33907905561/do-not-ship-modules-with-module-install-1-04)" } ], "line" => 3, "raw" => "0.004\n", "version" => "0.004" }, { "entries" => [ { "line" => 6, "raw" => " removed errornous analazyer attribute from QueryParser, added more test cases\n", "style" => "", "text" => "removed errornous analazyer attribute from QueryParser, added more test cases" } ], "line" => 5, "raw" => "0.003\n", "version" => "0.003" }, { "entries" => [ { "line" => 8, "raw" => " Will now always try and create search index dir if doesn't exist\n", "style" => "", "text" => "Will now always try and create search index dir if doesn't exist" } ], "line" => 7, "raw" => "0.002\n", "version" => "0.002" }, { "entries" => [ { "line" => 10, "raw" => " First release\n", "style" => "", "text" => "First release" } ], "line" => 9, "raw" => "0.001\n", "version" => "0.001" } ] } CPAN-Changes-0.500005/corpus/dists/Ubic.parsed000644 000000 000000 00000172115 14472651645 016750 0ustar00000000 000000 { "preamble" => "Revision history for Ubic", "raw_preamble" => "Revision history for Ubic\n\n", "releases" => [ { "entries" => [], "line" => 3, "raw" => "{{\$NEXT}}\n\n", "version" => "{{\$NEXT}}" }, { "date" => "2013-07-26", "entries" => [ { "line" => 6, "raw" => " * support PERLBREW_ROOT\n (thanks to github:spacebat for the patch, see https://github.com/berekuk/Ubic/pull/54)\n\n", "style" => "*", "text" => "support PERLBREW_ROOT (thanks to github:spacebat for the patch, see https://github.com/berekuk/Ubic/pull/54)" } ], "line" => 5, "raw" => "1.55 2013-07-26\n", "raw_date" => "2013-07-26", "version" => "1.55" }, { "date" => "2013-05-28", "entries" => [ { "line" => 10, "raw" => " * 'auto_start' option in Ubic::Service and SimpleDaemon\n\n", "style" => "*", "text" => "'auto_start' option in Ubic::Service and SimpleDaemon" } ], "line" => 9, "raw" => "1.54 2013-05-28\n", "raw_date" => "2013-05-28", "version" => "1.54" }, { "date" => "2013-05-18", "entries" => [ { "line" => 13, "raw" => " * fix crontab generation on setup!\n\n", "style" => "*", "text" => "fix crontab generation on setup!" } ], "line" => 12, "raw" => "1.53 2013-05-18\n", "raw_date" => "2013-05-18", "version" => "1.53" }, { "date" => "2013-05-12", "entries" => [ { "line" => 16, "raw" => " * always add /usr/local/bin to \$PATH\n\n", "style" => "*", "text" => "always add /usr/local/bin to \$PATH" } ], "line" => 15, "raw" => "1.52 2013-05-12\n", "raw_date" => "2013-05-12", "version" => "1.52" }, { "date" => "2013-04-14", "entries" => [ { "line" => 19, "raw" => " * autoflush stdout and stdin in ubic-guardian\n (especially when we're proxying daemon's logs)\n\n", "style" => "*", "text" => "autoflush stdout and stdin in ubic-guardian (especially when we're proxying daemon's logs)" } ], "line" => 18, "raw" => "1.51 2013-04-14\n", "raw_date" => "2013-04-14", "version" => "1.51" }, { "date" => "2013-04-03", "entries" => [ { "line" => 23, "raw" => " * support 'term_timeout' option in SimpleDaemon\n\n", "style" => "*", "text" => "support 'term_timeout' option in SimpleDaemon" } ], "line" => 22, "raw" => "1.50_01 2013-04-03\n", "raw_date" => "2013-04-03", "version" => "1.50_01" }, { "date" => "2013-03-13", "entries" => [ { "line" => 26, "raw" => " * stable release, no code changes\n\n", "style" => "*", "text" => "stable release, no code changes" } ], "line" => 25, "raw" => "1.49 2013-03-13\n", "raw_date" => "2013-03-13", "version" => "1.49" }, { "date" => "2013-02-26", "entries" => [ { "line" => 29, "raw" => " * 'ubic status' exits with status code 0 if there're disabled services\n\n", "style" => "*", "text" => "'ubic status' exits with status code 0 if there're disabled services" } ], "line" => 28, "raw" => "1.48_02 2013-02-26\n", "raw_date" => "2013-02-26", "version" => "1.48_02" }, { "date" => "2013-01-31", "entries" => [ { "line" => 32, "raw" => " * guardian supports logs proxying and reopening them on SIGHUP\n (see https://github.com/berekuk/Ubic/pull/47)\n", "style" => "*", "text" => "guardian supports logs proxying and reopening them on SIGHUP (see https://github.com/berekuk/Ubic/pull/47)" }, { "line" => 34, "raw" => " * hint about 'ubic help' on unknown command\n\n", "style" => "*", "text" => "hint about 'ubic help' on unknown command" } ], "line" => 31, "raw" => "1.48_01 2013-01-31\n", "raw_date" => "2013-01-31", "version" => "1.48_01" }, { "date" => "2012-12-07", "entries" => [ { "line" => 37, "raw" => " * detect ubic-watchdog location and put its full path to the crontab on setup\n", "style" => "*", "text" => "detect ubic-watchdog location and put its full path to the crontab on setup" }, { "line" => 38, "raw" => " * 'ubic help' command (see https://github.com/berekuk/Ubic/issues/31)\n\n", "style" => "*", "text" => "'ubic help' command (see https://github.com/berekuk/Ubic/issues/31)" } ], "line" => 36, "raw" => "1.48 2012-12-07\n", "raw_date" => "2012-12-07", "version" => "1.48" }, { "date" => "2012-12-03", "entries" => [ { "line" => 41, "raw" => " * compatibility with perl 5.17 hash randomization\n (see https://github.com/berekuk/Ubic/issues/45)\n", "style" => "*", "text" => "compatibility with perl 5.17 hash randomization (see https://github.com/berekuk/Ubic/issues/45)" }, { "line" => 43, "raw" => " * append watchdog logs in crontab (instead of rewriting)\n\n", "style" => "*", "text" => "append watchdog logs in crontab (instead of rewriting)" } ], "line" => 40, "raw" => "1.47 2012-12-03\n", "raw_date" => "2012-12-03", "version" => "1.47" }, { "date" => "2012-11-08", "entries" => [ { "line" => 46, "raw" => " * require modern BSD::Resource version\n (see https://github.com/berekuk/Ubic/issues/43)\n", "style" => "*", "text" => "require modern BSD::Resource version (see https://github.com/berekuk/Ubic/issues/43)" }, { "line" => 48, "raw" => " * relax timing conditions in t/watchdog.t\n\n", "style" => "*", "text" => "relax timing conditions in t/watchdog.t" } ], "line" => 45, "raw" => "1.46 2012-11-08\n", "raw_date" => "2012-11-08", "version" => "1.46" }, { "date" => "2012-11-01", "entries" => [ { "line" => 51, "raw" => " * more robust t/simple-daemon.t\n\n", "style" => "*", "text" => "more robust t/simple-daemon.t" } ], "line" => 50, "raw" => "1.45 2012-11-01\n", "raw_date" => "2012-11-01", "version" => "1.45" }, { "date" => "2012-10-30", "entries" => [ { "line" => 54, "raw" => " * setup process now offers auto-configuration\n", "style" => "*", "text" => "setup process now offers auto-configuration" }, { "line" => 55, "raw" => " * typo fix in crontab code (thanks to Anton Ukolov)\n\n", "style" => "*", "text" => "typo fix in crontab code (thanks to Anton Ukolov)" } ], "line" => 53, "raw" => "1.44_03 2012-10-30\n", "raw_date" => "2012-10-30", "version" => "1.44_03" }, { "date" => "2012-10-30", "entries" => [ { "line" => 58, "raw" => " * Solaris compatibility (thanks to Martin Schultheis!)\n\n", "style" => "*", "text" => "Solaris compatibility (thanks to Martin Schultheis!)" } ], "line" => 57, "raw" => "1.44_02 2012-10-30\n", "raw_date" => "2012-10-30", "version" => "1.44_02" }, { "date" => "2012-08-02", "entries" => [ { "line" => 61, "raw" => " * support perlbrew, custom PATH and custom PELR5LIB\n\n", "style" => "*", "text" => "support perlbrew, custom PATH and custom PELR5LIB" } ], "line" => 60, "raw" => "1.44_01 2012-08-02\n", "raw_date" => "2012-08-02", "version" => "1.44_01" }, { "date" => "2012-06-21", "entries" => [ { "line" => 64, "raw" => " * stable release, no code changes\n\n", "style" => "*", "text" => "stable release, no code changes" } ], "line" => 63, "raw" => "1.44 2012-06-21\n", "raw_date" => "2012-06-21", "version" => "1.44" }, { "date" => "2012-06-20", "entries" => [ { "line" => 67, "raw" => " * fix SimpleDaemon to work on perl <5.14\n\n", "style" => "*", "text" => "fix SimpleDaemon to work on perl <5.14" } ], "line" => 66, "raw" => "1.43_04 2012-06-20\n", "raw_date" => "2012-06-20", "version" => "1.43_04" }, { "date" => "2012-06-20", "entries" => [ { "line" => 70, "raw" => " * fix tests for systems which don't set LOGNAME or USERNAME\n\n", "style" => "*", "text" => "fix tests for systems which don't set LOGNAME or USERNAME" } ], "line" => 69, "raw" => "1.43_03 2012-06-20\n", "raw_date" => "2012-06-20", "version" => "1.43_03" }, { "date" => "2012-06-19", "entries" => [ { "line" => 73, "raw" => " * dependency on BSD::Resource is optional in code and tests\n\n", "style" => "*", "text" => "dependency on BSD::Resource is optional in code and tests" } ], "line" => 72, "raw" => "1.43_02 2012-06-19\n", "raw_date" => "2012-06-19", "version" => "1.43_02" }, { "date" => "2012-06-19", "entries" => [ { "line" => 76, "raw" => " * ulimit support in SimpleDaemon\n", "style" => "*", "text" => "ulimit support in SimpleDaemon" }, { "line" => 77, "raw" => " * json-style configs\n", "style" => "*", "text" => "json-style configs" }, { "line" => 78, "raw" => " * 'start_hook' option in start_daemon()\n\n", "style" => "*", "text" => "'start_hook' option in start_daemon()" } ], "line" => 75, "raw" => "1.43_01 2012-06-19\n", "raw_date" => "2012-06-19", "version" => "1.43_01" }, { "date" => "2012-06-16", "entries" => [ { "line" => 81, "raw" => " * actually merge the fix\n\n", "style" => "*", "text" => "actually merge the fix" } ], "line" => 80, "raw" => "1.43 2012-06-16\n", "raw_date" => "2012-06-16", "version" => "1.43" }, { "date" => "2012-06-15", "entries" => [ { "line" => 84, "raw" => " * critical bugfix: fix credentials application order\n (all non-root services were broken when operated from root, 1.39-1.41 releases were affected)\n\n", "style" => "*", "text" => "critical bugfix: fix credentials application order (all non-root services were broken when operated from root, 1.39-1.41 releases were affected)" } ], "line" => 83, "raw" => "1.42 2012-06-15\n", "raw_date" => "2012-06-15", "version" => "1.42" }, { "date" => "2012-06-11", "entries" => [ { "line" => 88, "raw" => " * pid2cmd doesn't die on errors\n", "style" => "*", "text" => "pid2cmd doesn't die on errors" }, { "line" => 89, "raw" => " * Ubic::Run supports the explicit service names\n", "style" => "*", "text" => "Ubic::Run supports the explicit service names" }, { "line" => 90, "raw" => " * lots of minor POD spelling fixes and improvements\n\n", "style" => "*", "text" => "lots of minor POD spelling fixes and improvements" } ], "line" => 87, "raw" => "1.41 2012-06-11\n", "raw_date" => "2012-06-11", "version" => "1.41" }, { "date" => "2012-05-27", "entries" => [ { "line" => 93, "raw" => " * improve tests stability\n\n", "style" => "*", "text" => "improve tests stability" } ], "line" => 92, "raw" => "1.40 2012-05-27\n", "raw_date" => "2012-05-27", "version" => "1.40" }, { "date" => "2012-05-23", "entries" => [ { "entries" => [ { "line" => 97, "raw" => " - reload_signal\n", "style" => "-", "text" => "reload_signal" }, { "line" => 98, "raw" => " - daemon_user/daemon_group\n", "style" => "-", "text" => "daemon_user/daemon_group" } ], "line" => 96, "raw" => " * new SimpleDaemon options:\n", "style" => "*", "text" => "new SimpleDaemon options:" }, { "line" => 99, "raw" => " * 'credentials' option in start_daemon()\n", "style" => "*", "text" => "'credentials' option in start_daemon()" }, { "line" => 100, "raw" => " * various doc improvements\n\n", "style" => "*", "text" => "various doc improvements" } ], "line" => 95, "raw" => "1.39 2012-05-23\n", "raw_date" => "2012-05-23", "version" => "1.39" }, { "date" => "2012-04-23", "entries" => [ { "line" => 103, "raw" => " * freebsd credentials fix - set real uid first and effective uid after that\n\n", "style" => "*", "text" => "freebsd credentials fix - set real uid first and effective uid after that" } ], "line" => 102, "raw" => "1.38_01 2012-04-23\n", "raw_date" => "2012-04-23", "version" => "1.38_01" }, { "date" => "2012-04-14", "entries" => [ { "line" => 106, "raw" => " * stable release\n\n", "style" => "*", "text" => "stable release" } ], "line" => 105, "raw" => "1.38 2012-04-14\n", "raw_date" => "2012-04-14", "version" => "1.38" }, { "date" => "2012-04-13", "entries" => [ { "line" => 109, "raw" => " * log early exiting daemons correctly; fix tests\n\n", "style" => "*", "text" => "log early exiting daemons correctly; fix tests" } ], "line" => 108, "raw" => "1.37_03 2012-04-13\n", "raw_date" => "2012-04-13", "version" => "1.37_03" }, { "date" => "2012-03-28", "entries" => [ { "line" => 112, "raw" => " * non-root dir multiservices allow operations without --force\n", "style" => "*", "text" => "non-root dir multiservices allow operations without --force" }, { "line" => 113, "raw" => " * minor docs improvements, including replacing \"flexible perl-based\" with \"polymorphic\" everywhere\n\n", "style" => "*", "text" => "minor docs improvements, including replacing \"flexible perl-based\" with \"polymorphic\" everywhere" } ], "line" => 111, "raw" => "1.37_02 2012-03-28\n", "raw_date" => "2012-03-28", "version" => "1.37_02" }, { "date" => "2012-03-27", "entries" => [ { "line" => 116, "raw" => " * Ubic::Daemon::OS::Linux: fix guid calculating code\n", "style" => "*", "text" => "Ubic::Daemon::OS::Linux: fix guid calculating code" }, { "entries" => [ { "line" => 118, "raw" => " - better logging\n", "style" => "-", "text" => "better logging" }, { "line" => 119, "raw" => " - die if can't calculate guid\n\n", "style" => "-", "text" => "die if can't calculate guid" } ], "line" => 117, "raw" => " * Ubic::Daemon:\n", "style" => "*", "text" => "Ubic::Daemon:" } ], "line" => 115, "raw" => "1.37_01 2012-03-27\n", "raw_date" => "2012-03-27", "version" => "1.37_01" }, { "date" => "2012-03-15", "entries" => [ { "line" => 122, "raw" => " * Ubic::UA pod\n", "style" => "*", "text" => "Ubic::UA pod" }, { "line" => 123, "raw" => " * prohibit building on Solaris\n\n", "style" => "*", "text" => "prohibit building on Solaris" } ], "line" => 121, "raw" => "1.37 2012-03-15\n", "raw_date" => "2012-03-15", "version" => "1.37" }, { "date" => "2012-02-15", "entries" => [ { "entries" => [ { "line" => 127, "raw" => " - use Ubic::UA instead of LWP::UserAgent to reduce the number of dependencies\n", "style" => "-", "text" => "use Ubic::UA instead of LWP::UserAgent to reduce the number of dependencies" }, { "line" => 128, "raw" => " - increase timeout options to avoid start failures on slow systems\n\n", "style" => "-", "text" => "increase timeout options to avoid start failures on slow systems" } ], "line" => 126, "raw" => " * ubic.ping improvements:\n", "style" => "*", "text" => "ubic.ping improvements:" } ], "line" => 125, "raw" => "1.36_02 2012-02-15\n", "raw_date" => "2012-02-15", "version" => "1.36_02" }, { "date" => "2011-12-09", "entries" => [ { "line" => 131, "raw" => " * Ubic::Multiservice::Dir: don't warn about configs with taboo extensions\n\n", "style" => "*", "text" => "Ubic::Multiservice::Dir: don't warn about configs with taboo extensions" } ], "line" => 130, "raw" => "1.36 2011-12-09\n", "raw_date" => "2011-12-09", "version" => "1.36" }, { "date" => "2011-11-17", "entries" => [ { "entries" => [ { "line" => 135, "raw" => " - ini-style syntax for configs with .ini extension\n", "style" => "-", "text" => "ini-style syntax for configs with .ini extension" }, { "line" => 136, "raw" => " - extension-based polimorphism which will let us implement more config syntaxes in the future\n", "style" => "-", "text" => "extension-based polimorphism which will let us implement more config syntaxes in the future" } ], "line" => 134, "raw" => " * custom service loaders:\n", "style" => "*", "text" => "custom service loaders:" }, { "line" => 137, "raw" => " * always sync pidfiles and status files to disk\n", "style" => "*", "text" => "always sync pidfiles and status files to disk" }, { "line" => 138, "raw" => " * small doc and output message improvements\n\n", "style" => "*", "text" => "small doc and output message improvements" } ], "line" => 133, "raw" => "1.35_02 2011-11-17\n", "raw_date" => "2011-11-17", "version" => "1.35_02" }, { "date" => "2011-11-04", "entries" => [ { "entries" => [ { "line" => 142, "raw" => " - fix local installation mode\n", "style" => "-", "text" => "fix local installation mode" }, { "line" => 143, "raw" => " - document all command-line options\n\n", "style" => "-", "text" => "document all command-line options" } ], "line" => 141, "raw" => " * ubic-admin:\n", "style" => "*", "text" => "ubic-admin:" } ], "line" => 140, "raw" => "1.35_01 2011-11-04\n", "raw_date" => "2011-11-04", "version" => "1.35_01" }, { "date" => "2011-10-07", "entries" => [ { "line" => 146, "raw" => " * fix build - ubic-daemon doesn't fail compile test if ubic is not installed\n\n", "style" => "*", "text" => "fix build - ubic-daemon doesn't fail compile test if ubic is not installed" } ], "line" => 145, "raw" => "1.35 2011-10-07\n", "raw_date" => "2011-10-07", "version" => "1.35" }, { "date" => "2011-09-25", "entries" => [ { "line" => 149, "raw" => " * example system paths in setup depend on os\n", "style" => "*", "text" => "example system paths in setup depend on os" }, { "line" => 150, "raw" => " * contrubitors section in Ubic.pm\n\n", "style" => "*", "text" => "contrubitors section in Ubic.pm" } ], "line" => 148, "raw" => "1.34 2011-09-25\n", "raw_date" => "2011-09-25", "version" => "1.34" }, { "date" => "2011-09-20", "entries" => [ { "line" => 153, "raw" => " * use pure perl for mkdir and chmod operations\n\n", "style" => "*", "text" => "use pure perl for mkdir and chmod operations" } ], "line" => 152, "raw" => "1.33_04 2011-09-20\n", "raw_date" => "2011-09-20", "version" => "1.33_04" }, { "date" => "2011-09-20", "entries" => [ { "line" => 156, "raw" => " * fix typo in the path to freebsd ubic.cfg\n\n", "style" => "*", "text" => "fix typo in the path to freebsd ubic.cfg" } ], "line" => 155, "raw" => "1.33_03 2011-09-20\n", "raw_date" => "2011-09-20", "version" => "1.33_03" }, { "date" => "2011-09-20", "entries" => [ { "line" => 159, "raw" => " * comply to hier(7) on freebsd\n", "style" => "*", "text" => "comply to hier(7) on freebsd" }, { "entries" => [ { "line" => 161, "raw" => " - pod advicing not to use this script\n", "style" => "-", "text" => "pod advicing not to use this script" }, { "line" => 162, "raw" => " - --stop and --list features\n", "style" => "-", "text" => "--stop and --list features" }, { "line" => 163, "raw" => " - use Ubic::Settings instead of hard-coded pid_dir path\n\n", "style" => "-", "text" => "use Ubic::Settings instead of hard-coded pid_dir path" } ], "line" => 160, "raw" => " * ubic-daemon improvements:\n", "style" => "*", "text" => "ubic-daemon improvements:" } ], "line" => 158, "raw" => "1.33_02 2011-09-20\n", "raw_date" => "2011-09-20", "version" => "1.33_02" }, { "date" => "2011-09-02", "entries" => [ { "line" => 166, "raw" => " * fix setup.t - don't fail if ubic is already installed\n", "style" => "*", "text" => "fix setup.t - don't fail if ubic is already installed" }, { "line" => 167, "raw" => " * more questions in Ubic::Manual::FAQ, other various doc improvements\n", "style" => "*", "text" => "more questions in Ubic::Manual::FAQ, other various doc improvements" }, { "line" => 168, "raw" => " * partially align status column on 'ubic status' command\n", "style" => "*", "text" => "partially align status column on 'ubic status' command" }, { "line" => 169, "raw" => " * silently skip configs with taboo extensions, complain about others to stderr\n (see https://github.com/berekuk/Ubic/issues/15)\n", "style" => "*", "text" => "silently skip configs with taboo extensions, complain about others to stderr (see https://github.com/berekuk/Ubic/issues/15)" }, { "line" => 171, "raw" => " * Ubic::Daemon on linux doesn't fail if can't read from /proc cmdline file:\n there are cases when it is a possible state (usually after reboot)\n\n", "style" => "*", "text" => "Ubic::Daemon on linux doesn't fail if can't read from /proc cmdline file: there are cases when it is a possible state (usually after reboot)" } ], "line" => 165, "raw" => "1.33_01 2011-09-02\n", "raw_date" => "2011-09-02", "version" => "1.33_01" }, { "date" => "2011-07-22", "entries" => [ { "line" => 175, "raw" => " * stable release\n\n", "style" => "*", "text" => "stable release" } ], "line" => 174, "raw" => "1.33 2011-07-22\n", "raw_date" => "2011-07-22", "version" => "1.33" }, { "date" => "2011-07-18", "entries" => [ { "line" => 178, "raw" => " * don't mess with crontab on setup tests\n (see https://github.com/berekuk/Ubic/issues/17)\n\n", "style" => "*", "text" => "don't mess with crontab on setup tests (see https://github.com/berekuk/Ubic/issues/17)" } ], "line" => 177, "raw" => "1.32_04 2011-07-18\n", "raw_date" => "2011-07-18", "version" => "1.32_04" }, { "date" => "2011-07-17", "entries" => [ { "line" => 182, "raw" => " * fix daemon tests\n\n", "style" => "*", "text" => "fix daemon tests" } ], "line" => 181, "raw" => "1.32_03 2011-07-17\n", "raw_date" => "2011-07-17", "version" => "1.32_03" }, { "date" => "2011-07-13", "entries" => [ { "entries" => [ { "line" => 186, "raw" => " - 'cwd' and 'env' options (SimpleDaemon now just passes them to start_daemon())\n", "style" => "-", "text" => "'cwd' and 'env' options (SimpleDaemon now just passes them to start_daemon())" }, { "line" => 187, "raw" => " - log signal name, exit code and other events to ubic_log prettier and more consistently\n", "style" => "-", "text" => "log signal name, exit code and other events to ubic_log prettier and more consistently" } ], "line" => 185, "raw" => " * Ubic::Daemon improvements:\n", "style" => "*", "text" => "Ubic::Daemon improvements:" }, { "line" => 188, "raw" => " * document 'cwd' and 'env' options in Ubic::Service::SimpleDaemon\n\n", "style" => "*", "text" => "document 'cwd' and 'env' options in Ubic::Service::SimpleDaemon" } ], "line" => 184, "raw" => "1.32_02 2011-07-13\n", "raw_date" => "2011-07-13", "version" => "1.32_02" }, { "date" => "2011-07-13", "entries" => [ { "entries" => [ { "line" => 192, "raw" => " - cwd - set daemon working dir\n", "style" => "-", "text" => "cwd - set daemon working dir" }, { "line" => 193, "raw" => " - env - set daemon environment\n", "style" => "-", "text" => "env - set daemon environment" } ], "line" => 191, "raw" => " * new options in Ubic::Service::SimpleDaemon:\n", "style" => "*", "text" => "new options in Ubic::Service::SimpleDaemon:" }, { "line" => 194, "raw" => " * minimal setup test\n\n", "style" => "*", "text" => "minimal setup test" } ], "line" => 190, "raw" => "1.32_01 2011-07-13\n", "raw_date" => "2011-07-13", "version" => "1.32_01" }, { "date" => "2011-07-07", "entries" => [ { "line" => 197, "raw" => " * Fix ubic-admin setup again. Sorry.\n\n", "style" => "*", "text" => "Fix ubic-admin setup again. Sorry." } ], "line" => 196, "raw" => "1.32 2011-07-07\n", "raw_date" => "2011-07-07", "version" => "1.32" }, { "date" => "2011-06-30", "entries" => [ { "line" => 200, "raw" => " * fix ubic-admin setup - forgot to import IO::Handle\n (https://github.com/berekuk/Ubic/issues/13)\n\n", "style" => "*", "text" => "fix ubic-admin setup - forgot to import IO::Handle (https://github.com/berekuk/Ubic/issues/13)" } ], "line" => 199, "raw" => "1.31 2011-06-30\n", "raw_date" => "2011-06-30", "version" => "1.31" }, { "date" => "2011-06-28", "entries" => [ { "line" => 204, "raw" => " * Ubic::AtomicFile for storing any file safely\n", "style" => "*", "text" => "Ubic::AtomicFile for storing any file safely" }, { "entries" => [ { "line" => 206, "raw" => " - Ubic::Manual::Overview\n", "style" => "-", "text" => "Ubic::Manual::Overview" }, { "line" => 207, "raw" => " - Ubic::Service::SimpleDaemon now makes sense\n\n", "style" => "-", "text" => "Ubic::Service::SimpleDaemon now makes sense" } ], "line" => 205, "raw" => " * POD improvements:\n", "style" => "*", "text" => "POD improvements:" } ], "line" => 203, "raw" => "1.30 2011-06-28\n", "raw_date" => "2011-06-28", "version" => "1.30" }, { "date" => "2011-06-07", "entries" => [ { "line" => 210, "raw" => " * ubic-admin script: fix crontab install when user doesn't have previous crontab\n", "style" => "*", "text" => "ubic-admin script: fix crontab install when user doesn't have previous crontab" }, { "line" => 211, "raw" => " * ubic script: fix 'ubic unknown-cmd' error reporting\n", "style" => "*", "text" => "ubic script: fix 'ubic unknown-cmd' error reporting" }, { "entries" => [ { "line" => 213, "raw" => " - don't ask for status twice if service works\n", "style" => "-", "text" => "don't ask for status twice if service works" }, { "line" => 214, "raw" => " - permanently set credentials instead of using forks for non-root services\n", "style" => "-", "text" => "permanently set credentials instead of using forks for non-root services" }, { "line" => 215, "raw" => " - log status obtained by status check, instead of just logging 'service is broken'\n", "style" => "-", "text" => "log status obtained by status check, instead of just logging 'service is broken'" } ], "line" => 212, "raw" => " * watchdog improvements:\n", "style" => "*", "text" => "watchdog improvements:" }, { "entries" => [ { "line" => 217, "raw" => " - Ubic::Manual::Intro\n", "style" => "-", "text" => "Ubic::Manual::Intro" }, { "line" => 218, "raw" => " - Ubic::Manual::Multiservices\n", "style" => "-", "text" => "Ubic::Manual::Multiservices" }, { "line" => 219, "raw" => " - various POD fixes\n\n", "style" => "-", "text" => "various POD fixes" } ], "line" => 216, "raw" => " * POD improvements:\n", "style" => "*", "text" => "POD improvements:" } ], "line" => 209, "raw" => "1.29 2011-06-07\n", "raw_date" => "2011-06-07", "version" => "1.29" }, { "date" => "2011-04-21", "entries" => [ { "line" => 222, "raw" => " * 'ubic status' always shows non-cached statuses if called by root\n", "style" => "*", "text" => "'ubic status' always shows non-cached statuses if called by root" }, { "line" => 223, "raw" => " * ubic.ping status now uses sane timeout when it checks service via http\n\n", "style" => "*", "text" => "ubic.ping status now uses sane timeout when it checks service via http" } ], "line" => 221, "raw" => "1.28 2011-04-21\n", "raw_date" => "2011-04-21", "version" => "1.28" }, { "date" => "2011-04-17", "entries" => [ { "entries" => [ { "line" => 227, "raw" => " - system-wide setup with one command 'ubic-admin setup'\n", "style" => "-", "text" => "system-wide setup with one command 'ubic-admin setup'" }, { "line" => 228, "raw" => " - home directory setup with the same 'ubic-admin setup' command\n", "style" => "-", "text" => "home directory setup with the same 'ubic-admin setup' command" }, { "line" => 229, "raw" => " - batch-mode with flag \"--batch-mode\"\n", "style" => "-", "text" => "batch-mode with flag \"--batch-mode\"" } ], "line" => 226, "raw" => " * ubic-admin script:\n", "style" => "*", "text" => "ubic-admin script:" }, { "line" => 230, "raw" => " * configurable default_user (very helpful for home directory setup)\n", "style" => "*", "text" => "configurable default_user (very helpful for home directory setup)" }, { "entries" => [ { "line" => 232, "raw" => " - real status will be checked and printed if current user is equal\n to service user\n", "style" => "-", "text" => "real status will be checked and printed if current user is equal to service user" }, { "line" => 234, "raw" => " - \"Not a root, printing cached statuses\" message removed;\n instead, 'ubic status' will print \"[cached]\" note for every cached status\n", "style" => "-", "text" => "\"Not a root, printing cached statuses\" message removed; instead, 'ubic status' will print \"[cached]\" note for every cached status" } ], "line" => 231, "raw" => " * 'ubic status' changes:\n", "style" => "*", "text" => "'ubic status' changes:" }, { "line" => 236, "raw" => " * ubic-ping service renamed to ubic.ping\n", "style" => "*", "text" => "ubic-ping service renamed to ubic.ping" }, { "line" => 237, "raw" => " * ubic-watchdog and ubic-update now run as ubic.watchdog and ubic.update services\n instead of cron jobs; \"ubic-watchdog ubic.watchdog\" cron job is still recommended.\n", "style" => "*", "text" => "ubic-watchdog and ubic-update now run as ubic.watchdog and ubic.update services instead of cron jobs; \"ubic-watchdog ubic.watchdog\" cron job is still recommended." }, { "line" => 239, "raw" => " * ubic-periodic script for recurrent job running\n\n", "style" => "*", "text" => "ubic-periodic script for recurrent job running" } ], "line" => 225, "raw" => "1.27 2011-04-17\n", "raw_date" => "2011-04-17", "version" => "1.27" }, { "date" => "2011-04-10", "entries" => [ { "line" => 242, "raw" => " Hotfix release (https://github.com/berekuk/Ubic/issues/12):\n", "style" => "", "text" => "Hotfix release (https://github.com/berekuk/Ubic/issues/12):" }, { "line" => 243, "raw" => " * don't depend on Win32 modules\n", "style" => "*", "text" => "don't depend on Win32 modules" }, { "line" => 244, "raw" => " * stale Win32 code removed\n (it didn't work anyway, so there is no point in packaging it in CPAN releases).\n\n", "style" => "*", "text" => "stale Win32 code removed (it didn't work anyway, so there is no point in packaging it in CPAN releases)." } ], "line" => 241, "raw" => "1.26 2011-04-10\n", "raw_date" => "2011-04-10", "version" => "1.26" }, { "date" => "2011-03-31", "entries" => [ { "line" => 248, "raw" => " * MacOSX support (and probably other POSIX systems too, including FreeBSD)\n", "style" => "*", "text" => "MacOSX support (and probably other POSIX systems too, including FreeBSD)" }, { "entries" => [ { "line" => 250, "raw" => " - Ubic::Daemon::OS modules family for OS-specific daemonization tasks\n", "style" => "-", "text" => "Ubic::Daemon::OS modules family for OS-specific daemonization tasks" }, { "line" => 251, "raw" => " - Ubic::Credentials::OS modules family for OS-specific user/group tasks\n\n", "style" => "-", "text" => "Ubic::Credentials::OS modules family for OS-specific user/group tasks" } ], "line" => 249, "raw" => " * lots of refactoring:\n", "style" => "*", "text" => "lots of refactoring:" } ], "line" => 247, "raw" => "1.25 2011-03-31\n", "raw_date" => "2011-03-31", "version" => "1.25" }, { "entries" => [ { "line" => 254, "raw" => " * ubic-watchdog: change process name while checking specific service\n", "style" => "*", "text" => "ubic-watchdog: change process name while checking specific service" }, { "line" => 255, "raw" => " * check that uid change was successful before calling service action methods\n", "style" => "*", "text" => "check that uid change was successful before calling service action methods" }, { "line" => 256, "raw" => " * default check_timeout() lowered from 10 minutes to 1 minute\n\n", "style" => "*", "text" => "default check_timeout() lowered from 10 minutes to 1 minute" } ], "line" => 253, "note" => "Wed Feb 23, 2011", "raw" => "1.24 Wed Feb 23, 2011\n", "version" => "1.24" }, { "entries" => [ { "line" => 259, "raw" => " * ubic-ping: 404 message content fixed\n", "style" => "*", "text" => "ubic-ping: 404 message content fixed" }, { "entries" => [ { "line" => 261, "raw" => " - set check_timeout alarm a bit earlier\n", "style" => "-", "text" => "set check_timeout alarm a bit earlier" }, { "line" => 262, "raw" => " - another alarm before compiling services\n\n", "style" => "-", "text" => "another alarm before compiling services" } ], "line" => 260, "raw" => " * ubic-watchdog:\n", "style" => "*", "text" => "ubic-watchdog:" } ], "line" => 258, "note" => "Thu Dec 02, 2010", "raw" => "1.23 Thu Dec 02, 2010\n", "version" => "1.23" }, { "entries" => [ { "entries" => [ { "line" => 266, "raw" => " - default implementation of 'has_simple_service' method\n", "style" => "-", "text" => "default implementation of 'has_simple_service' method" }, { "line" => 267, "raw" => " - POD improvements\n\n", "style" => "-", "text" => "POD improvements" } ], "line" => 265, "raw" => " * Ubic::Multiservice:\n", "style" => "*", "text" => "Ubic::Multiservice:" } ], "line" => 264, "note" => "Sun Nov 07, 2010", "raw" => "1.22 Sun Nov 07, 2010\n", "version" => "1.22" }, { "entries" => [ { "line" => 270, "raw" => " * fixed races in t/daemon.t\n\n", "style" => "*", "text" => "fixed races in t/daemon.t" } ], "line" => 269, "note" => "Thu Oct 21, 2010", "raw" => "1.21_01 Thu Oct 21, 2010\n", "version" => "1.21_01" }, { "entries" => [ { "entries" => [ { "line" => 274, "raw" => " - set_ubic_dir() renamed to set_data_dir()\n (set_ubic_dir still remains in code for backward compatibility)\n", "style" => "-", "text" => "set_ubic_dir() renamed to set_data_dir() (set_ubic_dir still remains in code for backward compatibility)" }, { "line" => 276, "raw" => " - get_data_dir() and get_service_dir() methods\n", "style" => "-", "text" => "get_data_dir() and get_service_dir() methods" }, { "line" => 277, "raw" => " - UBIC_LOCK_DIR, UBIC_TMP_DIR and UBIC_WATCHDOG_DIR env variables are deprecated;\n UBIC_DIR variable or set_data_dir() method should be used instead\n", "style" => "-", "text" => "UBIC_LOCK_DIR, UBIC_TMP_DIR and UBIC_WATCHDOG_DIR env variables are deprecated; UBIC_DIR variable or set_data_dir() method should be used instead" }, { "line" => 279, "raw" => " - bugfix in forked_call() method - it thrown \"temp file not found after fork\" exception occasionally in some cases\n", "style" => "-", "text" => "bugfix in forked_call() method - it thrown \"temp file not found after fork\" exception occasionally in some cases" }, { "line" => 280, "raw" => " - more consistent params validation in many methods\n", "style" => "-", "text" => "more consistent params validation in many methods" } ], "line" => 273, "raw" => " * Ubic.pm:\n", "style" => "*", "text" => "Ubic.pm:" }, { "entries" => [ { "line" => 282, "raw" => " - separate non-blocking per-service lock (http://github.com/berekuk/ubic/issues#issue/1)\n", "style" => "-", "text" => "separate non-blocking per-service lock (http://github.com/berekuk/ubic/issues#issue/1)" }, { "line" => 283, "raw" => " - ubic-watchdog can now check selected set of services by name or glob\n", "style" => "-", "text" => "ubic-watchdog can now check selected set of services by name or glob" }, { "line" => 284, "raw" => " - ubic-watchdog kills itself after \$service->check_timeout() seconds\n", "style" => "-", "text" => "ubic-watchdog kills itself after \$service->check_timeout() seconds" } ], "line" => 281, "raw" => " * ubic-watchdog improvements:\n", "style" => "*", "text" => "ubic-watchdog improvements:" }, { "line" => 285, "raw" => " * deprecated Ubic::Catalog module removed (it was renamed into Ubic::Multiservice long time ago)\n\n\n", "style" => "*", "text" => "deprecated Ubic::Catalog module removed (it was renamed into Ubic::Multiservice long time ago)" } ], "line" => 272, "note" => "Tue Oct 19, 2010", "raw" => "1.21 Tue Oct 19, 2010\n", "version" => "1.21" }, { "entries" => [ { "line" => 289, "raw" => " * documentation improvements\n\n", "style" => "*", "text" => "documentation improvements" } ], "line" => 288, "note" => "Wed Oct 13, 2010", "raw" => "1.20 Wed Oct 13, 2010\n", "version" => "1.20" }, { "entries" => [ { "line" => 292, "raw" => " * ubic-watchdog always uses Ubic->status interface to check service status\n\n", "style" => "*", "text" => "ubic-watchdog always uses Ubic->status interface to check service status" } ], "line" => 291, "note" => "Tue Sep 14, 2010", "raw" => "1.19 Tue Sep 14, 2010\n", "version" => "1.19" }, { "entries" => [ { "line" => 295, "raw" => " * critical bugfix: ubic-watchdog correctly interpret extended statuses\n (thanks to Sawyer X for noticing this, see http://github.com/berekuk/Ubic/issues#issue/7)\n", "style" => "*", "text" => "critical bugfix: ubic-watchdog correctly interpret extended statuses (thanks to Sawyer X for noticing this, see http://github.com/berekuk/Ubic/issues#issue/7)" }, { "line" => 297, "raw" => " * Ubic::Lockf::Alarm moved to separate file, so PODs are now correct\n\n", "style" => "*", "text" => "Ubic::Lockf::Alarm moved to separate file, so PODs are now correct" } ], "line" => 294, "note" => "Tue Sep 14, 2010", "raw" => "1.18 Tue Sep 14, 2010\n", "version" => "1.18" }, { "entries" => [ { "line" => 300, "raw" => " * Ubic::Run: recognize RedHat init script names\n (thanks to Sawyer X for the patch, see http://github.com/berekuk/Ubic/issues/#issue/5)\n", "style" => "*", "text" => "Ubic::Run: recognize RedHat init script names (thanks to Sawyer X for the patch, see http://github.com/berekuk/Ubic/issues/#issue/5)" }, { "entries" => [ { "line" => 303, "raw" => " - ubic-ping uses Config.pm to determine full perl binary path\n", "style" => "-", "text" => "ubic-ping uses Config.pm to determine full perl binary path" }, { "line" => 304, "raw" => " - memory-leak.t is more robust\n\n", "style" => "-", "text" => "memory-leak.t is more robust" } ], "line" => 302, "raw" => " * test improvements:\n", "style" => "*", "text" => "test improvements:" } ], "line" => 299, "note" => "Mon Sep 13, 2010", "raw" => "1.17 Mon Sep 13, 2010\n", "version" => "1.17" }, { "entries" => [ { "entries" => [ { "line" => 308, "raw" => " - check_daemon() now returns proper Ubic::Daemon::Status object\n", "style" => "-", "text" => "check_daemon() now returns proper Ubic::Daemon::Status object" }, { "line" => 309, "raw" => " - don't log warning if daemon exited by sigterm\n", "style" => "-", "text" => "don't log warning if daemon exited by sigterm" }, { "line" => 310, "raw" => " - minor logging cleanup\n", "style" => "-", "text" => "minor logging cleanup" } ], "line" => 307, "raw" => " * Ubic::Daemon:\n", "style" => "*", "text" => "Ubic::Daemon:" }, { "line" => 311, "raw" => " * Ubic::Service::SimpleDaemon returns daemon pid in status msg\n", "style" => "*", "text" => "Ubic::Service::SimpleDaemon returns daemon pid in status msg" }, { "entries" => [ { "line" => 313, "raw" => " - using Test::TCP when testing ubic-ping\n", "style" => "-", "text" => "using Test::TCP when testing ubic-ping" }, { "line" => 314, "raw" => " - watchdog.t skips all tests if 'fakeroot' is not present\n", "style" => "-", "text" => "watchdog.t skips all tests if 'fakeroot' is not present" } ], "line" => 312, "raw" => " * test improvements:\n", "style" => "*", "text" => "test improvements:" }, { "line" => 315, "raw" => " * Ubic::Cmd: print 'running' result as good when it contains extended message\n\n", "style" => "*", "text" => "Ubic::Cmd: print 'running' result as good when it contains extended message" } ], "line" => 306, "note" => "Tue Sep 07, 2010", "raw" => "1.16 Tue Sep 07, 2010\n", "version" => "1.16" }, { "entries" => [ { "line" => 318, "raw" => " * tests fixed to work under root user (http://github.com/berekuk/Ubic/issues#issue/4)\n\n", "style" => "*", "text" => "tests fixed to work under root user (http://github.com/berekuk/Ubic/issues#issue/4)" } ], "line" => 317, "note" => "Mon Sep 06, 2010", "raw" => "1.15 Mon Sep 06, 2010\n", "version" => "1.15" }, { "entries" => [ { "line" => 321, "raw" => " * handle supplementary groups correctly\n", "style" => "*", "text" => "handle supplementary groups correctly" }, { "line" => 322, "raw" => " * ubic-watchdog doesn't require root privileges anymore (unless service requires them, of course)\n", "style" => "*", "text" => "ubic-watchdog doesn't require root privileges anymore (unless service requires them, of course)" }, { "line" => 323, "raw" => " * repo and bugtracker resources in META.yml\n", "style" => "*", "text" => "repo and bugtracker resources in META.yml" }, { "line" => 324, "raw" => " * PodWeaver in dist.ini config, so all modules now have proper AUTHOR and COPYRIGHT sections\n", "style" => "*", "text" => "PodWeaver in dist.ini config, so all modules now have proper AUTHOR and COPYRIGHT sections" }, { "line" => 325, "raw" => " * SimpleDaemon and Common services accept arrayref as 'group' value\n\n", "style" => "*", "text" => "SimpleDaemon and Common services accept arrayref as 'group' value" } ], "line" => 320, "note" => "Thu Sep 02, 2010", "raw" => "1.14 Thu Sep 02, 2010\n", "version" => "1.14" }, { "entries" => [ { "line" => 328, "raw" => " * Perl6::Slurp removed from dependencies\n", "style" => "*", "text" => "Perl6::Slurp removed from dependencies" }, { "line" => 329, "raw" => " * Ubic::Manual::FAQ now is actually added\n", "style" => "*", "text" => "Ubic::Manual::FAQ now is actually added" }, { "entries" => [ { "line" => 331, "raw" => " - services can specify group(s) from which service should run, analogous to user() method\n", "style" => "-", "text" => "services can specify group(s) from which service should run, analogous to user() method" }, { "line" => 332, "raw" => " - ubic will call setgid() before invoking any service methods\n", "style" => "-", "text" => "ubic will call setgid() before invoking any service methods" }, { "line" => 333, "raw" => " - default group list consists only of main user's group, as returned by getpwnam; supplementary groups are not supported yet\n\n", "style" => "-", "text" => "default group list consists only of main user's group, as returned by getpwnam; supplementary groups are not supported yet" } ], "line" => 330, "raw" => " * group() method in services:\n", "style" => "*", "text" => "group() method in services:" } ], "line" => 327, "note" => "Wed Sep 01, 2010", "raw" => "1.13 Wed Sep 01, 2010\n", "version" => "1.13" }, { "entries" => [ { "line" => 336, "raw" => " * Ubic::Manual::FAQ with first 2 questions\n", "style" => "*", "text" => "Ubic::Manual::FAQ with first 2 questions" }, { "line" => 337, "raw" => " * Ubic::Log documentation updated according to 1.11 changes\n\n", "style" => "*", "text" => "Ubic::Log documentation updated according to 1.11 changes" } ], "line" => 335, "note" => "Thu Aug 26, 2010", "raw" => "1.12 Thu Aug 26, 2010\n", "version" => "1.12" }, { "entries" => [ { "line" => 340, "raw" => " * ubic-watchdog prints errors to stdout only\n\n", "style" => "*", "text" => "ubic-watchdog prints errors to stdout only" } ], "line" => 339, "note" => "Thu Aug 26, 2010", "raw" => "1.11 Thu Aug 26, 2010\n", "version" => "1.11" }, { "entries" => [ { "line" => 343, "raw" => " * security bugfix: store all statuses in JSON format\n\n", "style" => "*", "text" => "security bugfix: store all statuses in JSON format" } ], "line" => 342, "note" => "Wed Aug 18, 2010", "raw" => "1.10 Wed Aug 18, 2010\n", "version" => "1.10" }, { "entries" => [ { "line" => 346, "raw" => " * bugfix: custom commands print 'ok' using green color and exit with zero\n code when there are not errors\n\n", "style" => "*", "text" => "bugfix: custom commands print 'ok' using green color and exit with zero code when there are not errors" } ], "line" => 345, "note" => "Thu Aug 12, 2010", "raw" => "1.09 Thu Aug 12, 2010\n", "version" => "1.09" }, { "entries" => [ { "line" => 350, "raw" => " * bugfix: has_service for nested unexistent services\n", "style" => "*", "text" => "bugfix: has_service for nested unexistent services" }, { "line" => 351, "raw" => " * debian/ dir in distribution too\n\n", "style" => "*", "text" => "debian/ dir in distribution too" } ], "line" => 349, "note" => "Tue Aug 03, 2010", "raw" => "1.08 Tue Aug 03, 2010\n", "version" => "1.08" }, { "entries" => [ { "line" => 354, "raw" => " * localize \$\@ in destructors\n", "style" => "*", "text" => "localize \$\@ in destructors" }, { "line" => 355, "raw" => " * Ubic::Cmd refactoring, more consistent console results printing\n\n", "style" => "*", "text" => "Ubic::Cmd refactoring, more consistent console results printing" } ], "line" => 353, "note" => "Fri Jul 30, 2010", "raw" => "1.07 Fri Jul 30, 2010\n", "version" => "1.07" }, { "entries" => [ { "line" => 358, "raw" => " * using \$Config{perlpath} in tests - should fix CPAN tests\n", "style" => "*", "text" => "using \$Config{perlpath} in tests - should fix CPAN tests" }, { "line" => 359, "raw" => " * Dist::Zilla\n\n", "style" => "*", "text" => "Dist::Zilla" } ], "line" => 357, "note" => "Fri Jun 18, 2010", "raw" => "1.06 Fri Jun 18, 2010\n", "version" => "1.06" }, { "entries" => [ { "line" => 362, "raw" => " MANIFEST up-to-date.\n", "style" => "", "text" => "MANIFEST up-to-date." }, { "line" => 363, "raw" => " Small POD improvements.\n\n", "style" => "", "text" => "Small POD improvements." } ], "line" => 361, "note" => "Sun Jun 13, 2010", "raw" => "1.05 Sun Jun 13, 2010\n", "version" => "1.05" }, { "entries" => [ { "line" => 366, "raw" => " - important bugfix: service locks fixed!\n", "style" => "-", "text" => "important bugfix: service locks fixed!" }, { "line" => 367, "raw" => " - Ubic::Daemon: join all bin args if bin is arrayref.\n", "style" => "-", "text" => "Ubic::Daemon: join all bin args if bin is arrayref." }, { "line" => 368, "raw" => " - Remove old configs from old yandex-ubic package.\n\n", "style" => "-", "text" => "Remove old configs from old yandex-ubic package." } ], "line" => 365, "note" => "Tue May 25, 2010", "raw" => "1.04 Tue May 25, 2010\n", "version" => "1.04" }, { "entries" => [ { "line" => 371, "raw" => " Remove old configs from old yandex-ubic package.\n\n", "style" => "", "text" => "Remove old configs from old yandex-ubic package." } ], "line" => 370, "note" => "Tue May 4, 2010", "raw" => "1.02 Tue May 4, 2010\n", "version" => "1.02" }, { "entries" => [ { "line" => 374, "raw" => " Just fixing debian dependency issues.\n\n", "style" => "", "text" => "Just fixing debian dependency issues." } ], "line" => 373, "note" => "Thu Apr 29, 2010", "raw" => "1.01 Thu Apr 29, 2010\n", "version" => "1.01" }, { "entries" => [ { "line" => 377, "raw" => " First opensource release.\n", "style" => "", "text" => "First opensource release." } ], "line" => 376, "note" => "Wed Apr 28, 2010", "raw" => "1.00 Wed Apr 28, 2010\n", "version" => "1.00" } ] } CPAN-Changes-0.500005/corpus/dists/Sub-Identify.changes000644 000000 000000 00000005025 14472651645 020515 0ustar00000000 000000 0.12- Rafael Garcia-Suarez (2): Update changes for 0.11 Fix build on perl 5.8 0.11- B. Estrade (1): Adding new test for signatures as part of Feb 2015 PRC. Rafael Garcia-Suarez (8): Bump version to 0.10 Merge pull request #6 from estrabd/Issue-5-add-signature-test Fix skipping tests on earliers perls Add new test to MANIFEST Do not let get_code_location() segfault on XSUBs Add a test for calling get_code_location on XSUBs Add a pure-perl version of last test Bump version 0.10- No changes 0.09- A. Sinan Unur (1): Fix test failure due to hard-coded filenames. 0.08- Rafael Garcia-Suarez (2): Require at least perl 5.8.0 Improve docs beyond a really terse synopsis 0.07- Rafael Garcia-Suarez (1): Require B unconditionally on older perls 0.06- Rafael Garcia-Suarez (4): Remove perl version requirement Skip tests that rely on perls more recent than 5.14.0 Update ppport.h Use the pure-perl version of is_sub_constant on perls earlier than 5.16 0.05- Rafael Garcia-Suarez (13): Add test for function prototypes Require at least perl 5.14.1 Better, simpler code for testing if we can load the XS version Add gitignore file Experimental implementation of get_code_location Add XS implementation of get_code_location() Add test for the prototype of get_code_location Make get_code_location work on undefined subs Add link to github repo in the meta file Add TODO file Add pure-perl implementation of is_sub_constant() Add XS implemetation of is_constant_sub() Add documentation 0.04- Rafael Garcia-Suarez (9): First stab as a dual implementation XS / pure Perl Update MANIFEST and add ppport.h from bleadperl Bump version to 0.04 Add license to Makefile.PL Re-add "use strict" Mortalize return values Add tests for a bug reported on P5P by Renée Bäcker Fix segfault / compilation error by returning nothing for a sub being compiled Regenerate META.yml 0.03- Rafael Garcia-Suarez (13): Import Sub-Identify 0.02 Add MANIFEST.SKIP file Add get_code_info, as suggested by Shawn M Moore Export get_code_info() Add tests for get_code_info() More tests for undefined subroutines Fix email address New tests for errors Merge branch 'moose' Add pod test file Pre-require Test::More Add copyright and license Bump version and regenerate the META.yml CPAN-Changes-0.500005/corpus/dists/Ubic.changes000644 000000 000000 00000033064 14472651645 017101 0ustar00000000 000000 Revision history for Ubic {{$NEXT}} 1.55 2013-07-26 * support PERLBREW_ROOT (thanks to github:spacebat for the patch, see https://github.com/berekuk/Ubic/pull/54) 1.54 2013-05-28 * 'auto_start' option in Ubic::Service and SimpleDaemon 1.53 2013-05-18 * fix crontab generation on setup! 1.52 2013-05-12 * always add /usr/local/bin to $PATH 1.51 2013-04-14 * autoflush stdout and stdin in ubic-guardian (especially when we're proxying daemon's logs) 1.50_01 2013-04-03 * support 'term_timeout' option in SimpleDaemon 1.49 2013-03-13 * stable release, no code changes 1.48_02 2013-02-26 * 'ubic status' exits with status code 0 if there're disabled services 1.48_01 2013-01-31 * guardian supports logs proxying and reopening them on SIGHUP (see https://github.com/berekuk/Ubic/pull/47) * hint about 'ubic help' on unknown command 1.48 2012-12-07 * detect ubic-watchdog location and put its full path to the crontab on setup * 'ubic help' command (see https://github.com/berekuk/Ubic/issues/31) 1.47 2012-12-03 * compatibility with perl 5.17 hash randomization (see https://github.com/berekuk/Ubic/issues/45) * append watchdog logs in crontab (instead of rewriting) 1.46 2012-11-08 * require modern BSD::Resource version (see https://github.com/berekuk/Ubic/issues/43) * relax timing conditions in t/watchdog.t 1.45 2012-11-01 * more robust t/simple-daemon.t 1.44_03 2012-10-30 * setup process now offers auto-configuration * typo fix in crontab code (thanks to Anton Ukolov) 1.44_02 2012-10-30 * Solaris compatibility (thanks to Martin Schultheis!) 1.44_01 2012-08-02 * support perlbrew, custom PATH and custom PELR5LIB 1.44 2012-06-21 * stable release, no code changes 1.43_04 2012-06-20 * fix SimpleDaemon to work on perl <5.14 1.43_03 2012-06-20 * fix tests for systems which don't set LOGNAME or USERNAME 1.43_02 2012-06-19 * dependency on BSD::Resource is optional in code and tests 1.43_01 2012-06-19 * ulimit support in SimpleDaemon * json-style configs * 'start_hook' option in start_daemon() 1.43 2012-06-16 * actually merge the fix 1.42 2012-06-15 * critical bugfix: fix credentials application order (all non-root services were broken when operated from root, 1.39-1.41 releases were affected) 1.41 2012-06-11 * pid2cmd doesn't die on errors * Ubic::Run supports the explicit service names * lots of minor POD spelling fixes and improvements 1.40 2012-05-27 * improve tests stability 1.39 2012-05-23 * new SimpleDaemon options: - reload_signal - daemon_user/daemon_group * 'credentials' option in start_daemon() * various doc improvements 1.38_01 2012-04-23 * freebsd credentials fix - set real uid first and effective uid after that 1.38 2012-04-14 * stable release 1.37_03 2012-04-13 * log early exiting daemons correctly; fix tests 1.37_02 2012-03-28 * non-root dir multiservices allow operations without --force * minor docs improvements, including replacing "flexible perl-based" with "polymorphic" everywhere 1.37_01 2012-03-27 * Ubic::Daemon::OS::Linux: fix guid calculating code * Ubic::Daemon: - better logging - die if can't calculate guid 1.37 2012-03-15 * Ubic::UA pod * prohibit building on Solaris 1.36_02 2012-02-15 * ubic.ping improvements: - use Ubic::UA instead of LWP::UserAgent to reduce the number of dependencies - increase timeout options to avoid start failures on slow systems 1.36 2011-12-09 * Ubic::Multiservice::Dir: don't warn about configs with taboo extensions 1.35_02 2011-11-17 * custom service loaders: - ini-style syntax for configs with .ini extension - extension-based polimorphism which will let us implement more config syntaxes in the future * always sync pidfiles and status files to disk * small doc and output message improvements 1.35_01 2011-11-04 * ubic-admin: - fix local installation mode - document all command-line options 1.35 2011-10-07 * fix build - ubic-daemon doesn't fail compile test if ubic is not installed 1.34 2011-09-25 * example system paths in setup depend on os * contrubitors section in Ubic.pm 1.33_04 2011-09-20 * use pure perl for mkdir and chmod operations 1.33_03 2011-09-20 * fix typo in the path to freebsd ubic.cfg 1.33_02 2011-09-20 * comply to hier(7) on freebsd * ubic-daemon improvements: - pod advicing not to use this script - --stop and --list features - use Ubic::Settings instead of hard-coded pid_dir path 1.33_01 2011-09-02 * fix setup.t - don't fail if ubic is already installed * more questions in Ubic::Manual::FAQ, other various doc improvements * partially align status column on 'ubic status' command * silently skip configs with taboo extensions, complain about others to stderr (see https://github.com/berekuk/Ubic/issues/15) * Ubic::Daemon on linux doesn't fail if can't read from /proc cmdline file: there are cases when it is a possible state (usually after reboot) 1.33 2011-07-22 * stable release 1.32_04 2011-07-18 * don't mess with crontab on setup tests (see https://github.com/berekuk/Ubic/issues/17) 1.32_03 2011-07-17 * fix daemon tests 1.32_02 2011-07-13 * Ubic::Daemon improvements: - 'cwd' and 'env' options (SimpleDaemon now just passes them to start_daemon()) - log signal name, exit code and other events to ubic_log prettier and more consistently * document 'cwd' and 'env' options in Ubic::Service::SimpleDaemon 1.32_01 2011-07-13 * new options in Ubic::Service::SimpleDaemon: - cwd - set daemon working dir - env - set daemon environment * minimal setup test 1.32 2011-07-07 * Fix ubic-admin setup again. Sorry. 1.31 2011-06-30 * fix ubic-admin setup - forgot to import IO::Handle (https://github.com/berekuk/Ubic/issues/13) 1.30 2011-06-28 * Ubic::AtomicFile for storing any file safely * POD improvements: - Ubic::Manual::Overview - Ubic::Service::SimpleDaemon now makes sense 1.29 2011-06-07 * ubic-admin script: fix crontab install when user doesn't have previous crontab * ubic script: fix 'ubic unknown-cmd' error reporting * watchdog improvements: - don't ask for status twice if service works - permanently set credentials instead of using forks for non-root services - log status obtained by status check, instead of just logging 'service is broken' * POD improvements: - Ubic::Manual::Intro - Ubic::Manual::Multiservices - various POD fixes 1.28 2011-04-21 * 'ubic status' always shows non-cached statuses if called by root * ubic.ping status now uses sane timeout when it checks service via http 1.27 2011-04-17 * ubic-admin script: - system-wide setup with one command 'ubic-admin setup' - home directory setup with the same 'ubic-admin setup' command - batch-mode with flag "--batch-mode" * configurable default_user (very helpful for home directory setup) * 'ubic status' changes: - real status will be checked and printed if current user is equal to service user - "Not a root, printing cached statuses" message removed; instead, 'ubic status' will print "[cached]" note for every cached status * ubic-ping service renamed to ubic.ping * ubic-watchdog and ubic-update now run as ubic.watchdog and ubic.update services instead of cron jobs; "ubic-watchdog ubic.watchdog" cron job is still recommended. * ubic-periodic script for recurrent job running 1.26 2011-04-10 Hotfix release (https://github.com/berekuk/Ubic/issues/12): * don't depend on Win32 modules * stale Win32 code removed (it didn't work anyway, so there is no point in packaging it in CPAN releases). 1.25 2011-03-31 * MacOSX support (and probably other POSIX systems too, including FreeBSD) * lots of refactoring: - Ubic::Daemon::OS modules family for OS-specific daemonization tasks - Ubic::Credentials::OS modules family for OS-specific user/group tasks 1.24 Wed Feb 23, 2011 * ubic-watchdog: change process name while checking specific service * check that uid change was successful before calling service action methods * default check_timeout() lowered from 10 minutes to 1 minute 1.23 Thu Dec 02, 2010 * ubic-ping: 404 message content fixed * ubic-watchdog: - set check_timeout alarm a bit earlier - another alarm before compiling services 1.22 Sun Nov 07, 2010 * Ubic::Multiservice: - default implementation of 'has_simple_service' method - POD improvements 1.21_01 Thu Oct 21, 2010 * fixed races in t/daemon.t 1.21 Tue Oct 19, 2010 * Ubic.pm: - set_ubic_dir() renamed to set_data_dir() (set_ubic_dir still remains in code for backward compatibility) - get_data_dir() and get_service_dir() methods - UBIC_LOCK_DIR, UBIC_TMP_DIR and UBIC_WATCHDOG_DIR env variables are deprecated; UBIC_DIR variable or set_data_dir() method should be used instead - bugfix in forked_call() method - it thrown "temp file not found after fork" exception occasionally in some cases - more consistent params validation in many methods * ubic-watchdog improvements: - separate non-blocking per-service lock (http://github.com/berekuk/ubic/issues#issue/1) - ubic-watchdog can now check selected set of services by name or glob - ubic-watchdog kills itself after $service->check_timeout() seconds * deprecated Ubic::Catalog module removed (it was renamed into Ubic::Multiservice long time ago) 1.20 Wed Oct 13, 2010 * documentation improvements 1.19 Tue Sep 14, 2010 * ubic-watchdog always uses Ubic->status interface to check service status 1.18 Tue Sep 14, 2010 * critical bugfix: ubic-watchdog correctly interpret extended statuses (thanks to Sawyer X for noticing this, see http://github.com/berekuk/Ubic/issues#issue/7) * Ubic::Lockf::Alarm moved to separate file, so PODs are now correct 1.17 Mon Sep 13, 2010 * Ubic::Run: recognize RedHat init script names (thanks to Sawyer X for the patch, see http://github.com/berekuk/Ubic/issues/#issue/5) * test improvements: - ubic-ping uses Config.pm to determine full perl binary path - memory-leak.t is more robust 1.16 Tue Sep 07, 2010 * Ubic::Daemon: - check_daemon() now returns proper Ubic::Daemon::Status object - don't log warning if daemon exited by sigterm - minor logging cleanup * Ubic::Service::SimpleDaemon returns daemon pid in status msg * test improvements: - using Test::TCP when testing ubic-ping - watchdog.t skips all tests if 'fakeroot' is not present * Ubic::Cmd: print 'running' result as good when it contains extended message 1.15 Mon Sep 06, 2010 * tests fixed to work under root user (http://github.com/berekuk/Ubic/issues#issue/4) 1.14 Thu Sep 02, 2010 * handle supplementary groups correctly * ubic-watchdog doesn't require root privileges anymore (unless service requires them, of course) * repo and bugtracker resources in META.yml * PodWeaver in dist.ini config, so all modules now have proper AUTHOR and COPYRIGHT sections * SimpleDaemon and Common services accept arrayref as 'group' value 1.13 Wed Sep 01, 2010 * Perl6::Slurp removed from dependencies * Ubic::Manual::FAQ now is actually added * group() method in services: - services can specify group(s) from which service should run, analogous to user() method - ubic will call setgid() before invoking any service methods - default group list consists only of main user's group, as returned by getpwnam; supplementary groups are not supported yet 1.12 Thu Aug 26, 2010 * Ubic::Manual::FAQ with first 2 questions * Ubic::Log documentation updated according to 1.11 changes 1.11 Thu Aug 26, 2010 * ubic-watchdog prints errors to stdout only 1.10 Wed Aug 18, 2010 * security bugfix: store all statuses in JSON format 1.09 Thu Aug 12, 2010 * bugfix: custom commands print 'ok' using green color and exit with zero code when there are not errors 1.08 Tue Aug 03, 2010 * bugfix: has_service for nested unexistent services * debian/ dir in distribution too 1.07 Fri Jul 30, 2010 * localize $@ in destructors * Ubic::Cmd refactoring, more consistent console results printing 1.06 Fri Jun 18, 2010 * using $Config{perlpath} in tests - should fix CPAN tests * Dist::Zilla 1.05 Sun Jun 13, 2010 MANIFEST up-to-date. Small POD improvements. 1.04 Tue May 25, 2010 - important bugfix: service locks fixed! - Ubic::Daemon: join all bin args if bin is arrayref. - Remove old configs from old yandex-ubic package. 1.02 Tue May 4, 2010 Remove old configs from old yandex-ubic package. 1.01 Thu Apr 29, 2010 Just fixing debian dependency issues. 1.00 Wed Apr 28, 2010 First opensource release. CPAN-Changes-0.500005/corpus/dists/File-RegexMatch.parsed000644 000000 000000 00000010211 14472651645 020756 0ustar00000000 000000 { "preamble" => "Revision history for Perl module File::RegexMatch", "raw_preamble" => "Revision history for Perl module File::RegexMatch\n\n", "releases" => [ { "entries" => [ { "line" => 4, "raw" => " - Renamed match() parameter from regex_pattern to match_pattern.\n", "style" => "-", "text" => "Renamed match() parameter from regex_pattern to match_pattern." }, { "line" => 5, "raw" => " - Added functionality to ignore file names based on regular expression.\n\n", "style" => "-", "text" => "Added functionality to ignore file names based on regular expression." } ], "line" => 3, "note" => "Mon July 29 2013", "raw" => "0.1.2 Mon July 29 2013\n", "version" => "0.1.2" }, { "entries" => [ { "line" => 8, "raw" => " - Updated documentation\n\n", "style" => "-", "text" => "Updated documentation" } ], "line" => 7, "note" => "Wed July 24 2013", "raw" => "0.1.1 Wed July 24 2013\n", "version" => "0.1.1" }, { "entries" => [ { "line" => 11, "raw" => " - Module pretty much re-written, old code was smelly.\n", "style" => "-", "text" => "Module pretty much re-written, old code was smelly." }, { "line" => 12, "raw" => " - Instead of returning the path of each file, a File::RegexMatch::Object is returned.\n\n", "style" => "-", "text" => "Instead of returning the path of each file, a File::RegexMatch::Object is returned." } ], "line" => 10, "note" => "Tue July 23 2013", "raw" => "0.1 Tue July 23 2013\n", "version" => "0.1" }, { "entries" => [ { "line" => 15, "raw" => " - Now checks hidden files for matches\n", "style" => "-", "text" => "Now checks hidden files for matches" }, { "line" => 16, "raw" => " - Updated documentation\n", "style" => "-", "text" => "Updated documentation" }, { "line" => 17, "raw" => " - If the given base directory path is relative, the absolute path of the files found in the base directory are returned instead of the relative path\n", "style" => "-", "text" => "If the given base directory path is relative, the absolute path of the files found in the base directory are returned instead of the relative path" }, { "line" => 18, "raw" => " - Warnings added for chdir if verbose is enabled\n", "style" => "-", "text" => "Warnings added for chdir if verbose is enabled" }, { "line" => 19, "raw" => " - Support for hidden files added\n", "style" => "-", "text" => "Support for hidden files added" }, { "line" => 20, "raw" => " - Cleanup of code\n\n", "style" => "-", "text" => "Cleanup of code" } ], "line" => 14, "note" => "Thur Dec 29 2011", "raw" => "0.03 Thur Dec 29 2011\n", "version" => "0.03" }, { "date" => "2011-12-19", "entries" => [ { "line" => 23, "raw" => " - Was a problem when verbose was disabled, now fixed.\n\n", "style" => "-", "text" => "Was a problem when verbose was disabled, now fixed." } ], "line" => 22, "raw" => "0.02 Mon Dec 19 2011\n", "raw_date" => "Mon Dec 19 2011", "version" => "0.02" }, { "date" => "2011-12-17", "entries" => [ { "line" => 26, "raw" => " - Original version; created by ExtUtils::ModuleMaker 0.51\n", "style" => "-", "text" => "Original version; created by ExtUtils::ModuleMaker 0.51" } ], "line" => 25, "raw" => "0.01 Sat Dec 17 2011\n", "raw_date" => "Sat Dec 17 2011", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/Test-Aggregate.changes000644 000000 000000 00000025512 14472651645 021021 0ustar00000000 000000 Revision history for Test-Aggregate 0.368 2013-08-14 - Fix tests on windows 0.367 2013-08-13 - Improve Test::Aggregate::Nested error handling: Don't treat undef as a failure; Show a warning and let Test::More::subtest() determine the result. This solves the false negative reported in https://rt.cpan.org/Public/Bug/Display.html?id=87240 Thanks to the venerable Andreas J. König for reporting! - Add more tests. - Actually include previously added tests to the dist (Where are you Dist::Zilla?) 0.366 2013-07-11 - Update metadata; Re-release to reindex with additional permissions 0.365 2013-07-10 - Avoid printing unnecessary "ok - "'s diag()s when they are passing, and when the 'verbose' option is set to 0. - The problem was that the $verbose option was hard-coded as '2' deep inside the module. - Catch errors in tests under Test::Aggregate::Nested; report as ok(0) - Pod fixes - Update repository metadata 0.364 04/12/2010 - Allow skipping the rest of a test using plan skip_all => $reason 0.363 24/11/2009 - Pass current test name to setup and teardown. 0.362 17/11/2009 - Removed broken "check_plan" from Test::Aggregate. It was always dodgy and really doesn't contribute much and the latest release broke with 'no_plan'. We now warn if we see this. - Minimum Test::More is now 0.94. This gives us more robust nested TAP. 0.361 20/10/2009 - Keep Makefile.PL in synch. Reported by Andreas Koenig (https://rt.cpan.org/Ticket/Display.html?id=50673) 0.36 18/10/2009 - Mark for production. - Removed 'dump.t' files in tests. - Improve Test::Aggregate::Nested docs. - Removed some dead code. - Suppress multiple plans (#48352, Chisel Wright) 0.35_07 19/08/2009 - Added missing files to MANIFEST. 0.35_06 28/06/2009 - Added support for nested TAP via Test::Aggregate::Nested. - I really, really need to get a real release out. 0.35_05 20/05/2009 - Removed bogus test file throwing my counts off. No wonder all tests were failing for people! - Remove development lib links. 0.35_04 Unreleased. - Unlink dump files in tests. 0.35_03 15/05/2009 - Don't run done_testing() in tests if it doesn't exist. 0.35_02 14/05/2009 - Deprecate tests run in BEGIN/END/CHECK/INIT. See http://use.perl.org/~Ovid/journal/38974 for more information. - check_plan, if set, is now done at the end of each test instead of the end of all tests. - Make it work with the Test::Builder 0.88 and previous versions. - Embed the calling test script name in a comment at the top of the dump file. - Fix a doc typo (thanks to Offer Kaye for the report) - Cleaned up some tests. 0.35_01 18/11/2008 - Make 'exit()' scream loudly if called. - Move Test::Aggregate::Builder globals into a hashref in the object. Further encapsulation to come later. - Export &run_this_test_program from Test::Aggregate to make dump files cleaner. - Reorganize the test suite to avoid false negatives. 0.35 27/10/2008 - Move from developer to production version number. - Add 'use Test::Aggregate' to the dump file. - Updated the docs to explain that the C functions are re-exported. 0.34_09 15/10/2008 - Added 'tests' key to the constructor. This is an optional method of identifying which tests you wish to aggregate. 0.34_08 14/10/2008 - Much refactoring of internals. This moves some autogenerated code directly into the Test::Aggregate namespace and Test::Aggregate->run calls this code directly to better synchronize behavior between running the code and running the dump file. This has the side effect of making individual test files much easier to find and read and makes the 'dump.t' file smaller. - Fixed a bug where a test dieing could cause the wrong test to be reported as failing. - Removed %INC from the list of localized variables. Localazing this doesn't remove the code from the symbol tables, so attempting to later reload this code leads to strange failures. 0.34_07 13/10/2008 - Fixed bug where dump file tests would fail if check_plan is set to true. - Common environment variables are now localized on a "per test file" basis. - Make the "5.006" requirement explicit in the Build.PL and Makefile.PL scripts. 0.34_06 21/10/2008 - Skip findbin test if FindBin < 1.47. Seems to cause test failures as FindBin *appears* to be getting confused by the setting of $0, but I'm not sure yet as I don't have an older Perl installed. 0.34_05 19/09/2008 - Changed 'unlink dump.t or die' to a warn (tests only). 0.34_03 18/09/2008 - Fixed major regression where --dry was eliminated and test counts (X of Y tests) were eliminated. - Automatically build a proper Makefile.PL. - Add FindBin to the dependencies. - Major refactoring of internals to make debugging dump files much cleaner and easier (and reduce their size, while we're at it). 0.34_03 15/09/2008 - Again cleaned up dump file generated when running tests. Need to guard against that better. Also removed it from the MANIFEST. 0.34_02 14/09/2008 - Allow skip_all tests. 0.34_01 04/09/2008 - Add an option to reinitialize FindBin for each aggregated test. - Don't emit a plan when not running any tests. 0.33 03/09/2008 - Upload 0.32_05 as a non-development release. 0.32_02 03/08/2008 - Added Test::Aggregate::Builder to the MANIFEST. 0.32_01 03/08/2008 - Added line directives to aggregated tests to ensure that Test::Builder::ok can now report the correct filename and line number. - set_filenames => 1 is now the default behavior. - Split the Test::Builder override into its own package. 0.31 22/07/2008 - Minor bugfix to play well with Test::Most (reset test failure when forcing failure after test program eval). 0.30 17/07/2008 - Resolved final (known) bug with Test::NoWarnings. If it's loaded before the plan is set, make sure we still adjust the plan. 0.24 15/07/2008 - Document the 'local $@' problem in "COMMON PITFALLS". - Ensure that dump file also forces a failure outside the eval(). - Make sure that the TEST_AGGREGATE environment variable is set in a BEGIN block. Otherwise, code relying on this variable might get called too soon to check it. 0.23 12/06/08 - Reluctantly added Test::NoWarnings as a dependency to avoid test failures. 0.22 11/06/2008 - If we really do have an error from the eval listed below, make sure we have a failing test to accompany it. Otherwise, tests which die might be reported as passing. 0.21 11/06/2008 - Wrap ->run_the_tests() calls in an eval so that one package failing is less likely to stop the other tests from running. 0.20 04/04/2008 - 'startup' and 'shutdown' are no longer called in BEGIN/END blocks. They were getting rather tricky due to timing issues. This may change in the future. - Added 'check_plan' attribute. This allows us to verify the plan of those test programs which have one (experimental). - Added 'test_nowarnings' attribute. This can be used to disable C. - Reworked some of the Test::Builder changes to minimize the amount of monkey patching and to make the intent clearer. - Verbosity is now 0, 1, or 2. If '1' is verbosity, we only show test failures. - We now maintain the Build.PL and Makefile.PL files separately due to issues with the latter not supporting the features of the former. - Eliminated some bogus tests added which were only there to show you which aggtest was being run. - Fixed the dates in the Changes file. 0.11 15/03/2008 - Fixed bug where not having Data::Dump::Streamer installed would cause test failures if 'dump' was not set. Reported by numerous CPAN smoke testers :) - Added optional (and experimental) Perl::Tidy support. - Fixed broken 'verbose'. The 'ok/not ok' message was being output regardless of verbose setting. 0.10 13/03/2008 - Added startup, shutdown, setup, teardown attributes. - Add more tests. - Clean up dump file generated by tests. 0.08 09/03/2008 - Require Test::Builder 0.74. - We now diag ok/not ok messages for each test program. This makes it much easier to figure out which program failed. - Fixed warnings when 'dump' was not set. Thanks to RENEEB for the bug report [http://rt.cpan.org/Ticket/Display.html?id=32443] 0.07 05/03/2008 - Added TEST_AGGREGATE environment variable. 0.06 15/01/2007 - Use an END block instead of adding Test::Builder::DESTROY. This is cleaner and doesn't override the DESTROY provided by Test::Most. 0.05 29/12/2007 - Fixed an open in aggtests/boilerplate.t which made the module fail with 5.005. 0.04 29/12/2007 - Fixed open() to work with versions of Perl < 5.6 - More extensive overriding of Test::Builder internals. I tried to subclass it but it's not designed to be subclassed and much pain ensued. - Dump file now has all "run_the_tests" lines at the top and the packages below them. This makes for easier debugging as you can comment out test packages one by one simply by commenting out its "run_the_tests" line. - Fixed bug where runtests() would run tests in a different order from the dump file. - Fixed bug where Test::NoWarnings would try to run a test after the plan was output. 0.03 29/11/2007 - Moved 'skip_all' files into the t/ directory. Aggregating them fails. mauzo (http://use.perl.org/~mauzo/) 0.02 26/11/2007 - Fixed bug where multiple tests setting an explicit plan in the use statement would cause failures. - Attempt to work around 'unauthorized release' issue on the CPAN. Simply declaring the 'Test::Builder' package directly is frowned upon. - Update the docs to warn explain 'shared variable' warnings. 0.01 25/11/2007 First version. Run test suites faster. CPAN-Changes-0.500005/corpus/dists/Data-MPQ.parsed000644 000000 000000 00000003727 14472651645 017374 0ustar00000000 000000 { "raw_preamble" => "", "releases" => [ { "entries" => [ { "line" => 2, "raw" => "\t- Add full covered tests for Data::MPQ\n", "style" => "-", "text" => "Add full covered tests for Data::MPQ" }, { "line" => 3, "raw" => "\t- Change repository name in META\n", "style" => "-", "text" => "Change repository name in META" } ], "line" => 1, "note" => "30 Oct 2011", "raw" => "0.04 30 Oct 2011\n", "version" => "0.04" }, { "entries" => [ { "line" => 5, "raw" => "\t- Fix some critical bugs\n", "style" => "-", "text" => "Fix some critical bugs" }, { "line" => 6, "raw" => "\t- Rename module to Data::MPQ::* (https://rt.cpan.org/Public/Bug/Display.html?id=71938)\n", "style" => "-", "text" => "Rename module to Data::MPQ::* (https://rt.cpan.org/Public/Bug/Display.html?id=71938)" }, { "line" => 7, "raw" => "\t- Add a bit of Pod documentation\n", "style" => "-", "text" => "Add a bit of Pod documentation" } ], "line" => 4, "note" => "29 Oct 2011", "raw" => "0.03 29 Oct 2011\n", "version" => "0.03" }, { "entries" => [ { "line" => 9, "raw" => "\t- Fix bugs at 32bit platform\n", "style" => "-", "text" => "Fix bugs at 32bit platform" } ], "line" => 8, "note" => "26 Oct 2011", "raw" => "0.02 26 Oct 2011\n", "version" => "0.02" }, { "entries" => [ { "line" => 11, "raw" => "\t- First version\n", "style" => "-", "text" => "First version" } ], "line" => 10, "note" => "23 Oct 2011", "raw" => "0.01 23 Oct 2011\n", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/Params-Dry-Declare.changes000644 000000 000000 00000000237 14472651645 021527 0ustar00000000 000000 Revision history for Params-Dry-Declare 0.99 Date/time First version, released on an unsuspecting world. 0.9901 Fix example (Param -> Param::Dry CPAN-Changes-0.500005/corpus/dists/LucyX-Simple.changes000644 000000 000000 00000000700 14472651645 020501 0ustar00000000 000000 0.005 no changes, I accidently deleted the tar.gz from cpan, had to reupload, can't upload same version twice 0.004 version bump for inc::Module::Install upgrade (http://weblog.bulknews.net/post/33907905561/do-not-ship-modules-with-module-install-1-04) 0.003 removed errornous analazyer attribute from QueryParser, added more test cases 0.002 Will now always try and create search index dir if doesn't exist 0.001 First release CPAN-Changes-0.500005/corpus/dists/Ubic-Service-Plack.changes000644 000000 000000 00000001542 14472651645 021523 0ustar00000000 000000 Revision history for Ubic-Service-Plack {{$NEXT}} 1.15 Sun Oct 14, 2012 * minor POD improvements * don't package debian/ into CPAN distribution * fix cwd test on OS X 1.14 Tue Jan 10, 2012 * group, env and cmd options * deprecate app_name option, derive pidfile from service's full_name * improve and cleanup docs 1.13 Wed Jul 13, 2011 * Compatible with new ubic 'default user' feature * Support arrayref values in server_args * Support single-letter keys in server_args * bin() method, pidfile() method, refactor to use Ubic::Service::Skeleton instead of Ubic::Service::Common 1.12 Sun Nov 07, 2010 Pass 'port' option to plackup. 1.11 Sat Jul 31, 2010 Add Plack into CPAN deps. 1.10 Fri Jul 30, 2010 First opensource release. CPAN-Changes-0.500005/corpus/dists/App-rainbarf.parsed000644 000000 000000 00000023537 14472651645 020373 0ustar00000000 000000 { "preamble" => "Changelog for App-rainbarf", "raw_preamble" => "Changelog for App-rainbarf\n\n", "releases" => [ { "date" => "2013-04-06T10:55:00Z", "entries" => [ { "entries" => [ { "line" => 5, "raw" => " - Config file can be specified via RAINBARF environment variable;\n", "style" => "-", "text" => "Config file can be specified via RAINBARF environment variable;" }, { "line" => 6, "raw" => " - Use select() instead of sleep() for faster execution under Linux;\n", "style" => "-", "text" => "Use select() instead of sleep() for faster execution under Linux;" }, { "line" => 7, "raw" => " - Documentation enhancements;\n", "style" => "-", "text" => "Documentation enhancements;" }, { "line" => 8, "raw" => " - Better CPAN compliance.\n\n", "style" => "-", "text" => "Better CPAN compliance." } ], "line" => 4, "raw" => " [Stanislaw Pusep ]\n", "style" => "[]", "text" => "Stanislaw Pusep " } ], "line" => 3, "raw" => "v0.8 2013-04-06T10:55:00\n", "raw_date" => "2013-04-06T10:55:00", "version" => "v0.8" }, { "date" => "2013-03-04T13:15:00Z", "entries" => [ { "entries" => [ { "line" => 12, "raw" => " - Allow --nobattery --remaining (show remaining time with no battery symbol).\n", "style" => "-", "text" => "Allow --nobattery --remaining (show remaining time with no battery symbol)." } ], "line" => 11, "raw" => " [Tom Cammann ]\n", "style" => "[]", "text" => "Tom Cammann " }, { "entries" => [ { "line" => 14, "raw" => " - FreeBSD compatibility;\n", "style" => "-", "text" => "FreeBSD compatibility;" }, { "line" => 15, "raw" => " - Code cleanup.\n\n", "style" => "-", "text" => "Code cleanup." } ], "line" => 13, "raw" => " [Stanislaw Pusep ]\n", "style" => "[]", "text" => "Stanislaw Pusep " } ], "line" => 10, "raw" => "v0.7 2013-03-04T13:15:00\n", "raw_date" => "2013-03-04T13:15:00", "version" => "v0.7" }, { "date" => "2013-02-26T08:15:00Z", "entries" => [ { "entries" => [ { "line" => 19, "raw" => " - Added support for the 256-color palette;\n", "style" => "-", "text" => "Added support for the 256-color palette;" }, { "line" => 20, "raw" => " - Added support for ~/.rainbarf.conf;\n", "style" => "-", "text" => "Added support for ~/.rainbarf.conf;" }, { "line" => 21, "raw" => " - Code cleanup.\n\n", "style" => "-", "text" => "Code cleanup." } ], "line" => 18, "raw" => " [Stanislaw Pusep ]\n", "style" => "[]", "text" => "Stanislaw Pusep " } ], "line" => 17, "raw" => "v0.6 2013-02-26T08:15:00\n", "raw_date" => "2013-02-26T08:15:00", "version" => "v0.6" }, { "date" => "2013-02-17T17:36:00Z", "entries" => [ { "entries" => [ { "line" => 25, "raw" => " - Add option that will display the time remaining until the battery is fully charged/empty;\n", "style" => "-", "text" => "Add option that will display the time remaining until the battery is fully charged/empty;" }, { "line" => 26, "raw" => " - Remove one second delay after executing top;\n", "style" => "-", "text" => "Remove one second delay after executing top;" }, { "line" => 27, "raw" => " - Add new screenshot to readme.\n", "style" => "-", "text" => "Add new screenshot to readme." } ], "line" => 24, "raw" => " [Joe Hassick ]\n", "style" => "[]", "text" => "Joe Hassick " }, { "entries" => [ { "line" => 29, "raw" => " - Bookkeeping.\n\n", "style" => "-", "text" => "Bookkeeping." } ], "line" => 28, "raw" => " [Stanislaw Pusep ]\n", "style" => "[]", "text" => "Stanislaw Pusep " } ], "line" => 23, "raw" => "v0.5 2013-02-17T17:36:00\n", "raw_date" => "2013-02-17T17:36:00", "version" => "v0.5" }, { "date" => "2013-02-13T10:43:00Z", "entries" => [ { "entries" => [ { "line" => 33, "raw" => " - Bundled with the Module::Build installer;\n", "style" => "-", "text" => "Bundled with the Module::Build installer;" }, { "line" => 34, "raw" => " - Updated docs (Installation & Configuration sections);\n", "style" => "-", "text" => "Updated docs (Installation & Configuration sections);" }, { "line" => 35, "raw" => " - Released to CPAN!\n\n", "style" => "-", "text" => "Released to CPAN!" } ], "line" => 32, "raw" => " [Stanislaw Pusep ]\n", "style" => "[]", "text" => "Stanislaw Pusep " } ], "line" => 31, "raw" => "v0.4 2013-02-13T10:43:00\n", "raw_date" => "2013-02-13T10:43:00", "version" => "v0.4" }, { "date" => "2013-02-11T23:39:00Z", "entries" => [ { "entries" => [ { "line" => 39, "raw" => " - This release uses the \"CPU utilization %\" metric instead of the \"load average\" by default;\n", "style" => "-", "text" => "This release uses the \"CPU utilization %\" metric instead of the \"load average\" by default;" }, { "line" => 40, "raw" => " - CPU/RAM stats are pulled from a single call to top(1) on Mac OS X (Linux still accesses /proc for everything);\n", "style" => "-", "text" => "CPU/RAM stats are pulled from a single call to top(1) on Mac OS X (Linux still accesses /proc for everything);" }, { "line" => 41, "raw" => " - Shebang has been changed to use Perl from PATH instead of the hardcoded /usr/bin/perl\n\n", "style" => "-", "text" => "Shebang has been changed to use Perl from PATH instead of the hardcoded /usr/bin/perl" } ], "line" => 38, "raw" => " [Stanislaw Pusep ]\n", "style" => "[]", "text" => "Stanislaw Pusep " } ], "line" => 37, "raw" => "v0.3 2013-02-11T23:39:00\n", "raw_date" => "2013-02-11T23:39:00", "version" => "v0.3" }, { "date" => "2013-02-04T23:33:00Z", "entries" => [ { "entries" => [ { "line" => 45, "raw" => " - Bugfixes;\n", "style" => "-", "text" => "Bugfixes;" }, { "line" => 46, "raw" => " - Screen(1) compatibility;\n", "style" => "-", "text" => "Screen(1) compatibility;" }, { "line" => 47, "raw" => " - Fewer dependencies;\n", "style" => "-", "text" => "Fewer dependencies;" }, { "line" => 48, "raw" => " - A smaller runtime footprint;\n", "style" => "-", "text" => "A smaller runtime footprint;" }, { "line" => 49, "raw" => " - Memory allocation bar reordering.\n\n", "style" => "-", "text" => "Memory allocation bar reordering." } ], "line" => 44, "raw" => " [Stanislaw Pusep ]\n", "style" => "[]", "text" => "Stanislaw Pusep " } ], "line" => 43, "raw" => "v0.2 2013-02-04T23:33:00\n", "raw_date" => "2013-02-04T23:33:00", "version" => "v0.2" }, { "date" => "2013-02-02T11:16:00Z", "entries" => [ { "entries" => [ { "line" => 53, "raw" => " - First public release.\n", "style" => "-", "text" => "First public release." } ], "line" => 52, "raw" => " [Stanislaw Pusep ]\n", "style" => "[]", "text" => "Stanislaw Pusep " } ], "line" => 51, "raw" => "v0.1 2013-02-02T11:16:00\n", "raw_date" => "2013-02-02T11:16:00", "version" => "v0.1" } ] } CPAN-Changes-0.500005/corpus/dists/B-C.parsed000644 000000 000000 00001057750 14472651645 016437 0ustar00000000 000000 { "preamble" => "-*- change-log -*-\n\tStarted on CPAN with B-C-1.04_12\n\tThe Perl compiler was in CORE from alpha4 until Perl 5.9.4\n\tand worked quite fine with Perl 5.6 and 5.8", "raw_preamble" => "-*- change-log -*-\n\tStarted on CPAN with B-C-1.04_12\n\tThe Perl compiler was in CORE from alpha4 until Perl 5.9.4\n\tand worked quite fine with Perl 5.6 and 5.8\n\n", "releases" => [ { "date" => "2014-02-11", "entries" => [ { "line" => 7, "raw" => " * C: reset PL_stack_sp on init (was one too far). no effects on code.\n", "style" => "*", "text" => "C: reset PL_stack_sp on init (was one too far). no effects on code." }, { "line" => 8, "raw" => " * t/issue281.t: fix wrong test (\$[ vs \$])\n\n", "style" => "*", "text" => "t/issue281.t: fix wrong test (\$[ vs \$])" } ], "line" => 6, "note" => "rurban", "raw" => "1.45\t2014-02-11 rurban\n", "raw_date" => "2014-02-11", "version" => "1.45" }, { "date" => "2014-02-10", "entries" => [ { "line" => 11, "raw" => " added adjusted CORE testsuite for 5.14. passes for 5.14.4-nt, not for 5.18.2-nt\n", "style" => "", "text" => "added adjusted CORE testsuite for 5.14. passes for 5.14.4-nt, not for 5.18.2-nt" }, { "line" => 12, "raw" => "\t(cPanel code_monkeys)\n", "style" => "", "text" => "(cPanel code_monkeys)" }, { "entries" => [ { "line" => 14, "raw" => "\t - global destruction (use lexicals!),\n", "style" => "-", "text" => "global destruction (use lexicals!)," }, { "line" => 15, "raw" => "\t - attribute handlers,\n", "style" => "-", "text" => "attribute handlers," }, { "line" => 16, "raw" => "\t - compile-time perlio layers\n\n", "style" => "-", "text" => "compile-time perlio layers" } ], "line" => 13, "raw" => "\tstill missing in general are:\n", "style" => "", "text" => "still missing in general are:" }, { "line" => 18, "raw" => " * C: Fix -O3 with ~ and ~~ formatstrings (#277)\n\tFix SvLEN and PV ptr for empty shared hash keys (#272)\n Use the natural \@dl_modules boot order, just put attributes to the front (#259)\n\tStore cop_hints to support lexical numeric hints pragmas,\n esp. use bytes and use open attributes\n (fixes #81 #152 #174 #176 #180 #185 #224 #235 #238 #241 #245 #253 #255 #256 #277)\n Skip saving defined(&cv) subs (#96)\n Fix format STDOUT/STDERR (#238, #239, #277, #284, #285, #283)\n Save now empty bodyless subs if they exist, for signal handlers,\n prototypes declarations and cvrefs (#251, #159, #235, #246, #270, #271, #275, #279)\n Fix PVMG PV overwriting the RV, overload sub (#273)\n", "style" => "*", "text" => "C: Fix -O3 with ~ and ~~ formatstrings (#277) Fix SvLEN and PV ptr for empty shared hash keys (#272) Use the natural \@dl_modules boot order, just put attributes to the front (#259) Store cop_hints to support lexical numeric hints pragmas, esp. use bytes and use open attributes (fixes #81 #152 #174 #176 #180 #185 #224 #235 #238 #241 #245 #253 #255 #256 #277) Skip saving defined(&cv) subs (#96) Fix format STDOUT/STDERR (#238, #239, #277, #284, #285, #283) Save now empty bodyless subs if they exist, for signal handlers, prototypes declarations and cvrefs (#251, #159, #235, #246, #270, #271, #275, #279) Fix PVMG PV overwriting the RV, overload sub (#273)" }, { "line" => 29, "raw" => "\t* CC (1.14): Skip saving non-existing methods analog to B::C 1.43_06 (CC test 50)\n", "style" => "*", "text" => "CC (1.14): Skip saving non-existing methods analog to B::C 1.43_06 (CC test 50)" }, { "line" => 30, "raw" => "\t* perlcc (2.17): Accept -A for -DALLOW_PERL_OPTIONS\n", "style" => "*", "text" => "perlcc (2.17): Accept -A for -DALLOW_PERL_OPTIONS" }, { "line" => 31, "raw" => "\t* t/testc.sh: Accept -A for -DALLOW_PERL_OPTIONS\n\n", "style" => "*", "text" => "t/testc.sh: Accept -A for -DALLOW_PERL_OPTIONS" } ], "line" => 10, "note" => "rurban", "raw" => "1.44\t2014-02-10 rurban\n", "raw_date" => "2014-02-10", "version" => "1.44" }, { "date" => "2014-01-15", "entries" => [ { "line" => 34, "raw" => "\tnew 5.16, and partial 5.18, 5.20 and windows support.\n", "style" => "", "text" => "new 5.16, and partial 5.18, 5.20 and windows support." }, { "line" => 35, "raw" => " Many more fixes and testcases.\n", "style" => "", "text" => "Many more fixes and testcases." }, { "line" => 36, "raw" => " Bytecode is still broken on 5.18, esp non-threaded. 5.20 looks pretty good though.\n\n", "style" => "", "text" => "Bytecode is still broken on 5.18, esp non-threaded. 5.20 looks pretty good though." }, { "line" => 38, "raw" => " * C: Fix -u without file extension.\n\tWith hek do not drop FAKE, only for const pv.\n\tFixed \$\$ (\$PID) to be dynamic, issue 108. Thanks to flexvault for reporting this.\n Fixed double precision to 16 digits. The nbody shootout test passes now.\n Fixed refcounts of *ENV, issue 111.\n Fixed wrong boot_ arg for the xs version check with --staticxs\n Better fix for overwriting of \@ARGV = 5.10 (#160)\n Fixed special usage of magic vars \@-,\@+,%+,\$-,\$! (#90)\n Fixed wrong REGEXP length for compiled QR data (#143)\n Fixed wrong -O3 comparison of strings to numbers (#138,#141, branch new-cog), unified\n PV handling, disabled -fcog replaced by -O3 -fconst-strings\n Fixed NUL-byte handling in strings by using B::SV->PV instead of PVX (#237)\n Storing now bareword filehandles (#148,#149)\n Do not create GvGP at all. This also removes the need for newGP() (Windows/AIX)\n use Config does not include B anymore, Internals::V now in __ANON__ package\n Fixed handling of empty - not successfully autoloaded - CVs (#235, #159, ...)\n by storing the SV and XPVCV but ignoring it and defer to run-time get_cv()\n Unify handling of static and dynamic strings, use ptr_undef throughout instead\n of NULL vs &PL_sv_undef (save_pv_or_rv => savesym, cur, len, pv, static)\n Restore \$^H, the numeric value of global warnings flags (#193,#207,#243)\n Restore more missing globals: \${^UNICODE} \${^UTF8LOCALE} \$; \$\\ \$, \$/ \$\" \$|\n \$^A \$^L \$: \$^H \$^R \$% \$- \$= if set in a BEGIN block or via cmdline (#256,#231)\n Restore even deprecated vars \$] \$# \$* (#171)\n Fix HvAUX memory corruption, accessing HvAUX beyond HE fields, esp. with threaded perls.\n Initialize now HvAUX backref and mro_meta fields.\n Do not boot internal core XS packages twice, refer to internal XS functions dynamically\n and do not link to them. Fixes fix Windows/AIX with strict linking.\n Defer dynaloaded GvCV initialization after dl_init()\n Fixed storage of non-special lexical warnings (#258 warnsize-i258)\n\tFixed storage of shared heks, support IsCOW_hek (i.e. method names)\n Support new ReANY since 5.17.6 (#258 reg_temp_copy)\n Support stash symtab magic for PMf_ONCE m?? and reset (#188)\n Fixed POSIX overflow constants warnings for DBL_MAX,DBL_MIN,LONG_MIN,LONG_MAX (#262)\n Support user-defined static_ext modules, which are already booted from core.\n Add more DynaLoader::dl_debug output (set PERL_DL_DEBUG=1)\n Enforce -ffold on an ucfirst op or \$INC{'unicore/To/Title.pl'} (#242)\n Mark empty but overloaded packages (#172). This is merely workaround for reduced testcases.\n Set PadnamelistMAXNAMED(comppad_name) needed since 5.19.3 for eval string (#268)\n Add new option -fno-delete-pkg to control if to ignore compiler-only dependent packages,\n compiler-independent packages are now always saved. Save those package names at Makefile.PL\n in \@B::C::Flags::deps.\n\n", "style" => "*", "text" => "C: Fix -u without file extension. With hek do not drop FAKE, only for const pv. Fixed \$\$ (\$PID) to be dynamic, issue 108. Thanks to flexvault for reporting this. Fixed double precision to 16 digits. The nbody shootout test passes now. Fixed refcounts of *ENV, issue 111. Fixed wrong boot_ arg for the xs version check with --staticxs Better fix for overwriting of \@ARGV = 5.10 (#160) Fixed special usage of magic vars \@-,\@+,%+,\$-,\$! (#90) Fixed wrong REGEXP length for compiled QR data (#143) Fixed wrong -O3 comparison of strings to numbers (#138,#141, branch new-cog), unified PV handling, disabled -fcog replaced by -O3 -fconst-strings Fixed NUL-byte handling in strings by using B::SV->PV instead of PVX (#237) Storing now bareword filehandles (#148,#149) Do not create GvGP at all. This also removes the need for newGP() (Windows/AIX) use Config does not include B anymore, Internals::V now in __ANON__ package Fixed handling of empty - not successfully autoloaded - CVs (#235, #159, ...) by storing the SV and XPVCV but ignoring it and defer to run-time get_cv() Unify handling of static and dynamic strings, use ptr_undef throughout instead of NULL vs &PL_sv_undef (save_pv_or_rv => savesym, cur, len, pv, static) Restore \$^H, the numeric value of global warnings flags (#193,#207,#243) Restore more missing globals: \${^UNICODE} \${^UTF8LOCALE} \$; \$\\ \$, \$/ \$\" \$| \$^A \$^L \$: \$^H \$^R \$% \$- \$= if set in a BEGIN block or via cmdline (#256,#231) Restore even deprecated vars \$] \$# \$* (#171) Fix HvAUX memory corruption, accessing HvAUX beyond HE fields, esp. with threaded perls. Initialize now HvAUX backref and mro_meta fields. Do not boot internal core XS packages twice, refer to internal XS functions dynamically and do not link to them. Fixes fix Windows/AIX with strict linking. Defer dynaloaded GvCV initialization after dl_init() Fixed storage of non-special lexical warnings (#258 warnsize-i258) Fixed storage of shared heks, support IsCOW_hek (i.e. method names) Support new ReANY since 5.17.6 (#258 reg_temp_copy) Support stash symtab magic for PMf_ONCE m?? and reset (#188) Fixed POSIX overflow constants warnings for DBL_MAX,DBL_MIN,LONG_MIN,LONG_MAX (#262) Support user-defined static_ext modules, which are already booted from core. Add more DynaLoader::dl_debug output (set PERL_DL_DEBUG=1) Enforce -ffold on an ucfirst op or \$INC{'unicore/To/Title.pl'} (#242) Mark empty but overloaded packages (#172). This is merely workaround for reduced testcases. Set PadnamelistMAXNAMED(comppad_name) needed since 5.19.3 for eval string (#268) Add new option -fno-delete-pkg to control if to ignore compiler-only dependent packages, compiler-independent packages are now always saved. Save those package names at Makefile.PL in \@B::C::Flags::deps." }, { "line" => 101, "raw" => " * perlcc (2.14): new option --dryrun, -v5 does not -Dsp,-v\n new option -f passthru to C and CC\n", "style" => "*", "text" => "perlcc (2.14): new option --dryrun, -v5 does not -Dsp,-v new option -f passthru to C and CC" }, { "line" => 103, "raw" => " * perlcc (2.15): fixed default --spawn: use waitpid which was broken for parallel builds.\n fixed warning Prototype mismatch: sub main::gettimeofday: none vs () at perlcc line 261\n improved --version\n added --perlopts to handle -DALLOW_PERL_OPTIONS\n", "style" => "*", "text" => "perlcc (2.15): fixed default --spawn: use waitpid which was broken for parallel builds. fixed warning Prototype mismatch: sub main::gettimeofday: none vs () at perlcc line 261 improved --version added --perlopts to handle -DALLOW_PERL_OPTIONS" }, { "line" => 107, "raw" => " * perlcc (2.16): changed output name rules:\n Without given output file name we use the name of the input file (in the subdir)\n or with -e a.out resp. a.exe and a randomized intermediate C filename.\n If the input file is an absolute path on non-windows systems use the basename.\n", "style" => "*", "text" => "perlcc (2.16): changed output name rules: Without given output file name we use the name of the input file (in the subdir) or with -e a.out resp. a.exe and a randomized intermediate C filename. If the input file is an absolute path on non-windows systems use the basename." }, { "line" => 111, "raw" => "\t* CC (1.13): Use the B::C integer and double precision logic (ivx, nvx).\n Fixed double precision to 16 digits. The nbody shootout is now 2x faster than perl.\n Added optimizations: -fno-magic, -fno-autovivify, -faelem\n Detect \"no autovivification;\" pragma.\n New -fno-taint, -fomit_taint is deprecated\n Fix amagic_generation which was removed with 5.17\n Use new perl6 type names: int, num, str. double and string are deprecated.\n", "style" => "*", "text" => "CC (1.13): Use the B::C integer and double precision logic (ivx, nvx). Fixed double precision to 16 digits. The nbody shootout is now 2x faster than perl. Added optimizations: -fno-magic, -fno-autovivify, -faelem Detect \"no autovivification;\" pragma. New -fno-taint, -fomit_taint is deprecated Fix amagic_generation which was removed with 5.17 Use new perl6 type names: int, num, str. double and string are deprecated." }, { "line" => 118, "raw" => "\t* Bytecode (1.14): fixed require and op_first, issue 97\n\tFixed regex_pad offset in threaded perls >= 5.11, issue 68.\n New type B::PAD isa B::AV (PADLIST for 5.17.5),\n New bytecodes newpadlx, padl_name, padl_sym (PADLIST for 5.17.5)\n Fixed CvGV_set causing Attempt to free unreferenced scalar in push_begin (42,43)\n Fixed -Do (peek ops)\n Renamed option -f to -F for files.\n Fixed READONLY magic and restricted hashes, issue 98\n Support IsCOW xpvshared strings (>=5.18)\n Fixed wrong xpvshared logic (5.10-5.17), issue 138\n Optimized away 0=default op and gp flags and pointers\n Optimized away default sv_refcnt=1 (GV not), and skip redundant bytecodes\n Set PadnamelistMAXNAMED(comppad_name) needed since 5.19.3 for eval string (#268)\n\n", "style" => "*", "text" => "Bytecode (1.14): fixed require and op_first, issue 97 Fixed regex_pad offset in threaded perls >= 5.11, issue 68. New type B::PAD isa B::AV (PADLIST for 5.17.5), New bytecodes newpadlx, padl_name, padl_sym (PADLIST for 5.17.5) Fixed CvGV_set causing Attempt to free unreferenced scalar in push_begin (42,43) Fixed -Do (peek ops) Renamed option -f to -F for files. Fixed READONLY magic and restricted hashes, issue 98 Support IsCOW xpvshared strings (>=5.18) Fixed wrong xpvshared logic (5.10-5.17), issue 138 Optimized away 0=default op and gp flags and pointers Optimized away default sv_refcnt=1 (GV not), and skip redundant bytecodes Set PadnamelistMAXNAMED(comppad_name) needed since 5.19.3 for eval string (#268)" }, { "line" => 132, "raw" => "\t* ByteLoader (0.10): set sv_refcnt to 1 in newsv to skip most defaults\n", "style" => "*", "text" => "ByteLoader (0.10): set sv_refcnt to 1 in newsv to skip most defaults" }, { "line" => 133, "raw" => " * Assembler (1.11): allow \"newpadlx 0\"\n", "style" => "*", "text" => "Assembler (1.11): allow \"newpadlx 0\"" }, { "line" => 134, "raw" => " * Disassembler (1.12): use B::Concise op_flags and private_flags\n", "style" => "*", "text" => "Disassembler (1.12): use B::Concise op_flags and private_flags" }, { "line" => 135, "raw" => "\t* Stash (1.03): fix compilation for 5.8.8 and below: gv_fetchsv missing\n", "style" => "*", "text" => "Stash (1.03): fix compilation for 5.8.8 and below: gv_fetchsv missing" }, { "line" => 136, "raw" => "\t* t/perldoc.t: perlcc fails with 5.8 because Cwd disturbs the\n\t fragile method package finder for File::Spec. Use cc_harness.\n\n", "style" => "*", "text" => "t/perldoc.t: perlcc fails with 5.8 because Cwd disturbs the fragile method package finder for File::Spec. Use cc_harness." } ], "line" => 33, "note" => "rurban", "raw" => "1.43\t2014-01-15 rurban\n", "raw_date" => "2014-01-15", "version" => "1.43" }, { "date" => "2012-02-01", "entries" => [ { "line" => 140, "raw" => " stable up to 5.14\n\n", "style" => "", "text" => "stable up to 5.14" }, { "line" => 142, "raw" => "\t* C: Improved finding methods in parent classes (Warning: method not found),\n\tSave \@ISA of those child classes.\n\tRe-implement and simplify my_share_hek, now in terms of share_hek.\n\t PL_strtab hack gone. This fixed the shared_hek destruction\n\t problems.\n\tTurn off CvDYNFILE needed since 5.15.4, use static CvFILE. (DateTime)\n", "style" => "*", "text" => "C: Improved finding methods in parent classes (Warning: method not found), Save \@ISA of those child classes. Re-implement and simplify my_share_hek, now in terms of share_hek. PL_strtab hack gone. This fixed the shared_hek destruction problems. Turn off CvDYNFILE needed since 5.15.4, use static CvFILE. (DateTime)" }, { "line" => 148, "raw" => "\t* perlcc: perlcc -stash does not hang anymore, renabled t/e_perlcc.t -stash section\n", "style" => "*", "text" => "perlcc: perlcc -stash does not hang anymore, renabled t/e_perlcc.t -stash section" }, { "line" => 149, "raw" => "\t* Stash (1.02): '-xs' does not load B anymore.\n\t Now in seperate directory Stash\n", "style" => "*", "text" => "Stash (1.02): '-xs' does not load B anymore. Now in seperate directory Stash" }, { "line" => 151, "raw" => "\t* Stash/Stash.xs: new with CvIsXSUB() to get rid of B, polluting the stashes.\n", "style" => "*", "text" => "Stash/Stash.xs: new with CvIsXSUB() to get rid of B, polluting the stashes." }, { "line" => 152, "raw" => "\t* Stash/Makefile.PL: new\n", "style" => "*", "text" => "Stash/Makefile.PL: new" }, { "line" => 153, "raw" => "\t* Bytecode (1.13): support shared hek (42,43)\n", "style" => "*", "text" => "Bytecode (1.13): support shared hek (42,43)" }, { "line" => 154, "raw" => "\t* ByteLoader (0.09), ByteLoader/bytecode.h, bytecode.pl: support shared hek (42,43),\n\t added xpvshared\n", "style" => "*", "text" => "ByteLoader (0.09), ByteLoader/bytecode.h, bytecode.pl: support shared hek (42,43), added xpvshared" }, { "line" => 156, "raw" => "\t* t/issue95.t: added, isa methods not found\n\n", "style" => "*", "text" => "t/issue95.t: added, isa methods not found" } ], "line" => 139, "note" => "rurban", "raw" => "1.42\t2012-02-01 rurban\n", "raw_date" => "2012-02-01", "version" => "1.42" }, { "date" => "2012-01-30", "entries" => [ { "line" => 159, "raw" => "\t* t/modules.t: Fixed syntax error\n\n", "style" => "*", "text" => "t/modules.t: Fixed syntax error" } ], "line" => 158, "note" => "rurban", "raw" => "1.41\t2012-01-30 rurban\n", "raw_date" => "2012-01-30", "version" => "1.41" }, { "date" => "2012-01-30", "entries" => [ { "line" => 162, "raw" => "\tstatic PerlIO Layers (e.g. __DATA__)\n\n", "style" => "", "text" => "static PerlIO Layers (e.g. __DATA__)" }, { "line" => 164, "raw" => "\t* C: fixed deferred %INC, %INC is now stored and cleaned up at the end.\n\tImproved __DATA__ handle as PerlIO layer, PerlIO::scalar now\n\t loaded static (test 15).\n\tDefer eval section after dl_init (e.g. for PerlIO::scalar) (test 15)\n\tCheck for XSLoader now at the very end (test 27)\n\tFixed MUTABLE_CV for 5.10.0\n\tImproved 5.8 method lifting for not-found methods a bit (5.8. perldoc.t)\n", "style" => "*", "text" => "C: fixed deferred %INC, %INC is now stored and cleaned up at the end. Improved __DATA__ handle as PerlIO layer, PerlIO::scalar now loaded static (test 15). Defer eval section after dl_init (e.g. for PerlIO::scalar) (test 15) Check for XSLoader now at the very end (test 27) Fixed MUTABLE_CV for 5.10.0 Improved 5.8 method lifting for not-found methods a bit (5.8. perldoc.t)" }, { "line" => 171, "raw" => "\t* Bytecode: fixed test 22\n\t Cannot locate object method \"fileno\" via package \"IO::File\"\n", "style" => "*", "text" => "Bytecode: fixed test 22 Cannot locate object method \"fileno\" via package \"IO::File\"" }, { "line" => 173, "raw" => "\t* Makefile.PL: readonly \$lib fix for MSWin32\n", "style" => "*", "text" => "Makefile.PL: readonly \$lib fix for MSWin32" }, { "line" => 174, "raw" => "\t* t/testc.sh: silence ulimit -m warnings + errors\n\n", "style" => "*", "text" => "t/testc.sh: silence ulimit -m warnings + errors" } ], "line" => 161, "note" => "rurban", "raw" => "1.40\t2012-01-30 rurban\n", "raw_date" => "2012-01-30", "version" => "1.40" }, { "date" => "2012-01-25", "entries" => [ { "line" => 177, "raw" => "\t* C: improved eval AUTOLOAD, avoid some POSIX and Storable .al compile-time\n\t side-effects such as creating files and dirs. First try loading\n\t .al files, only then eval the dangerous AUTOLOAD.\n", "style" => "*", "text" => "C: improved eval AUTOLOAD, avoid some POSIX and Storable .al compile-time side-effects such as creating files and dirs. First try loading .al files, only then eval the dangerous AUTOLOAD." }, { "line" => 180, "raw" => "\t* Makefile.PL: typo in -fav-init2 independent_comalloc detection.\n\tAdded LICENSE key, META and the files were not enough to please pause.\n\n", "style" => "*", "text" => "Makefile.PL: typo in -fav-init2 independent_comalloc detection. Added LICENSE key, META and the files were not enough to please pause." } ], "line" => 176, "note" => "rurban", "raw" => "1.39\t2012-01-25 rurban\n", "raw_date" => "2012-01-25", "version" => "1.39" }, { "date" => "2012-01-24", "entries" => [ { "line" => 184, "raw" => "\t* t/issue93.t: fixed syntax error\n\n", "style" => "*", "text" => "t/issue93.t: fixed syntax error" } ], "line" => 183, "note" => "rurban", "raw" => "1.38\t2012-01-24 rurban\n", "raw_date" => "2012-01-24", "version" => "1.38" }, { "date" => "2012-01-24", "entries" => [ { "line" => 187, "raw" => "\tEnabled copy-on-grow strings >= 5.10.\n", "style" => "", "text" => "Enabled copy-on-grow strings >= 5.10." }, { "line" => 188, "raw" => "\tSave %main:: stashes w/o -fno-stash. Switched to git, added github mirror\n", "style" => "", "text" => "Save %main:: stashes w/o -fno-stash. Switched to git, added github mirror" }, { "line" => 189, "raw" => "\tFixed hashes and share_hek, when mixed compiled and load-time for >5.8.\n\n", "style" => "", "text" => "Fixed hashes and share_hek, when mixed compiled and load-time for >5.8." }, { "line" => 191, "raw" => "\tStability: This release is the first which passes almost all tests and\n", "style" => "", "text" => "Stability: This release is the first which passes almost all tests and" }, { "line" => 192, "raw" => "\tis used in production with --staticxs -O3, but copy-on-grow hek's and\n", "style" => "", "text" => "is used in production with --staticxs -O3, but copy-on-grow hek's and" }, { "line" => 193, "raw" => "\tfurther logical improvements (deferred %INC cleanup) fail so far, so it's\n", "style" => "", "text" => "further logical improvements (deferred %INC cleanup) fail so far, so it's" }, { "line" => 194, "raw" => "\tstill considered unstable.\n\n", "style" => "", "text" => "still considered unstable." }, { "line" => 196, "raw" => "\t* C: save stashes optionally with -fstash, but only values which are also\n\t stashes to avoid a second walker besides savecv, and thus do not\n\t walk into unneeded territory; B::STASHGV (46, issue 79)\n\tNew -fno-stash with -O2 to omit stashes which are rarely needed.\n\tFixed vulnerability to oCERT-2011-003 style DOS attacks. Do not\n\t pre-compute hashes for hv_store(), use fresh random hash seed.\n\t But shared_hek() has a limited API which does not allow this.\n\tUNIVERSAL methods were not correctly stored, which led to method not\n\t found at run-time errors.\n\tNew debug option -Dr \"runtime\" to add debug output to the .c code (as in CC)\n\tNew option -Upackage to skip package, mark_skip()\n\tRe-implemented sharepvn via share_hek() and SvLEN=0 (issue 71),\n\t Special FAKE+READONLY handling: LEN = 0 if pv_copy_on_grow or shared_hek.\n\t Fixed !SvIsCOW_shared_hash + FAKE+READONLY conflict (test 13, issue 82).\n\t Shared COW hashkeys which are optimized to static const strings\n\t may not be marked as IsCOW (remove SVf_FAKE).\n\tRe-implemented CORE share_hek with hash=0\n\t Otherwise shared HEK's (post-5.10) come up with duplicate entries\n\t for the same keys; one compile-time created and one run-time created with\n\t a different random hash seed. E.g. observed by such warnings\n\t \"Prototype mismatch: sub bytes::length (_) vs (_)\"\n\tAdded Internals::hv_clear_placeholders XS name exception, similar\n\t to version:: (issue 83)\n\tStore CV prototypes, issue 81 and issue 84 for empty () vs NULL prototypes.\n\tFixed 5.15.2 hang at hfree_next_entry (issue 78)\n\tDefer writing of READONLY hash keys since 5.15 (issue 88)\n\tEnable -fcog copy-on-grow with static strings for >= 5.10\n\tImproved Errno vs. *main::! and Tie::Hash::NamedCapture vs\n\t *main::+ / - logic (issue 90)\n\tUpdated version XS methods, default to noop for (...\n\tStrip version object overload from XS packages (issue 91), XS needs plain PVs\n\tDo not initialize CONSTSUB XS methods twice, boot does it for us\n\tPass proper cv to XS boot_\$name, fixes boot of\n\t Tie::Hash::NamedCapture (issue 86)\n\tFixed share_hek strings with -O1 (test 13)\n\tFixed bootstrapping the XS/core part of attributes,\n\t thereby fixed threads tests 41-43.\n\tFixed most 5.8.[45] problems by ignoring aelemfast SPECIAL pads.\n\tFixed magic -> PTR when SV (>5.6)\n\tMoved -fsave-sig-hash from -O3 to -O0. You need -fno-save-sig-hash\n\t to disable it.\n Removed -fno-stash from -O2, -fno-stash is now the default. You\n\t need -fstash to add stashes. It caused not understood problems.\n\tFixed saving %SIG signals and more -2 SV magic (issue 92)\n\tAdjusted IO logic, was erronously skipped (issue 59)\n\tinc_cleanup: save only those %INC keys which are stored.\n\tSave ext/mro only if the ext mro methods were loaded, and\n\t utf8_heavy.pl similarly.\n\tForce loading of -u arguments to avoid runtime loading.\n\tCall boot_core_PerlIO, mro, UNIVERSAL and xsutils.\n\tWarn on unsavable IO objects from BEGIN blocks.\n\t Fixed >&STD... handles (issue 93),\n\t i.e. Test::Builder, Test::NoWarnings and parts of the core testing.\n\t See http://blogs.perl.org/users/rurban/2012/01/what-to-avoid-in-begin-blocks.html\n\tAdd B::COP::stashflags workaround, >5.15.4 threaded.\n\tAdd fix for lost PL_regex_pad, 5.15 threaded.\n", "style" => "*", "text" => "C: save stashes optionally with -fstash, but only values which are also stashes to avoid a second walker besides savecv, and thus do not walk into unneeded territory; B::STASHGV (46, issue 79) New -fno-stash with -O2 to omit stashes which are rarely needed. Fixed vulnerability to oCERT-2011-003 style DOS attacks. Do not pre-compute hashes for hv_store(), use fresh random hash seed. But shared_hek() has a limited API which does not allow this. UNIVERSAL methods were not correctly stored, which led to method not found at run-time errors. New debug option -Dr \"runtime\" to add debug output to the .c code (as in CC) New option -Upackage to skip package, mark_skip() Re-implemented sharepvn via share_hek() and SvLEN=0 (issue 71), Special FAKE+READONLY handling: LEN = 0 if pv_copy_on_grow or shared_hek. Fixed !SvIsCOW_shared_hash + FAKE+READONLY conflict (test 13, issue 82). Shared COW hashkeys which are optimized to static const strings may not be marked as IsCOW (remove SVf_FAKE). Re-implemented CORE share_hek with hash=0 Otherwise shared HEK's (post-5.10) come up with duplicate entries for the same keys; one compile-time created and one run-time created with a different random hash seed. E.g. observed by such warnings \"Prototype mismatch: sub bytes::length (_) vs (_)\" Added Internals::hv_clear_placeholders XS name exception, similar to version:: (issue 83) Store CV prototypes, issue 81 and issue 84 for empty () vs NULL prototypes. Fixed 5.15.2 hang at hfree_next_entry (issue 78) Defer writing of READONLY hash keys since 5.15 (issue 88) Enable -fcog copy-on-grow with static strings for >= 5.10 Improved Errno vs. *main::! and Tie::Hash::NamedCapture vs *main::+ / - logic (issue 90) Updated version XS methods, default to noop for (... Strip version object overload from XS packages (issue 91), XS needs plain PVs Do not initialize CONSTSUB XS methods twice, boot does it for us Pass proper cv to XS boot_\$name, fixes boot of Tie::Hash::NamedCapture (issue 86) Fixed share_hek strings with -O1 (test 13) Fixed bootstrapping the XS/core part of attributes, thereby fixed threads tests 41-43. Fixed most 5.8.[45] problems by ignoring aelemfast SPECIAL pads. Fixed magic -> PTR when SV (>5.6) Moved -fsave-sig-hash from -O3 to -O0. You need -fno-save-sig-hash to disable it. Removed -fno-stash from -O2, -fno-stash is now the default. You need -fstash to add stashes. It caused not understood problems. Fixed saving %SIG signals and more -2 SV magic (issue 92) Adjusted IO logic, was erronously skipped (issue 59) inc_cleanup: save only those %INC keys which are stored. Save ext/mro only if the ext mro methods were loaded, and utf8_heavy.pl similarly. Force loading of -u arguments to avoid runtime loading. Call boot_core_PerlIO, mro, UNIVERSAL and xsutils. Warn on unsavable IO objects from BEGIN blocks. Fixed >&STD... handles (issue 93), i.e. Test::Builder, Test::NoWarnings and parts of the core testing. See http://blogs.perl.org/users/rurban/2012/01/what-to-avoid-in-begin-blocks.html Add B::COP::stashflags workaround, >5.15.4 threaded. Add fix for lost PL_regex_pad, 5.15 threaded." }, { "line" => 252, "raw" => "\t* CC (1.12): allow overriding of -f B::C flags.\n\tSkip internal packages with mark_skip (fixes cc_o2 tests).\n\tMove -ftype-attr from -O2 to -O1.\n\tAlways define int, double and string package versions, parallel to types.\n", "style" => "*", "text" => "CC (1.12): allow overriding of -f B::C flags. Skip internal packages with mark_skip (fixes cc_o2 tests). Move -ftype-attr from -O2 to -O1. Always define int, double and string package versions, parallel to types." }, { "line" => 256, "raw" => "\t* Bytecode (1.12): detect Tie::Hash::NamedCapture (issue 90) -\n\t works only partially.\n\tFixed >&STD... handles (issue 93)\n\tSupport -d debugging without -MOd\n", "style" => "*", "text" => "Bytecode (1.12): detect Tie::Hash::NamedCapture (issue 90) - works only partially. Fixed >&STD... handles (issue 93) Support -d debugging without -MOd" }, { "line" => 260, "raw" => "\t* Stackobj (1.00_03): add UL or L to overlong integers. doubles\n\t not yet\n", "style" => "*", "text" => "Stackobj (1.00_03): add UL or L to overlong integers. doubles not yet" }, { "line" => 262, "raw" => "\t* perlcc (2.13): added options -O[1-4], -u, -U, --Wc, --Wl, --version,\n\tKeep cfile if output is empty.\n\tChange -o output C file directory and name with -S or -c:\n\t Before in current directory, now in -o directory.\n\t Before with input name, now with -o name.\n\tAdd -rpath for all --staticxs libs if supported.\n\tChanged verbosity levels and output wording.\n", "style" => "*", "text" => "perlcc (2.13): added options -O[1-4], -u, -U, --Wc, --Wl, --version, Keep cfile if output is empty. Change -o output C file directory and name with -S or -c: Before in current directory, now in -o directory. Before with input name, now with -o name. Add -rpath for all --staticxs libs if supported. Changed verbosity levels and output wording." }, { "line" => 269, "raw" => "\t* bytecode.pl: added xio_ifp\n", "style" => "*", "text" => "bytecode.pl: added xio_ifp" }, { "line" => 270, "raw" => "\t* bytecode.h: added BSET_xio_ifp\n", "style" => "*", "text" => "bytecode.h: added BSET_xio_ifp" }, { "line" => 271, "raw" => "\t* META.yml: remove from MANIFEST and repo, let make dist\n\t autogenerate it.\n", "style" => "*", "text" => "META.yml: remove from MANIFEST and repo, let make dist autogenerate it." }, { "line" => 273, "raw" => "\t* t/test.pl, t/TESTS: changed test 46 (Exporter:: and other stashes in\n\t %main:: stash) to cover issue 79.\n\t use Exporter; print q(ok) if %main::Exporter::\n", "style" => "*", "text" => "t/test.pl, t/TESTS: changed test 46 (Exporter:: and other stashes in %main:: stash) to cover issue 79. use Exporter; print q(ok) if %main::Exporter::" }, { "line" => 276, "raw" => "\t* t/test.pl: use general comments with optional TODO. Before only TODO\n", "style" => "*", "text" => "t/test.pl: use general comments with optional TODO. Before only TODO" }, { "line" => 277, "raw" => "\t* t/perldoc.t: fixed for 5.8 with manually adding -uFile::Spec -uIO::Handle\n", "style" => "*", "text" => "t/perldoc.t: fixed for 5.8 with manually adding -uFile::Spec -uIO::Handle" }, { "line" => 278, "raw" => "\t* t/issue59.t, t/issue81.t, t/issue90.t, t/issue93.t: added\n\n", "style" => "*", "text" => "t/issue59.t, t/issue81.t, t/issue90.t, t/issue93.t: added" } ], "line" => 186, "note" => "rurban", "raw" => "1.37\t2012-01-24 rurban\n", "raw_date" => "2012-01-24", "version" => "1.37" }, { "date" => "2011-10-19", "entries" => [ { "line" => 281, "raw" => "\tlexical warnings and more 5.15 fixes\n", "style" => "", "text" => "lexical warnings and more 5.15 fixes" }, { "line" => 282, "raw" => "\t* C: new B::LEXWARN, fixed representation of lexical warnings which was broken\n\t since 8e01d9a6 5.8.9/5.9.4 (issue 76)\n\tAdded section free, use it for lexical cop_warnings (const STRLEN*)\n\t (TODO: static PV, HEK + COPs)\n\tWorkaround for utf8::SWASHNEW adjusted to 5.15\n\tPAD* sv flags changed in 5.15.3\n\tXSLoader API changed (HEK in caller i.e.): had to add a\n\t XSLoader::load_file for [perl #101336] >= 5.15.3,\n\t also use mXPUSH for sp instead of 1-arg targ\n\tSet SvLEN=0 for static PVs to skip sv_clear (problem with 13)\n\tHandle overlarge negative 64bit ints, double not yet.\n\tMove -fwarn-sv from -O2 to -O1\n\tMove -fsave-data from -O3 to -O2\n\tCompile *main::DATA IO handle automatically (__DATA__), just package __DATA__\n\t handles need -fsave-data (15)\n\tDie with 5.8.4/5.8.5 threaded with split->pushre on invalid\n\t pmreplroot. This is a core B::walkoptree bug and can not be\n\t easily fixed.\n\tTests 15 and 103 do not hang anymore, 15 and 29 pass mostly\n", "style" => "*", "text" => "C: new B::LEXWARN, fixed representation of lexical warnings which was broken since 8e01d9a6 5.8.9/5.9.4 (issue 76) Added section free, use it for lexical cop_warnings (const STRLEN*) (TODO: static PV, HEK + COPs) Workaround for utf8::SWASHNEW adjusted to 5.15 PAD* sv flags changed in 5.15.3 XSLoader API changed (HEK in caller i.e.): had to add a XSLoader::load_file for [perl #101336] >= 5.15.3, also use mXPUSH for sp instead of 1-arg targ Set SvLEN=0 for static PVs to skip sv_clear (problem with 13) Handle overlarge negative 64bit ints, double not yet. Move -fwarn-sv from -O2 to -O1 Move -fsave-data from -O3 to -O2 Compile *main::DATA IO handle automatically (__DATA__), just package __DATA__ handles need -fsave-data (15) Die with 5.8.4/5.8.5 threaded with split->pushre on invalid pmreplroot. This is a core B::walkoptree bug and can not be easily fixed. Tests 15 and 103 do not hang anymore, 15 and 29 pass mostly" }, { "line" => 301, "raw" => "\t* C.xs: added -Dts support to runloop to check internal compiler\n\t problems\n", "style" => "*", "text" => "C.xs: added -Dts support to runloop to check internal compiler problems" }, { "line" => 303, "raw" => "\t* t/issue76.t: added\n\n", "style" => "*", "text" => "t/issue76.t: added" } ], "line" => 280, "note" => "rurban", "raw" => "1.36\t2011-10-19 rurban\n", "raw_date" => "2011-10-19", "version" => "1.36" }, { "date" => "2011-10-02", "entries" => [ { "line" => 306, "raw" => "\ttested from 5.6.2 until 5.15.3\n", "style" => "", "text" => "tested from 5.6.2 until 5.15.3" }, { "line" => 307, "raw" => "\t* C: allow debugging without -MOd=C\n\timprove package_pv detection for methods, two more tests.\n\tdetect previously missing packages within the main sourcefile\n\t (50,35,72,73)\n\t-O1 now includes also -fav-init2 and -fppaddr, which are all\n\t stable. -O2 string handling (-fro-inc) still unstable.\n\tadded B::REGEXP::save for \\\$qr (Encode::Alias), issue 71. Still\n\t not fully fixed. Encode::Alias unusable.\n\tfixed empty HV assertions since 5.15, new HV default keys = 7\n\t (3,4,36), but still unsolved 5.15 problem with endless loop in\n\t Perl_hfree_next_entry hv.c:1716 (3,4,36)\n\tworkaround 5.15.2 inability to walk with from %INC deleted\n\t stashes, also workaround adding already deleted DynaLoader.\n\tCORE patch [perl #100138] for new 5.15.2-5.15.3 DynaLoader XS_INTERNAL\n\t problem required (16,29,44,45). Fixed with 5.15.4\n\t 0001-Export-DynaLoader-symbols-from-libperl-again.patch\n\tuse proper PL_envgv for *main::ENV which is inited in perl_parse\n\t (fixes e.g. CGI apps using run-time values, not compile-time)\n", "style" => "*", "text" => "C: allow debugging without -MOd=C improve package_pv detection for methods, two more tests. detect previously missing packages within the main sourcefile (50,35,72,73) -O1 now includes also -fav-init2 and -fppaddr, which are all stable. -O2 string handling (-fro-inc) still unstable. added B::REGEXP::save for \\\$qr (Encode::Alias), issue 71. Still not fully fixed. Encode::Alias unusable. fixed empty HV assertions since 5.15, new HV default keys = 7 (3,4,36), but still unsolved 5.15 problem with endless loop in Perl_hfree_next_entry hv.c:1716 (3,4,36) workaround 5.15.2 inability to walk with from %INC deleted stashes, also workaround adding already deleted DynaLoader. CORE patch [perl #100138] for new 5.15.2-5.15.3 DynaLoader XS_INTERNAL problem required (16,29,44,45). Fixed with 5.15.4 0001-Export-DynaLoader-symbols-from-libperl-again.patch use proper PL_envgv for *main::ENV which is inited in perl_parse (fixes e.g. CGI apps using run-time values, not compile-time)" }, { "line" => 325, "raw" => "\t* CC (1.11): allow debugging without -MOd=CC\n\tTry to jump from last to unknown label, put labels also onto cxstack.\n\tFixed cc_last.t test 4, jump out of anonsub, but not across C\n\t functions yet (this is disallowed in C, need to split).\n", "style" => "*", "text" => "CC (1.11): allow debugging without -MOd=CC Try to jump from last to unknown label, put labels also onto cxstack. Fixed cc_last.t test 4, jump out of anonsub, but not across C functions yet (this is disallowed in C, need to split)." }, { "line" => 329, "raw" => "\t* C.xs: added B::REGEXP::EXTFLAGS (missing from B).\n", "style" => "*", "text" => "C.xs: added B::REGEXP::EXTFLAGS (missing from B)." }, { "line" => 330, "raw" => "\t* perlcc (2.12): omit also inc_version_list dirs from perlcc as\n\t leaving them in could lead to unexpected crashes\n", "style" => "*", "text" => "perlcc (2.12): omit also inc_version_list dirs from perlcc as leaving them in could lead to unexpected crashes" }, { "line" => 332, "raw" => "\t* t/cc_last.t: Fixed test 2. This works compiled and uncompiled,\n\t but the returned errcode is not compared. Skip if so.\n", "style" => "*", "text" => "t/cc_last.t: Fixed test 2. This works compiled and uncompiled, but the returned errcode is not compared. Skip if so." }, { "line" => 334, "raw" => "\t* t/TESTS: add all 5 possible method/sub calls to test 35 =>01234.\n\t See http://blogs.perl.org/users/rurban/2011/06/how-perl-calls-subs-and-methods.html\n", "style" => "*", "text" => "t/TESTS: add all 5 possible method/sub calls to test 35 =>01234. See http://blogs.perl.org/users/rurban/2011/06/how-perl-calls-subs-and-methods.html" }, { "line" => 336, "raw" => "\t* t/stash.t: fixed 5.8.8 stashes (overload, threads, ...)\n", "style" => "*", "text" => "t/stash.t: fixed 5.8.8 stashes (overload, threads, ...)" }, { "line" => 337, "raw" => "\t* t/issue71.t: added, but not fixed yet\n", "style" => "*", "text" => "t/issue71.t: added, but not fixed yet" }, { "line" => 338, "raw" => "\t* ramblings/*.patches: CORE patches added and recommended in README.\n", "style" => "*", "text" => "ramblings/*.patches: CORE patches added and recommended in README." }, { "line" => 339, "raw" => "\t* ramblings/blogs-debugging-article[1-4].pod: added to MANIFEST.\n", "style" => "*", "text" => "ramblings/blogs-debugging-article[1-4].pod: added to MANIFEST." }, { "line" => 340, "raw" => "\t* perlcompile.pod, perloptree.pod: improved.\n", "style" => "*", "text" => "perlcompile.pod, perloptree.pod: improved." }, { "line" => 341, "raw" => "\t* ramblings/yapceu_2010.pod: added.\n\n", "style" => "*", "text" => "ramblings/yapceu_2010.pod: added." } ], "line" => 305, "note" => "rurban", "raw" => "1.35\t2011-10-02 rurban\n", "raw_date" => "2011-10-02", "version" => "1.35" }, { "date" => "2011-06-12", "entries" => [ { "line" => 344, "raw" => "\t* Makefile.PL: fixed make install < 5.13.7\n", "style" => "*", "text" => "Makefile.PL: fixed make install < 5.13.7" }, { "line" => 345, "raw" => "\t* issue24.t, test.pl, bytecode.t: TODO more failing tests from cpantesters\n\n", "style" => "*", "text" => "issue24.t, test.pl, bytecode.t: TODO more failing tests from cpantesters" } ], "line" => 343, "note" => "rurban", "raw" => "1.34\t2011-06-12 rurban\n", "raw_date" => "2011-06-12", "version" => "1.34" }, { "date" => "2011-06-12", "entries" => [ { "line" => 348, "raw" => "\t* Makefile.PL: fixed make install > 5.13.7\n", "style" => "*", "text" => "Makefile.PL: fixed make install > 5.13.7" }, { "line" => 349, "raw" => "\t* test.pl, bytecode.t: TODO more failing tests from cpantesters\n", "style" => "*", "text" => "test.pl, bytecode.t: TODO more failing tests from cpantesters" }, { "line" => 350, "raw" => "\t* stash.t: fixed freebsd test 4\n\n", "style" => "*", "text" => "stash.t: fixed freebsd test 4" } ], "line" => 347, "note" => "rurban", "raw" => "1.33\t2011-06-12 rurban\n", "raw_date" => "2011-06-12", "version" => "1.33" }, { "date" => "2011-06-10", "entries" => [ { "line" => 353, "raw" => " more darwin and package scan fixes, Bytecode -i includeall.\n", "style" => "", "text" => "more darwin and package scan fixes, Bytecode -i includeall." }, { "line" => 354, "raw" => "\tall top100 modules can be now be compiled on most perls\n\n", "style" => "", "text" => "all top100 modules can be now be compiled on most perls" }, { "line" => 356, "raw" => "\t* Bytecode.pm (1.11): fixed const xsub xsubany ptr >=5.10 <5.14 (27).\n\tsave_cq => save_begin+save_init_end: moved push_begin upfront for the same\n\t init order (44).\n\tadd CVf_CVGV_RC flag (refcount) on CV with no backref magic, e.g. END (48)\n\tadded option -i includeall which adds no BEGIN require ops, but adds\n\t all included symbols.\n\tbetter BEGIN block \@INC manipulation detection (33)\n\tprint newsvx flags if -S or Comment\n\tprint hex IV < 8 as int with -S\n", "style" => "*", "text" => "Bytecode.pm (1.11): fixed const xsub xsubany ptr >=5.10 <5.14 (27). save_cq => save_begin+save_init_end: moved push_begin upfront for the same init order (44). add CVf_CVGV_RC flag (refcount) on CV with no backref magic, e.g. END (48) added option -i includeall which adds no BEGIN require ops, but adds all included symbols. better BEGIN block \@INC manipulation detection (33) print newsvx flags if -S or Comment print hex IV < 8 as int with -S" }, { "line" => 365, "raw" => "\t* C.pm (1.32): check PERL_TRACK_MEMPOOL for AV malloc (25).\n\tfixed init chunk splitting for CV and -fav-init2, if >10000 lines.\n\tfixed overlarge AvFILL=3 of endav. Undefined subroutine &main:: (48)\n\tfixed shared GPs on typeglob assignment. do not gp_free shared GPs,\n\t just set them once.\n\tadded try_isa before try_autoload. use mro::get_linear_isa instead of \@ISA\n\tmark_package force: detect and fix already discarded packages which\n\t are brought back in directly or by someone else's \@ISA. (e.g. Sub::Name\n\t needs DynaLoader::dl_load_flags)\n\timproved method_named package search, still not exact though (LWP)\n\tadd manually compiled packages to %INC to avoid a runtime require\n\tspecial case Config detection, AUTOLOAD = launcher, included by Dynaloader\n\tadded -Ds to print all sub names\n\tdo not compile any B::C subs, esp. our %SIG handler\n\tadd our own Internals::V as it is not exported by libperl\n\tinc the REFCNT of stashes (Path::Class)\n", "style" => "*", "text" => "C.pm (1.32): check PERL_TRACK_MEMPOOL for AV malloc (25). fixed init chunk splitting for CV and -fav-init2, if >10000 lines. fixed overlarge AvFILL=3 of endav. Undefined subroutine &main:: (48) fixed shared GPs on typeglob assignment. do not gp_free shared GPs, just set them once. added try_isa before try_autoload. use mro::get_linear_isa instead of \@ISA mark_package force: detect and fix already discarded packages which are brought back in directly or by someone else's \@ISA. (e.g. Sub::Name needs DynaLoader::dl_load_flags) improved method_named package search, still not exact though (LWP) add manually compiled packages to %INC to avoid a runtime require special case Config detection, AUTOLOAD = launcher, included by Dynaloader added -Ds to print all sub names do not compile any B::C subs, esp. our %SIG handler add our own Internals::V as it is not exported by libperl inc the REFCNT of stashes (Path::Class)" }, { "line" => 381, "raw" => "\t* Assembler.pm (1.10): archflag bit 2 for MULTPLICITY\n", "style" => "*", "text" => "Assembler.pm (1.10): archflag bit 2 for MULTPLICITY" }, { "line" => 382, "raw" => "\t* Disassembler.pm (1.10): archflag bit 2 for MULTPLICITY\n\tuse longsize resp. ivsize from .plc not from perl\n\tprint newsvx flags\n\tprint hex IV < 8 as int\n", "style" => "*", "text" => "Disassembler.pm (1.10): archflag bit 2 for MULTPLICITY use longsize resp. ivsize from .plc not from perl print newsvx flags print hex IV < 8 as int" }, { "line" => 386, "raw" => "\t* ByteLoader (0.08): support archflag 2 MULTPLICITY,\n\t[perl #86186] force binary IO for __DATA__ handles, which changed\n\t in core with 5.14\n", "style" => "*", "text" => "ByteLoader (0.08): support archflag 2 MULTPLICITY, [perl #86186] force binary IO for __DATA__ handles, which changed in core with 5.14" }, { "line" => 389, "raw" => "\t* bytecode.pl: support m for MULTIPLICITY (yet unused)\n", "style" => "*", "text" => "bytecode.pl: support m for MULTIPLICITY (yet unused)" }, { "line" => 390, "raw" => "\t* Makefile.PL: move cc_runtime.h installation to make install step\n\t (sudo). Tested ok on darwin gcc, does use -I. internally.\n", "style" => "*", "text" => "Makefile.PL: move cc_runtime.h installation to make install step (sudo). Tested ok on darwin gcc, does use -I. internally." }, { "line" => 392, "raw" => "\t* cc_runtime.h: renamed from cc_runtime514.h\n", "style" => "*", "text" => "cc_runtime.h: renamed from cc_runtime514.h" }, { "line" => 393, "raw" => "\t* cc_harness: fixed darwin coredir\n", "style" => "*", "text" => "cc_harness: fixed darwin coredir" }, { "line" => 394, "raw" => "\t* perlcc (2.11): fixed darwin coredir.\n\tomit darwin linking to dynamic .bundle - generate .a via libtool\n", "style" => "*", "text" => "perlcc (2.11): fixed darwin coredir. omit darwin linking to dynamic .bundle - generate .a via libtool" }, { "line" => 396, "raw" => "\t* TESTS: removed END block from test 28, only test run-time require (fixed 28)\n\tadded 48 for previous test 28 END block lexvar del_backref failure\n\tadded 49 for m//i blowup and -fno-fold testing\n\tadded 50 empty \@ISA issue 64\n", "style" => "*", "text" => "TESTS: removed END block from test 28, only test run-time require (fixed 28) added 48 for previous test 28 END block lexvar del_backref failure added 49 for m//i blowup and -fno-fold testing added 50 empty \@ISA issue 64" }, { "line" => 400, "raw" => "\t* assembler.t: fix for hex->int IV roundtrips\n\n", "style" => "*", "text" => "assembler.t: fix for hex->int IV roundtrips" } ], "line" => 352, "note" => "rurban", "raw" => "1.32\t2011-06-10 rurban\n", "raw_date" => "2011-06-10", "version" => "1.32" }, { "date" => "2011-03-21", "entries" => [ { "line" => 403, "raw" => "\tmultiplicity support and more darwin fixes\n\n", "style" => "", "text" => "multiplicity support and more darwin fixes" }, { "line" => 405, "raw" => "\t* C.pm (1.31): replace \$ITHREADS by \$MULTI (darwin),\n\tmy_perl_destruct: disable CopFILE_set NULL and CopSTASHPV_set NULL\n on \$MULTI, PL_sv_yes|no special on MULTI\n", "style" => "*", "text" => "C.pm (1.31): replace \$ITHREADS by \$MULTI (darwin), my_perl_destruct: disable CopFILE_set NULL and CopSTASHPV_set NULL on \$MULTI, PL_sv_yes|no special on MULTI" }, { "line" => 408, "raw" => "\t* CC.pm (1.10): replace \$ITHREADS by \$MULTI (darwin)\n", "style" => "*", "text" => "CC.pm (1.10): replace \$ITHREADS by \$MULTI (darwin)" }, { "line" => 409, "raw" => "\t* t/test.pl, issue34.t, issue35.t: -ofile => -o file (darwin cc)\n", "style" => "*", "text" => "t/test.pl, issue34.t, issue35.t: -ofile => -o file (darwin cc)" }, { "line" => 410, "raw" => " * cc_harness: -Wl,--warn-once invalid on darwin gcc\n", "style" => "*", "text" => "cc_harness: -Wl,--warn-once invalid on darwin gcc" }, { "line" => 411, "raw" => " * log.modules: encode MULTI without threads as -m\n\n", "style" => "*", "text" => "log.modules: encode MULTI without threads as -m" } ], "line" => 402, "note" => "rurban", "raw" => "1.31\t2011-03-21 rurban\n", "raw_date" => "2011-03-21", "version" => "1.31" }, { "date" => "2011-03-06", "entries" => [ { "line" => 414, "raw" => "\tdbmopen, cc_runtime.h, perlcc, --staticxs\n\n", "style" => "", "text" => "dbmopen, cc_runtime.h, perlcc, --staticxs" }, { "line" => 416, "raw" => "\t* C.pm (1.30): support dbmopen, fixes issue 24.\n\tfixed xpvmgsect (was xpvsect) !-fcog < 5.10 (YAML, test 41,42,43).\n\tfixed m//i since 5.13.10: swash_init(\"utf8::Cased\").\n\tfixed method_common package_pv detection in most cases.\n\t still two cases open, without tests. PADOP GV NULL 0x20000, GV RV 0x40802.\n\tfixed method_named with >= 1 arg, checking for const PV package_pv (test 35)\n\tsupport GvCV_set and GvGP_set introduced with 5.13.10. [RT#65630]\n\timplement -staticxs for perlcc --staticxs\n\t either link to found static libs or link to shared lib with\n\t fixed LD_LIBRARY_PATH/PATH (nyi in C, just perlcc).\n\toptimize -fav-init use_av_undef_speedup &PL_sv_undef initialization (again).\n\treserved -mPackagename (NYI)\n\tadded verbose(),module() for CC.\n\timplement outline of -m module, name detection missing.\n\tadded -fno-fold recommended since 5.13.9 to omit the huge utf8 tables.\n\tadded -fno-warnings, recommended since 5.13.5.\n\tadded special workaround for Scalar::Util bootstrapping which did not detect\n\t List::Util, since it is not in its ISA, only required. need a better scan.\n\t fixes test 44.\n\tinit XS within Od.\n\tprevent autoloaded STDERR printing on non-debugging perls (e.g. \"Storablelogcarp\").\n", "style" => "*", "text" => "C.pm (1.30): support dbmopen, fixes issue 24. fixed xpvmgsect (was xpvsect) !-fcog < 5.10 (YAML, test 41,42,43). fixed m//i since 5.13.10: swash_init(\"utf8::Cased\"). fixed method_common package_pv detection in most cases. still two cases open, without tests. PADOP GV NULL 0x20000, GV RV 0x40802. fixed method_named with >= 1 arg, checking for const PV package_pv (test 35) support GvCV_set and GvGP_set introduced with 5.13.10. [RT#65630] implement -staticxs for perlcc --staticxs either link to found static libs or link to shared lib with fixed LD_LIBRARY_PATH/PATH (nyi in C, just perlcc). optimize -fav-init use_av_undef_speedup &PL_sv_undef initialization (again). reserved -mPackagename (NYI) added verbose(),module() for CC. implement outline of -m module, name detection missing. added -fno-fold recommended since 5.13.9 to omit the huge utf8 tables. added -fno-warnings, recommended since 5.13.5. added special workaround for Scalar::Util bootstrapping which did not detect List::Util, since it is not in its ISA, only required. need a better scan. fixes test 44. init XS within Od. prevent autoloaded STDERR printing on non-debugging perls (e.g. \"Storablelogcarp\")." }, { "line" => 437, "raw" => "\t* CC.pm (1.09): support dbmopen, issue 24 failing due to XSLoader (test 45)\n\tno pp_name shortnames in embed.h since 5.13.9, use Perl_pp_name(aTHX).\n\timplemented dorassign, fixes issue 45.\n\tfixed XSLoader detection, moved use_xsloader to save_unused_subs()\n\tskip duplicate cc(pp_sub_*) functions (freebsd 45)\n\tadded missing END block code (test 28).\n\tadded B::C::verbose on -v\n\t fixed B::C::verbose crash by adding B::FAKEOP::fake_ppaddr.\n\t fixed compile_stats\n\trenamed -n module_name to init_name.\n\tcheck and set -f options from C also.\n\timplement outline of -m module, name detection missing.\n\tadded option -fno-name-magic.\n\tadded experimental option -ftype-attr.\n\tadded TYPES pod section.\n\tadded pod for some funcs: load_pad, cc_queue, label.\n\toption -strict only used with DEBUGGING perls.\n\tbe less chatty with compiling bblocks.\n\tlight layout cleanup of generated code sections.\n\tadded Vishal Bhatia to AUTHORS.\n", "style" => "*", "text" => "CC.pm (1.09): support dbmopen, issue 24 failing due to XSLoader (test 45) no pp_name shortnames in embed.h since 5.13.9, use Perl_pp_name(aTHX). implemented dorassign, fixes issue 45. fixed XSLoader detection, moved use_xsloader to save_unused_subs() skip duplicate cc(pp_sub_*) functions (freebsd 45) added missing END block code (test 28). added B::C::verbose on -v fixed B::C::verbose crash by adding B::FAKEOP::fake_ppaddr. fixed compile_stats renamed -n module_name to init_name. check and set -f options from C also. implement outline of -m module, name detection missing. added option -fno-name-magic. added experimental option -ftype-attr. added TYPES pod section. added pod for some funcs: load_pad, cc_queue, label. option -strict only used with DEBUGGING perls. be less chatty with compiling bblocks. light layout cleanup of generated code sections. added Vishal Bhatia to AUTHORS." }, { "line" => 457, "raw" => "\t* Bytecode.pm (1.10): support dbmopen, fixes issue 24.\n\tre-added -m, compile as module to .pmc\n\tstore AV elems for non-tied AV->MAGICAL >5.6 (i.e. \@ISA, ...) (new test 47).\n\t-DA: limcheck PV.\n\tverbosity: added nice1 (condense elements).\n\t name SV indices also.\n", "style" => "*", "text" => "Bytecode.pm (1.10): support dbmopen, fixes issue 24. re-added -m, compile as module to .pmc store AV elems for non-tied AV->MAGICAL >5.6 (i.e. \@ISA, ...) (new test 47). -DA: limcheck PV. verbosity: added nice1 (condense elements). name SV indices also." }, { "line" => 463, "raw" => "\t* Byteloader: support GvCV_set introduced with 5.13.10 [RT#65630]\n", "style" => "*", "text" => "Byteloader: support GvCV_set introduced with 5.13.10 [RT#65630]" }, { "line" => 464, "raw" => "\t* perlcc (2.10): fixed -B -r, -B output and run bytecode.\n\timplement --staticxs to workaround DynaLoader problems. use it in t/modules.t\n\t add sopath to PATH on -r. Without -r the sofile should be symlinked so that the\n\t process can find it.\n\timplement --shared and --static, --shared fails on strawberry due to core problems.\n\timplemented getopts bundling: -ScO -e'bla' -v4 -oa is now possible.\n\tdisabled some old single-minus switches: -testsuite, -time, -log, ...\n\t requires now double-minus --testsuite, --time, --log, ...\n\t kept legacy handling only for -Wb=.. and -stash.\n\tfixed -B -e'oneliner'.\n\tfixed -B \@ARGV, no duplication of \@ARGV, c_argv.t 3.\n\tre-added -m|--sharedlib for Bytecode and C (NYI).\n\tprint C and CC filtered compiler output.\n\t-v5 adds -v to the compiler options.\n\t-v6 adds -Dfull to the compiler options.\n\tsupport -Wb= for -B.\n\tfixed -Br for 5.6: add -MByteLoader.\n", "style" => "*", "text" => "perlcc (2.10): fixed -B -r, -B output and run bytecode. implement --staticxs to workaround DynaLoader problems. use it in t/modules.t add sopath to PATH on -r. Without -r the sofile should be symlinked so that the process can find it. implement --shared and --static, --shared fails on strawberry due to core problems. implemented getopts bundling: -ScO -e'bla' -v4 -oa is now possible. disabled some old single-minus switches: -testsuite, -time, -log, ... requires now double-minus --testsuite, --time, --log, ... kept legacy handling only for -Wb=.. and -stash. fixed -B -e'oneliner'. fixed -B \@ARGV, no duplication of \@ARGV, c_argv.t 3. re-added -m|--sharedlib for Bytecode and C (NYI). print C and CC filtered compiler output. -v5 adds -v to the compiler options. -v6 adds -Dfull to the compiler options. support -Wb= for -B. fixed -Br for 5.6: add -MByteLoader." }, { "line" => 481, "raw" => "\t* Stash (1.01): add option xs to print xs modules with -x prefix.\n\tusable via -MO=Stash also.\n\tnew option -D for debugging.\n\tomit PerlIO::Layer.\n\tadded pod\n", "style" => "*", "text" => "Stash (1.01): add option xs to print xs modules with -x prefix. usable via -MO=Stash also. new option -D for debugging. omit PerlIO::Layer. added pod" }, { "line" => 486, "raw" => "\t* Disassembler (1.08): 5.6: fix ldop comments.\n\tadd op_type names, add \@svnames, add indices, add ldspecsvx type.\n", "style" => "*", "text" => "Disassembler (1.08): 5.6: fix ldop comments. add op_type names, add \@svnames, add indices, add ldspecsvx type." }, { "line" => 488, "raw" => "\t* Assembler (0.10): print more flags (as hex) and indices.\n\tbetter limcheck diagnostics (op,sv,pv).\n", "style" => "*", "text" => "Assembler (0.10): print more flags (as hex) and indices. better limcheck diagnostics (op,sv,pv)." }, { "line" => 490, "raw" => "\t* cc_runtime514.h: removed from CORE with 5.13.9. [RT#65628]\n\t If so, cp it back. You might need sudo cp. (unchecked)\n\t Renamed not to pollute tests with older perls.\n\t Expanded PERL_MAGIC_taint 't' for 5.6.\n", "style" => "*", "text" => "cc_runtime514.h: removed from CORE with 5.13.9. [RT#65628] If so, cp it back. You might need sudo cp. (unchecked) Renamed not to pollute tests with older perls. Expanded PERL_MAGIC_taint 't' for 5.6." }, { "line" => 494, "raw" => "\t* C.xs: added experimental method_cv for the hash-only case, untested.\n", "style" => "*", "text" => "C.xs: added experimental method_cv for the hash-only case, untested." }, { "line" => 495, "raw" => "\t* t/modules.t: try --staticxs first, try crosscheck without perlcc.\n", "style" => "*", "text" => "t/modules.t: try --staticxs first, try crosscheck without perlcc." }, { "line" => 496, "raw" => "\t* t/issue24.t: added.\n", "style" => "*", "text" => "t/issue24.t: added." }, { "line" => 497, "raw" => "\t* t/issue45.t: fixed and added 3 more tests.\n", "style" => "*", "text" => "t/issue45.t: fixed and added 3 more tests." }, { "line" => 498, "raw" => "\t* t/e_perlcc.t: added to test the new option handling.\n", "style" => "*", "text" => "t/e_perlcc.t: added to test the new option handling." }, { "line" => 499, "raw" => "\t* t/testc.sh, t/TESTS: fixed wrong test 39 for 5.8, added 47, 104 (reset), 105 (type-attr).\n", "style" => "*", "text" => "t/testc.sh, t/TESTS: fixed wrong test 39 for 5.8, added 47, 104 (reset), 105 (type-attr)." }, { "line" => 500, "raw" => "\t* t/testplc.sh: added 47.\n", "style" => "*", "text" => "t/testplc.sh: added 47." }, { "line" => 501, "raw" => "\t* t/stash.t: rewritten. allow 5.6, use Test::More, more stable\n", "style" => "*", "text" => "t/stash.t: rewritten. allow 5.6, use Test::More, more stable" }, { "line" => 502, "raw" => "\t* t/todomod.pl: added. interactive tool to check log.modules reports and fix TODOs\n", "style" => "*", "text" => "t/todomod.pl: added. interactive tool to check log.modules reports and fix TODOs" }, { "line" => 503, "raw" => "\t* status_upd: recommend and fix ./status_upd -f -q -d\n\t -q -d prints only the actual tests\n", "style" => "*", "text" => "status_upd: recommend and fix ./status_upd -f -q -d -q -d prints only the actual tests" }, { "line" => 505, "raw" => "\t* Changes: added more missing history ca. 1997-2000.\n\n", "style" => "*", "text" => "Changes: added more missing history ca. 1997-2000." } ], "line" => 413, "note" => "rurban", "raw" => "1.30\t2011-03-06 rurban\n", "raw_date" => "2011-03-06", "version" => "1.30" }, { "date" => "2011-01-08", "entries" => [ { "line" => 508, "raw" => "\timprove dl_init\n\n", "style" => "", "text" => "improve dl_init" }, { "line" => 510, "raw" => "\t* C.pm (1.29):\n\tuse DynaLoader::bootstrap_inherit, fixes dl_init when the module has no ISA\n\t DynaLoader. eg. Test::Harness with Time::HiRes\n\timproved CopFILE detection as context for dl_init (test 29)\n\tfix cop_warning cast warnings\n\tprint debug messages for beginav and endav\n\tprotect against undefined strings, and % in regex\n\tprotect against undefined gvcv->GV->EGV (Spiffy)\n\tlatefree r-magic regex strings >5.10, fixes a couple of modules\n", "style" => "*", "text" => "C.pm (1.29): use DynaLoader::bootstrap_inherit, fixes dl_init when the module has no ISA DynaLoader. eg. Test::Harness with Time::HiRes improved CopFILE detection as context for dl_init (test 29) fix cop_warning cast warnings print debug messages for beginav and endav protect against undefined strings, and % in regex protect against undefined gvcv->GV->EGV (Spiffy) latefree r-magic regex strings >5.10, fixes a couple of modules" }, { "line" => 519, "raw" => "\t* t/modules.pm: subset use 10 not 11 modules. run tests with -O1\n\tless TODO tests, esp for 5.13\n", "style" => "*", "text" => "t/modules.pm: subset use 10 not 11 modules. run tests with -O1 less TODO tests, esp for 5.13" }, { "line" => 521, "raw" => "\t* t/modules.t: fixed binary detection on non-windows (a.out)\n", "style" => "*", "text" => "t/modules.t: fixed binary detection on non-windows (a.out)" }, { "line" => 522, "raw" => "\t* ByteLoader: fixed -Dt for GV\n\n", "style" => "*", "text" => "ByteLoader: fixed -Dt for GV" } ], "line" => 507, "note" => "rurban", "raw" => "1.29\t2011-01-08 rurban\n", "raw_date" => "2011-01-08", "version" => "1.29" }, { "date" => "2010-12-31", "entries" => [ { "line" => 525, "raw" => "\tfixed XSLoader, pmflags, CV and most named methods for 5.14\n\n", "style" => "", "text" => "fixed XSLoader, pmflags, CV and most named methods for 5.14" }, { "line" => 527, "raw" => "\t* Bytecode.pm (1.09):\n\tfixed cv_gv and push_begin del_backref problem (27, ...) > 5.13\n\tspecial cased op_pmflags: U32 needed since 5.13 (PMf_BASE_SHIFT)\n\t Fixes op_pmflags since 5.12 ((3..4,27..29,31,33), esp. pp_subst\n\tstart for Windows 5.12 cop_store_label workaround: Labels disabled for now.\n\t Failed to include CORE hv.c: too large.\n\t mingw\t5.12 compiles now again and passes all but 21,33,42..44\n\tFixed entrytry with Bytecode >= 5.12:\n\t ck_eval upgrades the UNOP entertry to a LOGOP, but B gets us just a\n\t B::OP (BASEOP)\n\tadd BEGIN { push|unshift \@INC } parts of blocks (test 33)\n", "style" => "*", "text" => "Bytecode.pm (1.09): fixed cv_gv and push_begin del_backref problem (27, ...) > 5.13 special cased op_pmflags: U32 needed since 5.13 (PMf_BASE_SHIFT) Fixes op_pmflags since 5.12 ((3..4,27..29,31,33), esp. pp_subst start for Windows 5.12 cop_store_label workaround: Labels disabled for now. Failed to include CORE hv.c: too large. mingw\t5.12 compiles now again and passes all but 21,33,42..44 Fixed entrytry with Bytecode >= 5.12: ck_eval upgrades the UNOP entertry to a LOGOP, but B gets us just a B::OP (BASEOP) add BEGIN { push|unshift \@INC } parts of blocks (test 33)" }, { "line" => 538, "raw" => "\t* Byteloader (0.07):\n\tSupport new CvSTASH_set.\n\tBasic op_pmflags U16/U32 support. No version conversion yet.\n\tBSET_gv_fetchpvn_flags: new for empty constant prototypes (fails on 64bit only)\n", "style" => "*", "text" => "Byteloader (0.07): Support new CvSTASH_set. Basic op_pmflags U16/U32 support. No version conversion yet. BSET_gv_fetchpvn_flags: new for empty constant prototypes (fails on 64bit only)" }, { "line" => 542, "raw" => "\t* C.pm: add -fno-destruct (with -O3) with a minimal perl_destruct,\n\t (re-enables -fcog >= 5.10),\n\tadd -fro-inc (with -O2) readonly INC and curpad strings,\n\tadd -fconst-strings (with -O3) const readonly strings\n\t and const more other fixed strings,\n\tdo not boot static core packages (utf8, re, ...),\n\tfixed -O2/-fav-init2: store at wrong avchunk index,\n\tinitialise CopFILE and CopSTASHPV static with ITHREADS\n\timproved 5.13 method_named package detection (first and pmreplroot),\n\t in endav still failing (Test::Deep)\n\tfixed overwritten CvSTART for 5.13.x\n\tdo not cog/const nullify vars in END blocks\n\tdisallow CONST->op_first with CONST_BARE. fixes ExtUtils::Install\n\tbetter XSLoader::load detection: aliases and defined in END blocks\n\tsave XSLoader::load GV (test 46 and modules)\n\tbootstrap also static core packages\n\tadd ptr_undef instead of NULL initialization non-threaded\n\tfix many cast warnings\n\tfix AV fill +1\n\trequired to run C.xs runloop to find PMOPs for QRs\n\tFixed entrytry >= 5.12 as in Bytecode:\n\t ck_eval upgrades the UNOP entertry to a LOGOP,\n\t but B gets us just a B::OP (BASEOP)\n\tFixed XSLoader, loading dynamic modules works now (test 45),\n\t had to set the .pm path in the calling context.\n", "style" => "*", "text" => "C.pm: add -fno-destruct (with -O3) with a minimal perl_destruct, (re-enables -fcog >= 5.10), add -fro-inc (with -O2) readonly INC and curpad strings, add -fconst-strings (with -O3) const readonly strings and const more other fixed strings, do not boot static core packages (utf8, re, ...), fixed -O2/-fav-init2: store at wrong avchunk index, initialise CopFILE and CopSTASHPV static with ITHREADS improved 5.13 method_named package detection (first and pmreplroot), in endav still failing (Test::Deep) fixed overwritten CvSTART for 5.13.x do not cog/const nullify vars in END blocks disallow CONST->op_first with CONST_BARE. fixes ExtUtils::Install better XSLoader::load detection: aliases and defined in END blocks save XSLoader::load GV (test 46 and modules) bootstrap also static core packages add ptr_undef instead of NULL initialization non-threaded fix many cast warnings fix AV fill +1 required to run C.xs runloop to find PMOPs for QRs Fixed entrytry >= 5.12 as in Bytecode: ck_eval upgrades the UNOP entertry to a LOGOP, but B gets us just a B::OP (BASEOP) Fixed XSLoader, loading dynamic modules works now (test 45), had to set the .pm path in the calling context." }, { "line" => 567, "raw" => "\t* CC.pm (1.08): many fixes\n\tuse new B::C optimizations, new -DF\n\tfixed issue 31 also run C.xs runloop to find PMOPs for QRs,\n\tfixed issue 35 same variable name in different scope (Heinz Knutzen),\n\tfixed issue 36 panic: leaveloop, no cxstack (Heinz Knutzen)\n\tfixed issue 37 orassign (Heinz Knutzen)\n\tfixed issue 38 on and/or return value not just no/yes (Heinz Knutzen)\n\tfixed issue 39 Bizarre copy of ARRAY in leavesub (Heinz Knutzen)\n\tfixed issue 42 remove enter/leave from %no_stack (Heinz Knutzen)\n\tfixed issue 44 aelemfast missing for lexicals (Heinz Knutzen)\n\tfixed issue 47 anonsub in while (Heinz Knutzen)\n\tfixed issue 48 wrong truth value for array assignment in boolean\n\t context (Heinz Knutzen)\n\tfixed issue 49 Can't \"last\" outside a loop block (Heinz Knutzen)\n\tfixed issue 51 errors on nested if statement with test on multiple variables\n\t (Heinz Knutzen)\n\tfixed issue 52 errors on variable with numeric value used in second\n\t expression of 'and' (Heinz Knutzen)\n\tadd labels for alternate ops (e.g. run-time jumps). Not sure yet if the\n\t full alternate subtrees are saved. fixes test 32 (push_label, pop_label),\n\t issue 46. resolve duplicate such labels.\n\thonor \$ENV{'PERLMODS'} (by cPanel)\n", "style" => "*", "text" => "CC.pm (1.08): many fixes use new B::C optimizations, new -DF fixed issue 31 also run C.xs runloop to find PMOPs for QRs, fixed issue 35 same variable name in different scope (Heinz Knutzen), fixed issue 36 panic: leaveloop, no cxstack (Heinz Knutzen) fixed issue 37 orassign (Heinz Knutzen) fixed issue 38 on and/or return value not just no/yes (Heinz Knutzen) fixed issue 39 Bizarre copy of ARRAY in leavesub (Heinz Knutzen) fixed issue 42 remove enter/leave from %no_stack (Heinz Knutzen) fixed issue 44 aelemfast missing for lexicals (Heinz Knutzen) fixed issue 47 anonsub in while (Heinz Knutzen) fixed issue 48 wrong truth value for array assignment in boolean context (Heinz Knutzen) fixed issue 49 Can't \"last\" outside a loop block (Heinz Knutzen) fixed issue 51 errors on nested if statement with test on multiple variables (Heinz Knutzen) fixed issue 52 errors on variable with numeric value used in second expression of 'and' (Heinz Knutzen) add labels for alternate ops (e.g. run-time jumps). Not sure yet if the full alternate subtrees are saved. fixes test 32 (push_label, pop_label), issue 46. resolve duplicate such labels. honor \$ENV{'PERLMODS'} (by cPanel)" }, { "line" => 589, "raw" => "\t* Disassembler.pm (1.07): read over #! + use Bytecode .plc header.\n\tsupport pmflags\n", "style" => "*", "text" => "Disassembler.pm (1.07): read over #! + use Bytecode .plc header. support pmflags" }, { "line" => 591, "raw" => "\t* Assembler.pm (1.09): support pmflags\n", "style" => "*", "text" => "Assembler.pm (1.09): support pmflags" }, { "line" => 592, "raw" => "\t* perlcc (2.09): added cc time for --time.\n\tsame INC as in caller - omit duplicates\n", "style" => "*", "text" => "perlcc (2.09): added cc time for --time. same INC as in caller - omit duplicates" }, { "line" => 594, "raw" => "\t* cc_harness: improve -Bstatic\n", "style" => "*", "text" => "cc_harness: improve -Bstatic" }, { "line" => 595, "raw" => "\t* t/testc.sh: simplified. Fixed various wrong tests\n", "style" => "*", "text" => "t/testc.sh: simplified. Fixed various wrong tests" }, { "line" => 596, "raw" => "\t* t/testm.sh: fixed UAC issues on Win7\n", "style" => "*", "text" => "t/testm.sh: fixed UAC issues on Win7" }, { "line" => 597, "raw" => "\t* t/test.pl: new faster test functions for the new issues\n", "style" => "*", "text" => "t/test.pl: new faster test functions for the new issues" }, { "line" => 598, "raw" => "\t* t/issue27.t: added (Reported by alexchorny, Apr 25, 2010)\n", "style" => "*", "text" => "t/issue27.t: added (Reported by alexchorny, Apr 25, 2010)" }, { "line" => 599, "raw" => "\t* t/issue29.t: added (Reported by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue29.t: added (Reported by Heinz Knutzen)" }, { "line" => 600, "raw" => "\t* t/issue31.t: added (Reported by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue31.t: added (Reported by Heinz Knutzen)" }, { "line" => 601, "raw" => "\t* t/issue34.t: added (Reported by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue34.t: added (Reported by Heinz Knutzen)" }, { "line" => 602, "raw" => "\t* t/issue35.t: added (Reported and partially fixed by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue35.t: added (Reported and partially fixed by Heinz Knutzen)" }, { "line" => 603, "raw" => "\t* t/issue36.t: added (Reported and fixed by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue36.t: added (Reported and fixed by Heinz Knutzen)" }, { "line" => 604, "raw" => "\t* t/issue37.t: added (Reported and fixed by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue37.t: added (Reported and fixed by Heinz Knutzen)" }, { "line" => 605, "raw" => "\t* t/issue38.t: added (Reported and fixed by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue38.t: added (Reported and fixed by Heinz Knutzen)" }, { "line" => 606, "raw" => "\t* t/issue39.t: added (Reported and fixed by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue39.t: added (Reported and fixed by Heinz Knutzen)" }, { "line" => 607, "raw" => "\t* t/issue42.t: added (Reported and fixed by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue42.t: added (Reported and fixed by Heinz Knutzen)" }, { "line" => 608, "raw" => "\t* t/issue44.t: added (Reported and fixed by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue44.t: added (Reported and fixed by Heinz Knutzen)" }, { "line" => 609, "raw" => "\t* t/issue45.t: added (Reported by Heinz Knutzen), dorassign missing\n", "style" => "*", "text" => "t/issue45.t: added (Reported by Heinz Knutzen), dorassign missing" }, { "line" => 610, "raw" => "\t* t/issue46.t: added (Reported by Heinz Knutzen), fixed by r610\n", "style" => "*", "text" => "t/issue46.t: added (Reported by Heinz Knutzen), fixed by r610" }, { "line" => 611, "raw" => "\t* t/issue47.t: added (Reported and fixed by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue47.t: added (Reported and fixed by Heinz Knutzen)" }, { "line" => 612, "raw" => "\t* t/issue48.t: added (Reported and fixed by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue48.t: added (Reported and fixed by Heinz Knutzen)" }, { "line" => 613, "raw" => "\t* t/issue49.t: added (Reported and fixed by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue49.t: added (Reported and fixed by Heinz Knutzen)" }, { "line" => 614, "raw" => "\t* t/issue50.t: added (Reported by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue50.t: added (Reported by Heinz Knutzen)" }, { "line" => 615, "raw" => "\t* t/issue51.t: added (Reported and fixed by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue51.t: added (Reported and fixed by Heinz Knutzen)" }, { "line" => 616, "raw" => "\t* t/issue52.t: added (Reported and fixed by Heinz Knutzen)\n", "style" => "*", "text" => "t/issue52.t: added (Reported and fixed by Heinz Knutzen)" }, { "line" => 617, "raw" => "\t* t/issue54.t: added and fixed\n\n", "style" => "*", "text" => "t/issue54.t: added and fixed" } ], "line" => 524, "note" => "rurban", "raw" => "1.28\t2010-12-31 rurban\n", "raw_date" => "2010-12-31", "version" => "1.28" }, { "date" => "2010-07-30", "entries" => [ { "line" => 620, "raw" => "\tFixed 1.26 CV regressions for 5.8 and 5.10\n\n", "style" => "", "text" => "Fixed 1.26 CV regressions for 5.8 and 5.10" }, { "line" => 622, "raw" => "\t* C.pm: add -DF print stringified sv and op flags.\n\tfixed xpvio off-by-one error for 5.10 (test 29)\n\trewrote XPVCV forwards for >=5.10: (fails before)\n\t 1. only the SV is now forwarded, not the struct.\n\t 2. no duplicate SVs, the CV forward is just a link to one SV (#define CVIX)\n\tremoved wrong CVf_ANON check causing CV failures (test 9,10,12). 5.13.3 still failing\n\tfixed CV svsect for 5.8 and 5.10\n", "style" => "*", "text" => "C.pm: add -DF print stringified sv and op flags. fixed xpvio off-by-one error for 5.10 (test 29) rewrote XPVCV forwards for >=5.10: (fails before) 1. only the SV is now forwarded, not the struct. 2. no duplicate SVs, the CV forward is just a link to one SV (#define CVIX) removed wrong CVf_ANON check causing CV failures (test 9,10,12). 5.13.3 still failing fixed CV svsect for 5.8 and 5.10" }, { "line" => 629, "raw" => "\t* Bytecode.pm (1.08): removed wrong CVf_ANON check causing CV failures (test 9,10,12,...)\n", "style" => "*", "text" => "Bytecode.pm (1.08): removed wrong CVf_ANON check causing CV failures (test 9,10,12,...)" }, { "line" => 630, "raw" => "\t* perlcc (2.08): added --time, support vprint -1\n", "style" => "*", "text" => "perlcc (2.08): added --time, support vprint -1" }, { "line" => 631, "raw" => "\t* t/test.pl, t/bytecode.t: double check failing tests if it works uncompiled\n", "style" => "*", "text" => "t/test.pl, t/bytecode.t: double check failing tests if it works uncompiled" }, { "line" => 632, "raw" => "\t* t/testc.sh: add -D- for no gcc warnings\n\tadded -f for testing single optimizations\n", "style" => "*", "text" => "t/testc.sh: add -D- for no gcc warnings added -f for testing single optimizations" }, { "line" => 634, "raw" => "\t* t/testm.sh: add -D flags for compiler debugging and link with -g\n\tadded -T for perlcc --time\n", "style" => "*", "text" => "t/testm.sh: add -D flags for compiler debugging and link with -g added -T for perlcc --time" }, { "line" => 636, "raw" => "\t* t/c_argv.t, script/perlcc: properly quote spaces in path of perl and `cwd`/blib\n", "style" => "*", "text" => "t/c_argv.t, script/perlcc: properly quote spaces in path of perl and `cwd`/blib" }, { "line" => 637, "raw" => "\t* t/modules.t: add svn rev to B::C::Version\n\n", "style" => "*", "text" => "t/modules.t: add svn rev to B::C::Version" } ], "line" => 619, "note" => "rurban", "raw" => "1.27\t2010-07-30 rurban\n", "raw_date" => "2010-07-30", "version" => "1.27" }, { "date" => "2010-07-26", "entries" => [ { "line" => 640, "raw" => "\tStart of 5.14 support, CVs broken.\n\n", "style" => "", "text" => "Start of 5.14 support, CVs broken." }, { "line" => 642, "raw" => "\t* C.pm: improve -fav-init performance if not usemymalloc: no\n\t calloc, just direct libc malloc.\n\t-O2 uses -fav-init2, i.e. experimental independent_comalloc(),\n\t -O1 uses now -fav-init (Nick Koston + Reini Urban)\n\tMark a package which is autoloaded from XS.\n\tFix autoloading of constants AKA const xsubcv via AUTOLOAD [test 27] (Nick Koston)\n\t5.13.3 support (xpv STASH, MAGIC, ... reorganization), but CVs still failing\n\tCheck CVf_ANON when setting cv->GV. Fixes anon subs.\n\tDo not call REGEXP IVX and NVX methods (since 5.11)\n", "style" => "*", "text" => "C.pm: improve -fav-init performance if not usemymalloc: no calloc, just direct libc malloc. -O2 uses -fav-init2, i.e. experimental independent_comalloc(), -O1 uses now -fav-init (Nick Koston + Reini Urban) Mark a package which is autoloaded from XS. Fix autoloading of constants AKA const xsubcv via AUTOLOAD [test 27] (Nick Koston) 5.13.3 support (xpv STASH, MAGIC, ... reorganization), but CVs still failing Check CVf_ANON when setting cv->GV. Fixes anon subs. Do not call REGEXP IVX and NVX methods (since 5.11)" }, { "line" => 651, "raw" => "\t* bytecode.pl: CvGv_set since 5.13.3\n\tFixed byteorder 0x stripping causing wrong bget_swab on 64bit\n", "style" => "*", "text" => "bytecode.pl: CvGv_set since 5.13.3 Fixed byteorder 0x stripping causing wrong bget_swab on 64bit" }, { "line" => 653, "raw" => "\t* B::C::Flags: new. added by Makefile.PL probing independent_comalloc()\n", "style" => "*", "text" => "B::C::Flags: new. added by Makefile.PL probing independent_comalloc()" }, { "line" => 654, "raw" => "\t* CC.pm: the default -fno-slow-signals adds PERL_ASYNC_CHECK at\n\t the same ops as with 5.13, a major improvement.\n", "style" => "*", "text" => "CC.pm: the default -fno-slow-signals adds PERL_ASYNC_CHECK at the same ops as with 5.13, a major improvement." }, { "line" => 656, "raw" => "\t* Bytecode.pm (1.07), bytecode.pl: xpvav.xiv_u was removed with 5.13.2 but not\n\t used anymore. read and set av_flags only until 5.12, compile only before 5.10\n\tCheck CVv_ANON when setting cv->GV. Fixes anon subs\n", "style" => "*", "text" => "Bytecode.pm (1.07), bytecode.pl: xpvav.xiv_u was removed with 5.13.2 but not used anymore. read and set av_flags only until 5.12, compile only before 5.10 Check CVv_ANON when setting cv->GV. Fixes anon subs" }, { "line" => 659, "raw" => "\t* bytecode.h: do not PM_SETRE with empty arg. fails since 5.13 debugging\n", "style" => "*", "text" => "bytecode.h: do not PM_SETRE with empty arg. fails since 5.13 debugging" }, { "line" => 660, "raw" => " * t/testc.sh, t/TESTS: fail test 44, change threads tests 41-43 to TODO\n", "style" => "*", "text" => "t/testc.sh, t/TESTS: fail test 44, change threads tests 41-43 to TODO" }, { "line" => 661, "raw" => "\t* perlcc (2.07), cc_harness, t/test.pl: debian specific fixes for their broken\n\t -lperl linker args for ExtUtils::Embed::ldopts.\n", "style" => "*", "text" => "perlcc (2.07), cc_harness, t/test.pl: debian specific fixes for their broken -lperl linker args for ExtUtils::Embed::ldopts." }, { "line" => 663, "raw" => "\t* t/test.pl: Have complete c/cc TODO/SKIP status in one place.\n\tFixed killing hangling tests with IPC::Run.\n\tFixed new cc TODO.\n\tRun CC test 18 even not as AUTHOR\n", "style" => "*", "text" => "t/test.pl: Have complete c/cc TODO/SKIP status in one place. Fixed killing hangling tests with IPC::Run. Fixed new cc TODO. Run CC test 18 even not as AUTHOR" }, { "line" => 667, "raw" => "\t* t/c*.t: make test 27 easier to debug (Nick Koston)\n Added test 45 (Nick Koston)\n\n", "style" => "*", "text" => "t/c*.t: make test 27 easier to debug (Nick Koston) Added test 45 (Nick Koston)" } ], "line" => 639, "note" => "rurban", "raw" => "1.26\t2010-07-26 rurban\n", "raw_date" => "2010-07-26", "version" => "1.26" }, { "date" => "2010-04-11", "entries" => [ { "line" => 671, "raw" => "\t* C.pm: remove global my_perl, pass it properly around.\n", "style" => "*", "text" => "C.pm: remove global my_perl, pass it properly around." }, { "line" => 672, "raw" => "\t* t/c*.t: added test 40 \\000 byte in PV failing on ori 5.6.2 (Nick Koston),\n\tadded more magic tests for shared vars - n,p,P magic: 39-43. 41 nyi\n", "style" => "*", "text" => "t/c*.t: added test 40 \\000 byte in PV failing on ori 5.6.2 (Nick Koston), added more magic tests for shared vars - n,p,P magic: 39-43. 41 nyi" }, { "line" => 674, "raw" => "\t* t/modules.t: fix -t (run module tests), print header only on full test\n", "style" => "*", "text" => "t/modules.t: fix -t (run module tests), print header only on full test" }, { "line" => 675, "raw" => "\t* t/modules.pm: do not test core or deprecated modules, esp. do not download perl\n\tAdded is_subset.\n", "style" => "*", "text" => "t/modules.pm: do not test core or deprecated modules, esp. do not download perl Added is_subset." }, { "line" => 677, "raw" => "\t* t/testm.sh: implement -k\n", "style" => "*", "text" => "t/testm.sh: implement -k" }, { "line" => 678, "raw" => "\t* t/testc.sh, t/TESTS: add 44 for weaken import and magic_killbackrefs #72922\n\n", "style" => "*", "text" => "t/testc.sh, t/TESTS: add 44 for weaken import and magic_killbackrefs #72922" } ], "line" => 670, "note" => "rurban", "raw" => "1.25\t2010-04-11 rurban\n", "raw_date" => "2010-04-11", "version" => "1.25" }, { "date" => "2010-02-15", "entries" => [ { "entries" => [ { "line" => 682, "raw" => "\t - valgrind is your friend.\n", "style" => "-", "text" => "valgrind is your friend." } ], "line" => 681, "raw" => "\t* C.pm: Fixed off by one array access in magic array init (34)\n", "style" => "*", "text" => "C.pm: Fixed off by one array access in magic array init (34)" }, { "line" => 683, "raw" => "\tFixed aelemfast padsv access crash (Text::Tabs on freebsd7)\n", "style" => "", "text" => "Fixed aelemfast padsv access crash (Text::Tabs on freebsd7)" }, { "line" => 684, "raw" => "\tFixed wrong stash names in gv_stashpv analog to gv_fetchpv\n\t (Text-Tabs+Wrap t/dandv.t)\n", "style" => "", "text" => "Fixed wrong stash names in gv_stashpv analog to gv_fetchpv (Text-Tabs+Wrap t/dandv.t)" }, { "line" => 686, "raw" => "\t* t/testm.sh: implement -s without log file\n", "style" => "*", "text" => "t/testm.sh: implement -s without log file" }, { "line" => 687, "raw" => "\t* t/modules.pm: export skip_modules, silence module scanning STDERR\n\n", "style" => "*", "text" => "t/modules.pm: export skip_modules, silence module scanning STDERR" } ], "line" => 680, "note" => "rurban", "raw" => "1.24\t2010-02-15 rurban\n", "raw_date" => "2010-02-15", "version" => "1.24" }, { "date" => "2010-02-14", "entries" => [ { "line" => 690, "raw" => "\t* t/testm.sh: chmod +x\n", "style" => "*", "text" => "t/testm.sh: chmod +x" }, { "line" => 691, "raw" => "\t* t/modules.t: fix \$have_IPC_Run\n\n", "style" => "*", "text" => "t/modules.t: fix \$have_IPC_Run" } ], "line" => 689, "note" => "rurban", "raw" => "1.23\t2010-02-14 rurban\n", "raw_date" => "2010-02-14", "version" => "1.23" }, { "date" => "2010-02-14", "entries" => [ { "line" => 694, "raw" => "\tTested with ActivePerl 5.10.0\n\n", "style" => "", "text" => "Tested with ActivePerl 5.10.0" }, { "line" => 696, "raw" => "\t* bytecode.h: unshare_hek exception for WIN32, not only MINGW\n", "style" => "*", "text" => "bytecode.h: unshare_hek exception for WIN32, not only MINGW" }, { "line" => 697, "raw" => "\t* t/modules.t: Added list of to be skipped modules, which cycle endlessly.\n\tImprove todo message.\n", "style" => "*", "text" => "t/modules.t: Added list of to be skipped modules, which cycle endlessly. Improve todo message." }, { "line" => 699, "raw" => "\t* t/testm.sh: add option -s \"install skipped modules\"\n", "style" => "*", "text" => "t/testm.sh: add option -s \"install skipped modules\"" }, { "line" => 700, "raw" => "\t* Makefile.PL, cc_harness, perlcc: fix ldflags for ActivePerl 5.10.0\n\t for MSVC6 (ccversion 12) -opt:ref,icf leads to invalid outfile \"pt:ref,icf\"\n", "style" => "*", "text" => "Makefile.PL, cc_harness, perlcc: fix ldflags for ActivePerl 5.10.0 for MSVC6 (ccversion 12) -opt:ref,icf leads to invalid outfile \"pt:ref,icf\"" }, { "line" => 702, "raw" => "\t* c+cc test 29 fails on 5.10 randomly. Make it a TODO\n\n", "style" => "*", "text" => "c+cc test 29 fails on 5.10 randomly. Make it a TODO" } ], "line" => 693, "note" => "rurban", "raw" => "1.22\t2010-02-14 rurban\n", "raw_date" => "2010-02-14", "version" => "1.22" }, { "date" => "2010-02-14", "entries" => [ { "line" => 705, "raw" => "\t* C.pm: Add missing Nullop for CC on 5.11.4 (cc 12).\n\tTest 38 passes\n\n", "style" => "*", "text" => "C.pm: Add missing Nullop for CC on 5.11.4 (cc 12). Test 38 passes" } ], "line" => 704, "note" => "rurban", "raw" => "1.21\t2010-02-14 rurban\n", "raw_date" => "2010-02-14", "version" => "1.21" }, { "date" => "2010-02-14", "entries" => [ { "line" => 709, "raw" => "\t* C.pm: #define PERL_CORE broke Null macros on 5.11.4. Define those.\n\n", "style" => "*", "text" => "C.pm: #define PERL_CORE broke Null macros on 5.11.4. Define those." } ], "line" => 708, "note" => "rurban", "raw" => "1.20\t2010-02-14 rurban\n", "raw_date" => "2010-02-14", "version" => "1.20" }, { "date" => "2010-02-13", "entries" => [ { "line" => 712, "raw" => "\tAlmost fixed evaltry (12) with proper cop_seq setup, just solaris and debian\n", "style" => "", "text" => "Almost fixed evaltry (12) with proper cop_seq setup, just solaris and debian" }, { "line" => 713, "raw" => "\tfail sometimes. Tested ok with strawberry 5.10.1\n\n", "style" => "", "text" => "fail sometimes. Tested ok with strawberry 5.10.1" }, { "line" => 715, "raw" => "\t* C.pm: fixed evaltry (test 12) mostly, NVX was shared with 2 xpad_cop_seq ints\n\t which accidently just worked before 1.17 with %s, but not after changing\n\t to the %g representation.\n\tIgnore unused random (overlong) xpviv IV, causing\n\t \"warning: this decimal constant is unsigned only in ISO C90\"\n\tDefer rv => cv to run-time < 5.10. Fixes ExtUtils::Install\n\tDefer xpvmg->pv init to run-time < 5.10. Fixes MooseX::Types\n\tCheck for NV inf. Fixes compilation of DateTime\n\tDefined PERL_CORE: Fxied Windows problems with setjmp undef'ed in XSUB.h\n\tAdded Win32 workaround for missing PL_do_undump\n\tStripped perl_ prefix from perl_get_cv, perl_call_pv, perl_call_method\n", "style" => "*", "text" => "C.pm: fixed evaltry (test 12) mostly, NVX was shared with 2 xpad_cop_seq ints which accidently just worked before 1.17 with %s, but not after changing to the %g representation. Ignore unused random (overlong) xpviv IV, causing \"warning: this decimal constant is unsigned only in ISO C90\" Defer rv => cv to run-time < 5.10. Fixes ExtUtils::Install Defer xpvmg->pv init to run-time < 5.10. Fixes MooseX::Types Check for NV inf. Fixes compilation of DateTime Defined PERL_CORE: Fxied Windows problems with setjmp undef'ed in XSUB.h Added Win32 workaround for missing PL_do_undump Stripped perl_ prefix from perl_get_cv, perl_call_pv, perl_call_method" }, { "line" => 726, "raw" => "\t* CC.pm (1.07): added -fslow-signals.\n\tDisabled inlined pp_enter: Fails on empty cxstack.\n\tBacked out inlining of enterloop: GIMME_V fails on freebsd7\n\tRemove strawberry PerlProc_setjmp definition, #define PERL_CORE fixed that\n", "style" => "*", "text" => "CC.pm (1.07): added -fslow-signals. Disabled inlined pp_enter: Fails on empty cxstack. Backed out inlining of enterloop: GIMME_V fails on freebsd7 Remove strawberry PerlProc_setjmp definition, #define PERL_CORE fixed that" }, { "line" => 730, "raw" => "\t* Bytecode.pm (1.06): same NVX => xpad_cop_seq fix as in C.pm, added 2 new\n\t bytecodes (cop_seq_low, cop_seq_high), fixed tests 9,10,12. Passes\n\t all tests > 5.6 now.\n", "style" => "*", "text" => "Bytecode.pm (1.06): same NVX => xpad_cop_seq fix as in C.pm, added 2 new bytecodes (cop_seq_low, cop_seq_high), fixed tests 9,10,12. Passes all tests > 5.6 now." }, { "line" => 733, "raw" => "\t* bytecode.pl: added cop_seq_low (155), cop_seq_high (156) instead of xnv.\n\t No conversion code for loading older bytecode needed, but fragile (double => 2 int)\n", "style" => "*", "text" => "bytecode.pl: added cop_seq_low (155), cop_seq_high (156) instead of xnv. No conversion code for loading older bytecode needed, but fragile (double => 2 int)" }, { "line" => 735, "raw" => "\t* t/modules.t: refactored by Todd Rinaldo (toddr). 4*tests per module:\n\t -s a, exitcode 0, ok, no warnings on stderr\n", "style" => "*", "text" => "t/modules.t: refactored by Todd Rinaldo (toddr). 4*tests per module: -s a, exitcode 0, ok, no warnings on stderr" }, { "line" => 737, "raw" => "\t* t/TESTS: added 38, failing on CC (Nick Koston).\n\tadded 39, failing everywhere.\n", "style" => "*", "text" => "t/TESTS: added 38, failing on CC (Nick Koston). added 39, failing everywhere." }, { "line" => 739, "raw" => "\t* t/test.pl: refactor: Try to timeout on all tests (compiler and exec) if\n\t IPC::Run is installed\n", "style" => "*", "text" => "t/test.pl: refactor: Try to timeout on all tests (compiler and exec) if IPC::Run is installed" }, { "line" => 741, "raw" => "\t* MANIFEST, *.pod: Moved conference pods to ramblings,\n\tremoved lib/B/Asmdata.pm again, added t/qr_loaded_module.pm\n", "style" => "*", "text" => "MANIFEST, *.pod: Moved conference pods to ramblings, removed lib/B/Asmdata.pm again, added t/qr_loaded_module.pm" }, { "line" => 743, "raw" => "\t* t/testm.sh, t/modules.pm: added, -t not working yet though\n", "style" => "*", "text" => "t/testm.sh, t/modules.pm: added, -t not working yet though" }, { "line" => 744, "raw" => "\t* t/b.t: \$[ => \$]\n\n", "style" => "*", "text" => "t/b.t: \$[ => \$]" } ], "line" => 711, "note" => "rurban", "raw" => "1.19\t2010-02-13 rurban\n", "raw_date" => "2010-02-13", "version" => "1.19" }, { "date" => "2010-02-06", "entries" => [ { "line" => 747, "raw" => "\tevaltry (test 12) still broken on most systems.\n\n", "style" => "", "text" => "evaltry (test 12) still broken on most systems." }, { "line" => 749, "raw" => "\t* C.pm, C.xs: fixed r-magic for 5.6 (ExtUtils::Install,\n\t File::Temp, Template::Stash). need tests for run-time checks (33).\n\t 5.6 misses MG->pregcomp\n", "style" => "*", "text" => "C.pm, C.xs: fixed r-magic for 5.6 (ExtUtils::Install, File::Temp, Template::Stash). need tests for run-time checks (33). 5.6 misses MG->pregcomp" }, { "line" => 752, "raw" => "\t* t/modules.t: check for a.out (test from toddr)\n", "style" => "*", "text" => "t/modules.t: check for a.out (test from toddr)" }, { "line" => 753, "raw" => "\t* Makefile.PL: create lib/B/Asmdata.pm beforehand (toddr)\n", "style" => "*", "text" => "Makefile.PL: create lib/B/Asmdata.pm beforehand (toddr)" }, { "line" => 754, "raw" => "\t* ByteLoader: fixed duplicate + missing bl_header for bsd and Darwin\n\t (test from toddr)\n", "style" => "*", "text" => "ByteLoader: fixed duplicate + missing bl_header for bsd and Darwin (test from toddr)" }, { "line" => 756, "raw" => "\t* test 37 added - AV self-refs, analog to HVs (never failed, just to\n\t be sure).\n\tRemoved -qq from 5.6 tests.\n\n", "style" => "*", "text" => "test 37 added - AV self-refs, analog to HVs (never failed, just to be sure). Removed -qq from 5.6 tests." } ], "line" => 746, "note" => "rurban", "raw" => "1.18\t2010-02-06 rurban\n", "raw_date" => "2010-02-06", "version" => "1.18" }, { "date" => "2010-02-03", "entries" => [ { "line" => 761, "raw" => "\tFixed now most module failures, non-threaded at least: bootstrap was in\n", "style" => "", "text" => "Fixed now most module failures, non-threaded at least: bootstrap was in" }, { "line" => 762, "raw" => "\tthe way. strawberry perl fixes. Fixed test 29, broke evaltry test 12\n\n", "style" => "", "text" => "the way. strawberry perl fixes. Fixed test 29, broke evaltry test 12" }, { "line" => 764, "raw" => "\t* C.pm: Added option -Dfull for all full debugging info, set all options.\n\tSkip saving XS bootstrap. Fixes most XS module failures. i.e.\n\t Digest::MD5, Data::Dumper, ..\n\t Fail: Attribute::Handlers, B::Hooks::EndOfScope, YAML, MooseX::Types\n\t 4 for 5.8.9-nt from the top100, and 3 for 5.11.4-nt: Attribute::Handlers,\n\t File::Temp, ExtUtils::Install.\n\tFixed AV self-references causing endless loops, analog to HVs (test 27)\n\tFixed Getopt::Long crash with AV D magic (regdata),\n\t save_magic returns now the magic types as string.\n\tFixed unescaped savere (test ExtUtils::Install).\n\tFixed GvSTASH \"initializer element is not constant\" (Test::Harness)\n\tFixed xrv_list \"initializer element is not constant\" (Class::MOP < 5.10)\n", "style" => "*", "text" => "C.pm: Added option -Dfull for all full debugging info, set all options. Skip saving XS bootstrap. Fixes most XS module failures. i.e. Digest::MD5, Data::Dumper, .. Fail: Attribute::Handlers, B::Hooks::EndOfScope, YAML, MooseX::Types 4 for 5.8.9-nt from the top100, and 3 for 5.11.4-nt: Attribute::Handlers, File::Temp, ExtUtils::Install. Fixed AV self-references causing endless loops, analog to HVs (test 27) Fixed Getopt::Long crash with AV D magic (regdata), save_magic returns now the magic types as string. Fixed unescaped savere (test ExtUtils::Install). Fixed GvSTASH \"initializer element is not constant\" (Test::Harness) Fixed xrv_list \"initializer element is not constant\" (Class::MOP < 5.10)" }, { "line" => 776, "raw" => "\t* CC.pm (1.06): Added missing unexported definitions for MSWin32,\n\t >=5.10: newGP, vivify_ref, prepare_SV_for_RV (tests 18, 29).\n\t PerlProc_setjmp, PerlProc_longjmp (tests 12, 32).\n\tFixed cxinc for 5.11.0\n", "style" => "*", "text" => "CC.pm (1.06): Added missing unexported definitions for MSWin32, >=5.10: newGP, vivify_ref, prepare_SV_for_RV (tests 18, 29). PerlProc_setjmp, PerlProc_longjmp (tests 12, 32). Fixed cxinc for 5.11.0" }, { "line" => 780, "raw" => "\t* t/bytecode.t: mixed up 32 with 33.\n", "style" => "*", "text" => "t/bytecode.t: mixed up 32 with 33." }, { "line" => 781, "raw" => "\t* t/modules.t, t/top100: new module test, see also the log.modules*\n\t results in the svn repo.\n", "style" => "*", "text" => "t/modules.t, t/top100: new module test, see also the log.modules* results in the svn repo." }, { "line" => 783, "raw" => "\t* t/mymodules: added as reference, executed optionally.\n", "style" => "*", "text" => "t/mymodules: added as reference, executed optionally." }, { "line" => 784, "raw" => "\t* script/cc_harness: ldopts -std if no -B\n\n", "style" => "*", "text" => "script/cc_harness: ldopts -std if no -B" } ], "line" => 760, "note" => "rurban", "raw" => "1.17\t2010-02-03 rurban\n", "raw_date" => "2010-02-03", "version" => "1.17" }, { "date" => "2010-01-27", "entries" => [ { "line" => 787, "raw" => "\tuse Moose and benchmark still fails. IO even a regression.\n\n", "style" => "", "text" => "use Moose and benchmark still fails. IO even a regression." }, { "line" => 789, "raw" => "\t* C.pm: Fixed braces warning for empty xpvcv startfield (Nullany),\n\tregister int for warn_sv loop\n\tFixed hv init for magic hashes, pre-allocate array and xpvhv_aux. (test 34)\n\tFixed method_named (CPAN #53889, test 35) for B::C, better fix than for B::CC.\n\tAdded -DH for HV debuggging.\n\tFixed HV self-references causing endless loops, i.e. with use Moose, test 36.\n", "style" => "*", "text" => "C.pm: Fixed braces warning for empty xpvcv startfield (Nullany), register int for warn_sv loop Fixed hv init for magic hashes, pre-allocate array and xpvhv_aux. (test 34) Fixed method_named (CPAN #53889, test 35) for B::C, better fix than for B::CC. Added -DH for HV debuggging. Fixed HV self-references causing endless loops, i.e. with use Moose, test 36." }, { "line" => 795, "raw" => "\t* CC.pm (1.05): added experimental -finline-ops. Always on. Can be removed if\n\t it works okay for the new inlined versions.\n\tInlined pp_enter, pp_reset, pp_regcreset, pp_stringify.\n\tFixed pp_padsv DEREF for 5.10.\n\tDocumented test coverage for each op.\n\tFixed wrong \$PERL511 definition.\n\tAdded Opcodes support (no_stack), on CPAN as 0.01.\n\t added pp_pushmark pp_break pp_continue to no_stack handling.\n\tFixed method_named (CPAN #53889, test 35) assuming there is only const\n\t before method_named. No counter examples found so far.\n\tChanged new OBJ => OBJ->new\n\tMore curcop->write_back protection.\n", "style" => "*", "text" => "CC.pm (1.05): added experimental -finline-ops. Always on. Can be removed if it works okay for the new inlined versions. Inlined pp_enter, pp_reset, pp_regcreset, pp_stringify. Fixed pp_padsv DEREF for 5.10. Documented test coverage for each op. Fixed wrong \$PERL511 definition. Added Opcodes support (no_stack), on CPAN as 0.01. added pp_pushmark pp_break pp_continue to no_stack handling. Fixed method_named (CPAN #53889, test 35) assuming there is only const before method_named. No counter examples found so far. Changed new OBJ => OBJ->new More curcop->write_back protection." }, { "line" => 807, "raw" => "\t* Stackobj.pm (1.00_02): RV fix for 5.11.\n", "style" => "*", "text" => "Stackobj.pm (1.00_02): RV fix for 5.11." }, { "line" => 808, "raw" => "\t* t/testc.sh, t/test.pl: added CC specific tests to increase CC op coverage\n\t after 100.\n\tSwitched test 32->101 (arith) with 33->32 (evaltry catch die) as it fails\n\t with 5.11.3.\n\tAdded new qr test 33 (Nick Koston), test 34 for magic hashes, test 35 for\n\t broken methodcall syntax (method_named), test 36 for HV self-references.\n", "style" => "*", "text" => "t/testc.sh, t/test.pl: added CC specific tests to increase CC op coverage after 100. Switched test 32->101 (arith) with 33->32 (evaltry catch die) as it fails with 5.11.3. Added new qr test 33 (Nick Koston), test 34 for magic hashes, test 35 for broken methodcall syntax (method_named), test 36 for HV self-references." }, { "line" => 814, "raw" => "\t* TESTS: added test 32 (evaltry catch die): Fails on 5.11.3 C/CC only,\n\t <5.11.3 it works okay. Also tests 33, 34, 35, 36.\n", "style" => "*", "text" => "TESTS: added test 32 (evaltry catch die): Fails on 5.11.3 C/CC only, <5.11.3 it works okay. Also tests 33, 34, 35, 36." }, { "line" => 816, "raw" => "\t* ByteLoader/Makefile.PL: removed cygwin gcc specific stack-protector removal.\n\t It was a bug of mine.\n\tAdded more AUTHOR gcc -ansi warnings, just -pedantic not.\n", "style" => "*", "text" => "ByteLoader/Makefile.PL: removed cygwin gcc specific stack-protector removal. It was a bug of mine. Added more AUTHOR gcc -ansi warnings, just -pedantic not." }, { "line" => 819, "raw" => "\t* Makefile.PL: Added more AUTHOR gcc warnings, also -pedantic.\n\tAdded optional Opcodes PREREQ_PM\n\n", "style" => "*", "text" => "Makefile.PL: Added more AUTHOR gcc warnings, also -pedantic. Added optional Opcodes PREREQ_PM" } ], "line" => 786, "note" => "rurban", "raw" => "1.16\t2010-01-27 rurban\n", "raw_date" => "2010-01-27", "version" => "1.16" }, { "date" => "2010-01-03", "entries" => [ { "line" => 823, "raw" => "\t* t/test.pl: Fixed MSWin32 tests again. Lost the 1.13 patches with 1.14.\n\n", "style" => "*", "text" => "t/test.pl: Fixed MSWin32 tests again. Lost the 1.13 patches with 1.14." } ], "line" => 822, "note" => "rurban", "raw" => "1.15\t2010-01-03 rurban\n", "raw_date" => "2010-01-03", "version" => "1.15" }, { "date" => "2010-01-02", "entries" => [ { "line" => 826, "raw" => "\t* CC.pm (1.04): Fixed entereval/leaveeval for 5.10. Fixes eval \"\", test 12.\n\t The end of the string CALLRUNOPS needed to be nullified, as in 5.8.\n\t 5.11 CORE also needs a patch for this.\n\tOptimized away SP save/restore for %no_stack ops. Need to read this\n\t from opcode.pl eventually.\n\tPERL_ASYNC_CHECK (pending signals) added after every basic blocks with -O1\n\t and every loop.\n", "style" => "*", "text" => "CC.pm (1.04): Fixed entereval/leaveeval for 5.10. Fixes eval \"\", test 12. The end of the string CALLRUNOPS needed to be nullified, as in 5.8. 5.11 CORE also needs a patch for this. Optimized away SP save/restore for %no_stack ops. Need to read this from opcode.pl eventually. PERL_ASYNC_CHECK (pending signals) added after every basic blocks with -O1 and every loop." }, { "line" => 833, "raw" => "\t* C.pm: More 5.10 union braces.\n", "style" => "*", "text" => "C.pm: More 5.10 union braces." }, { "line" => 834, "raw" => "\t* Stackobj.pm (1.00_01): Added iv and nv to peek.\n\tAdded documentation.\n", "style" => "*", "text" => "Stackobj.pm (1.00_01): Added iv and nv to peek. Added documentation." }, { "line" => 836, "raw" => "\t* Bblock.pm (1.03_01): Print the argument (sub) to inspect.\n\tAdded missing documentation.\n", "style" => "*", "text" => "Bblock.pm (1.03_01): Print the argument (sub) to inspect. Added missing documentation." }, { "line" => 838, "raw" => "\t* t/testcore.t: improved. added -fail and a list of failing tests.\n\t C now always with -O3.\n", "style" => "*", "text" => "t/testcore.t: improved. added -fail and a list of failing tests. C now always with -O3." }, { "line" => 840, "raw" => "\t* t/c_allow_opts.t: Added for -DALLOW_PERL_OPTIONS.\n\n", "style" => "*", "text" => "t/c_allow_opts.t: Added for -DALLOW_PERL_OPTIONS." } ], "line" => 825, "note" => "rurban", "raw" => "1.14\t2010-01-02 rurban\n", "raw_date" => "2010-01-02", "version" => "1.14" }, { "date" => "2009-12-31", "entries" => [ { "line" => 843, "raw" => "\tTested with MSVC (MSVC compiles test29 and bigger examples awfully slow!\n", "style" => "", "text" => "Tested with MSVC (MSVC compiles test29 and bigger examples awfully slow!" }, { "line" => 844, "raw" => "\t7:30min, 30MB mem, 98% CPU, 2GHz)\n\n", "style" => "", "text" => "7:30min, 30MB mem, 98% CPU, 2GHz)" }, { "line" => 846, "raw" => "\t* C.pm: MSVC fix for \"(OP*)Nullany\" i.e \"(OP*){0}\" => \"{0}\". Fixes\n\t test 27 on MSVC. CC test 12 broken on MSVC AS 5.8\n", "style" => "*", "text" => "C.pm: MSVC fix for \"(OP*)Nullany\" i.e \"(OP*){0}\" => \"{0}\". Fixes test 27 on MSVC. CC test 12 broken on MSVC AS 5.8" }, { "line" => 848, "raw" => "\t* bytecode.pl: Restore C strictness, printf before declaration.\n\tUndefine debop for MSVC also. Fixed [cpan #53228].\n", "style" => "*", "text" => "bytecode.pl: Restore C strictness, printf before declaration. Undefine debop for MSVC also. Fixed [cpan #53228]." }, { "line" => 850, "raw" => "\t* t/test.pl: Cleanup intermediate MSVC .obj. Skip too slow tests 29\n\t on MSVC, only c.t\n\tRemove >nul for test results on Win32.\n\tMore run_cc_perl fixes for Win32.\n\tBe more quiet on MSWin32 also (no 2>/dev/null)\n\tSkip stderr redirection to stdout on cmd.exe tests, t/o.t 5,9.\n", "style" => "*", "text" => "t/test.pl: Cleanup intermediate MSVC .obj. Skip too slow tests 29 on MSVC, only c.t Remove >nul for test results on Win32. More run_cc_perl fixes for Win32. Be more quiet on MSWin32 also (no 2>/dev/null) Skip stderr redirection to stdout on cmd.exe tests, t/o.t 5,9." }, { "line" => 856, "raw" => "\t* t/bytecode.pl: ditto.\n", "style" => "*", "text" => "t/bytecode.pl: ditto." }, { "line" => 857, "raw" => "\t* t/TESTS: Fixed 28 for MSWin32 MSVC\n\n", "style" => "*", "text" => "t/TESTS: Fixed 28 for MSWin32 MSVC" } ], "line" => 842, "note" => "rurban", "raw" => "1.13\t2009-12-31 rurban\n", "raw_date" => "2009-12-31", "version" => "1.13" }, { "date" => "2009-12-31", "entries" => [ { "line" => 860, "raw" => "\t__DATA__ handles work now. Also more Bytecode fixes.\n", "style" => "", "text" => "__DATA__ handles work now. Also more Bytecode fixes." }, { "line" => 861, "raw" => "\t* t/testplc.sh: Added -S: skip all but -S and Concise\n", "style" => "*", "text" => "t/testplc.sh: Added -S: skip all but -S and Concise" }, { "line" => 862, "raw" => "\t* Bytecode.pm (1.05): Adapt RV 5.11 change from SV to IV, detect ROK at\n\t B::IV::bsave analog to C.pm. Fixes test 16.\n\tSet prototype sv_flags at first, so it cannot assert. Fixes tests 27 and 29.\n\tMore work on 5.6 compat.\n", "style" => "*", "text" => "Bytecode.pm (1.05): Adapt RV 5.11 change from SV to IV, detect ROK at B::IV::bsave analog to C.pm. Fixes test 16. Set prototype sv_flags at first, so it cannot assert. Fixes tests 27 and 29. More work on 5.6 compat." }, { "line" => 866, "raw" => "\t* bytecode.pl: Fixed 5.6 %alias_to sizes.\n", "style" => "*", "text" => "bytecode.pl: Fixed 5.6 %alias_to sizes." }, { "line" => 867, "raw" => "\t* bytecode.h: Fix BSET_cop_label for 5.11. Fixes test 21.\n", "style" => "*", "text" => "bytecode.h: Fix BSET_cop_label for 5.11. Fixes test 21." }, { "line" => 868, "raw" => "\t* t/bytecode.t: Added DEBUGGING to the mix. 5.11 is now completely the\n\t same as 5.10. Remaining failures are now 9,10,12 for DEBUGGING (or\n\t non-threaded?).\n", "style" => "*", "text" => "t/bytecode.t: Added DEBUGGING to the mix. 5.11 is now completely the same as 5.10. Remaining failures are now 9,10,12 for DEBUGGING (or non-threaded?)." }, { "line" => 871, "raw" => "\t* C.pm: Added xpvuv (coverage in 5.6.2 test 21).\n\tAdded PMOP->pmstash/pmstashpv (no coverage yet).\n\tChecked against -Wall -Wextra:\n\t Added missing pmop->stash for 5.8.\n\t Added missing cop->cop_io for 5.8.\n\t Added braces to union inits (MSVC Todo).\n\t Remove unused dTARG and dSP.\n\tFixed CC test 29 on 5.6.2, not checked why.\n\tFixed __DATA__ test 15 on 5.10 and 5.11.\n", "style" => "*", "text" => "C.pm: Added xpvuv (coverage in 5.6.2 test 21). Added PMOP->pmstash/pmstashpv (no coverage yet). Checked against -Wall -Wextra: Added missing pmop->stash for 5.8. Added missing cop->cop_io for 5.8. Added braces to union inits (MSVC Todo). Remove unused dTARG and dSP. Fixed CC test 29 on 5.6.2, not checked why. Fixed __DATA__ test 15 on 5.10 and 5.11." }, { "line" => 880, "raw" => "\t* TESTS: Updated with 5.10.1 CORE results\n\n", "style" => "*", "text" => "TESTS: Updated with 5.10.1 CORE results" } ], "line" => 859, "note" => "rurban", "raw" => "1.12\t2009-12-31 rurban\n", "raw_date" => "2009-12-31", "version" => "1.12" }, { "date" => "2009-12-29", "entries" => [ { "line" => 883, "raw" => "\tFixed 5.11 RVs, added C optimizations to CC\n", "style" => "", "text" => "Fixed 5.11 RVs, added C optimizations to CC" }, { "line" => 884, "raw" => "\t* C.pm: Adapt RV 5.11 change from SV to IV, detect ROK at B::IV::save.\n\t Fixes test 16.\n\tAdded -DW for walk, together with -Dp only.\n\tForced fullname optimization scalars for B::CC.\n\tExport save_sig and fixup_ppaddr for CC.\n", "style" => "*", "text" => "C.pm: Adapt RV 5.11 change from SV to IV, detect ROK at B::IV::save. Fixes test 16. Added -DW for walk, together with -Dp only. Forced fullname optimization scalars for B::CC. Export save_sig and fixup_ppaddr for CC." }, { "line" => 889, "raw" => "\t* CC.pm (1.03): Fixed Perl_gv_SVadd cast warning.\n\tAdded most B::C optimizations. This fixes all threaded tests 15 >= 5.10.\n\tCall save_sig, fixup_ppaddr not yet.\n", "style" => "*", "text" => "CC.pm (1.03): Fixed Perl_gv_SVadd cast warning. Added most B::C optimizations. This fixes all threaded tests 15 >= 5.10. Call save_sig, fixup_ppaddr not yet." }, { "line" => 892, "raw" => "\t* t/test.pl: simplified (and fixed) keep logic\n", "style" => "*", "text" => "t/test.pl: simplified (and fixed) keep logic" }, { "line" => 893, "raw" => "\t* t/c_argv.t: cleanup\n\n", "style" => "*", "text" => "t/c_argv.t: cleanup" } ], "line" => 882, "note" => "rurban", "raw" => "1.11\t2009-12-29 rurban\n", "raw_date" => "2009-12-29", "version" => "1.11" }, { "date" => "2009-12-29", "entries" => [ { "line" => 896, "raw" => "\tFixed \@ARGV\n", "style" => "", "text" => "Fixed \@ARGV" }, { "line" => 897, "raw" => "\t* C.pm: fixed couple of minor bugs detected with new t/testcore.t:\n\t t/CORE/comp/retainedlines.t => Use of uninitialized value \$len, save_hek\n\t Use of uninitialized value \$i in printf at C.pm line 49\n\t Undefined value assigned to typeglob at C.pm line 2901\n\tDo not overwrite run-time \@ARGV on >= 5.10 (GP and AV). Fixes test c_argv.t\n", "style" => "*", "text" => "C.pm: fixed couple of minor bugs detected with new t/testcore.t: t/CORE/comp/retainedlines.t => Use of uninitialized value \$len, save_hek Use of uninitialized value \$i in printf at C.pm line 49 Undefined value assigned to typeglob at C.pm line 2901 Do not overwrite run-time \@ARGV on >= 5.10 (GP and AV). Fixes test c_argv.t" }, { "line" => 902, "raw" => "\t* t/testcore.t: added\n", "style" => "*", "text" => "t/testcore.t: added" }, { "line" => 903, "raw" => "\t* t/c_argv.t: added. test \@ARGV and perlcc\n", "style" => "*", "text" => "t/c_argv.t: added. test \@ARGV and perlcc" }, { "line" => 904, "raw" => "\t* perlcc (2.06): grab_stash only via new -stash, not automatically;\n\t B::C is better.\n\tldopts -std only when modules are given.\n\tfix for empty options.\n\tadd -sharedxs, -sharedlib; -shared is now for shared linkage,\n\t -sharedlib to create a shared lib (was -shared before but never worked),\n\t -sharedxs to also link shared xsubs, no run-time DynaLoader/XSLoader needed.\n\n", "style" => "*", "text" => "perlcc (2.06): grab_stash only via new -stash, not automatically; B::C is better. ldopts -std only when modules are given. fix for empty options. add -sharedxs, -sharedlib; -shared is now for shared linkage, -sharedlib to create a shared lib (was -shared before but never worked), -sharedxs to also link shared xsubs, no run-time DynaLoader/XSLoader needed." } ], "line" => 895, "note" => "rurban", "raw" => "1.10\t2009-12-29 rurban\n", "raw_date" => "2009-12-29", "version" => "1.10" }, { "date" => "2009-12-27", "entries" => [ { "line" => 913, "raw" => "\t* C.pm: Cut down the number of AUTOLOAD'ed optrees, search only on\n\t empty gv->cv (31).\n\tAdded very unsafe -O4/-fcop to eliminate most cops and file + line numbers.\n\tAdded faster -fav-init to -O2, less unneeded av_extend().\n\tGet rid of fbm_compile (11). Only 5.8.9 is broken.\n", "style" => "*", "text" => "C.pm: Cut down the number of AUTOLOAD'ed optrees, search only on empty gv->cv (31). Added very unsafe -O4/-fcop to eliminate most cops and file + line numbers. Added faster -fav-init to -O2, less unneeded av_extend(). Get rid of fbm_compile (11). Only 5.8.9 is broken." }, { "line" => 918, "raw" => "\t* CC.pm (1.02): partially fix eval \"\" for >=5.8.9, wrong CORE cc_runtime.h\n\t definition. (test 29 - eval \"\")\n", "style" => "*", "text" => "CC.pm (1.02): partially fix eval \"\" for >=5.8.9, wrong CORE cc_runtime.h definition. (test 29 - eval \"\")" }, { "line" => 920, "raw" => "\t* t/test.pl, t/c*.t: Simplify C/CC testsuite.\n", "style" => "*", "text" => "t/test.pl, t/c*.t: Simplify C/CC testsuite." }, { "line" => 921, "raw" => "\t* t/testc.sh: fixed -E\n\tAdded -o for orig, no -Mblib\n", "style" => "*", "text" => "t/testc.sh: fixed -E Added -o for orig, no -Mblib" }, { "line" => 923, "raw" => "\t* t/c_o3.t, t/c_o4.t: added\n\n", "style" => "*", "text" => "t/c_o3.t, t/c_o4.t: added" } ], "line" => 912, "note" => "rurban", "raw" => "1.09\t2009-12-27 rurban\n", "raw_date" => "2009-12-27", "version" => "1.09" }, { "date" => "2009-12-23", "entries" => [ { "line" => 926, "raw" => "\tAdapt coding guidelines, add C and cperl coda. Reformat sources.\n\n", "style" => "", "text" => "Adapt coding guidelines, add C and cperl coda. Reformat sources." }, { "line" => 928, "raw" => "\t* C.pm: Detect AUTOLOAD and CLONE (test 27 and 31).\n\t 5.10 is now the best release for unoptimized B::C. 5.8 is faster optimized,\n\t but misses some autoloaded xsubs.\n\t Simplify PVMG exclusion; all non-magical, not just PAD_OUR, as in Bytecode.\n", "style" => "*", "text" => "C.pm: Detect AUTOLOAD and CLONE (test 27 and 31). 5.10 is now the best release for unoptimized B::C. 5.8 is faster optimized, but misses some autoloaded xsubs. Simplify PVMG exclusion; all non-magical, not just PAD_OUR, as in Bytecode." }, { "line" => 932, "raw" => "\t* Bytecode.pm (1.04): Add missing BM logic to GV >= 5.10. Fixes test 11.\n\tFixed op_pmflags logic for 5.10 threaded only, no += 2. Fixes test 2.\n\tProtect empty match from setting op_reflags. Fixes test 20.\n\tAdd perlversion to the -S generated header.\n\tDocument more options -TI, -TF, -u\n", "style" => "*", "text" => "Bytecode.pm (1.04): Add missing BM logic to GV >= 5.10. Fixes test 11. Fixed op_pmflags logic for 5.10 threaded only, no += 2. Fixes test 2. Protect empty match from setting op_reflags. Fixes test 20. Add perlversion to the -S generated header. Document more options -TI, -TF, -u" }, { "line" => 937, "raw" => "\t* perlcc: improve help. use Pod::Usage as module, not via cmdline.\n\tfix previous installation quirks.\n", "style" => "*", "text" => "perlcc: improve help. use Pod::Usage as module, not via cmdline. fix previous installation quirks." }, { "line" => 939, "raw" => "\t* assemble: improve pod. make it installable.\n", "style" => "*", "text" => "assemble: improve pod. make it installable." }, { "line" => 940, "raw" => "\t* disassemble: make it installable.\n", "style" => "*", "text" => "disassemble: make it installable." }, { "line" => 941, "raw" => "\t* cc_harness: ditto.\n", "style" => "*", "text" => "cc_harness: ditto." }, { "line" => 942, "raw" => "\t* Makefile.PL: added script/* as EXE_FILES to install them.\n", "style" => "*", "text" => "Makefile.PL: added script/* as EXE_FILES to install them." }, { "line" => 943, "raw" => "\t* t/TESTS, t/testc.sh, t/testplc.sh: test 31 non-xs AUTOLOAD added\n", "style" => "*", "text" => "t/TESTS, t/testc.sh, t/testplc.sh: test 31 non-xs AUTOLOAD added" }, { "line" => 944, "raw" => "\t* ByteLoader/Makefile: tuning, bytecode.h triggers now byterun.c\n", "style" => "*", "text" => "ByteLoader/Makefile: tuning, bytecode.h triggers now byterun.c" }, { "line" => 945, "raw" => "\t* bytecode.h: Specialize pregcomp on 5.10; add PL_regex_pad[0] for\n\t pregcomp if missing. fixes tests 3,4,5,7,31 on 5.10.\n\n", "style" => "*", "text" => "bytecode.h: Specialize pregcomp on 5.10; add PL_regex_pad[0] for pregcomp if missing. fixes tests 3,4,5,7,31 on 5.10." } ], "line" => 925, "note" => "rurban", "raw" => "1.08\t2009-12-23 rurban\n", "raw_date" => "2009-12-23", "version" => "1.08" }, { "date" => "2009-12-19", "entries" => [ { "line" => 949, "raw" => "\t* C.pm: fix fbm_compile (INDEX) for >= 5.10. gv_list is already a pointer.\n\t rewrite PVGV (ie PVBM) init for >= 5.10. (test 11)\n\tAdded CV->save_magic (untested)\n\tFixed two wrong my decelarations detected by the new Od debugger.\n", "style" => "*", "text" => "C.pm: fix fbm_compile (INDEX) for >= 5.10. gv_list is already a pointer. rewrite PVGV (ie PVBM) init for >= 5.10. (test 11) Added CV->save_magic (untested) Fixed two wrong my decelarations detected by the new Od debugger." }, { "line" => 953, "raw" => "\t* README: Clarify DIFFERENCES section for CC only. Esp. the\n\tContext of \"..\" section. New test 30\n", "style" => "*", "text" => "README: Clarify DIFFERENCES section for CC only. Esp. the Context of \"..\" section. New test 30" }, { "line" => 955, "raw" => "\t* t/TESTS, t/testc.sh, t/testplc.sh: test 30 added for Context of \"..\"\n", "style" => "*", "text" => "t/TESTS, t/testc.sh, t/testplc.sh: test 30 added for Context of \"..\"" }, { "line" => 956, "raw" => "\t* t/testc.sh: fix -k logic, keep .pl for -O tests\n\n", "style" => "*", "text" => "t/testc.sh: fix -k logic, keep .pl for -O tests" } ], "line" => 948, "note" => "rurban", "raw" => "1.07\t2009-12-19 rurban\n", "raw_date" => "2009-12-19", "version" => "1.07" }, { "date" => "2009-12-18", "entries" => [ { "line" => 959, "raw" => "\tGoing public on the Perl birthday\n", "style" => "", "text" => "Going public on the Perl birthday" }, { "line" => 960, "raw" => "\tThe first public compiler re-release since it was removed from CORE.\n\n", "style" => "", "text" => "The first public compiler re-release since it was removed from CORE." }, { "line" => 962, "raw" => "\t* C.pm: Had to disable -O1 -fcog (pv_copy_on_grow) on 5.10 and higher\n\t until I find out how to fool S_unshare_hek_or_pvn. This fixes all C\n\t -O1 and -O2 tests. Warn about this.\n\tFix wrong RV init on *5.10* for test 29 also, as with 5.11.\n\tSimplify __DATA__ handling. Warn when -O3 or -fsava-data is missing.\n\t Enable working -fsava-data on 5.8 and 5.10 threaded. Fixes couple of tests 15.\n\tFix 5.8/5.10 PVMG pv = &PL_sv_undef for empty comppadnames\n", "style" => "*", "text" => "C.pm: Had to disable -O1 -fcog (pv_copy_on_grow) on 5.10 and higher until I find out how to fool S_unshare_hek_or_pvn. This fixes all C -O1 and -O2 tests. Warn about this. Fix wrong RV init on *5.10* for test 29 also, as with 5.11. Simplify __DATA__ handling. Warn when -O3 or -fsava-data is missing. Enable working -fsava-data on 5.8 and 5.10 threaded. Fixes couple of tests 15. Fix 5.8/5.10 PVMG pv = &PL_sv_undef for empty comppadnames" }, { "line" => 969, "raw" => "\t* t/testc.sh: -k keep added. Delete temporaries on PASS as new default.\n\t-E added. Dump preprocessed source file with cc -E as _E.c (was default before)\n", "style" => "*", "text" => "t/testc.sh: -k keep added. Delete temporaries on PASS as new default. -E added. Dump preprocessed source file with cc -E as _E.c (was default before)" }, { "line" => 971, "raw" => "\t* Version bump to official:\n\t B::C 1.06 (1.05 is in 5.8.9)\n\t B::CC 1.01\n\t B::Bytecode 1.03\n\t B::Asmdata 1.03\n\t B::Assembler 0.09\n\t B::Disassembler 1.06\n\t B::Bblock 1.03\n\t ByteLoader 0.07\n\n", "style" => "*", "text" => "Version bump to official: B::C 1.06 (1.05 is in 5.8.9) B::CC 1.01 B::Bytecode 1.03 B::Asmdata 1.03 B::Assembler 0.09 B::Disassembler 1.06 B::Bblock 1.03 ByteLoader 0.07" } ], "line" => 958, "note" => "rurban", "raw" => "1.06\t2009-12-18 rurban\n", "raw_date" => "2009-12-18", "version" => "1.06" }, { "date" => "2009-12-17", "entries" => [ { "line" => 982, "raw" => "\t* t/cc*.t: skip some memory eating failing tests.\n", "style" => "*", "text" => "t/cc*.t: skip some memory eating failing tests." }, { "line" => 983, "raw" => "\t* MANIFEST: dummy lib/B/Asmdata.pm added to fix cpan smokes on BSD.\n\tThanks to Slaven Rezic.\n", "style" => "*", "text" => "MANIFEST: dummy lib/B/Asmdata.pm added to fix cpan smokes on BSD. Thanks to Slaven Rezic." }, { "line" => 985, "raw" => "\t* C.pm: fix tests 14,16,23 on >=5.10, missing AV magic for\n\t CV main::a, protect PVMG from SvPAD_OUR.\n\tfix wrong RV init on 5.11 for test 29\n", "style" => "*", "text" => "C.pm: fix tests 14,16,23 on >=5.10, missing AV magic for CV main::a, protect PVMG from SvPAD_OUR. fix wrong RV init on 5.11 for test 29" }, { "line" => 988, "raw" => "\t* CC.pm: fix ARGS >=5.10 (in require, test 28).\n\tEnable quiet. No -q for quiet, just -v (verbose) or any -D switch turns\n\t on verbose.\n", "style" => "*", "text" => "CC.pm: fix ARGS >=5.10 (in require, test 28). Enable quiet. No -q for quiet, just -v (verbose) or any -D switch turns on verbose." }, { "line" => 991, "raw" => "\t* t/testc.sh: Added test 27 (import), test 28 (require), test 29 (use)\n", "style" => "*", "text" => "t/testc.sh: Added test 27 (import), test 28 (require), test 29 (use)" }, { "line" => 992, "raw" => "\t[Nick Koston]\n\n", "style" => "[]", "text" => "Nick Koston" } ], "line" => 981, "note" => "rurban", "raw" => "1.04_33\t2009-12-17 rurban\n", "raw_date" => "2009-12-17", "version" => "1.04_33" }, { "date" => "2009-12-14", "entries" => [ { "line" => 995, "raw" => "\tOnly two 5.10 B::C bugs remaining!\n\n", "style" => "", "text" => "Only two 5.10 B::C bugs remaining!" }, { "line" => 997, "raw" => "\t* C.pm: added missing FBM logic to GV >= 5.10 (test 11).\n\tForbid MAGIC on non-magival SVs >= 5.10 (tests 14 + 23).\n\tSpecial PVMG PL_sv_undef string. (namesv problem on 10,14,23)\n\n", "style" => "*", "text" => "C.pm: added missing FBM logic to GV >= 5.10 (test 11). Forbid MAGIC on non-magival SVs >= 5.10 (tests 14 + 23). Special PVMG PL_sv_undef string. (namesv problem on 10,14,23)" } ], "line" => 994, "note" => "rurban", "raw" => "1.04_32\t2009-12-14 rurban\n", "raw_date" => "2009-12-14", "version" => "1.04_32" }, { "date" => "2009-12-14", "entries" => [ { "line" => 1002, "raw" => "\t* C.pm: fix test 21 on 5.10 \"Bad free() ignored\". Dynamically\n\tallocate CopLABEL.\n", "style" => "*", "text" => "C.pm: fix test 21 on 5.10 \"Bad free() ignored\". Dynamically allocate CopLABEL." }, { "line" => 1004, "raw" => "\t* Makefile.PL: fix the make depend section > 5.9\n", "style" => "*", "text" => "Makefile.PL: fix the make depend section > 5.9" }, { "line" => 1005, "raw" => "\t* t/testc.sh: fix -D option\n\n", "style" => "*", "text" => "t/testc.sh: fix -D option" } ], "line" => 1001, "note" => "rurban", "raw" => "1.04_31\t2009-12-14 rurban\n", "raw_date" => "2009-12-14", "version" => "1.04_31" }, { "date" => "2009-12-13", "entries" => [ { "line" => 1008, "raw" => "\tBetter 5.6 support, but Bytecode compiler still disabled.\n", "style" => "", "text" => "Better 5.6 support, but Bytecode compiler still disabled." }, { "line" => 1009, "raw" => "\tNot even the Byteloader works for 5.6 assembled code. The Disassembler\n", "style" => "", "text" => "Not even the Byteloader works for 5.6 assembled code. The Disassembler" }, { "line" => 1010, "raw" => "\tdoes not stop at ret. Fixed several C tests.\n\n", "style" => "", "text" => "does not stop at ret. Fixed several C tests." }, { "line" => 1012, "raw" => "\t* bytecode.pl: renumbering policy: <= 5.6 squeeze, >= 5.8 fixed\n\tto force exact bytecode numbering as with 5.8.\n\tAllow float versions, such as 10.001 for subreleases.\n\n", "style" => "*", "text" => "bytecode.pl: renumbering policy: <= 5.6 squeeze, >= 5.8 fixed to force exact bytecode numbering as with 5.8. Allow float versions, such as 10.001 for subreleases." }, { "line" => 1016, "raw" => "\tAdd perlversion to header.\n", "style" => "", "text" => "Add perlversion to header." }, { "line" => 1017, "raw" => "\tAdd byteorder check logic.\n\n", "style" => "", "text" => "Add byteorder check logic." }, { "line" => 1019, "raw" => "\tAdded logic to include all possible unsupported ops, all holes.\n", "style" => "", "text" => "Added logic to include all possible unsupported ops, all holes." }, { "line" => 1020, "raw" => "\tbytecode table checked for 5.6.1, 5.6.2, 5.8.0, 5.8.1-5.11\n", "style" => "", "text" => "bytecode table checked for 5.6.1, 5.6.2, 5.8.0, 5.8.1-5.11" }, { "line" => 1021, "raw" => "\tNote, that I found official and contradicting 5.6.1 releases.\n", "style" => "", "text" => "Note, that I found official and contradicting 5.6.1 releases." }, { "line" => 1022, "raw" => "\tActiveState 5.6.1.626 had no op_children, the unix release tarball\n", "style" => "", "text" => "ActiveState 5.6.1.626 had no op_children, the unix release tarball" }, { "line" => 1023, "raw" => "\twith 5.6.1 (called Trial 1) still has it.\n\n", "style" => "", "text" => "with 5.6.1 (called Trial 1) still has it." }, { "line" => 1025, "raw" => "\t* ByteLoader.pm (1.06_06): better bytecode numbering.\n", "style" => "*", "text" => "ByteLoader.pm (1.06_06): better bytecode numbering." }, { "line" => 1026, "raw" => "\t* Asmdata.pm (1.02_02): strict numbering along 5.8.\n\tUnsupported ops are now also included, with PUT method 0.\n", "style" => "*", "text" => "Asmdata.pm (1.02_02): strict numbering along 5.8. Unsupported ops are now also included, with PUT method 0." }, { "line" => 1028, "raw" => "\t* Assembler.pm (0.07_07): Add perlversion to header\n", "style" => "*", "text" => "Assembler.pm (0.07_07): Add perlversion to header" }, { "line" => 1029, "raw" => "\t* Disassembler.pm (1.05_04): Add perlversion to header.\n\tPrint header only for existing.\n", "style" => "*", "text" => "Disassembler.pm (1.05_04): Add perlversion to header. Print header only for existing." }, { "line" => 1031, "raw" => "\t* BcVersions/Asm*.pm, BcVersions.pod: added for most versions with the\n\tCORE compiler.\n", "style" => "*", "text" => "BcVersions/Asm*.pm, BcVersions.pod: added for most versions with the CORE compiler." }, { "line" => 1033, "raw" => "\t* disassemble: Make it work with the older Disassembler.\n\tMake it work with older bytecode >= 5.8 via Asmdata unsupported ops.\n", "style" => "*", "text" => "disassemble: Make it work with the older Disassembler. Make it work with older bytecode >= 5.8 via Asmdata unsupported ops." }, { "line" => 1035, "raw" => "\t* i386.xs, jitcompiler.pl: removed (seperate module)\n", "style" => "*", "text" => "i386.xs, jitcompiler.pl: removed (seperate module)" }, { "line" => 1036, "raw" => "\t* bytecode.h, C.xs: Fixed for 5.6, tested with 5.6.1 with MSVC.\n", "style" => "*", "text" => "bytecode.h, C.xs: Fixed for 5.6, tested with 5.6.1 with MSVC." }, { "line" => 1037, "raw" => "\t* bytecode.h, byterun.c: add static int force = 0. Override it to 1 to\n\ttry out executing older bytecodes.\n\n", "style" => "*", "text" => "bytecode.h, byterun.c: add static int force = 0. Override it to 1 to try out executing older bytecodes." }, { "line" => 1040, "raw" => "\t* C.pm: fix test 16 on 5.10 again, non-threaded only (GVAV magic).\n\t first fix in 1.04_24, broken in 1.04_28. On 5.11 I have a broken\n\t RV handling here.\n\tRemove version and Regexp::DESTROY from the automatic methods\n\t(experimental).\n\tFirst attempts with pv and hek consting failed.\n", "style" => "*", "text" => "C.pm: fix test 16 on 5.10 again, non-threaded only (GVAV magic). first fix in 1.04_24, broken in 1.04_28. On 5.11 I have a broken RV handling here. Remove version and Regexp::DESTROY from the automatic methods (experimental). First attempts with pv and hek consting failed." }, { "line" => 1046, "raw" => "\t* t/testc.sh, t/testplc.sh: support proper cmdline arguments, add -h for\n\thelp\n\tFixed test 5 by fixing the wrong test.\n", "style" => "*", "text" => "t/testc.sh, t/testplc.sh: support proper cmdline arguments, add -h for help Fixed test 5 by fixing the wrong test." }, { "line" => 1049, "raw" => "\t* perloptree.pod: renamed from perloptreeguts.pod. Added links.\n\n", "style" => "*", "text" => "perloptree.pod: renamed from perloptreeguts.pod. Added links." } ], "line" => 1007, "note" => "rurban", "raw" => "1.04_30 2009-12-13 rurban\n", "raw_date" => "2009-12-13", "version" => "1.04_30" }, { "date" => "2009-12-07", "entries" => [ { "line" => 1052, "raw" => "\tDisable the Bytecode compiler for 5.6. Fixed besides the __DATA__ handle\n\t (test 15) all remaining 5.8 C bugs.\n", "style" => "", "text" => "Disable the Bytecode compiler for 5.6. Fixed besides the __DATA__ handle (test 15) all remaining 5.8 C bugs." }, { "line" => 1054, "raw" => "\t* C.pm: assign the PVX of GV also for empty stashes (main::) to avoid\n\t destruction failures at Perl_pad_undef() SvPVX_const(namesv) == '&'.\n\tFixes tests 14 and 23\n", "style" => "*", "text" => "C.pm: assign the PVX of GV also for empty stashes (main::) to avoid destruction failures at Perl_pad_undef() SvPVX_const(namesv) == '&'. Fixes tests 14 and 23" }, { "line" => 1057, "raw" => "\t* byterun.c: No assert on empty bs_sv, it is &PL_sv_undef.\n\tMap missing -Dv on 5.6 to -Df i.e. -D256\n\tAdded better debugging output: setter values.\n", "style" => "*", "text" => "byterun.c: No assert on empty bs_sv, it is &PL_sv_undef. Map missing -Dv on 5.6 to -Df i.e. -D256 Added better debugging output: setter values." }, { "line" => 1060, "raw" => "\t* STATUS: re-run CORE tests, list cmdlines, update status\n", "style" => "*", "text" => "STATUS: re-run CORE tests, list cmdlines, update status" }, { "line" => 1061, "raw" => "\t* Disassembler.pm: added gen_header_hash() for gen_header output.\n\t add to documentation.\n", "style" => "*", "text" => "Disassembler.pm: added gen_header_hash() for gen_header output. add to documentation." }, { "line" => 1063, "raw" => "\t* Bytecode.pm: -S uses gen_header_hash for gen_header output.\n\n", "style" => "*", "text" => "Bytecode.pm: -S uses gen_header_hash for gen_header output." } ], "line" => 1051, "note" => "rurban", "raw" => "1.04_29 2009-12-07 rurban\n", "raw_date" => "2009-12-07", "version" => "1.04_29" }, { "date" => "2009-12-06", "entries" => [ { "line" => 1066, "raw" => "\t* C.pm: fix -fcog (Copy on Grow with -O1 and -O2) for >= 5.10 by a new\n\t SVPV.\n\tStatically initialize PVs with a union layout trick. Use char* as first\n\t union member.\n\tRevert xpvcv+svsect changes to pre-initialize those structs against\n\t gvcv recursion.\n", "style" => "*", "text" => "C.pm: fix -fcog (Copy on Grow with -O1 and -O2) for >= 5.10 by a new SVPV. Statically initialize PVs with a union layout trick. Use char* as first union member. Revert xpvcv+svsect changes to pre-initialize those structs against gvcv recursion." }, { "line" => 1072, "raw" => "\t* t/b.t, t/o.t, t/stash.t: fix tests for 5.6.2\n", "style" => "*", "text" => "t/b.t, t/o.t, t/stash.t: fix tests for 5.6.2" }, { "line" => 1073, "raw" => "\t* bytecode.c: byteorder swab only if same length.\n\t1234 => 4321, 12345678 => 87654321.\n\tSkip a 0x prefix for byteorder in the header. Perl 5.6 had this.\n", "style" => "*", "text" => "bytecode.c: byteorder swab only if same length. 1234 => 4321, 12345678 => 87654321. Skip a 0x prefix for byteorder in the header. Perl 5.6 had this." }, { "line" => 1076, "raw" => "\t* Assembler.pm (0.07_06): 5.6 byteorder fix: until 5.6 the\n\t \$Config{byteorder} was falsely dependent on ivsize, we need longsize.\n\tAdd 0x to byteorder in header again, as with 5.6.\n", "style" => "*", "text" => "Assembler.pm (0.07_06): 5.6 byteorder fix: until 5.6 the \$Config{byteorder} was falsely dependent on ivsize, we need longsize. Add 0x to byteorder in header again, as with 5.6." }, { "line" => 1079, "raw" => "\t* t/testc.sh: do not run old leftovers. some 5.6 optimizations\n", "style" => "*", "text" => "t/testc.sh: do not run old leftovers. some 5.6 optimizations" }, { "line" => 1080, "raw" => "\t* t/c_o1.t, t/c_o2.t, t/cc_o2.t, t/cc_o2.t: added\n", "style" => "*", "text" => "t/c_o1.t, t/c_o2.t, t/cc_o2.t, t/cc_o2.t: added" }, { "line" => 1081, "raw" => "\t* t/test.pl: support -O1 and -O2\n", "style" => "*", "text" => "t/test.pl: support -O1 and -O2" }, { "line" => 1082, "raw" => "\t* broke ByteLoader\n\n", "style" => "*", "text" => "broke ByteLoader" } ], "line" => 1065, "note" => "rurban", "raw" => "1.04_28 2009-12-06 rurban\n", "raw_date" => "2009-12-06", "version" => "1.04_28" }, { "date" => "2009-12-04", "entries" => [ { "line" => 1085, "raw" => "\t* CC.pm (1.02_03): fixed endless loop in optimized sort. The sortcv\n\t cmp needed a return NULL (test 19).\n", "style" => "*", "text" => "CC.pm (1.02_03): fixed endless loop in optimized sort. The sortcv cmp needed a return NULL (test 19)." }, { "line" => 1087, "raw" => "\t* c.t, cc.t: add failing tests as TODOs\n\n", "style" => "*", "text" => "c.t, cc.t: add failing tests as TODOs" } ], "line" => 1084, "note" => "rurban", "raw" => "1.04_27 2009-12-04 rurban\n", "raw_date" => "2009-12-04", "version" => "1.04_27" }, { "date" => "2009-12-02", "entries" => [ { "line" => 1090, "raw" => "\t* C.pm: remove nv->IVX for 5.10 (Can't locate object method \"IVX\" via\n\t package \"B::NV\").\n\tprotect mg->OBJ when SCALAR (Can't call method \"save\" on unblessed\n\t reference).\n\tfix NV isa IV, to fix test 23 (Nick Koston).\n\tfix CopLABEL for 5.11 (test 21)\n\tfix PMOP extflags, esp. for split on >= 5.10 (test 5 + 7)\n\tadd fbm_compile() to BM::save >= 5.8 (test 11) (Nick Koston)\n", "style" => "*", "text" => "C.pm: remove nv->IVX for 5.10 (Can't locate object method \"IVX\" via package \"B::NV\"). protect mg->OBJ when SCALAR (Can't call method \"save\" on unblessed reference). fix NV isa IV, to fix test 23 (Nick Koston). fix CopLABEL for 5.11 (test 21) fix PMOP extflags, esp. for split on >= 5.10 (test 5 + 7) add fbm_compile() to BM::save >= 5.8 (test 11) (Nick Koston)" }, { "line" => 1098, "raw" => "\t* t/c.t, t/testc.sh: added tests 23, 24 (Nick Koston)\n", "style" => "*", "text" => "t/c.t, t/testc.sh: added tests 23, 24 (Nick Koston)" }, { "line" => 1099, "raw" => "\t* Bytecode.pm (1.02_04), bytecode.h: store and set PMOP reflags\n\t as U32. Fixes tests 2-4,7\n\tStart of backporting Perl 5.6\n\n", "style" => "*", "text" => "Bytecode.pm (1.02_04), bytecode.h: store and set PMOP reflags as U32. Fixes tests 2-4,7 Start of backporting Perl 5.6" } ], "line" => 1089, "note" => "rurban", "raw" => "1.04_26 2009-12-02 rurban\n", "raw_date" => "2009-12-02", "version" => "1.04_26" }, { "date" => "2009-11-30", "entries" => [ { "line" => 1104, "raw" => "\t* C.pm: fixed IO for 5.11: LINES => IVX.\n\tspecialize GvLINES = -1 and protect against U32 signed-ness.\n\tfixed test 8 main::AUTOLOAD (unoptimized only)\n", "style" => "*", "text" => "C.pm: fixed IO for 5.11: LINES => IVX. specialize GvLINES = -1 and protect against U32 signed-ness. fixed test 8 main::AUTOLOAD (unoptimized only)" }, { "line" => 1107, "raw" => "\t* t/test.pl: enable -Mblib for all Perl versions.\n\tfix 5.6.2 ldopts by explicit checking of (-lperl|CORE\\/libperl5).\n\tmake test works now for 5.6.2\n", "style" => "*", "text" => "t/test.pl: enable -Mblib for all Perl versions. fix 5.6.2 ldopts by explicit checking of (-lperl|CORE\\/libperl5). make test works now for 5.6.2" }, { "line" => 1110, "raw" => "\t* t/cc.t: adapt TODOs\n", "style" => "*", "text" => "t/cc.t: adapt TODOs" }, { "line" => 1111, "raw" => "\t* t/c.t: add TODOs 15 for 5.6\n", "style" => "*", "text" => "t/c.t: add TODOs 15 for 5.6" }, { "line" => 1112, "raw" => "\t* script/perlcc: a.exe for cygwin also\n\n", "style" => "*", "text" => "script/perlcc: a.exe for cygwin also" } ], "line" => 1103, "note" => "rurban", "raw" => "1.04_25 2009-11-30 rurban\n", "raw_date" => "2009-11-30", "version" => "1.04_25" }, { "date" => "2009-11-29", "entries" => [ { "line" => 1115, "raw" => "\t* C.pm: fixed more CV basics (test 9), just stash for autoload missing\n\t(test 8).\n\tPVLV adjusted, but no testcase yet.\n\tIO adjusted. Fixes test 4.\n\tre-enabled Perl 5.6, all tests but 8,15 pass with t/testc.sh. make test not.\n\tadded option -DO, more OP info than with -Do.\n\tadded saving \"main::\" CVs. Fixes test 16.\n\tFixed PMOP op_pmreplroot for >= 5.10 (for SUBST). No test\n", "style" => "*", "text" => "C.pm: fixed more CV basics (test 9), just stash for autoload missing (test 8). PVLV adjusted, but no testcase yet. IO adjusted. Fixes test 4. re-enabled Perl 5.6, all tests but 8,15 pass with t/testc.sh. make test not. added option -DO, more OP info than with -Do. added saving \"main::\" CVs. Fixes test 16. Fixed PMOP op_pmreplroot for >= 5.10 (for SUBST). No test" }, { "line" => 1123, "raw" => "\t* t/TESTS, t/testc.sh: added 20 for qr// bug in 5.10\n", "style" => "*", "text" => "t/TESTS, t/testc.sh: added 20 for qr// bug in 5.10" }, { "line" => 1124, "raw" => "\t* t/c.t: remove TODO status from tests 14-16\n\n", "style" => "*", "text" => "t/c.t: remove TODO status from tests 14-16" } ], "line" => 1114, "note" => "rurban", "raw" => "1.04_24 2009-11-29 rurban\n", "raw_date" => "2009-11-29", "version" => "1.04_24" }, { "date" => "2009-11-22", "entries" => [ { "line" => 1127, "raw" => "\t* yapc_bratislava08.pod: title fix\n", "style" => "*", "text" => "yapc_bratislava08.pod: title fix" }, { "line" => 1128, "raw" => "\t* SIGNATURE: added\n", "style" => "*", "text" => "SIGNATURE: added" }, { "line" => 1129, "raw" => "\t* C.pm: GvGP handling improved. added more sect comments.\n\tadded -u option \"unused\" not to print verbose debugging info\n\tfor unused subs.\n\tFixed CV XPVCVIX initialisation - off-by-one error, wrong CvFLAGS.\n\tFixes test 6.\n", "style" => "*", "text" => "C.pm: GvGP handling improved. added more sect comments. added -u option \"unused\" not to print verbose debugging info for unused subs. Fixed CV XPVCVIX initialisation - off-by-one error, wrong CvFLAGS. Fixes test 6." }, { "line" => 1134, "raw" => "\t* run perltidy -i=2\n\n", "style" => "*", "text" => "run perltidy -i=2" } ], "line" => 1126, "note" => "rurban", "raw" => "1.04_23 2009-11-22 rurban\n", "raw_date" => "2009-11-22", "version" => "1.04_23" }, { "date" => "2009-11-16", "entries" => [ { "line" => 1137, "raw" => "\t* C.pm, CC.pm: fixed illegal pad in ASSERT_CURPAD_ACTIVE(\"pad_sv\")\n\twith DEBUGGING.\tSimply forgot to set PL_comppad\n\n", "style" => "*", "text" => "C.pm, CC.pm: fixed illegal pad in ASSERT_CURPAD_ACTIVE(\"pad_sv\") with DEBUGGING.\tSimply forgot to set PL_comppad" } ], "line" => 1136, "note" => "rurban", "raw" => "1.04_22 2009-11-16 rurban\n", "raw_date" => "2009-11-16", "version" => "1.04_22" }, { "date" => "2009-11-07", "entries" => [ { "line" => 1141, "raw" => "\t* yapc_bratislava08.pod: added\n", "style" => "*", "text" => "yapc_bratislava08.pod: added" }, { "line" => 1142, "raw" => "\t* C.pm: fixed CALLREGCOMP >=5.10 by using dynamic newSVpvn as in ByteLoader\n\n", "style" => "*", "text" => "C.pm: fixed CALLREGCOMP >=5.10 by using dynamic newSVpvn as in ByteLoader" } ], "line" => 1140, "note" => "rurban", "raw" => "1.04_21 2009-11-07 rurban\n", "raw_date" => "2009-11-07", "version" => "1.04_21" }, { "date" => "2008-06-25", "entries" => [ { "line" => 1145, "raw" => "\t* t/TESTS: numbered.\n", "style" => "*", "text" => "t/TESTS: numbered." }, { "line" => 1146, "raw" => "\t* t/TESTS: added sub FETCHSIZE to test 16. required now\n", "style" => "*", "text" => "t/TESTS: added sub FETCHSIZE to test 16. required now" }, { "line" => 1147, "raw" => "\t* C.pm, CC.pm: change debug globals to hash.\n", "style" => "*", "text" => "C.pm, CC.pm: change debug globals to hash." }, { "line" => 1148, "raw" => "\t* C.pm: Fix B::RV::save for 5.10\n", "style" => "*", "text" => "C.pm: Fix B::RV::save for 5.10" }, { "line" => 1149, "raw" => "\t* CC.pm: 5.10 fixed GvSV to GvSVn (PERL_DONT_CREATE_GVSV), fix cc test 3+4 crash\n", "style" => "*", "text" => "CC.pm: 5.10 fixed GvSV to GvSVn (PERL_DONT_CREATE_GVSV), fix cc test 3+4 crash" }, { "line" => 1150, "raw" => "\t* Artistic, Copying: added. Clarified perl license.\n", "style" => "*", "text" => "Artistic, Copying: added. Clarified perl license." }, { "line" => 1151, "raw" => "\t* Bytecode.pm: fixed IO=>PVNV problem in test 15.\n", "style" => "*", "text" => "Bytecode.pm: fixed IO=>PVNV problem in test 15." }, { "line" => 1152, "raw" => "\t* bytecode.pl, bytecode.h: rewrote gp_sv and gp_file setters\n\twith x (special setters). Fixes unshare hek assert in test 15, and force\n\tcreation of GVSV.\n", "style" => "*", "text" => "bytecode.pl, bytecode.h: rewrote gp_sv and gp_file setters with x (special setters). Fixes unshare hek assert in test 15, and force creation of GVSV." }, { "line" => 1155, "raw" => "\t* Assembler.pm 0.07_05: cygwin text-mount fixes with \\r\\n\n", "style" => "*", "text" => "Assembler.pm 0.07_05: cygwin text-mount fixes with \\r\\n" }, { "line" => 1156, "raw" => "\t* t/testplc.sh, t/testc.sh: require bash, accept testnumber args\n", "style" => "*", "text" => "t/testplc.sh, t/testc.sh: require bash, accept testnumber args" }, { "line" => 1157, "raw" => "\t* Asmdata.pm: fix PORTABILITY docs\n", "style" => "*", "text" => "Asmdata.pm: fix PORTABILITY docs" }, { "line" => 1158, "raw" => "\t* t/testc.sh: -Bdynamic: link to shared libperl\n", "style" => "*", "text" => "t/testc.sh: -Bdynamic: link to shared libperl" }, { "line" => 1159, "raw" => "\t* cc_harness: simplify. fixed for -Bdynamic -E\n\n", "style" => "*", "text" => "cc_harness: simplify. fixed for -Bdynamic -E" } ], "line" => 1144, "note" => "rurban", "raw" => "1.04_20 2008-06-25 rurban\n", "raw_date" => "2008-06-25", "version" => "1.04_20" }, { "date" => "2008-06-08", "entries" => [ { "line" => 1162, "raw" => "\t* CC.pm: CXt_LOOP check rewrite, use now CxTYPE_no_LOOP()\n", "style" => "*", "text" => "CC.pm: CXt_LOOP check rewrite, use now CxTYPE_no_LOOP()" }, { "line" => 1163, "raw" => "\t* CC.pm, t/*.t: useithreads, not usethreads\n", "style" => "*", "text" => "CC.pm, t/*.t: useithreads, not usethreads" }, { "line" => 1164, "raw" => "\t* bytecode.t, test.pl: TODO handling: do not print \"ok 1 #\"\n", "style" => "*", "text" => "bytecode.t, test.pl: TODO handling: do not print \"ok 1 #\"" }, { "line" => 1165, "raw" => "\t* b.t: fixed skip logic, better skip message\n", "style" => "*", "text" => "b.t: fixed skip logic, better skip message" }, { "line" => 1166, "raw" => "\t* Bblock: fixed to work without B::Concise (5.6.2)\n", "style" => "*", "text" => "Bblock: fixed to work without B::Concise (5.6.2)" }, { "line" => 1167, "raw" => "\t* C.xs: add PM_GETRE for 5.6.2 and earlier\n", "style" => "*", "text" => "C.xs: add PM_GETRE for 5.6.2 and earlier" }, { "line" => 1168, "raw" => "\t* CC.pm: Fix PP_EVAL hack from 1.04_18\n", "style" => "*", "text" => "CC.pm: Fix PP_EVAL hack from 1.04_18" }, { "line" => 1169, "raw" => "\t* Bytecode: fixed IO::SUBPROCESS error (test 15)\n", "style" => "*", "text" => "Bytecode: fixed IO::SUBPROCESS error (test 15)" }, { "line" => 1170, "raw" => "\t* cc_harness: check static libperl.a, else try dynamic. Support -E\n", "style" => "*", "text" => "cc_harness: check static libperl.a, else try dynamic. Support -E" }, { "line" => 1171, "raw" => "\t* ByteLoader: support different byteorders (Disassembler not yet)\n", "style" => "*", "text" => "ByteLoader: support different byteorders (Disassembler not yet)" }, { "line" => 1172, "raw" => "\t* ByteLoader, Assembler, bytecode.pl: add archflags to header, relax\n\t platform strictness.\n", "style" => "*", "text" => "ByteLoader, Assembler, bytecode.pl: add archflags to header, relax platform strictness." }, { "line" => 1174, "raw" => "\t* t/stash.t fixed for 5.10\n", "style" => "*", "text" => "t/stash.t fixed for 5.10" }, { "line" => 1175, "raw" => "\t* Disassembler: added hashref return for get_header in scalar context.\n", "style" => "*", "text" => "Disassembler: added hashref return for get_header in scalar context." }, { "line" => 1176, "raw" => "\t* Bytecode: fixed compiler crash/assertions for GV without GP (test 11)\n\n", "style" => "*", "text" => "Bytecode: fixed compiler crash/assertions for GV without GP (test 11)" } ], "line" => 1161, "note" => "rurban", "raw" => "1.04_19 2008-06-08 rurban\n", "raw_date" => "2008-06-08", "version" => "1.04_19" }, { "date" => "2008-06-04", "entries" => [ { "line" => 1179, "raw" => "\t* Fixed t/assembler.t on 5.6.2\n", "style" => "*", "text" => "Fixed t/assembler.t on 5.6.2" }, { "line" => 1180, "raw" => "\t* Added ByteLoader::unimport (from 5.6.2)\n", "style" => "*", "text" => "Added ByteLoader::unimport (from 5.6.2)" }, { "line" => 1181, "raw" => "\t* ByteLoader: Fixed bytecode crashes for 5.10+5.11 in 2-5,7 by\n\t removing PMf_COMPILETIME from op_pmflags. Reason: empty\n\t check_substr in INTUIT. (6 still failing)\n", "style" => "*", "text" => "ByteLoader: Fixed bytecode crashes for 5.10+5.11 in 2-5,7 by removing PMf_COMPILETIME from op_pmflags. Reason: empty check_substr in INTUIT. (6 still failing)" }, { "line" => 1184, "raw" => "\t* ByteLoader: Fixes for 5.11 by using PM_SETRE (test 7 still failing)\n", "style" => "*", "text" => "ByteLoader: Fixes for 5.11 by using PM_SETRE (test 7 still failing)" }, { "line" => 1185, "raw" => "\t* Bytecode: removed op_reflags. pregcomp with op_pmflags alone\n\t is enough to reconstruct it.\n", "style" => "*", "text" => "Bytecode: removed op_reflags. pregcomp with op_pmflags alone is enough to reconstruct it." }, { "line" => 1187, "raw" => "\t* C,CC: enabled static_ext + DynaLoader boot section again. Fixed in\n\tcygperl.\n", "style" => "*", "text" => "C,CC: enabled static_ext + DynaLoader boot section again. Fixed in cygperl." }, { "line" => 1189, "raw" => "\t* CC: fixed Bug#55302 PP_EVAL by adding PP_EVAL_thr for threaded perl.\n\t cc_runtime.h was always wrong on this!\n\n", "style" => "*", "text" => "CC: fixed Bug#55302 PP_EVAL by adding PP_EVAL_thr for threaded perl. cc_runtime.h was always wrong on this!" } ], "line" => 1178, "note" => "rurban", "raw" => "1.04_18 2008-06-04 rurban\n", "raw_date" => "2008-06-04", "version" => "1.04_18" }, { "date" => "2008-04-20", "entries" => [ { "line" => 1193, "raw" => "\tAdded Fedora Core 1 as test system (5.6.2, 5.8.3, 5.11.0\@33708 + valgrind)\n", "style" => "", "text" => "Added Fedora Core 1 as test system (5.6.2, 5.8.3, 5.11.0\@33708 + valgrind)" }, { "line" => 1194, "raw" => "\t* ByteLoader: Fixed broken BYTEORDER check (for 32int)\n", "style" => "*", "text" => "ByteLoader: Fixed broken BYTEORDER check (for 32int)" }, { "line" => 1195, "raw" => "\t* ByteLoader: Remove allowing older versions until we have\n\t an opcode table for older versions.\n", "style" => "*", "text" => "ByteLoader: Remove allowing older versions until we have an opcode table for older versions." }, { "line" => 1197, "raw" => "\t* ByteLoader: Fixed SIGSEGV with older gcc (3.3.2) at\n\t bstate->bs_obj_list[0] = NULL\n", "style" => "*", "text" => "ByteLoader: Fixed SIGSEGV with older gcc (3.3.2) at bstate->bs_obj_list[0] = NULL" }, { "line" => 1199, "raw" => "\t* ByteLoader, C.xs: Newx() support and more for older perl's.\n\t Tested with 5.8.3\n", "style" => "*", "text" => "ByteLoader, C.xs: Newx() support and more for older perl's. Tested with 5.8.3" }, { "line" => 1201, "raw" => "\t* bytecode.pl: Fixed <11 op_reflags (double definition)\n", "style" => "*", "text" => "bytecode.pl: Fixed <11 op_reflags (double definition)" }, { "line" => 1202, "raw" => "\t* bytecode.pl: Support 8-10 version syntax (op_pmstash, cop_io)\n", "style" => "*", "text" => "bytecode.pl: Support 8-10 version syntax (op_pmstash, cop_io)" }, { "line" => 1203, "raw" => "\t* Makefile.PL: added MKPATH blib/bin\n", "style" => "*", "text" => "Makefile.PL: added MKPATH blib/bin" }, { "line" => 1204, "raw" => "\t* added ByteLoader/ppport.h\n", "style" => "*", "text" => "added ByteLoader/ppport.h" }, { "line" => 1205, "raw" => "\t* fixed t/stash.t for 5.11\n\n", "style" => "*", "text" => "fixed t/stash.t for 5.11" } ], "line" => 1192, "note" => "rurban", "raw" => "1.04_17 2008-04-20 rurban\n", "raw_date" => "2008-04-20", "version" => "1.04_17" }, { "date" => "2008-04-14", "entries" => [ { "line" => 1208, "raw" => "\t* ByteLoader: Fix PL_tokenbuf for older perls without PL_parser\n", "style" => "*", "text" => "ByteLoader: Fix PL_tokenbuf for older perls without PL_parser" }, { "entries" => [ { "line" => 1210, "raw" => "\t * Consistent in -v verbose and not verbose.\n", "style" => "*", "text" => "Consistent in -v verbose and not verbose." }, { "line" => 1211, "raw" => "\t * Workaround for invalid pad in save_context.\n", "style" => "*", "text" => "Workaround for invalid pad in save_context." }, { "line" => 1212, "raw" => "\t * Added -Dp for verbose package cache printing.\n", "style" => "*", "text" => "Added -Dp for verbose package cache printing." }, { "line" => 1213, "raw" => "\t * -v verbose adds more generated comments: op struct fields\n", "style" => "*", "text" => "-v verbose adds more generated comments: op struct fields" } ], "line" => 1209, "raw" => "\t* B::C: walkoptree_slow for verbose statistics op_count.\n", "style" => "*", "text" => "B::C: walkoptree_slow for verbose statistics op_count." }, { "line" => 1214, "raw" => "\t* Fixed cop_label for 5.11 (Change #33656)\n", "style" => "*", "text" => "Fixed cop_label for 5.11 (Change #33656)" }, { "line" => 1215, "raw" => "\t* Fixed make subdirs-test error in 5.8.8\n", "style" => "*", "text" => "Fixed make subdirs-test error in 5.8.8" }, { "line" => 1216, "raw" => "\t* Fixed RT#52920 \"invalid cop_free of nullified cop\" for B::C\n\n", "style" => "*", "text" => "Fixed RT#52920 \"invalid cop_free of nullified cop\" for B::C" } ], "line" => 1207, "note" => "rurban", "raw" => "1.04_16 2008-04-14 rurban\n", "raw_date" => "2008-04-14", "version" => "1.04_16" }, { "date" => "2008-04-11", "entries" => [ { "line" => 1219, "raw" => "\tHighlights: bytecode and ByteLoader portability preparation and\n", "style" => "", "text" => "Highlights: bytecode and ByteLoader portability preparation and" }, { "line" => 1220, "raw" => "\tcommented disassembler output. PVGV and new REGEX still broken.\n", "style" => "", "text" => "commented disassembler output. PVGV and new REGEX still broken." }, { "line" => 1221, "raw" => "\tFixes for no ithreads.\n\n", "style" => "", "text" => "Fixes for no ithreads." }, { "line" => 1223, "raw" => " * Fixed verbose Bytecode for old B::Concise (5.8.8). t/testplc.sh\n\t failed before.\n", "style" => "*", "text" => "Fixed verbose Bytecode for old B::Concise (5.8.8). t/testplc.sh failed before." }, { "line" => 1225, "raw" => "\t* ByteLoader: Work on portability (different arch, version and sizes).\n\t Added bl_header.\n\t Changed macro BYTECODE_HEADER_CHECK to function bytecode_header_check().\n\t Fixes for no threads.\n", "style" => "*", "text" => "ByteLoader: Work on portability (different arch, version and sizes). Added bl_header. Changed macro BYTECODE_HEADER_CHECK to function bytecode_header_check(). Fixes for no threads." }, { "line" => 1229, "raw" => "\t* bytecode.h: pregcomp fix for 5.10 w/o threads\n\t (Thanks to david\@cantrell.org.uk for his cpantest for netbsd).\n\t use xpv_cur and not xpv_len for the rx length (len - 1) to strip off\n\t the ending nul byte.\n\t 5.10: new minlen check aborts\n", "style" => "*", "text" => "bytecode.h: pregcomp fix for 5.10 w/o threads (Thanks to david\@cantrell.org.uk for his cpantest for netbsd). use xpv_cur and not xpv_len for the rx length (len - 1) to strip off the ending nul byte. 5.10: new minlen check aborts" }, { "line" => 1234, "raw" => "\t* ByteLoader security: added strconst maxsize flag to bytecode.pl\n\t for buffer overflow checks.\n", "style" => "*", "text" => "ByteLoader security: added strconst maxsize flag to bytecode.pl for buffer overflow checks." }, { "line" => 1236, "raw" => "\t* Bytecode -DA for devel assertions of absolute or probably wrong opindex\n\t pointers (nyi)\n", "style" => "*", "text" => "Bytecode -DA for devel assertions of absolute or probably wrong opindex pointers (nyi)" }, { "line" => 1238, "raw" => "\t* disassemble, B::Assembler: commented output, similar to -MO=Bytecode,-S\n\t Added backwards option --bare for older assemblers.\n", "style" => "*", "text" => "disassemble, B::Assembler: commented output, similar to -MO=Bytecode,-S Added backwards option --bare for older assemblers." }, { "line" => 1240, "raw" => "\t* assemble, disassemble: added pod\n", "style" => "*", "text" => "assemble, disassemble: added pod" }, { "line" => 1241, "raw" => "\t* B::Disassembler:\n\t Provide default printers print_insn (commented) and print_insn_bare.\n\t Portability: Use the header settings from the .plc and not the current\n\t perl settings.\n", "style" => "*", "text" => "B::Disassembler: Provide default printers print_insn (commented) and print_insn_bare. Portability: Use the header settings from the .plc and not the current perl settings." }, { "line" => 1245, "raw" => "\t* B::Assembler 0.07_03, B::Disassembler 1.05_02, ByteLoader 0.06_03:\n\t Added longsize to the bytecode header, just for xcv_depth.\n", "style" => "*", "text" => "B::Assembler 0.07_03, B::Disassembler 1.05_02, ByteLoader 0.06_03: Added longsize to the bytecode header, just for xcv_depth." }, { "line" => 1247, "raw" => "\t* B::Debug 1.05_03: Fixes for no threads.\n", "style" => "*", "text" => "B::Debug 1.05_03: Fixes for no threads." }, { "line" => 1248, "raw" => "\t* Makefile.PL: Fixed script/perlcc.PL dependency\n\t make: *** No rule to make target `script/perlcc', needed by\n\t `blib/bin/perlcc'.\n\t (Thanks to david\@cantrell.org.uk for his cpantest for solaris)\n", "style" => "*", "text" => "Makefile.PL: Fixed script/perlcc.PL dependency make: *** No rule to make target `script/perlcc', needed by `blib/bin/perlcc'. (Thanks to david\@cantrell.org.uk for his cpantest for solaris)" }, { "line" => 1252, "raw" => "\t* Added test TODO's, Added perloptreeguts.pod\n\n", "style" => "*", "text" => "Added test TODO's, Added perloptreeguts.pod" } ], "line" => 1218, "note" => "rurban", "raw" => "1.04_15 2008-04-11 rurban\n", "raw_date" => "2008-04-11", "version" => "1.04_15" }, { "date" => "2008-03-24", "entries" => [ { "line" => 1256, "raw" => " * Fixed some 1.04_13 +x executable permissions in docs. Windows habits.\n\n", "style" => "*", "text" => "Fixed some 1.04_13 +x executable permissions in docs. Windows habits." } ], "line" => 1254, "note" => "rurban", "raw" => "1.04_14 2008-03-24 rurban\n\n", "raw_date" => "2008-03-24", "version" => "1.04_14" }, { "date" => "2008-03-24", "entries" => [ { "line" => 1260, "raw" => "\t* Fixed B::C pv init in 5.10. Forgot refcnt and flags.\n", "style" => "*", "text" => "Fixed B::C pv init in 5.10. Forgot refcnt and flags." }, { "line" => 1261, "raw" => "\t* Added \"Other perl to exe compilers\" section to perlcompile.pod.\n \t This is even a FAQ.\n", "style" => "*", "text" => "Added \"Other perl to exe compilers\" section to perlcompile.pod. This is even a FAQ." }, { "line" => 1263, "raw" => "\t* Added the NOTES to perlcompile.pod\n", "style" => "*", "text" => "Added the NOTES to perlcompile.pod" }, { "line" => 1264, "raw" => "\t* Added temp. perloptreeguts.pod. In work, also at the wiki.\n", "style" => "*", "text" => "Added temp. perloptreeguts.pod. In work, also at the wiki." }, { "line" => 1265, "raw" => "\t* Fixed Bytecode op_pmflags assertions.\n", "style" => "*", "text" => "Fixed Bytecode op_pmflags assertions." }, { "line" => 1266, "raw" => " * Added orangesect for enough regexp space in RE's sv_any.\n\t Engine not initialized though.\n", "style" => "*", "text" => "Added orangesect for enough regexp space in RE's sv_any. Engine not initialized though." }, { "line" => 1268, "raw" => "\t* Hangs in C/CC executables at an op_free(PL_main_root) trying to free\n the static op structs because the earlier op_seq -1 hack is gone now,\n\t and opt_static was replaced by opt_latefree. Set now opt_latefree = 1.\n This fixed tests 1 and 13. Slowly making progress step by step.\n\n", "style" => "*", "text" => "Hangs in C/CC executables at an op_free(PL_main_root) trying to free the static op structs because the earlier op_seq -1 hack is gone now, and opt_static was replaced by opt_latefree. Set now opt_latefree = 1. This fixed tests 1 and 13. Slowly making progress step by step." } ], "line" => 1258, "note" => "rurban", "raw" => "1.04_13 2008-03-24 rurban\n\n", "raw_date" => "2008-03-24", "version" => "1.04_13" }, { "date" => "2008-03-16", "entries" => [ { "line" => 1275, "raw" => "\t* Fixed bug #40435 CC: Can't locate object method \"_save_common_middle\"\n\t via package \"B::FAKEOP\"\n", "style" => "*", "text" => "Fixed bug #40435 CC: Can't locate object method \"_save_common_middle\" via package \"B::FAKEOP\"" }, { "line" => 1277, "raw" => "\t* move tests from [bc]*.t into shared TESTS file.\n", "style" => "*", "text" => "move tests from [bc]*.t into shared TESTS file." }, { "line" => 1278, "raw" => "\t* fixed remaining ugly Bytecode bug in B::AV::bsave\n\t\t\$_ = \$_->ix for \@array.\n\t Now we are at the same state as with 5.9.4\n", "style" => "*", "text" => "fixed remaining ugly Bytecode bug in B::AV::bsave \$_ = \$_->ix for \@array. Now we are at the same state as with 5.9.4" }, { "line" => 1281, "raw" => "\t* fixed wrong bc cop_warning cast for 5.8\n", "style" => "*", "text" => "fixed wrong bc cop_warning cast for 5.8" }, { "line" => 1282, "raw" => "\t* fixed CC pmreplroot and pmreplstart fields\n", "style" => "*", "text" => "fixed CC pmreplroot and pmreplstart fields" }, { "line" => 1283, "raw" => "\t* make C and CC less verbose, honor -v, -q ignored.\n\n", "style" => "*", "text" => "make C and CC less verbose, honor -v, -q ignored." } ], "line" => 1273, "note" => "rurban (first upload)", "raw" => "1.04_12 2008-03-16 rurban (first upload)\n\n", "raw_date" => "2008-03-16", "version" => "1.04_12" }, { "date" => "2008-03-09", "entries" => [ { "line" => 1287, "raw" => "\t* removed Jit and Asm stuff. Maybe as seperate packages somewhen.\n\t But targeting PIR makes more sense.\n", "style" => "*", "text" => "removed Jit and Asm stuff. Maybe as seperate packages somewhen. But targeting PIR makes more sense." }, { "line" => 1289, "raw" => "\t* added STATUS\n", "style" => "*", "text" => "added STATUS" }, { "line" => 1290, "raw" => "\t* added old Changes from the new git clone repo by Sam Vilain\n", "style" => "*", "text" => "added old Changes from the new git clone repo by Sam Vilain" }, { "line" => 1291, "raw" => "\t* fix C cop\n", "style" => "*", "text" => "fix C cop" }, { "line" => 1292, "raw" => " * fix C savepvn apparently\n", "style" => "*", "text" => "fix C savepvn apparently" }, { "line" => 1293, "raw" => " * work on HV init - crashes at invalid entry\n", "style" => "*", "text" => "work on HV init - crashes at invalid entry" }, { "line" => 1294, "raw" => "\t* use run_cc_test\n\n", "style" => "*", "text" => "use run_cc_test" } ], "line" => 1285, "note" => "rurban", "raw" => "1.04_11 2008-03-09 rurban\n\n", "raw_date" => "2008-03-09", "version" => "1.04_11" }, { "date" => "2008-02-26", "entries" => [ { "line" => 1298, "raw" => "\t* change bc pvx access\n\t dummy struct bytestate_xpv, so pv has the same fields as with 5.8,\n\t seperated from the sv. The sv is seperated from the pv.\n\t TODO: different strategy for B::C, must link xpv to sv\n", "style" => "*", "text" => "change bc pvx access dummy struct bytestate_xpv, so pv has the same fields as with 5.8, seperated from the sv. The sv is seperated from the pv. TODO: different strategy for B::C, must link xpv to sv" }, { "line" => 1302, "raw" => "\t* add and parse Assembler comments\n", "style" => "*", "text" => "add and parse Assembler comments" }, { "line" => 1303, "raw" => "\t* add Bytecode comments to -S output unless -q\n", "style" => "*", "text" => "add Bytecode comments to -S output unless -q" }, { "line" => 1304, "raw" => "\t* change op_reflags from U16 to U32\n", "style" => "*", "text" => "change op_reflags from U16 to U32" }, { "line" => 1305, "raw" => "\t* guarantee ByteLoader backwards compatibility: Accept lower versions also.\n\n", "style" => "*", "text" => "guarantee ByteLoader backwards compatibility: Accept lower versions also." } ], "line" => 1296, "note" => "rurban", "raw" => "1.04_10 2008-02-26 rurban\n\n", "raw_date" => "2008-02-26", "version" => "1.04_10" }, { "date" => "2008-02-25", "entries" => [ { "line" => 1308, "raw" => "\t* restored 5.8 backwards compatibility, mainly for test comparison.\n\t CPAN installation will abort.\n", "style" => "*", "text" => "restored 5.8 backwards compatibility, mainly for test comparison. CPAN installation will abort." }, { "line" => 1310, "raw" => "\t* make t/test*.sh PERL independent\n", "style" => "*", "text" => "make t/test*.sh PERL independent" }, { "line" => 1311, "raw" => "\t* fixed B::C GV init crashes (SvPOK assertion)\n", "style" => "*", "text" => "fixed B::C GV init crashes (SvPOK assertion)" }, { "line" => 1312, "raw" => "\t* added B::C RE section\n", "style" => "*", "text" => "added B::C RE section" }, { "line" => 1313, "raw" => "\t* fixed B::C xpvcv and xpvnv section\n", "style" => "*", "text" => "fixed B::C xpvcv and xpvnv section" }, { "line" => 1314, "raw" => "\t* comment Bytecode -S nice ops to re-assemble them without errors\n", "style" => "*", "text" => "comment Bytecode -S nice ops to re-assemble them without errors" }, { "line" => 1315, "raw" => "\t* added new asm opcode op_reflags\n", "style" => "*", "text" => "added new asm opcode op_reflags" }, { "line" => 1316, "raw" => "\t* removed Bytecode cop_arybase for 5.10\n", "style" => "*", "text" => "removed Bytecode cop_arybase for 5.10" }, { "line" => 1317, "raw" => "\t* 5.8 compatibility: fixed bytecode.pl versioning, Asmdata creation\n\t (exact same for 5.8.8), asmdata.t, b.t tests\n", "style" => "*", "text" => "5.8 compatibility: fixed bytecode.pl versioning, Asmdata creation (exact same for 5.8.8), asmdata.t, b.t tests" }, { "line" => 1319, "raw" => "\t* improved make clean\n", "style" => "*", "text" => "improved make clean" }, { "line" => 1320, "raw" => "\t* add ByteLoader -Dt and -Dv debugging\n", "style" => "*", "text" => "add ByteLoader -Dt and -Dv debugging" }, { "line" => 1321, "raw" => "\t* don't link against jit code against possible sideeffects\n", "style" => "*", "text" => "don't link against jit code against possible sideeffects" }, { "line" => 1322, "raw" => "\t* fixed c.t and cc.t tests\n\n", "style" => "*", "text" => "fixed c.t and cc.t tests" } ], "line" => 1307, "note" => "rurban", "raw" => "1.04_09 2008-02-25 rurban\n", "raw_date" => "2008-02-25", "version" => "1.04_09" }, { "date" => "2008-02-22", "entries" => [ { "line" => 1325, "raw" => "\t* fixed t/b.t tests for 5.11 (REGEXP, ref RV => IV)\n", "style" => "*", "text" => "fixed t/b.t tests for 5.11 (REGEXP, ref RV => IV)" }, { "line" => 1326, "raw" => "\t* fixed Makefile.PL deps to ignore the interim .pl files\n", "style" => "*", "text" => "fixed Makefile.PL deps to ignore the interim .pl files" }, { "line" => 1327, "raw" => "\t* added PMOP reflags\n", "style" => "*", "text" => "added PMOP reflags" }, { "line" => 1328, "raw" => "\t* added madprop to B-1.18_01 and B::C (if provided by B)\n", "style" => "*", "text" => "added madprop to B-1.18_01 and B::C (if provided by B)" }, { "line" => 1329, "raw" => "\t* enhanced B::Debug 1.05_02\n", "style" => "*", "text" => "enhanced B::Debug 1.05_02" }, { "line" => 1330, "raw" => "\t* fixed B::C PL_cshlen (already initialized since 5.10)\n", "style" => "*", "text" => "fixed B::C PL_cshlen (already initialized since 5.10)" }, { "line" => 1331, "raw" => "\t* fixed B::C GvFILE\n", "style" => "*", "text" => "fixed B::C GvFILE" }, { "line" => 1332, "raw" => "\t* fixed various (SV)xpv list casts and inits,\n", "style" => "*", "text" => "fixed various (SV)xpv list casts and inits," }, { "line" => 1333, "raw" => "\t* fixed B::C xpvnv_list for 5.10\n", "style" => "*", "text" => "fixed B::C xpvnv_list for 5.10" }, { "line" => 1334, "raw" => "\t* fixed B::C xpvio_list for 5.10\n", "style" => "*", "text" => "fixed B::C xpvio_list for 5.10" }, { "line" => 1335, "raw" => "\t* fixed B::C pmopsect for 5.11\n", "style" => "*", "text" => "fixed B::C pmopsect for 5.11" }, { "line" => 1336, "raw" => "\t* bootstrap also all \$Config{static_ext}, not only dynamic stashes\n\n", "style" => "*", "text" => "bootstrap also all \$Config{static_ext}, not only dynamic stashes" } ], "line" => 1324, "note" => "rurban", "raw" => "1.04_08 2008-02-22 rurban\n", "raw_date" => "2008-02-22", "version" => "1.04_08" }, { "date" => "2008-02-20", "entries" => [ { "line" => 1339, "raw" => "\t* moved bstate->bs_pv.xpv_pv slot to bs_pv.xiv_u.xivu_p1\n", "style" => "*", "text" => "moved bstate->bs_pv.xpv_pv slot to bs_pv.xiv_u.xivu_p1" }, { "line" => 1340, "raw" => "\t* fixed pv_free\n", "style" => "*", "text" => "fixed pv_free" }, { "line" => 1341, "raw" => "\t* added op_pmflags 2 to match PMOP\n", "style" => "*", "text" => "added op_pmflags 2 to match PMOP" }, { "line" => 1342, "raw" => "\t* moved B into lib/B\n", "style" => "*", "text" => "moved B into lib/B" }, { "line" => 1343, "raw" => "\t* fixed ByteLoader Makefile deps\n", "style" => "*", "text" => "fixed ByteLoader Makefile deps" }, { "line" => 1344, "raw" => "\t* added -DM flag to Bytecode backend\n", "style" => "*", "text" => "added -DM flag to Bytecode backend" }, { "line" => 1345, "raw" => "\t* added perlcompile.pod and Perl_5_Internals.htm\n\n", "style" => "*", "text" => "added perlcompile.pod and Perl_5_Internals.htm" } ], "line" => 1338, "note" => "rurban", "raw" => "1.04_07 2008-02-20 rurban\n", "raw_date" => "2008-02-20", "version" => "1.04_07" }, { "date" => "2008-02-19", "entries" => [ { "line" => 1348, "raw" => "\t* no crashes anymore for 5.10, just op_pmflags & PMf_ONCE assertions.\n", "style" => "*", "text" => "no crashes anymore for 5.10, just op_pmflags & PMf_ONCE assertions." }, { "line" => 1349, "raw" => "\t* blead\@32980 crashes in tests 11,16,17,18\n", "style" => "*", "text" => "blead\@32980 crashes in tests 11,16,17,18" }, { "line" => 1350, "raw" => "\t* enhanced B::Debug (no version bump)\n", "style" => "*", "text" => "enhanced B::Debug (no version bump)" }, { "line" => 1351, "raw" => "\t* fixed general op_list inits, and specials for av, hv\n", "style" => "*", "text" => "fixed general op_list inits, and specials for av, hv" }, { "line" => 1352, "raw" => "\t* almost fixed pv within sv handling\n", "style" => "*", "text" => "almost fixed pv within sv handling" }, { "line" => 1353, "raw" => "\t* added -O=C,-DS for SV debugging\n\n", "style" => "*", "text" => "added -O=C,-DS for SV debugging" } ], "line" => 1347, "note" => "rurban", "raw" => "1.04_06 2008-02-19 rurban\n", "raw_date" => "2008-02-19", "version" => "1.04_06" }, { "date" => "2008-02-18", "entries" => [ { "line" => 1356, "raw" => "\t* added t/test.pl and t/test*.sh to MANIFEST.\n", "style" => "*", "text" => "added t/test.pl and t/test*.sh to MANIFEST." }, { "line" => 1357, "raw" => "\t* fixed ByteLoader reading from the filter.\n", "style" => "*", "text" => "fixed ByteLoader reading from the filter." }, { "line" => 1358, "raw" => "\t* fixed -H .plc header parsing\n", "style" => "*", "text" => "fixed -H .plc header parsing" }, { "line" => 1359, "raw" => "\t* updated Bytecode options in NOTES and pod\n", "style" => "*", "text" => "updated Bytecode options in NOTES and pod" }, { "line" => 1360, "raw" => "\t* added -O=Bytecode,-v option\n", "style" => "*", "text" => "added -O=Bytecode,-v option" }, { "line" => 1361, "raw" => "\t* fixed PL_preprocess and SvREPADTMP_off for 5.11\n\n", "style" => "*", "text" => "fixed PL_preprocess and SvREPADTMP_off for 5.11" } ], "line" => 1355, "note" => "rurban", "raw" => "1.04_05 2008-02-18 rurban\n", "raw_date" => "2008-02-18", "version" => "1.04_05" }, { "date" => "2008-02-08", "entries" => [ { "line" => 1364, "raw" => "\t* added jitcompiler macros\n\n", "style" => "*", "text" => "added jitcompiler macros" } ], "line" => 1363, "note" => "rurban", "raw" => "1.04_04 2008-02-08 rurban\n", "raw_date" => "2008-02-08", "version" => "1.04_04" }, { "date" => "2008-02-05", "entries" => [ { "line" => 1367, "raw" => "\t* added Jit and Asm layout, fixed Makefile deps\n\n", "style" => "*", "text" => "added Jit and Asm layout, fixed Makefile deps" } ], "line" => 1366, "note" => "rurban", "raw" => "1.04_03 2008-02-05 rurban\n", "raw_date" => "2008-02-05", "version" => "1.04_03" }, { "date" => "2008-01-22", "entries" => [ { "line" => 1370, "raw" => "\t* removed from CORE, now on CPAN.\n", "style" => "*", "text" => "removed from CORE, now on CPAN." }, { "line" => 1371, "raw" => "\t* added byteorder to bytecode header.\n", "style" => "*", "text" => "added byteorder to bytecode header." }, { "line" => 1372, "raw" => "\t* added support for 5.10 (NOT WORKING!), 5.9.5 not tested.\n\t up to 5.8.x already in CORE, so disabled.\n\t add back support later, when C/CC is improved or more features\n\t are added.\n", "style" => "*", "text" => "added support for 5.10 (NOT WORKING!), 5.9.5 not tested. up to 5.8.x already in CORE, so disabled. add back support later, when C/CC is improved or more features are added." }, { "line" => 1376, "raw" => "\t* added type hekindex\n", "style" => "*", "text" => "added type hekindex" }, { "line" => 1377, "raw" => "\t* added c.t and cc.t tests\n", "style" => "*", "text" => "added c.t and cc.t tests" }, { "line" => 1378, "raw" => "\t* extended bytecode.pl format: added version logic\n\t to have strictly consecutive indices\n\n", "style" => "*", "text" => "extended bytecode.pl format: added version logic to have strictly consecutive indices" } ], "line" => 1369, "note" => "rurban (never uploaded)", "raw" => "1.04_02 2008-01-22 rurban (never uploaded)\n", "raw_date" => "2008-01-22", "version" => "1.04_02" }, { "date" => "2008-01-15", "entries" => [ { "line" => 1382, "raw" => "\t* first package layout for all now non-CORE packages.\n\n===================================================================\n\n", "style" => "*", "text" => "first package layout for all now non-CORE packages." }, { "line" => 1386, "raw" => "B::C was at 1.05 when removed from core with 5.9.4.\n\n", "style" => "", "text" => "B::C was at 1.05 when removed from core with 5.9.4." }, { "line" => 1388, "raw" => "Nicholas Clark 2007-05-07 15:35:56\n bytecode.pl: Exterminate!\n ext/B/B/Asmdata.pm: Exterminate!\n\n", "style" => "", "text" => "Nicholas Clark 2007-05-07 15:35:56 bytecode.pl: Exterminate! ext/B/B/Asmdata.pm: Exterminate!" }, { "line" => 1392, "raw" => "Nicholas Clark 2007-05-07 14:53:05\n Given that \@optype and \@specialsv_name are hard coded tables, it seems\n more logical for them to be in B.pm, rather than in the \"boilerplate\"\n for the machine generated B/Asmdata.pm\n\n", "style" => "", "text" => "Nicholas Clark 2007-05-07 14:53:05 Given that \@optype and \@specialsv_name are hard coded tables, it seems more logical for them to be in B.pm, rather than in the \"boilerplate\" for the machine generated B/Asmdata.pm" }, { "line" => 1397, "raw" => "Marcus Holland-Moritz 2004-08-29 13:22:48\n Fix typo in B::Assembler.\n\n", "style" => "", "text" => "Marcus Holland-Moritz 2004-08-29 13:22:48 Fix typo in B::Assembler." }, { "line" => 1400, "raw" => "Marcus Holland-Moritz 2004-08-29 13:21:50\n Skip ext/B/t/assembler.t when configured without B.\n\n", "style" => "", "text" => "Marcus Holland-Moritz 2004-08-29 13:21:50 Skip ext/B/t/assembler.t when configured without B." }, { "line" => 1403, "raw" => "Rafael Garcia-Suarez 2003-08-09 21:13:27\n Remove ByteLoader from the list of modules whose compilability should\n be tested : it's loaded (at runtime) by ext/B/t/bytecode.t (as Enache\n pointed out.)\n\n", "style" => "", "text" => "Rafael Garcia-Suarez 2003-08-09 21:13:27 Remove ByteLoader from the list of modules whose compilability should be tested : it's loaded (at runtime) by ext/B/t/bytecode.t (as Enache pointed out.)" }, { "line" => 1408, "raw" => "chromatic 2002-05-10 07:43:25\n added ext/B/t/o.t\n\n", "style" => "", "text" => "chromatic 2002-05-10 07:43:25 added ext/B/t/o.t" }, { "line" => 1411, "raw" => "Mattia Barbon 2002-01-12 00:29:48\n \@14216 B::C, perlcc.PL, B.xs, B.pm, t/TEST, C.xs\n Message-ID: <3C3F756C.4581.2E2A938\@localhost>\n B::C (1.01): added B::C::InitSection, ...\n\n", "style" => "", "text" => "Mattia Barbon 2002-01-12 00:29:48 \@14216 B::C, perlcc.PL, B.xs, B.pm, t/TEST, C.xs Message-ID: <3C3F756C.4581.2E2A938\@localhost> B::C (1.01): added B::C::InitSection, ..." }, { "line" => 1416, "raw" => "Mattia Barbon 2002-01-06 12:44:30\n \@14104 B, B::C, perlcc, t/TEST\n Message-ID: <3C38389E.7831.493570\@localhost>\n\n", "style" => "", "text" => "Mattia Barbon 2002-01-06 12:44:30 \@14104 B, B::C, perlcc, t/TEST Message-ID: <3C38389E.7831.493570\@localhost>" }, { "line" => 1420, "raw" => "Jarkko Hietaniemi 2001-12-21 14:42:31\n \@13830 packing I32 with L is not nice, need l; from Wolfgang Laun.\n\n", "style" => "", "text" => "Jarkko Hietaniemi 2001-12-21 14:42:31 \@13830 packing I32 with L is not nice, need l; from Wolfgang Laun." }, { "line" => 1423, "raw" => "Jarkko Hietaniemi 2001-12-19 16:59:02\n \@13807 One more embedded (?sx) de-embedded, from Wolfgang Laun.\n\n", "style" => "", "text" => "Jarkko Hietaniemi 2001-12-19 16:59:02 \@13807 One more embedded (?sx) de-embedded, from Wolfgang Laun." }, { "line" => 1426, "raw" => "Jarkko Hietaniemi 2001-12-19 15:25:27\n \@13802 B::Assembler/B::Disassembler patches and test;\n from Wolfgang Laun.\n TODO: getting perlcc working.\n\n", "style" => "", "text" => "Jarkko Hietaniemi 2001-12-19 15:25:27 \@13802 B::Assembler/B::Disassembler patches and test; from Wolfgang Laun. TODO: getting perlcc working." }, { "line" => 1431, "raw" => "Michael G. Schwern 2001-12-14 20:59:13\n \@13697 BBlock: Some weak docs\n Message-ID: <20011215005913.GC28596\@blackrider>\n\n", "style" => "", "text" => "Michael G. Schwern 2001-12-14 20:59:13 \@13697 BBlock: Some weak docs Message-ID: <20011215005913.GC28596\@blackrider>" }, { "line" => 1435, "raw" => "Michael G. Schwern 2001-12-14 20:14:14\n \@13695 Adding B::Asmdata docs\n Message-ID: <20011215001414.GA25077\@blackrider>\n\n", "style" => "", "text" => "Michael G. Schwern 2001-12-14 20:14:14 \@13695 Adding B::Asmdata docs Message-ID: <20011215001414.GA25077\@blackrider>" }, { "line" => 1439, "raw" => "Jarkko Hietaniemi 2001-11-29 02:22:02\n \@13346 Change \$=, \$., \$*, \$%, and \$- to be IVs instead of longs.\n\n", "style" => "", "text" => "Jarkko Hietaniemi 2001-11-29 02:22:02 \@13346 Change \$=, \$., \$*, \$%, and \$- to be IVs instead of longs." }, { "entries" => [ { "line" => 1447, "raw" => " (Stamped with v1.00)\n\n", "style" => "", "text" => "(Stamped with v1.00)" } ], "line" => 1442, "raw" => "Jarkko Hietaniemi 2001-11-16 01:38:41\n \@13034 Add the fruits of Larry Shatzer's version verifying script.\n (There are some straddlers, but they will be fixed in the\n upcoming releases of the modules.)\n\n", "style" => "", "text" => "Jarkko Hietaniemi 2001-11-16 01:38:41 \@13034 Add the fruits of Larry Shatzer's version verifying script. (There are some straddlers, but they will be fixed in the upcoming releases of the modules.)" }, { "line" => 1449, "raw" => "Jarkko Hietaniemi 2001-09-16 22:36:58\n \@12040 Stamp B::Assembler with v0.03\n\n", "style" => "", "text" => "Jarkko Hietaniemi 2001-09-16 22:36:58 \@12040 Stamp B::Assembler with v0.03" }, { "line" => 1452, "raw" => "Jarkko Hietaniemi 2001-07-01 17:20:38\n \@11061 Make 'compile' target a little less broken.\n Still very broken, though: -Wall warnings from\n the generated code, boot_Foo prototypes missing,\n can't autoload Fcntl::SEEK_CUR et alia, ...\n\n", "style" => "", "text" => "Jarkko Hietaniemi 2001-07-01 17:20:38 \@11061 Make 'compile' target a little less broken. Still very broken, though: -Wall warnings from the generated code, boot_Foo prototypes missing, can't autoload Fcntl::SEEK_CUR et alia, ..." }, { "line" => 1458, "raw" => "Jarkko Hietaniemi 2001-06-27 13:36:40\n \@10979 \"lose the looses\", from Abhijit Menon-Sen\n\n", "style" => "", "text" => "Jarkko Hietaniemi 2001-06-27 13:36:40 \@10979 \"lose the looses\", from Abhijit Menon-Sen" }, { "line" => 1461, "raw" => "Richard Soderberg 2001-06-21 09:01:22\n \@10780 Step 2: Use the new PM_GETRE/SETRE macros everywhere.\n Message-ID: \n\n", "style" => "", "text" => "Richard Soderberg 2001-06-21 09:01:22 \@10780 Step 2: Use the new PM_GETRE/SETRE macros everywhere. Message-ID: " }, { "line" => 1465, "raw" => "Gurusamy Sarathy 2001-03-19 08:07:09\n Subject: Re: sync sync sync: have I missed any patches?\n Replace djSP with dSP.\n\n", "style" => "", "text" => "Gurusamy Sarathy 2001-03-19 08:07:09 Subject: Re: sync sync sync: have I missed any patches? Replace djSP with dSP." }, { "entries" => [ { "line" => 1472, "raw" => " (Replaced by #8448) Traces of op_children (cleanup of #8442)\n\n", "style" => "", "text" => "(Replaced by #8448) Traces of op_children (cleanup of #8442)" }, { "line" => 1474, "raw" => " (Replaced by #8448) More op_children traces (cleanup of #8442).\n\n", "style" => "", "text" => "(Replaced by #8448) More op_children traces (cleanup of #8442)." }, { "line" => 1476, "raw" => " Subject: [PATCH #3 \@8436] Re: Eliminate op_children\n", "style" => "", "text" => "Subject: [PATCH #3 \@8436] Re: Eliminate op_children" }, { "line" => 1477, "raw" => " Replace #8444 and #8445.\n\n", "style" => "", "text" => "Replace #8444 and #8445." } ], "line" => 1469, "raw" => "Mark-Jason Dominus 2001-01-16 14:43:18\n Subject: [PATCH \@8436] Eliminate op_children\n\n", "style" => "", "text" => "Mark-Jason Dominus 2001-01-16 14:43:18 Subject: [PATCH \@8436] Eliminate op_children" }, { "line" => 1479, "raw" => "Gurusamy Sarathy 2001-01-30 14:20:24\n integrate changes#7984,7987,8010 from mainline (gets rid of\n dTHR which has been a noop for a while now, except for the\n compatibility definition in thread.h)\n \@8010 remove dTHR;\n\n", "style" => "", "text" => "Gurusamy Sarathy 2001-01-30 14:20:24 integrate changes#7984,7987,8010 from mainline (gets rid of dTHR which has been a noop for a while now, except for the compatibility definition in thread.h) \@8010 remove dTHR;" }, { "line" => 1485, "raw" => "Gurusamy Sarathy 2000-12-18 03:37:02\n \@7518 UNIVERSAL::can\n\n", "style" => "", "text" => "Gurusamy Sarathy 2000-12-18 03:37:02 \@7518 UNIVERSAL::can" }, { "entries" => [ { "line" => 1491, "raw" => " Fix of sorts for bug id 20000901.092. There seems to be no trace\n", "style" => "", "text" => "Fix of sorts for bug id 20000901.092. There seems to be no trace" }, { "line" => 1492, "raw" => " of a 'pmshort' anywhere in the B, so the offending line was simply\n", "style" => "", "text" => "of a 'pmshort' anywhere in the B, so the offending line was simply" }, { "line" => 1493, "raw" => " removed.\n\n", "style" => "", "text" => "removed." } ], "line" => 1488, "raw" => "Gurusamy Sarathy 2000-12-18 00:03:38\n Fix a couple of compiler-noted nits in #7235.\n\n", "style" => "", "text" => "Gurusamy Sarathy 2000-12-18 00:03:38 Fix a couple of compiler-noted nits in #7235." }, { "entries" => [ { "line" => 1499, "raw" => " Subject: [ID 20001003.006] B::Debug not -w clean\n\n", "style" => "", "text" => "Subject: [ID 20001003.006] B::Debug not -w clean" }, { "line" => 1501, "raw" => " Test harness update to sync with the new perlcc,\n", "style" => "", "text" => "Test harness update to sync with the new perlcc," }, { "line" => 1502, "raw" => " from Simon Cozens.\n\n", "style" => "", "text" => "from Simon Cozens." } ], "line" => 1495, "raw" => "Gurusamy Sarathy 2000-12-17 22:49:13\n Subject: [ID 20000928.002] perlcc & ByteCode.pm option mismatch\n Did not apply cleanly, manual intervention was needed.\n\n", "style" => "", "text" => "Gurusamy Sarathy 2000-12-17 22:49:13 Subject: [ID 20000928.002] perlcc & ByteCode.pm option mismatch Did not apply cleanly, manual intervention was needed." }, { "line" => 1504, "raw" => "Gurusamy Sarathy 2000-11-27 18:11:21\n Bytecompiler patches from Benjamin Stuhl.\n More bytecompiler.\n Subject: [PATCH blead] B:: missing dependency\n Byteloader 0.04\n\n", "style" => "", "text" => "Gurusamy Sarathy 2000-11-27 18:11:21 Bytecompiler patches from Benjamin Stuhl. More bytecompiler. Subject: [PATCH blead] B:: missing dependency Byteloader 0.04" }, { "line" => 1510, "raw" => "Gurusamy Sarathy 2000-11-27 13:53:18\n\tU8->U16 CvFLAGS(cv)\n\n", "style" => "", "text" => "Gurusamy Sarathy 2000-11-27 13:53:18 U8->U16 CvFLAGS(cv)" }, { "entries" => [ { "line" => 1514, "raw" => " * make re, Opcode, File::Glob and B threadsafe\n", "style" => "*", "text" => "make re, Opcode, File::Glob and B threadsafe" }, { "line" => 1515, "raw" => " * include XS_VERSION in MY_CXT_KEY (tweak for change#12652)\n\n", "style" => "*", "text" => "include XS_VERSION in MY_CXT_KEY (tweak for change#12652)" } ], "line" => 1513, "raw" => "Jarkko Hietaniemi 2001-10-25 18:07:58\n", "style" => "", "text" => "Jarkko Hietaniemi 2001-10-25 18:07:58" }, { "line" => 1517, "raw" => "Jarkko Hietaniemi 2001-04-05 04:00:33\n Integrate changes #9544,9547,9549(perlio),9550,9551 from\n maintperl into mainline.\n \"double\" should be \"NV\"; standard typemap is missing entry\n for NV\n\n", "style" => "", "text" => "Jarkko Hietaniemi 2001-04-05 04:00:33 Integrate changes #9544,9547,9549(perlio),9550,9551 from maintperl into mainline. \"double\" should be \"NV\"; standard typemap is missing entry for NV" }, { "line" => 1523, "raw" => "bailey 2000-02-09 09:09:45\n Resync with mainline\n\n", "style" => "", "text" => "bailey 2000-02-09 09:09:45 Resync with mainline" }, { "line" => 1526, "raw" => "Gurusamy Sarathy 2000-02-25 02:50:04\n \@5250 more Compiler tweaks for useithreads\n\n", "style" => "", "text" => "Gurusamy Sarathy 2000-02-25 02:50:04 \@5250 more Compiler tweaks for useithreads" }, { "line" => 1529, "raw" => "Gurusamy Sarathy 2000-02-21 08:02:16\n \@5178 get Compiler \"working\" under useithreads\n\n", "style" => "", "text" => "Gurusamy Sarathy 2000-02-21 08:02:16 \@5178 get Compiler \"working\" under useithreads" }, { "line" => 1532, "raw" => "Gurusamy Sarathy 2000-02-19 18:33:05\n \@5150 more B fixups to cope with empty GVs (these can only happen in pads)\n\n", "style" => "", "text" => "Gurusamy Sarathy 2000-02-19 18:33:05 \@5150 more B fixups to cope with empty GVs (these can only happen in pads)" }, { "line" => 1535, "raw" => "Gurusamy Sarathy 2000-02-18 04:57:43\n \@5125 Compiler fixups from Jan Dubois\n\n", "style" => "", "text" => "Gurusamy Sarathy 2000-02-18 04:57:43 \@5125 Compiler fixups from Jan Dubois" }, { "line" => 1538, "raw" => "Gurusamy Sarathy 2000-01-27 04:56:48\n \@4910 various pod nits identified by installhtml (all fixed except\n unresolved links)\n\n", "style" => "", "text" => "Gurusamy Sarathy 2000-01-27 04:56:48 \@4910 various pod nits identified by installhtml (all fixed except unresolved links)" }, { "line" => 1542, "raw" => "Gurusamy Sarathy 2000-01-26 20:10:26\n \@4905 s/STOP/CHECK/ blocks\n\n", "style" => "", "text" => "Gurusamy Sarathy 2000-01-26 20:10:26 \@4905 s/STOP/CHECK/ blocks" }, { "line" => 1545, "raw" => "bailey 2000-01-20 00:25:30\n \@4821 Quick integration of mainline changes to date\n\n", "style" => "", "text" => "bailey 2000-01-20 00:25:30 \@4821 Quick integration of mainline changes to date" }, { "line" => 1548, "raw" => "Gurusamy Sarathy 2000-01-06 11:51:07\n \@4763 fix various C-backend shenanigans\n\n", "style" => "", "text" => "Gurusamy Sarathy 2000-01-06 11:51:07 \@4763 fix various C-backend shenanigans" }, { "line" => 1551, "raw" => "Gurusamy Sarathy 1999-12-08 00:16:21\n \@4662 typos in change#4546\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-12-08 00:16:21 \@4662 typos in change#4546" }, { "line" => 1554, "raw" => "Gurusamy Sarathy 1999-12-03 07:52:50\n \@4631 support -a switch to append bytecode to an existing file and make\n perlcc use it (from Tom Hughes )\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-12-03 07:52:50 \@4631 support -a switch to append bytecode to an existing file and make perlcc use it (from Tom Hughes )" }, { "line" => 1558, "raw" => "Gurusamy Sarathy 1999-12-01 02:00:09\n \@4602 more complete pseudo-fork() support for Windows\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-12-01 02:00:09 \@4602 more complete pseudo-fork() support for Windows" }, { "line" => 1561, "raw" => "Gurusamy Sarathy 1999-11-11 11:32:54\n \@4546 avoid stash pointers in optree under USE_ITHREADS\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-11-11 11:32:54 \@4546 avoid stash pointers in optree under USE_ITHREADS" }, { "line" => 1564, "raw" => "Gurusamy Sarathy 1999-11-11 07:04:20\n \@4545 another change towards a shareable optree: avoid pointer to filegv\n in COP; revert parts of change#4485 and s/xcv_filegv/xcv_file/\n (CvFILE() may yet come in handy somewhere); adjust compiler doodads\n to suit\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-11-11 07:04:20 \@4545 another change towards a shareable optree: avoid pointer to filegv in COP; revert parts of change#4485 and s/xcv_filegv/xcv_file/ (CvFILE() may yet come in handy somewhere); adjust compiler doodads to suit" }, { "line" => 1570, "raw" => "Gurusamy Sarathy 1999-11-04 19:25:45\n \@4516 change#4485 didn't do the right thing for B::Bytecode\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-11-04 19:25:45 \@4516 change#4485 didn't do the right thing for B::Bytecode" }, { "line" => 1573, "raw" => "Gurusamy Sarathy 1999-11-04 18:28:29\n \@4515 implement STOP blocks and fix compiler to use them (minimally\n tested)\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-11-04 18:28:29 \@4515 implement STOP blocks and fix compiler to use them (minimally tested)" }, { "line" => 1577, "raw" => "Gurusamy Sarathy 1999-10-29 08:08:50\n \@4485 more cleanup: avoid unused knowledge of \"file GV\" notion in CV and GV\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-10-29 08:08:50 \@4485 more cleanup: avoid unused knowledge of \"file GV\" notion in CV and GV" }, { "line" => 1580, "raw" => "Gurusamy Sarathy 1999-10-29 05:00:21\n \@4484 usurp GVOP slot for new PADOP (one small step to making optree\n shareable across interpreters)\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-10-29 05:00:21 \@4484 usurp GVOP slot for new PADOP (one small step to making optree shareable across interpreters)" }, { "line" => 1584, "raw" => "Vishal Bhatia 1999-09-30 01:27:28\n \@4254 [patch _61] Minor corrections in C.pm\n Message-ID: \n\n", "style" => "", "text" => "Vishal Bhatia 1999-09-30 01:27:28 \@4254 [patch _61] Minor corrections in C.pm Message-ID: " }, { "line" => 1588, "raw" => "Charles Bailey 1999-09-29 04:21:31\n \@4249 resync with mainline 5.05_61\n (\$handle_VC_problem, \@4198: \$sv->REFCNT - 1)\n\n", "style" => "", "text" => "Charles Bailey 1999-09-29 04:21:31 \@4249 resync with mainline 5.05_61 (\$handle_VC_problem, \@4198: \$sv->REFCNT - 1)" }, { "line" => 1592, "raw" => "Vishal Bhatia 1999-08-25 02:31:33\n \@4198 add arenas for managing allocations of remaining xpv*v structures\n Message-ID: \n Subject: [PATCH 5.005_60] removing extra ref count (compiler)\n\n", "style" => "", "text" => "Vishal Bhatia 1999-08-25 02:31:33 \@4198 add arenas for managing allocations of remaining xpv*v structures Message-ID: Subject: [PATCH 5.005_60] removing extra ref count (compiler)" }, { "line" => 1597, "raw" => "Doug MacEachern 1999-07-25 17:49:00\n \@4129 B::clearsym\n\n", "style" => "", "text" => "Doug MacEachern 1999-07-25 17:49:00 \@4129 B::clearsym" }, { "line" => 1600, "raw" => "Vishal Bhatia 1999-08-11 03:43:28\n \@4095 applied suggested patch with suitable test to detect MSVC\n Message-ID: \n Subject: compiler on win32\n\n", "style" => "", "text" => "Vishal Bhatia 1999-08-11 03:43:28 \@4095 applied suggested patch with suitable test to detect MSVC Message-ID: Subject: compiler on win32" }, { "line" => 1605, "raw" => "Gurusamy Sarathy 1999-09-06 22:16:58\n \@4092 support bytecode and C backends in perlcc (patch suggested\n by Tom Hughes ); s/-opt/-noopt/ and make the\n C backend the default; describe new switches in pod; introduce\n PERLCC_OPTS and s/COMPILE_TIMEOUT/PERLCC_TIMEOUT/;\n s/COMPILE_TEST/HARNESS_COMPILE_TEST/; document these %ENV\n entries\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-09-06 22:16:58 \@4092 support bytecode and C backends in perlcc (patch suggested by Tom Hughes ); s/-opt/-noopt/ and make the C backend the default; describe new switches in pod; introduce PERLCC_OPTS and s/COMPILE_TIMEOUT/PERLCC_TIMEOUT/; s/COMPILE_TEST/HARNESS_COMPILE_TEST/; document these %ENV entries" }, { "line" => 1613, "raw" => "Nick Ing-Simmons 1999-08-08 15:53:57\n \@3925 Will now correctly re-call\n bootstrap \"Foo\";\n if requested. This should allow build on Win32 and other\n platforms where you cannot link to loadables directly.\n\n", "style" => "", "text" => "Nick Ing-Simmons 1999-08-08 15:53:57 \@3925 Will now correctly re-call bootstrap \"Foo\"; if requested. This should allow build on Win32 and other platforms where you cannot link to loadables directly." }, { "line" => 1619, "raw" => "Nick Ing-Simmons 1999-08-07 14:23:55\n \@3934 Vishal Bhatia \n [PATCH 5.005_60] fix for some obscure bugs (compiler)\n Message-ID: \n\n", "style" => "", "text" => "Nick Ing-Simmons 1999-08-07 14:23:55 \@3934 Vishal Bhatia [PATCH 5.005_60] fix for some obscure bugs (compiler) Message-ID: " }, { "line" => 1624, "raw" => "Nick Ing-Simmons 1999-08-07 14:19:46\n \@3933 B::C changes to get simple Tk app. compiling again\n\n", "style" => "", "text" => "Nick Ing-Simmons 1999-08-07 14:19:46 \@3933 B::C changes to get simple Tk app. compiling again" }, { "line" => 1627, "raw" => "Nathan Torkington 1999-08-05 23:25:47\n \@3927 Fix for Nathan's fix (#3920) from Guy Decoux.\n Subject: Bugfix for my bugfix\n Message-ID: <14250.21947.765134.940583\@localhost.frii.com>\n\n", "style" => "", "text" => "Nathan Torkington 1999-08-05 23:25:47 \@3927 Fix for Nathan's fix (#3920) from Guy Decoux. Subject: Bugfix for my bugfix Message-ID: <14250.21947.765134.940583\@localhost.frii.com>" }, { "line" => 1632, "raw" => "Nathan Torkington 1999-08-04 13:24:56\n \@3920 [5.005_60 PATCH] Make B::Bytecode work\n\n", "style" => "", "text" => "Nathan Torkington 1999-08-04 13:24:56 \@3920 [5.005_60 PATCH] Make B::Bytecode work" }, { "line" => 1635, "raw" => "Vishal Bhatia 1999-07-31 21:08:33\n \@3869 \"use constant\" in the compiler\n\n", "style" => "", "text" => "Vishal Bhatia 1999-07-31 21:08:33 \@3869 \"use constant\" in the compiler" }, { "line" => 1638, "raw" => "Nathan Torkington 1999-08-01 11:23:35\n \@3859 ext/B/B/Disassembler.pm patch\n Message-ID: <14244.33431.739419.806927\@localhost.frii.com>\n\n", "style" => "", "text" => "Nathan Torkington 1999-08-01 11:23:35 \@3859 ext/B/B/Disassembler.pm patch Message-ID: <14244.33431.739419.806927\@localhost.frii.com>" }, { "line" => 1642, "raw" => "Gurusamy Sarathy 1999-08-01 20:34:41\n \@3848 fix defined(\@foo) encarpments\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-08-01 20:34:41 \@3848 fix defined(\@foo) encarpments" }, { "line" => 1645, "raw" => "Gurusamy Sarathy 1999-07-27 05:56:17\n \@3784 change#3762 wasn't needed\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-07-27 05:56:17 \@3784 change#3762 wasn't needed" }, { "line" => 1648, "raw" => "Gurusamy Sarathy 1999-07-26 10:59:47\n \@3762 setstate stop-gap from Vishal Bhatia\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-07-26 10:59:47 \@3762 setstate stop-gap from Vishal Bhatia" }, { "line" => 1651, "raw" => "Gurusamy Sarathy 1999-07-26 10:06:39\n \@3761 patch for pp_foo -> Perl_pp_foo changes from Vishal Bhatia\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-07-26 10:06:39 \@3761 patch for pp_foo -> Perl_pp_foo changes from Vishal Bhatia" }, { "line" => 1654, "raw" => "Gurusamy Sarathy 1999-07-17 22:43:27\n \@3687 make CC.pm use a distinct CCPP() macro rather than PP()\n (suggested by Vishal Bhatia )\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-07-17 22:43:27 \@3687 make CC.pm use a distinct CCPP() macro rather than PP() (suggested by Vishal Bhatia )" }, { "line" => 1658, "raw" => "Vishal Bhatia 1999-06-30 16:02:42\n \@3644 Compiler and XSUBS\n\n", "style" => "", "text" => "Vishal Bhatia 1999-06-30 16:02:42 \@3644 Compiler and XSUBS" }, { "line" => 1661, "raw" => "Stephen McCamant 1999-06-25 15:38:44\n \@3637 Eliminate CONDOPs\n\n", "style" => "", "text" => "Stephen McCamant 1999-06-25 15:38:44 \@3637 Eliminate CONDOPs" }, { "line" => 1664, "raw" => "Vishal Bhatia 1999-06-20 19:17:17\n \@3630 Minor bug fix in pp_require\n\n", "style" => "", "text" => "Vishal Bhatia 1999-06-20 19:17:17 \@3630 Minor bug fix in pp_require" }, { "line" => 1667, "raw" => "Vishal Bhatia 1999-06-12 10:23:59\n \@3622 applied patch after demunging headers with appropriate paths\n \tMessage-ID: \n \tSubject: [Patch 5.005_57] unsigned arithmetic (Compiler)\n\n", "style" => "", "text" => "Vishal Bhatia 1999-06-12 10:23:59 \@3622 applied patch after demunging headers with appropriate paths Message-ID: Subject: [Patch 5.005_57] unsigned arithmetic (Compiler)" }, { "line" => 1672, "raw" => "Vishal Bhatia 1999-06-05 10:42:17\n \@3593 applied parts not duplicated by previous patches\n \tMessage-ID: \n \tSubject: Fwd: [PATCH 5.005_57] consolidated compiler changes\n\n", "style" => "", "text" => "Vishal Bhatia 1999-06-05 10:42:17 \@3593 applied parts not duplicated by previous patches Message-ID: Subject: Fwd: [PATCH 5.005_57] consolidated compiler changes" }, { "line" => 1677, "raw" => "Vishal Bhatia 1999-06-03 02:57:48\n \@3584 [PATCH 5.005_57] pp_sort sorted out\n\n", "style" => "", "text" => "Vishal Bhatia 1999-06-03 02:57:48 \@3584 [PATCH 5.005_57] pp_sort sorted out" }, { "line" => 1680, "raw" => "Gurusamy Sarathy 1999-06-10 10:38:00\n \@3526 fix small nits (ARGS => aTHX)\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-06-10 10:38:00 \@3526 fix small nits (ARGS => aTHX)" }, { "line" => 1683, "raw" => "Gurusamy Sarathy 1999-06-02 06:47:10\n \@3518 remove _() non-ansism\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-06-02 06:47:10 \@3518 remove _() non-ansism" }, { "entries" => [ { "line" => 1689, "raw" => " To: perl5-porters\@perl.org\n", "style" => "", "text" => "To: perl5-porters\@perl.org" }, { "line" => 1690, "raw" => " Message-ID: \n\n", "style" => "", "text" => "Message-ID: " }, { "line" => 1692, "raw" => " plus resolve tiny conflict with #3479\n", "style" => "", "text" => "plus resolve tiny conflict with #3479" }, { "line" => 1693, "raw" => " plus regen_headers.\n\n", "style" => "", "text" => "plus regen_headers." } ], "line" => 1686, "raw" => "Tom Hughes 1999-05-27 01:59:49\n \@3499 ByteLoader mark 2\n\n", "style" => "", "text" => "Tom Hughes 1999-05-27 01:59:49 \@3499 ByteLoader mark 2" }, { "line" => 1695, "raw" => "Gurusamy Sarathy 1999-05-11 11:34:13\n \@3367 various fixes for clean build and test on win32; configpm broken,\n needed to open myconfig.SH rather than myconfig; sundry adjustments\n to bytecode stuff; tweaks to DYNAMIC_ENV_FETCH code to make it\n work under win32; getenv_sv() changed to getenv_len() since SVs\n aren't visible in the lower echelons; remove bogus exports from\n config.sym; PERL_OBJECT-ness for C++ exception support; null out\n IoDIRP in filter_del() or sv_free() will attempt to close it\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-05-11 11:34:13 \@3367 various fixes for clean build and test on win32; configpm broken, needed to open myconfig.SH rather than myconfig; sundry adjustments to bytecode stuff; tweaks to DYNAMIC_ENV_FETCH code to make it work under win32; getenv_sv() changed to getenv_len() since SVs aren't visible in the lower echelons; remove bogus exports from config.sym; PERL_OBJECT-ness for C++ exception support; null out IoDIRP in filter_del() or sv_free() will attempt to close it" }, { "entries" => [ { "line" => 1710, "raw" => " \tDate: Thu, 29 Apr 1999 18:21:06 -0700\n", "style" => "", "text" => "Date: Thu, 29 Apr 1999 18:21:06 -0700" }, { "line" => 1711, "raw" => " \tMessage-ID: \n", "style" => "", "text" => "Message-ID: " }, { "line" => 1712, "raw" => " \tSubject: [PATCH 5.005_56] double constants ( C.pm)\n \t--\n", "style" => "", "text" => "Subject: [PATCH 5.005_56] double constants ( C.pm)" }, { "line" => 1714, "raw" => " \tDate: Mon, 03 May 1999 20:21:31 PDT\n", "style" => "", "text" => "Date: Mon, 03 May 1999 20:21:31 PDT" }, { "line" => 1715, "raw" => " \tMessage-ID: <19990504032131.81113.qmail\@hotmail.com>\n", "style" => "", "text" => "Message-ID: <19990504032131.81113.qmail\@hotmail.com>" }, { "line" => 1716, "raw" => " \tSubject: [PATCH 5.005_56] Overloading implementation ( Compiler)\n \t--\n", "style" => "", "text" => "Subject: [PATCH 5.005_56] Overloading implementation ( Compiler)" }, { "line" => 1718, "raw" => " \tDate: Thu, 06 May 1999 17:57:09 -0700\n", "style" => "", "text" => "Date: Thu, 06 May 1999 17:57:09 -0700" }, { "line" => 1719, "raw" => " \tMessage-ID: \n", "style" => "", "text" => "Message-ID: " }, { "line" => 1720, "raw" => " \tSubject: Stash.pm\n\n", "style" => "", "text" => "Subject: Stash.pm" } ], "line" => 1704, "raw" => "Gurusamy Sarathy 1999-05-10 09:49:26\n \@3359 more Compiler patches from Vishal Bhatia \n \tDate: Tue, 27 Apr 1999 23:47:24 PDT\n \tMessage-ID: <19990428064724.95244.qmail\@hotmail.com>\n \tSubject: [PATCH 5.005_56] Saving Tied hashes ( C.pm)\n \t--\n", "style" => "", "text" => "Gurusamy Sarathy 1999-05-10 09:49:26 \@3359 more Compiler patches from Vishal Bhatia Date: Tue, 27 Apr 1999 23:47:24 PDT Message-ID: <19990428064724.95244.qmail\@hotmail.com> Subject: [PATCH 5.005_56] Saving Tied hashes ( C.pm)" }, { "line" => 1722, "raw" => "Tom Hughes 1999-04-24 20:11:59\n \@3356 applied suggested patch, with win32 and PERL_OBJECT additions\n \tMessage-ID: <609bdff748.tom\@compton.compton.nu>\n \tSubject: ByteLoader patch\n\n", "style" => "", "text" => "Tom Hughes 1999-04-24 20:11:59 \@3356 applied suggested patch, with win32 and PERL_OBJECT additions Message-ID: <609bdff748.tom\@compton.compton.nu> Subject: ByteLoader patch" }, { "entries" => [ { "line" => 1733, "raw" => " \tDate: Wed, 07 Apr 1999 00:28:23 -0800\n", "style" => "", "text" => "Date: Wed, 07 Apr 1999 00:28:23 -0800" }, { "line" => 1734, "raw" => " \tMessage-ID: \n", "style" => "", "text" => "Message-ID: " }, { "line" => 1735, "raw" => " \tSubject: [PATCH 5.005_56] function prototypes(B.pm)\n \t--\n", "style" => "", "text" => "Subject: [PATCH 5.005_56] function prototypes(B.pm)" }, { "line" => 1737, "raw" => " \tDate: Thu, 22 Apr 1999 23:40:52 -0700\n", "style" => "", "text" => "Date: Thu, 22 Apr 1999 23:40:52 -0700" }, { "line" => 1738, "raw" => " \tMessage-ID: \n", "style" => "", "text" => "Message-ID: " }, { "line" => 1739, "raw" => " \tSubject: [PATCH 5.005_56 ] discarding worthless padsvs\n \t--\n", "style" => "", "text" => "Subject: [PATCH 5.005_56 ] discarding worthless padsvs" }, { "line" => 1741, "raw" => " \tDate: Tue, 27 Apr 1999 01:14:49 PDT\n", "style" => "", "text" => "Date: Tue, 27 Apr 1999 01:14:49 PDT" }, { "line" => 1742, "raw" => " \tMessage-ID: <19990427081449.28615.qmail\@hotmail.com>\n", "style" => "", "text" => "Message-ID: <19990427081449.28615.qmail\@hotmail.com>" }, { "line" => 1743, "raw" => " \tSubject: [PATCH 5.005_56] pp_ncmp implementation ( CC.pm)\n\n", "style" => "", "text" => "Subject: [PATCH 5.005_56] pp_ncmp implementation ( CC.pm)" } ], "line" => 1727, "raw" => "Gurusamy Sarathy 1999-05-06 10:01:23\n \@3314 compiler fixes from Vishal Bhatia \n \tDate: Tue, 30 Mar 1999 23:40:34 PST\n \tMessage-ID: <19990331074034.6117.qmail\@hotmail.com>\n \tSubject: [PATCH 5.005_56] pp_entersub and pp_leavewrite(CC.pm)\n \t--\n", "style" => "", "text" => "Gurusamy Sarathy 1999-05-06 10:01:23 \@3314 compiler fixes from Vishal Bhatia Date: Tue, 30 Mar 1999 23:40:34 PST Message-ID: <19990331074034.6117.qmail\@hotmail.com> Subject: [PATCH 5.005_56] pp_entersub and pp_leavewrite(CC.pm)" }, { "line" => 1745, "raw" => "Vishal Bhatia 1999-03-23 17:21:43\n \@3168 applied needful parts of suggested patch\n \tMessage-ID: \n \tSubject: [PATCH 5.005_56] pp_formline correction\n\n", "style" => "", "text" => "Vishal Bhatia 1999-03-23 17:21:43 \@3168 applied needful parts of suggested patch Message-ID: Subject: [PATCH 5.005_56] pp_formline correction" }, { "line" => 1750, "raw" => "Gurusamy Sarathy 1999-03-25 07:21:05\n \@3165 fix refcnt on PL_main_cv (variant of suggestion by Vishal Bhatia\n )\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-03-25 07:21:05 \@3165 fix refcnt on PL_main_cv (variant of suggestion by Vishal Bhatia )" }, { "line" => 1754, "raw" => "Vishal Bhatia 1999-03-11 08:40:27\n \@3142 applied suggested patch, modulo bogus hunk\n \tMessage-ID: <19990311154027.25891.qmail\@hotmail.com>\n \tSubject: [PATCH 5.005_56] Minor fixes in perlcc\n\n", "style" => "", "text" => "Vishal Bhatia 1999-03-11 08:40:27 \@3142 applied suggested patch, modulo bogus hunk Message-ID: <19990311154027.25891.qmail\@hotmail.com> Subject: [PATCH 5.005_56] Minor fixes in perlcc" }, { "line" => 1759, "raw" => "Vishal Bhatia 1999-03-03 00:27:25\n \@3066 updates to compiler modules\n \tMessage-ID: <19990303072725.779.qmail\@hotmail.com>\n \tSubject: PATCH 5.005_56 + Test procedure\n\n", "style" => "", "text" => "Vishal Bhatia 1999-03-03 00:27:25 \@3066 updates to compiler modules Message-ID: <19990303072725.779.qmail\@hotmail.com> Subject: PATCH 5.005_56 + Test procedure" }, { "line" => 1764, "raw" => "Vishal Bhatia 1999-02-08 02:14:41\n \@2940 enable dynaloading in C.pm-compiled programs (non-conflicting part\n of suggested patch)\n \tMessage-ID: \n \tSubject: [PATCH 5.005_54] some pending C.pm stuff\n\n", "style" => "", "text" => "Vishal Bhatia 1999-02-08 02:14:41 \@2940 enable dynaloading in C.pm-compiled programs (non-conflicting part of suggested patch) Message-ID: Subject: [PATCH 5.005_54] some pending C.pm stuff" }, { "line" => 1770, "raw" => "Gurusamy Sarathy 1999-02-12 12:09:27\n \@2894 add missing hunk in change#2657 from Vishal Bhatia \n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-02-12 12:09:27 \@2894 add missing hunk in change#2657 from Vishal Bhatia " }, { "line" => 1773, "raw" => "Vishal Bhatia 1999-01-18 02:32:31\n \@2657 pp_mapstart & pp_grepstart return val (CC.pm)\n To: perl5-porters\@perl.org\n Message-ID: <19990118093231.18443.qmail\@hotmail.com>\n\n", "style" => "", "text" => "Vishal Bhatia 1999-01-18 02:32:31 \@2657 pp_mapstart & pp_grepstart return val (CC.pm) To: perl5-porters\@perl.org Message-ID: <19990118093231.18443.qmail\@hotmail.com>" }, { "line" => 1778, "raw" => "Vishal Bhatia 1999-01-17 17:41:10\n \@2639 Duplicate saved ops (CC.pm)\n Message-Id: <19990118004111.29667.qmail\@hotmail.com>\n\n", "style" => "", "text" => "Vishal Bhatia 1999-01-17 17:41:10 \@2639 Duplicate saved ops (CC.pm) Message-Id: <19990118004111.29667.qmail\@hotmail.com>" }, { "line" => 1782, "raw" => "Gurusamy Sarathy 1999-01-17 10:12:42\n \@2621 fix change#2602 to not used hard coded constants\n\n", "style" => "", "text" => "Gurusamy Sarathy 1999-01-17 10:12:42 \@2621 fix change#2602 to not used hard coded constants" }, { "line" => 1785, "raw" => "Vishal Bhatia 1999-01-11 09:02:41\n \@2602 B::MAGIC::PTR doesnot check for valid length.\n Lines: 134\n Message-ID: \n\n", "style" => "", "text" => "Vishal Bhatia 1999-01-11 09:02:41 \@2602 B::MAGIC::PTR doesnot check for valid length. Lines: 134 Message-ID: " }, { "line" => 1790, "raw" => "Vishal Bhatia 1999-01-08 13:43:36\n \@2600 B::CC::pp_rv2cv problem\n To: perl5-porters\@perl.org\n Message-ID: \n\n", "style" => "", "text" => "Vishal Bhatia 1999-01-08 13:43:36 \@2600 B::CC::pp_rv2cv problem To: perl5-porters\@perl.org Message-ID: " }, { "line" => 1795, "raw" => "Vishal Bhatia 1998-12-16 04:17:03\n \@2525 More minor Fixes in CC.pm/C.pm\n To: perl5-porters\@perl.org\n Message-ID: \n\n", "style" => "", "text" => "Vishal Bhatia 1998-12-16 04:17:03 \@2525 More minor Fixes in CC.pm/C.pm To: perl5-porters\@perl.org Message-ID: " }, { "line" => 1800, "raw" => "Vishal Bhatia 1998-12-10 09:30:02\n \@2524 Re:perlcc -e 'my \$x = shift; print +(\$x ?...' failure\n To: perl5-porters\@perl.org\n Cc: rmb1\@cise.npl.co.uk, nick\@ni-s.u-net.com\n Message-ID: \n (Nick's part was applied earlier, in change #2460)\n\n", "style" => "", "text" => "Vishal Bhatia 1998-12-10 09:30:02 \@2524 Re:perlcc -e 'my \$x = shift; print +(\$x ?...' failure To: perl5-porters\@perl.org Cc: rmb1\@cise.npl.co.uk, nick\@ni-s.u-net.com Message-ID: (Nick's part was applied earlier, in change #2460)" }, { "line" => 1807, "raw" => "Vishal Bhatia 1998-12-09 07:50:30\n \@2523 return value of perlcc/B::CC generated functions.\n To: nick\@ni-s.u-net.com\n Cc: perl5-porters\@perl.org\n Message-ID: \n\n", "style" => "", "text" => "Vishal Bhatia 1998-12-09 07:50:30 \@2523 return value of perlcc/B::CC generated functions. To: nick\@ni-s.u-net.com Cc: perl5-porters\@perl.org Message-ID: " }, { "line" => 1813, "raw" => "Vishal Bhatia 1998-12-20 20:03:25\n \@2492 pp_next/pp_last/pp_redo problems\n To: perl5-porters\@perl.org\n Message-ID: <19981221030326.27660.qmail\@hotmail.com>\n (slightly reformatted)\n\n", "style" => "", "text" => "Vishal Bhatia 1998-12-20 20:03:25 \@2492 pp_next/pp_last/pp_redo problems To: perl5-porters\@perl.org Message-ID: <19981221030326.27660.qmail\@hotmail.com> (slightly reformatted)" }, { "line" => 1819, "raw" => "Nick Ing-Simmons 1999-01-02 14:06:30\n \@2551 Export constant subs from B.xs for op.h, cop.h and a few others.\n Use them in various B::* rather than have local defs.\n\n", "style" => "", "text" => "Nick Ing-Simmons 1999-01-02 14:06:30 \@2551 Export constant subs from B.xs for op.h, cop.h and a few others. Use them in various B::* rather than have local defs." }, { "line" => 1823, "raw" => "Nick Ing-Simmons 1999-01-02 10:04:02\n \@2550 Integrate ext/B changes from //depot/cfgperl\n 'copy in' ext/B/B.xs\n \t(\@2460..) 'merge in' ext/B/B/C.pm ext/B/B/CC.pm\n \text/B/B/Stackobj.pm (\@2524..)\n\n", "style" => "", "text" => "Nick Ing-Simmons 1999-01-02 10:04:02 \@2550 Integrate ext/B changes from //depot/cfgperl 'copy in' ext/B/B.xs (\@2460..) 'merge in' ext/B/B/C.pm ext/B/B/CC.pm ext/B/B/Stackobj.pm (\@2524..)" }, { "line" => 1829, "raw" => "Nick Ing-Simmons 1999-01-02 10:04:02\n \@2491 Integrate ext/B changes from //depot/cfgperl\n\n", "style" => "", "text" => "Nick Ing-Simmons 1999-01-02 10:04:02 \@2491 Integrate ext/B changes from //depot/cfgperl" }, { "line" => 1832, "raw" => "Gurusamy Sarathy 1998-09-23 09:52:46\n B::Asmdata define PUT_svindex(), PUT_opindex()\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-09-23 09:52:46 B::Asmdata define PUT_svindex(), PUT_opindex()" }, { "line" => 1835, "raw" => "Nick Ing-Simmons 1998-12-20 14:21:29\n \@2491 Save _all_ GV's which have SV, AV or HV set.\n\n", "style" => "", "text" => "Nick Ing-Simmons 1998-12-20 14:21:29 \@2491 Save _all_ GV's which have SV, AV or HV set." }, { "entries" => [ { "line" => 1845, "raw" => " Vishal would appreciate comments about B::Stackobj changes from\n", "style" => "", "text" => "Vishal would appreciate comments about B::Stackobj changes from" }, { "line" => 1846, "raw" => " someone knowing that module well.\n\n", "style" => "", "text" => "someone knowing that module well." } ], "line" => 1838, "raw" => "Vishal Bhatia 1998-12-09 23:16:50\n \@2461 1. Fixes the bug reported by Robin Barker \n 2. Fixes the bug regarding return value of c-functions generated out\n of perl subs. ( Just includes the patch I sent earlier)\n 3. Incorporates the other changes that need to be done to get CC.pm\n use ISA search for packages and methods on the same lines as C.pm\n\n", "style" => "", "text" => "Vishal Bhatia 1998-12-09 23:16:50 \@2461 1. Fixes the bug reported by Robin Barker 2. Fixes the bug regarding return value of c-functions generated out of perl subs. ( Just includes the patch I sent earlier) 3. Incorporates the other changes that need to be done to get CC.pm use ISA search for packages and methods on the same lines as C.pm" }, { "line" => 1848, "raw" => "Nick Ing-Simmons 1998-12-05 17:14:42\n \@2453 Avoid hard-coding op numbers\n Update CC.pm to save %INC, and to co-exist with new C.pm\n\n", "style" => "", "text" => "Nick Ing-Simmons 1998-12-05 17:14:42 \@2453 Avoid hard-coding op numbers Update CC.pm to save %INC, and to co-exist with new C.pm" }, { "line" => 1852, "raw" => "Nick Ing-Simmons 1998-12-05 11:44:28\n \@2452 B.xs had its own code to calculate hash() which differed from\n PERL_HASH in hv.h - so all saved HV's were mangled - including %INC\n which meant that run-time require was re-done.\n Removed some debug from C.pm\n\n", "style" => "", "text" => "Nick Ing-Simmons 1998-12-05 11:44:28 \@2452 B.xs had its own code to calculate hash() which differed from PERL_HASH in hv.h - so all saved HV's were mangled - including %INC which meant that run-time require was re-done. Removed some debug from C.pm" }, { "line" => 1858, "raw" => "Nick Ing-Simmons 1998-12-04 22:58:49\n \@2451 Snapshot of re-worked B::C which compiles Tk apps at least as\n well as _54, but with pre-scan for classes and save the ISA scheme.\n\n", "style" => "", "text" => "Nick Ing-Simmons 1998-12-04 22:58:49 \@2451 Snapshot of re-worked B::C which compiles Tk apps at least as well as _54, but with pre-scan for classes and save the ISA scheme." }, { "line" => 1862, "raw" => "Vishal Bhatia 1998-12-04 18:58:44\n \@2450 Vishal Bhatia's patch as a basis.\n\n", "style" => "", "text" => "Vishal Bhatia 1998-12-04 18:58:44 \@2450 Vishal Bhatia's patch as a basis." }, { "entries" => [ { "line" => 1869, "raw" => " While we don't save \"bootstrap\" CV we need to provide a stub,\n", "style" => "", "text" => "While we don't save \"bootstrap\" CV we need to provide a stub," }, { "line" => 1870, "raw" => " so that if we require it later we don't fall through and attempt\n", "style" => "", "text" => "so that if we require it later we don't fall through and attempt" }, { "line" => 1871, "raw" => " to DynaLoad module again.\n\n", "style" => "", "text" => "to DynaLoad module again." }, { "line" => 1873, "raw" => " Attempt to save %INC so that \"require\" does not reload things\n", "style" => "", "text" => "Attempt to save %INC so that \"require\" does not reload things" }, { "line" => 1874, "raw" => " we have compiled-in (does not work right yet - seems to be due\n", "style" => "", "text" => "we have compiled-in (does not work right yet - seems to be due" }, { "line" => 1875, "raw" => " to PL_incgv being created in perl_parse() current scheme setting\n", "style" => "", "text" => "to PL_incgv being created in perl_parse() current scheme setting" }, { "line" => 1876, "raw" => " GvHV() is \"better\" than saving the glob, but still does not\n", "style" => "", "text" => "GvHV() is \"better\" than saving the glob, but still does not" }, { "line" => 1877, "raw" => " work as I expect).\n\n", "style" => "", "text" => "work as I expect)." } ], "line" => 1865, "raw" => "Nick Ing-Simmons 1998-11-28 23:46:57\n \@2378 More C.pm tweaks\n Save globs even if we have saved cv itself before - may be imported.\n\n", "style" => "", "text" => "Nick Ing-Simmons 1998-11-28 23:46:57 \@2378 More C.pm tweaks Save globs even if we have saved cv itself before - may be imported." }, { "line" => 1879, "raw" => "Nick Ing-Simmons 1998-11-27 22:10:27\n \@2332 Handle INIT list in C.pm\n 1. Provide init_av() from B.xs\n 2. Export it in B.pm\n 3. Use it in C.pm\n Also disable some pruning in savecv() which seems to undo\n my previous patch.\n Experimental feature - save pathnames of .so files in easily\n grep-able form for use in wrapper to feed to linker.\n\n", "style" => "", "text" => "Nick Ing-Simmons 1998-11-27 22:10:27 \@2332 Handle INIT list in C.pm 1. Provide init_av() from B.xs 2. Export it in B.pm 3. Use it in C.pm Also disable some pruning in savecv() which seems to undo my previous patch. Experimental feature - save pathnames of .so files in easily grep-able form for use in wrapper to feed to linker." }, { "line" => 1889, "raw" => "Gurusamy Sarathy 1998-11-27 15:41:38\n \@2324 B::C tweaks to allow Tk compiles from Nick Ing-Simmons\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-11-27 15:41:38 \@2324 B::C tweaks to allow Tk compiles from Nick Ing-Simmons" }, { "line" => 1892, "raw" => "Vishal Bhatia 1998-10-29 00:45:32\n \@2146 hand-apply whitespace-mutiliated patch\n \tMessage-ID: <19981029074534.2334.qmail\@hotmail.com>\n \tSubject: [PATCH 5.005_52]Compiling modules,more bugfixes for B\n\n", "style" => "", "text" => "Vishal Bhatia 1998-10-29 00:45:32 \@2146 hand-apply whitespace-mutiliated patch Message-ID: <19981029074534.2334.qmail\@hotmail.com> Subject: [PATCH 5.005_52]Compiling modules,more bugfixes for B" }, { "line" => 1897, "raw" => "Vishal Bhatia 1998-10-22 00:59:03\n \@2072 implement C and other fixes (via private mail)\n Message-Id: <19981022055904.20083.qmail\@hotmail.com>\n Subject: [PATCH 5.005_52] More fixes for B\n\n", "style" => "", "text" => "Vishal Bhatia 1998-10-22 00:59:03 \@2072 implement C and other fixes (via private mail) Message-Id: <19981022055904.20083.qmail\@hotmail.com> Subject: [PATCH 5.005_52] More fixes for B" }, { "line" => 1902, "raw" => "Vishal Bhatia 1998-10-11 20:41:38\n \@1993 fix bug in B::CC::pp_sassign()\n Message-ID: <19981012014139.19614.qmail\@hotmail.com>\n Subject: B::CC problems with pp_sassign routine\n\n", "style" => "", "text" => "Vishal Bhatia 1998-10-11 20:41:38 \@1993 fix bug in B::CC::pp_sassign() Message-ID: <19981012014139.19614.qmail\@hotmail.com> Subject: B::CC problems with pp_sassign routine" }, { "line" => 1907, "raw" => "Jarkko Hietaniemi 1998-10-17 15:17:19\n \@2005 Integrate mainperl.\n\n", "style" => "", "text" => "Jarkko Hietaniemi 1998-10-17 15:17:19 \@2005 Integrate mainperl." }, { "line" => 1910, "raw" => "Gurusamy Sarathy 1998-09-23 11:52:46\n \@1842 define PUT_svindex(), PUT_opindex()\n\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-09-23 11:52:46 \@1842 define PUT_svindex(), PUT_opindex()" }, { "line" => 1914, "raw" => "Gurusamy Sarathy 1998-08-02 07:09:35\n \@1708 fixes for pod noises\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-08-02 07:09:35 \@1708 fixes for pod noises" }, { "line" => 1917, "raw" => "Gurusamy Sarathy 1998-07-22 02:08:00\n \@1618 fix up B modules for PL_* changes\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-07-22 02:08:00 \@1618 fix up B modules for PL_* changes" }, { "line" => 1920, "raw" => "Malcolm Beattie 1998-07-21 18:13:16\n \@1617 Compiler docs for 5.005\n Message-Id: <199807211713.SAA20735\@sable.ox.ac.uk>\n\n", "style" => "", "text" => "Malcolm Beattie 1998-07-21 18:13:16 \@1617 Compiler docs for 5.005 Message-Id: <199807211713.SAA20735\@sable.ox.ac.uk>" }, { "line" => 1924, "raw" => "Gurusamy Sarathy 1998-07-22 01:29:09\n \@1616 s/PL_sv/PL_bytecode_sv/ etc., so we have unique, case-insensitive\n names\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-07-22 01:29:09 \@1616 s/PL_sv/PL_bytecode_sv/ etc., so we have unique, case-insensitive names" }, { "line" => 1928, "raw" => "Gurusamy Sarathy 1998-07-21 07:12:00\n \@1611 fix bytecode.pl with moved var names\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-07-21 07:12:00 \@1611 fix bytecode.pl with moved var names" }, { "line" => 1931, "raw" => "Gurusamy Sarathy 1998-07-21 05:31:13\n \@1608 part 2 of PERL_OBJECT fixes (globals in bytecode.h moved to intrpvar.h)\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-07-21 05:31:13 \@1608 part 2 of PERL_OBJECT fixes (globals in bytecode.h moved to intrpvar.h)" }, { "line" => 1934, "raw" => "Gurusamy Sarathy 1998-07-21 05:29:10\n \@1607 part 1 of PERL_OBJECT fixes for new var names\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-07-21 05:29:10 \@1607 part 1 of PERL_OBJECT fixes for new var names" }, { "line" => 1937, "raw" => "Gurusamy Sarathy 1998-07-20 09:38:39\n \@1578 complete s/foo/PL_foo/ changes (all escaped cases identified with\n brute force search script). Result builds and passes all tests on\n Solaris. win32 and PERL_OBJECT are still untested.\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-07-20 09:38:39 \@1578 complete s/foo/PL_foo/ changes (all escaped cases identified with brute force search script). Result builds and passes all tests on Solaris. win32 and PERL_OBJECT are still untested." }, { "line" => 1942, "raw" => "Nick Ing-Simmons 1998-07-18 13:53:03\n PL_ prefix to all perlvars, part1\n Builds and passes all tests at one limit i.e. -DPERL_GLOBAL_STRUCT\n\n", "style" => "", "text" => "Nick Ing-Simmons 1998-07-18 13:53:03 PL_ prefix to all perlvars, part1 Builds and passes all tests at one limit i.e. -DPERL_GLOBAL_STRUCT" }, { "line" => 1946, "raw" => "Ilya Zakharevich 1998-07-15 06:10:36\n \@1548 Minor improvements to perlcc\n Message-Id: <199807151010.GAA11270\@monk.mps.ohio-state.edu>\n\n", "style" => "", "text" => "Ilya Zakharevich 1998-07-15 06:10:36 \@1548 Minor improvements to perlcc Message-Id: <199807151010.GAA11270\@monk.mps.ohio-state.edu>" }, { "line" => 1950, "raw" => "Gurusamy Sarathy 1998-07-15 10:01:41\n \@1516 add stub docs for ext/B, other minor tweaks\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-07-15 10:01:41 \@1516 add stub docs for ext/B, other minor tweaks" }, { "line" => 1953, "raw" => "Gurusamy Sarathy 1998-07-09 05:37:48\n get it building again on win32\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-07-09 05:37:48 get it building again on win32" }, { "line" => 1956, "raw" => "Gurusamy Sarathy 1998-07-04 05:02:01\n \@1292 fix perlcc to not rm output file, and other -w(arts)\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-07-04 05:02:01 \@1292 fix perlcc to not rm output file, and other -w(arts)" }, { "line" => 1959, "raw" => "Stephen McCamant 1998-06-22 21:19:43\n \@1200 Inheritance of B:: classes\n Message-Id: \n\n", "style" => "", "text" => "Stephen McCamant 1998-06-22 21:19:43 \@1200 Inheritance of B:: classes Message-Id: " }, { "line" => 1963, "raw" => "Gurusamy Sarathy 1998-06-19 17:22:23\n update repository copy of Asmdata.pm after `perl bytecode.pl`\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-06-19 17:22:23 update repository copy of Asmdata.pm after `perl bytecode.pl`" }, { "line" => 1966, "raw" => "Gurusamy Sarathy 1998-06-11 02:59:23\n \@1113 fix outdated bytecode.pl\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-06-11 02:59:23 \@1113 fix outdated bytecode.pl" }, { "line" => 1969, "raw" => "Nick Ing-Simmons 1998-05-14 18:09:01\n \@972 Changes to allow compiler with gcc-2.8.1 in C++ mode,\n Remove K&R style functions, avoid struct/typedef clash.\n\n", "style" => "", "text" => "Nick Ing-Simmons 1998-05-14 18:09:01 \@972 Changes to allow compiler with gcc-2.8.1 in C++ mode, Remove K&R style functions, avoid struct/typedef clash." }, { "line" => 1973, "raw" => "Ed Peschko 1998-04-29 21:02:36\n \@963 [ PATCH 5.004_64 ] Integrated regression tests for compiler\n added perlcc.PL\n\n", "style" => "", "text" => "Ed Peschko 1998-04-29 21:02:36 \@963 [ PATCH 5.004_64 ] Integrated regression tests for compiler added perlcc.PL" }, { "line" => 1977, "raw" => "Ilya Zakharevich 1998-04-08 03:21:03\n \@942 Subject: [PATCH 5.004_64] Cryptic error from B::CC\n Date: Sat, 11 Apr 1998 19:52:25 -0400 (EDT)\n\n", "style" => "", "text" => "Ilya Zakharevich 1998-04-08 03:21:03 \@942 Subject: [PATCH 5.004_64] Cryptic error from B::CC Date: Sat, 11 Apr 1998 19:52:25 -0400 (EDT)" }, { "line" => 1981, "raw" => "Malcolm Beattie 1998-04-14 16:22:51\n \@888 [compiler] CC did \"<<\" instead of \">>\" for right-shift on ints.\n\n", "style" => "", "text" => "Malcolm Beattie 1998-04-14 16:22:51 \@888 [compiler] CC did \"<<\" instead of \">>\" for right-shift on ints." }, { "line" => 1984, "raw" => "Charles Bailey 1998-03-02 01:48:27\n Miscellaneous minor fixes\n\n", "style" => "", "text" => "Charles Bailey 1998-03-02 01:48:27 Miscellaneous minor fixes" }, { "line" => 1987, "raw" => "Spider Boardman 1998-03-01 02:02:47\n Almost OK: 5.004_61 (threads, perlio)\n\n", "style" => "", "text" => "Spider Boardman 1998-03-01 02:02:47 Almost OK: 5.004_61 (threads, perlio)" }, { "line" => 1990, "raw" => "Andrew Cohen 1998-02-27 20:03:29\n Change getc/fread to PerlIO_getc/fread in bytecode.h:\n Subject: [PATCH 5.004_61] bunch of small patches\n\n", "style" => "", "text" => "Andrew Cohen 1998-02-27 20:03:29 Change getc/fread to PerlIO_getc/fread in bytecode.h: Subject: [PATCH 5.004_61] bunch of small patches" }, { "line" => 1994, "raw" => "Nick Ing-Simmons 1998-02-28 11:31:15\n Missed FREAD in bytecode.h\n Cannot export svref_mutex in non-threaded perl\n\n", "style" => "", "text" => "Nick Ing-Simmons 1998-02-28 11:31:15 Missed FREAD in bytecode.h Cannot export svref_mutex in non-threaded perl" }, { "line" => 1998, "raw" => "Malcolm Beattie 1998-02-27 18:35:27\n Change FREAD/FGETC to BGET_FREAD/BGET_FGETC to avoid clash with\n preprocessor symbol on Digital UNIX.\n\n", "style" => "", "text" => "Malcolm Beattie 1998-02-27 18:35:27 Change FREAD/FGETC to BGET_FREAD/BGET_FGETC to avoid clash with preprocessor symbol on Digital UNIX." }, { "entries" => [ { "line" => 2004, "raw" => " - export symbols needed for building B\n", "style" => "-", "text" => "export symbols needed for building B" }, { "line" => 2005, "raw" => " - bset_obj_store() is needed by byterun(), so define it there instead\n of at B.xs, and export it\n", "style" => "-", "text" => "bset_obj_store() is needed by byterun(), so define it there instead of at B.xs, and export it" }, { "line" => 2007, "raw" => " - freadpv() is only used in B.xs, so move it there\n", "style" => "-", "text" => "freadpv() is only used in B.xs, so move it there" }, { "line" => 2008, "raw" => " - byte*.h are now included by perl.h\n", "style" => "-", "text" => "byte*.h are now included by perl.h" }, { "line" => 2009, "raw" => " - regenerate embed*.h\n\n", "style" => "-", "text" => "regenerate embed*.h" } ], "line" => 2002, "raw" => "Gurusamy Sarathy 1998-02-26 03:56:19\n \@589 [win32] various cleanups so that B can be built as \"just another extension\"\n", "style" => "", "text" => "Gurusamy Sarathy 1998-02-26 03:56:19 \@589 [win32] various cleanups so that B can be built as \"just another extension\"" }, { "line" => 2011, "raw" => "Gurusamy Sarathy 1998-02-22 02:40:56\n \@568 [win32] get compiler building under win32 (needed Makefile.PL\n hacks that could be applicable to other platforms)\n\n", "style" => "", "text" => "Gurusamy Sarathy 1998-02-22 02:40:56 \@568 [win32] get compiler building under win32 (needed Makefile.PL hacks that could be applicable to other platforms)" }, { "line" => 2015, "raw" => "Malcolm Beattie 1998-02-25 17:44:34\n \@585 More compiler tweaks.\n\n", "style" => "", "text" => "Malcolm Beattie 1998-02-25 17:44:34 \@585 More compiler tweaks." }, { "line" => 2018, "raw" => "Malcolm Beattie 1998-02-20 18:23:47\n \@565 Remove compiler files from their old lib/B locations. The compiler\n now builds by default (without the byteperl executable so far) and\n seems to work at least minimally.\n\n", "style" => "", "text" => "Malcolm Beattie 1998-02-20 18:23:47 \@565 Remove compiler files from their old lib/B locations. The compiler now builds by default (without the byteperl executable so far) and seems to work at least minimally." }, { "line" => 2023, "raw" => "Malcolm Beattie 1998-02-20 18:05:33\n \@564 Move lib/B/... and lib/[BO].pm over to where they should be,\n under ext/B.\n\n", "style" => "", "text" => "Malcolm Beattie 1998-02-20 18:05:33 \@564 Move lib/B/... and lib/[BO].pm over to where they should be, under ext/B." }, { "entries" => [ { "line" => 2029, "raw" => " [Still won't work as of this change.]\n\n", "style" => "[]", "text" => "Still won't work as of this change." } ], "line" => 2027, "raw" => "Malcolm Beattie 1998-02-20 17:54:58\n \@563 Start getting compiler to work when built with the core.\n", "style" => "", "text" => "Malcolm Beattie 1998-02-20 17:54:58 \@563 Start getting compiler to work when built with the core." }, { "entries" => [ { "line" => 2033, "raw" => "\t* Merge perlext/Compiler/... into mainline. Some files move to\n", "style" => "*", "text" => "Merge perlext/Compiler/... into mainline. Some files move to" }, { "line" => 2034, "raw" => " ext/B/..., some to lib/B/..., O.pm and B.pm go in lib and some\n", "style" => "", "text" => "ext/B/..., some to lib/B/..., O.pm and B.pm go in lib and some" }, { "line" => 2035, "raw" => " move to the base perl directory (e.g. headers). Will need some\n", "style" => "", "text" => "move to the base perl directory (e.g. headers). Will need some" }, { "line" => 2036, "raw" => " cleaning up before it builds properly, I would guess.\n\n", "style" => "", "text" => "cleaning up before it builds properly, I would guess." } ], "line" => 2031, "raw" => "Malcolm Beattie 1998-02-20 16:42:13\n\n", "style" => "", "text" => "Malcolm Beattie 1998-02-20 16:42:13" }, { "entries" => [ { "line" => 2039, "raw" => "\t* [compiler] Win32 changes from Sarathy, tweaked slightly by me.\n\n", "style" => "*", "text" => "[compiler] Win32 changes from Sarathy, tweaked slightly by me." } ], "line" => 2038, "raw" => "Malcolm Beattie 1998-02-20 16:39:38\n", "style" => "", "text" => "Malcolm Beattie 1998-02-20 16:39:38" }, { "entries" => [ { "line" => 2042, "raw" => "\t* Assorted changes to the compiler\n\n", "style" => "*", "text" => "Assorted changes to the compiler" } ], "line" => 2041, "raw" => "Malcolm Beattie 1998-02-17 17:50:50\n", "style" => "", "text" => "Malcolm Beattie 1998-02-17 17:50:50" }, { "entries" => [ { "line" => 2045, "raw" => "\t* Fix typo in compiler B/C.pm.\n\n", "style" => "*", "text" => "Fix typo in compiler B/C.pm." } ], "line" => 2044, "raw" => "Malcolm Beattie 1997-12-17 10:59:40\n", "style" => "", "text" => "Malcolm Beattie 1997-12-17 10:59:40" }, { "entries" => [ { "line" => 2049, "raw" => "\t* Start overhauling compiler. It was working at least minimally\n", "style" => "*", "text" => "Start overhauling compiler. It was working at least minimally" }, { "line" => 2050, "raw" => " right up until the final tweak of B.xs to add threadsv_names\n", "style" => "", "text" => "right up until the final tweak of B.xs to add threadsv_names" }, { "line" => 2051, "raw" => " at which point building it provokes a seg fault in perl while\n", "style" => "", "text" => "at which point building it provokes a seg fault in perl while" }, { "line" => 2052, "raw" => " doing the xsubpp :-(.\n\n", "style" => "", "text" => "doing the xsubpp :-(." } ], "line" => 2047, "raw" => "Malcolm Beattie 1997-12-10 18:33:53\n\tAlpha5\n", "style" => "", "text" => "Malcolm Beattie 1997-12-10 18:33:53 Alpha5" }, { "entries" => [ { "line" => 2055, "raw" => "\t* Make compiler build/work with devel 5.005\n\n", "style" => "*", "text" => "Make compiler build/work with devel 5.005" } ], "line" => 2054, "raw" => "Malcolm Beattie 1997-09-03 12:31:48\n", "style" => "", "text" => "Malcolm Beattie 1997-09-03 12:31:48" }, { "entries" => [ { "line" => 2058, "raw" => "\t* Change %lx to %x in B::CV::save to prevent some CV\n", "style" => "*", "text" => "Change %lx to %x in B::CV::save to prevent some CV" }, { "line" => 2059, "raw" => " fields becoming 0 in the init section. Add missing\n", "style" => "", "text" => "fields becoming 0 in the init section. Add missing" }, { "line" => 2060, "raw" => " write_back in B::Stackobj::Padsv::load_double to fix\n", "style" => "", "text" => "write_back in B::Stackobj::Padsv::load_double to fix" }, { "line" => 2061, "raw" => " test 22 of op/my.t.\n\n", "style" => "", "text" => "test 22 of op/my.t." } ], "line" => 2057, "raw" => "Malcolm Beattie 1997-07-05 11:58:05\n", "style" => "", "text" => "Malcolm Beattie 1997-07-05 11:58:05" }, { "entries" => [ { "line" => 2064, "raw" => "\t* B::CC::pp_padsv must cope with vivify_ref (5.004)\n\t as well as provide_ref (5.003)\n\n", "style" => "*", "text" => "B::CC::pp_padsv must cope with vivify_ref (5.004) as well as provide_ref (5.003)" } ], "line" => 2063, "raw" => "Malcolm Beattie 1997-07-05 11:58:05\n", "style" => "", "text" => "Malcolm Beattie 1997-07-05 11:58:05" }, { "entries" => [ { "line" => 2069, "raw" => "\t* initial check in of compiler\n\tfrom version Alpha a3 to a4\n", "style" => "*", "text" => "initial check in of compiler from version Alpha a3 to a4" } ], "line" => 2067, "raw" => "Malcolm Beattie 1997-05-03 14:47:06\n\tAlpha 4\n", "style" => "", "text" => "Malcolm Beattie 1997-05-03 14:47:06 Alpha 4" } ], "line" => 1381, "note" => "rurban (never uploaded)", "raw" => "1.04_01 2008-01-15 rurban (never uploaded)\n", "raw_date" => "2008-01-15", "version" => "1.04_01" } ] } CPAN-Changes-0.500005/corpus/dists/App-Ack.parsed000644 000000 000000 00000112226 14472651645 017277 0ustar00000000 000000 { "preamble" => "History file for ack. http://beyondgrep.com/", "raw_preamble" => "History file for ack. http://beyondgrep.com/\n\n", "releases" => [ { "date" => "2014-09-03T22:48:00Z", "entries" => [ { "entries" => [ { "line" => 6, "raw" => "The -s flag would fail to suppress certain warnings. Thanks, Kassio\nBorges. (GitHub ticket #439)\n\n", "style" => "", "text" => "The -s flag would fail to suppress certain warnings. Thanks, Kassio Borges. (GitHub ticket #439)" }, { "line" => 9, "raw" => "The -w flag would fail to work properly with regex features such as\nalternation. Thanks to Ed Avis for the report (GitHub ticket #443)\n\n", "style" => "", "text" => "The -w flag would fail to work properly with regex features such as alternation. Thanks to Ed Avis for the report (GitHub ticket #443)" }, { "line" => 12, "raw" => "The -g flag should now work faster on larger codebases. Thanks to\nManuel Meurer for the report (GitHub ticket #458)\n\n", "style" => "", "text" => "The -g flag should now work faster on larger codebases. Thanks to Manuel Meurer for the report (GitHub ticket #458)" } ], "line" => 5, "raw" => "[FIXES]\n", "style" => "[]", "text" => "FIXES" }, { "entries" => [ { "line" => 16, "raw" => "ack now ignores JavaScript and CSS source maps. Thanks, Chris\nRebert.\n\n", "style" => "", "text" => "ack now ignores JavaScript and CSS source maps. Thanks, Chris Rebert." }, { "line" => 19, "raw" => "ack now ships with customized shell completion scripts for bash and zsh.\n\n\n", "style" => "", "text" => "ack now ships with customized shell completion scripts for bash and zsh." } ], "line" => 15, "raw" => "[ENHANCEMENTS]\n", "style" => "[]", "text" => "ENHANCEMENTS" } ], "line" => 3, "raw" => "2.14 Wed Sep 3 22:48:00 CDT 2014\n====================================\n", "raw_date" => "Wed Sep 3 22:48:00 CDT 2014", "version" => "2.14" }, { "date" => "2014-01-25T23:36:09Z", "entries" => [ { "entries" => [ { "line" => 25, "raw" => "More fixes for Windows tests. Thanks to GitHub user \@ispedals.\n\n", "style" => "", "text" => "More fixes for Windows tests. Thanks to GitHub user \@ispedals." } ], "line" => 24, "raw" => "[FIXES]\n", "style" => "[]", "text" => "FIXES" }, { "entries" => [ { "line" => 29, "raw" => "Add docs for available colors in ack.\n\n", "style" => "", "text" => "Add docs for available colors in ack." } ], "line" => 27, "raw" => "[ENHANCEMENTS]\n\n", "style" => "[]", "text" => "ENHANCEMENTS" } ], "line" => 22, "raw" => "2.13_06 Sat Jan 25 23:36:09 CST 2014\n====================================\n", "raw_date" => "Sat Jan 25 23:36:09 CST 2014", "version" => "2.13_06" }, { "date" => "2014-01-09T22:41:33Z", "entries" => [ { "entries" => [ { "line" => 34, "raw" => "More whack-a-mole with Windows failures. This time, it's POSIX::mkfifo\ndying on Windows instead of returning undef like the docs implied,\nor at least that I inferred.\n\n", "style" => "", "text" => "More whack-a-mole with Windows failures. This time, it's POSIX::mkfifo dying on Windows instead of returning undef like the docs implied, or at least that I inferred." } ], "line" => 33, "raw" => "[FIXES]\n", "style" => "[]", "text" => "FIXES" }, { "entries" => [ { "line" => 39, "raw" => "--create-ackrc keeps the comments that describe each of the options,\nand it shows the ack version number.\n\n\n", "style" => "", "text" => "--create-ackrc keeps the comments that describe each of the options, and it shows the ack version number." } ], "line" => 38, "raw" => "[ENHANCEMENTS]\n", "style" => "[]", "text" => "ENHANCEMENTS" } ], "line" => 31, "raw" => "2.13_05 Thu Jan 9 22:41:33 CST 2014\n====================================\n", "raw_date" => "Thu Jan 9 22:41:33 CST 2014", "version" => "2.13_05" }, { "date" => "2014-01-04T11:17:28Z", "entries" => [ { "entries" => [ { "line" => 46, "raw" => "Fixed incorrect deduping of config files under Windows. Thanks,\nDenis Howe.\n\n\n", "style" => "", "text" => "Fixed incorrect deduping of config files under Windows. Thanks, Denis Howe." } ], "line" => 45, "raw" => "[FIXES]\n", "style" => "[]", "text" => "FIXES" } ], "line" => 43, "raw" => "2.13_04 Sat Jan 4 11:17:28 CST 2014\n====================================\n", "raw_date" => "Sat Jan 4 11:17:28 CST 2014", "version" => "2.13_04" }, { "date" => "2014-01-02T22:23:03Z", "entries" => [ { "entries" => [ { "line" => 53, "raw" => "More build fixes for Windows. Windows config finder fixes from\nJames McCoy.\n\n", "style" => "", "text" => "More build fixes for Windows. Windows config finder fixes from James McCoy." }, { "line" => 56, "raw" => "t/ack-named-pipes.t uses POSIX::mkfifo instead of the external\ncommand, which should be more portable. Thanks, Pete Krawczyk.\n\n", "style" => "", "text" => "t/ack-named-pipes.t uses POSIX::mkfifo instead of the external command, which should be more portable. Thanks, Pete Krawczyk." } ], "line" => 52, "raw" => "[FIXES]\n", "style" => "[]", "text" => "FIXES" }, { "entries" => [ { "line" => 60, "raw" => "Now ignores Cabal (Haskell) sandboxes. Thanks, Fraser Tweedale.\n\n", "style" => "", "text" => "Now ignores Cabal (Haskell) sandboxes. Thanks, Fraser Tweedale." }, { "line" => 62, "raw" => "Added filetypes for Jade, Smarty and Stylus. Thanks, Ra\303\272l Gund\303\255n.\n\n\n", "style" => "", "text" => "Added filetypes for Jade, Smarty and Stylus. Thanks, Ra\303\272l Gund\303\255n." } ], "line" => 59, "raw" => "[ENHANCEMENTS]\n", "style" => "[]", "text" => "ENHANCEMENTS" } ], "line" => 50, "raw" => "2.13_03 Thu Jan 2 22:23:03 CST 2014\n====================================\n", "raw_date" => "Thu Jan 2 22:23:03 CST 2014", "version" => "2.13_03" }, { "date" => "2013-12-27T12:54:27Z", "entries" => [ { "entries" => [ { "line" => 68, "raw" => "The building of ack-standalone relied on the output of `perldoc\n-l`, which I apparently can't rely on having been installed. I've\nchanged the way that the squash program finds File::Next.\n\n\n", "style" => "", "text" => "The building of ack-standalone relied on the output of `perldoc -l`, which I apparently can't rely on having been installed. I've changed the way that the squash program finds File::Next." } ], "line" => 67, "raw" => "[FIXES]\n", "style" => "[]", "text" => "FIXES" } ], "line" => 65, "raw" => "2.13_02 Fri Dec 27 12:54:27 CST 2013\n====================================\n", "raw_date" => "Fri Dec 27 12:54:27 CST 2013", "version" => "2.13_02" }, { "date" => "2013-12-25T13:36:08Z", "entries" => [ { "entries" => [ { "line" => 79, "raw" => " -- via Pete Krawczyk\n\n", "style" => "--", "text" => "via Pete Krawczyk" } ], "line" => 75, "raw" => "So this is Christmas\nAnd what have you done\nI'm sitting here hacking\nOn ack 2.13_01\n", "style" => "", "text" => "So this is Christmas And what have you done I'm sitting here hacking On ack 2.13_01" }, { "entries" => [ { "line" => 82, "raw" => "Issue #313: ack would fail when trying to check files for readability\non some networked filesystems, or on Mac OS X with ACLs. Now it\nuses the filetest pragma. Thanks, Jonathan Perret.\n\n\n", "style" => "", "text" => "Issue #313: ack would fail when trying to check files for readability on some networked filesystems, or on Mac OS X with ACLs. Now it uses the filetest pragma. Thanks, Jonathan Perret." } ], "line" => 81, "raw" => "[FIXES]\n", "style" => "[]", "text" => "FIXES" }, { "entries" => [ { "line" => 88, "raw" => "ack's entire test suite now runs under Perl's -T taint flag. We'll\nbuild more security tests on top of this.\n\n", "style" => "", "text" => "ack's entire test suite now runs under Perl's -T taint flag. We'll build more security tests on top of this." }, { "line" => 91, "raw" => "Added some checks to the squash program that I hope will turn up\nerrors in the Windows builds.\n\n\n", "style" => "", "text" => "Added some checks to the squash program that I hope will turn up errors in the Windows builds." } ], "line" => 87, "raw" => "[INTERNALS]\n", "style" => "[]", "text" => "INTERNALS" } ], "line" => 73, "raw" => "2.13_01 Wed Dec 25 13:36:08 CST 2013\n====================================\n", "raw_date" => "Wed Dec 25 13:36:08 CST 2013", "version" => "2.13_01" }, { "date" => "2013-12-03T07:05:02Z", "entries" => [ { "entries" => [ { "line" => 98, "raw" => "This verison of ack prevents the --pager, --regex and --output\noptions from being used from project-level ackrc files. It is\npossible to execute malicious code with these options, and we want\nto prevent the security risk of acking through a potentially malicious\ncodebase, such as one downloaded from an Internet site or checked\nout from a code repository.\n\n", "style" => "", "text" => "This verison of ack prevents the --pager, --regex and --output options from being used from project-level ackrc files. It is possible to execute malicious code with these options, and we want to prevent the security risk of acking through a potentially malicious codebase, such as one downloaded from an Internet site or checked out from a code repository." }, { "line" => 105, "raw" => "The --pager, --regex and --output options may still be used from\nthe global /etc/ackrc, your own private ~/.ackrc, the ACK_OPTIONS\nenvironment variable, and of course from the command line.\n\n", "style" => "", "text" => "The --pager, --regex and --output options may still be used from the global /etc/ackrc, your own private ~/.ackrc, the ACK_OPTIONS environment variable, and of course from the command line." } ], "line" => 97, "raw" => "[SECURITY FIXES]\n", "style" => "[]", "text" => "SECURITY FIXES" }, { "entries" => [ { "line" => 110, "raw" => "Now ignores Eclipse .metadata directory. Thanks, Steffen Jaeckel.\n\n", "style" => "", "text" => "Now ignores Eclipse .metadata directory. Thanks, Steffen Jaeckel." } ], "line" => 109, "raw" => "[ENHANCEMENTS]\n", "style" => "[]", "text" => "ENHANCEMENTS" }, { "entries" => [ { "line" => 113, "raw" => "Removed the Git revision tracking in the --version.\n\n\n", "style" => "", "text" => "Removed the Git revision tracking in the --version." } ], "line" => 112, "raw" => "[INTERNALS]\n", "style" => "[]", "text" => "INTERNALS" } ], "line" => 95, "raw" => "2.12 Tue Dec 3 07:05:02 CST 2013\n====================================\n", "raw_date" => "Tue Dec 3 07:05:02 CST 2013", "version" => "2.12" }, { "date" => "2013-10-06T12:39:21Z", "entries" => [ { "line" => 118, "raw" => "[FIXES]\n", "style" => "[]", "text" => "FIXES" } ], "line" => 116, "raw" => "2.11_02 Sun Oct 6 12:39:21 CDT 2013\n====================================\n", "raw_date" => "Sun Oct 6 12:39:21 CDT 2013", "version" => "2.11_02" }, { "entries" => [], "line" => 119, "note" => "was mispackaged. This fixes that.", "raw" => "2.11_01 was mispackaged. This fixes that.\n\n\n", "version" => "2.11_01" }, { "date" => "2013-09-29T13:15:41Z", "entries" => [ { "entries" => [ { "line" => 125, "raw" => "Fixed a race condition in t/file-permission.t that was causing\nfailures if tests were run in parallel.\n\n\n", "style" => "", "text" => "Fixed a race condition in t/file-permission.t that was causing failures if tests were run in parallel." } ], "line" => 124, "raw" => "[FIXES]\n", "style" => "[]", "text" => "FIXES" } ], "line" => 122, "raw" => "2.11_01 Sun Sep 29 13:15:41 CDT 2013\n====================================\n", "raw_date" => "Sun Sep 29 13:15:41 CDT 2013", "version" => "2.11_01" }, { "date" => "2013-09-24T16:24:11Z", "entries" => [ { "entries" => [ { "line" => 132, "raw" => "Add --perltest for *.t files.\n\n", "style" => "", "text" => "Add --perltest for *.t files." }, { "line" => 134, "raw" => "Added Matlab support. Thanks, Zertrin.\n\n", "style" => "", "text" => "Added Matlab support. Thanks, Zertrin." } ], "line" => 131, "raw" => "[ENHANCEMENTS]\n", "style" => "[]", "text" => "ENHANCEMENTS" }, { "entries" => [ { "line" => 137, "raw" => "Fix the test suite for Win32. Many thanks to Christian Walde for\nbringing the severity of this issue to our attention, as well as\nproviding a Win32 development environment for us to work with.\n\n", "style" => "", "text" => "Fix the test suite for Win32. Many thanks to Christian Walde for bringing the severity of this issue to our attention, as well as providing a Win32 development environment for us to work with." }, { "line" => 141, "raw" => "Fixed Win32-detection in the Makefile.PL. Thanks, Michael Beijen\nand Alexandr Ciornii.\n\n", "style" => "", "text" => "Fixed Win32-detection in the Makefile.PL. Thanks, Michael Beijen and Alexandr Ciornii." }, { "line" => 144, "raw" => "More compatibility fixes for Perl 5.8.8.\n\n\n", "style" => "", "text" => "More compatibility fixes for Perl 5.8.8." } ], "line" => 136, "raw" => "[FIXES]\n", "style" => "[]", "text" => "FIXES" } ], "line" => 129, "raw" => "2.10 Tue Sep 24 16:24:11 CDT 2013\n====================================\n", "raw_date" => "Tue Sep 24 16:24:11 CDT 2013", "version" => "2.10" }, { "date" => "2013-08-22T23:11:45Z", "entries" => [ { "entries" => [ { "line" => 150, "raw" => "ack now ignores CMake's build/cache directories by default. Thanks,\nVolodymyr Medvid.\n\n", "style" => "", "text" => "ack now ignores CMake's build/cache directories by default. Thanks, Volodymyr Medvid." }, { "line" => 153, "raw" => "Add shebang matching for --lua files.\n\n", "style" => "", "text" => "Add shebang matching for --lua files." }, { "line" => 155, "raw" => "Add documentation for --ackrc.\n\n", "style" => "", "text" => "Add documentation for --ackrc." }, { "line" => 157, "raw" => "Add Elixir filetype.\n\n", "style" => "", "text" => "Add Elixir filetype." }, { "line" => 159, "raw" => "Add --cathy option. Thanks to Joe McMahon.\n\n", "style" => "", "text" => "Add --cathy option. Thanks to Joe McMahon." }, { "line" => 161, "raw" => "Add some helpful debugging tips when an invalid option is found.\nThanks to Charles Lee.\n\n", "style" => "", "text" => "Add some helpful debugging tips when an invalid option is found. Thanks to Charles Lee." }, { "line" => 164, "raw" => "Ignore PDF files by default, because Perl will detect them as text.\n\n", "style" => "", "text" => "Ignore PDF files by default, because Perl will detect them as text." }, { "line" => 166, "raw" => "Ignore .gif, .jpg, .jpeg and .png files. They won't normally be\nselected, but this is an optimization so that ack doesn't have to\nopen them to know.\n\n", "style" => "", "text" => "Ignore .gif, .jpg, .jpeg and .png files. They won't normally be selected, but this is an optimization so that ack doesn't have to open them to know." } ], "line" => 149, "raw" => "[ENHANCEMENTS]\n", "style" => "[]", "text" => "ENHANCEMENTS" }, { "entries" => [ { "line" => 171, "raw" => "Ack's colorizing of output would get confused with multiple sets\nof parentheses. This has been fixed. (Issue #276)\n\n", "style" => "", "text" => "Ack's colorizing of output would get confused with multiple sets of parentheses. This has been fixed. (Issue #276)" }, { "line" => 174, "raw" => "Ack would get confused when trying to colorize the output in\nDOS-format files. This has been fixed. (Issue #145)\n\n\n", "style" => "", "text" => "Ack would get confused when trying to colorize the output in DOS-format files. This has been fixed. (Issue #145)" } ], "line" => 170, "raw" => "[FIXES]\n", "style" => "[]", "text" => "FIXES" } ], "line" => 147, "raw" => "2.08 Thu Aug 22 23:11:45 CDT 2013\n====================================\n", "raw_date" => "Thu Aug 22 23:11:45 CDT 2013", "version" => "2.08" }, { "entries" => [ { "line" => 180, "raw" => "This mistake of an upload lived for only about 15 minutes.\n\n\n\n", "style" => "", "text" => "This mistake of an upload lived for only about 15 minutes." } ], "line" => 178, "raw" => "2.06\n====================================\n", "version" => "2.06" }, { "date" => "2013-05-28T10:12:04Z", "entries" => [ { "entries" => [ { "line" => 187, "raw" => "We now ignore the node_modules directories created by npm. Thanks,\nKonrad Borowski.\n\n", "style" => "", "text" => "We now ignore the node_modules directories created by npm. Thanks, Konrad Borowski." }, { "line" => 190, "raw" => "--pager without an argument implies --pager=\$PAGER.\n\n", "style" => "", "text" => "--pager without an argument implies --pager=\$PAGER." }, { "line" => 192, "raw" => "--perl now recognizes Plack-style .psgi files. Thanks, Ron Savage.\n\n", "style" => "", "text" => "--perl now recognizes Plack-style .psgi files. Thanks, Ron Savage." }, { "line" => 194, "raw" => "Added filetypes for Coffescript, JSON, LESS, and Sass.\n\n", "style" => "", "text" => "Added filetypes for Coffescript, JSON, LESS, and Sass." } ], "line" => 186, "raw" => "[ENHANCEMENTS]\n", "style" => "[]", "text" => "ENHANCEMENTS" }, { "entries" => [ { "line" => 197, "raw" => "Command-line options now override options set in ackrc files.\n\n", "style" => "", "text" => "Command-line options now override options set in ackrc files." }, { "line" => 199, "raw" => "ACK_PAGER and ACK_PAGER_COLOR now work as advertised.\n\n", "style" => "", "text" => "ACK_PAGER and ACK_PAGER_COLOR now work as advertised." }, { "line" => 201, "raw" => "Fix a bug resulting in uninitialized variable warnings when more\nthan one capture group was specified in the search pattern.\n\n", "style" => "", "text" => "Fix a bug resulting in uninitialized variable warnings when more than one capture group was specified in the search pattern." }, { "line" => 204, "raw" => "Make sure ack is happy to build and test under cron and other\nconsole-less environments.\n\n", "style" => "", "text" => "Make sure ack is happy to build and test under cron and other console-less environments." }, { "line" => 207, "raw" => "Colored output is now supported and on by default on Windows.\n\n", "style" => "", "text" => "Colored output is now supported and on by default on Windows." } ], "line" => 196, "raw" => "[FIXES]\n", "style" => "[]", "text" => "FIXES" } ], "line" => 184, "raw" => "2.05_01 Tue May 28 10:12:04 CDT 2013\n====================================\n", "raw_date" => "Tue May 28 10:12:04 CDT 2013", "version" => "2.05_01" }, { "date" => "2013-04-26T22:47:55Z", "entries" => [ { "line" => 211, "raw" => "ack now runs on a standard Perl 5.8.8 install with no module updates.\nThe minimum Perl requirement for ack is now explicitly 5.8.8. Anything\nbefore 5.8.8 will not work, and we've added checks. Thanks, Michael\nMcClimon.\n\n", "style" => "", "text" => "ack now runs on a standard Perl 5.8.8 install with no module updates. The minimum Perl requirement for ack is now explicitly 5.8.8. Anything before 5.8.8 will not work, and we've added checks. Thanks, Michael McClimon." }, { "entries" => [ { "line" => 217, "raw" => "ack was colorizing captured groups even if --nocolor was given.\nThanks, Dale Sedivic.\n\n", "style" => "", "text" => "ack was colorizing captured groups even if --nocolor was given. Thanks, Dale Sedivic." } ], "line" => 216, "raw" => "[FIXES]\n", "style" => "[]", "text" => "FIXES" }, { "entries" => [ { "line" => 221, "raw" => "The --shell file type now recognizes the fish shell.\n\n", "style" => "", "text" => "The --shell file type now recognizes the fish shell." }, { "line" => 223, "raw" => "We now ignore minified CSS or Javascript, in the form of either *.css.min\nor *.min.css, or *.js.min or *.min.js.\n\n", "style" => "", "text" => "We now ignore minified CSS or Javascript, in the form of either *.css.min or *.min.css, or *.js.min or *.min.js." }, { "line" => 226, "raw" => "Added support for the Dart language.\n\n", "style" => "", "text" => "Added support for the Dart language." }, { "line" => 228, "raw" => "ack 2.02 was much slower than ack 1.96, up to 8x slower in some cases.\nThese slowdowns have been mostly eliminated, and in some cases ack 2.04\nis now faster than 1.96.\n\n\n", "style" => "", "text" => "ack 2.02 was much slower than ack 1.96, up to 8x slower in some cases. These slowdowns have been mostly eliminated, and in some cases ack 2.04 is now faster than 1.96." } ], "line" => 220, "raw" => "[ENHANCEMENTS]\n", "style" => "[]", "text" => "ENHANCEMENTS" } ], "line" => 209, "raw" => "2.04 Fri Apr 26 22:47:55 CDT 2013\n====================================\n", "raw_date" => "Fri Apr 26 22:47:55 CDT 2013", "version" => "2.04" }, { "date" => "2013-04-18T23:51:52Z", "entries" => [ { "entries" => [ { "line" => 236, "raw" => "The firstlinematch file type detection option now only searches the\nfirst 250 characters of the first line of the file. Otherwise, ack\nwould read entire text files that were only one line long, such as\nminified JavaScript, and that would be slow. Thanks, Michael\nMcClimon.\n\n", "style" => "", "text" => "The firstlinematch file type detection option now only searches the first 250 characters of the first line of the file. Otherwise, ack would read entire text files that were only one line long, such as minified JavaScript, and that would be slow. Thanks, Michael McClimon." } ], "line" => 235, "raw" => "[ENHANCEMENTS]\n", "style" => "[]", "text" => "ENHANCEMENTS" }, { "entries" => [ { "line" => 243, "raw" => "Many clarifications and cleanups. Thanks, Michael McClimon.\n\n\n", "style" => "", "text" => "Many clarifications and cleanups. Thanks, Michael McClimon." } ], "line" => 242, "raw" => "[DOCUMENTATION]\n", "style" => "[]", "text" => "DOCUMENTATION" } ], "line" => 233, "raw" => "2.02 Thu Apr 18 23:51:52 CDT 2013\n====================================\n", "raw_date" => "Thu Apr 18 23:51:52 CDT 2013", "version" => "2.02" }, { "date" => "2013-04-17T22:49:41Z", "entries" => [ { "line" => 249, "raw" => "The first version of ack 2.0.\n\n\n", "style" => "", "text" => "The first version of ack 2.0." }, { "line" => 252, "raw" => "# Incompatibilities with ack 1.x\n\n", "style" => "#", "text" => "Incompatibilities with ack 1.x" }, { "line" => 254, "raw" => "ack 2 makes some big changes in its behaviors that could trip up\nusers who are used to the idiosyncracies of ack 1.x. These changes\ncould affect your searching happiness, so please read them.\n\n", "style" => "", "text" => "ack 2 makes some big changes in its behaviors that could trip up users who are used to the idiosyncracies of ack 1.x. These changes could affect your searching happiness, so please read them." }, { "line" => 258, "raw" => "* ack's default behavior is now to search all files that it identifies\nas being text. ack 1.x would only search files that were of a file\ntype that it recognized.\n\n", "style" => "*", "text" => "ack's default behavior is now to search all files that it identifies as being text. ack 1.x would only search files that were of a file type that it recognized." }, { "line" => 262, "raw" => "* Removed the `-a` and `-u` options since the default is to search\nall text files.\n\n", "style" => "*", "text" => "Removed the `-a` and `-u` options since the default is to search all text files." }, { "line" => 265, "raw" => "* Removed the `--binary` option. ack 2.0 will not find and search\nthrough binary files.\n\n", "style" => "*", "text" => "Removed the `--binary` option. ack 2.0 will not find and search through binary files." }, { "line" => 268, "raw" => "* Removed the `--skipped` option.\n\n", "style" => "*", "text" => "Removed the `--skipped` option." }, { "entries" => [ { "line" => 273, "raw" => " ack -g foo -v\n\n", "style" => "", "text" => "ack -g foo -v" } ], "line" => 270, "raw" => "* Removed the `--invert-file-match` option. `-v` now works with\n`-g`. To list files that do not match `/foo/`\n\n", "style" => "*", "text" => "Removed the `--invert-file-match` option. `-v` now works with `-g`. To list files that do not match `/foo/`" }, { "line" => 275, "raw" => "* `-g` now obeys all regex options: `-i`, `-w`, `-Q`, `-v`\n\n", "style" => "*", "text" => "`-g` now obeys all regex options: `-i`, `-w`, `-Q`, `-v`" }, { "line" => 277, "raw" => "* Removed the `-G` switch, because it was too confusing to have two\nregexes specified on the command line. Now you use the `-x` switch\nto pipe filenames from one `ack` invocation into another.\n\n", "style" => "*", "text" => "Removed the `-G` switch, because it was too confusing to have two regexes specified on the command line. Now you use the `-x` switch to pipe filenames from one `ack` invocation into another." }, { "entries" => [ { "line" => 283, "raw" => " ack -g sales | ack -x foo\n\n", "style" => "", "text" => "ack -g sales | ack -x foo" } ], "line" => 281, "raw" => "To search files with filename matching \"sales\" for the string \"foo\":\n\n", "style" => "", "text" => "To search files with filename matching \"sales\" for the string \"foo\":" }, { "line" => 285, "raw" => "# New features in ack 2.0\n\n", "style" => "#", "text" => "New features in ack 2.0" }, { "line" => 287, "raw" => "ack 2.0 will:\n\n", "style" => "", "text" => "ack 2.0 will:" }, { "entries" => [ { "line" => 290, "raw" => " * We will no longer have a `-a` switch.\n\n", "style" => "*", "text" => "We will no longer have a `-a` switch." } ], "line" => 289, "raw" => "* By default searches all text files, as identified by Perl's `-T` operator\n", "style" => "*", "text" => "By default searches all text files, as identified by Perl's `-T` operator" }, { "entries" => [ { "line" => 293, "raw" => " * name equality (\$filename eq 'Makefile')\n", "style" => "*", "text" => "name equality (\$filename eq 'Makefile')" }, { "line" => 294, "raw" => " * glob-style matching (`*.pl` identifies a Perl file)\n", "style" => "*", "text" => "glob-style matching (`*.pl` identifies a Perl file)" }, { "line" => 295, "raw" => " * regex-style matching (`/\\.pl\$/i` identifies a Perl file)\n", "style" => "*", "text" => "regex-style matching (`/\\.pl\$/i` identifies a Perl file)" }, { "line" => 296, "raw" => " * shebang-line matching (shebang line matching `/usr/bin/perl/`\n identifies a Perl file)\n\n", "style" => "*", "text" => "shebang-line matching (shebang line matching `/usr/bin/perl/` identifies a Perl file)" } ], "line" => 292, "raw" => "* improved flexibility in defining filetype selectors\n", "style" => "*", "text" => "improved flexibility in defining filetype selectors" }, { "entries" => [ { "entries" => [ { "line" => 301, "raw" => " * https://github.com/petdance/ack/issues/#issue/79\n", "style" => "*", "text" => "https://github.com/petdance/ack/issues/#issue/79" } ], "line" => 300, "raw" => " * global ackrc (/etc/ackrc)\n", "style" => "*", "text" => "global ackrc (/etc/ackrc)" }, { "line" => 302, "raw" => " * user-specific ackrc (~/.ackrc)\n", "style" => "*", "text" => "user-specific ackrc (~/.ackrc)" }, { "line" => 303, "raw" => " * per-project ackrc files (~/myproject/.ackrc)\n\n", "style" => "*", "text" => "per-project ackrc files (~/myproject/.ackrc)" } ], "line" => 299, "raw" => "* support for multiple ackrc files\n", "style" => "*", "text" => "support for multiple ackrc files" }, { "line" => 305, "raw" => "* you can use --dump to figure which options are set where\n\n", "style" => "*", "text" => "you can use --dump to figure which options are set where" }, { "entries" => [ { "line" => 308, "raw" => " * ack 2.0 has a set of definitions for filetypes, directories to\n include or exclude, etc, *but* these are only included so you don't\n need to ship an ackrc file to a new machine. You may tell ack to\n disregard these defaults if you like.\n\n", "style" => "*", "text" => "ack 2.0 has a set of definitions for filetypes, directories to include or exclude, etc, *but* these are only included so you don't need to ship an ackrc file to a new machine. You may tell ack to disregard these defaults if you like." } ], "line" => 307, "raw" => "* all inclusion/exclusion rules will be in the ackrc files\n", "style" => "*", "text" => "all inclusion/exclusion rules will be in the ackrc files" }, { "line" => 313, "raw" => "* In addition to the classic `--thpppt` option to draw Bill the\nCat, `ack --bar` will draw (of course) Admiral Ackbar.\n", "style" => "*", "text" => "In addition to the classic `--thpppt` option to draw Bill the Cat, `ack --bar` will draw (of course) Admiral Ackbar." } ], "line" => 246, "raw" => "2.00 Wed Apr 17 22:49:41 CDT 2013\n====================================\n\n", "raw_date" => "Wed Apr 17 22:49:41 CDT 2013", "version" => "2.00" } ] } CPAN-Changes-0.500005/corpus/dists/YAML-Tiny.changes000644 000000 000000 00000021725 14472651645 017703 0ustar00000000 000000 Revision history for Perl extension YAML-Tiny 1.53 2013-08-20 - really fixed metadata 1.52 2013-08-20 - updated repository metadata to reflect move to github 1.51 Sun 11 Mar 2012 - The fix described in 1.48 was incorrect. Removing an additional if $@ to fix it properly. - Make the Scalar::Util version check resistant to bugs caused by development versions. 1.50 Thu 23 Jun 2011 - Major bug fix, all code that writes arbitrary data should upgrade. - Simple scalars with no whitespace but ending in a colon like ABC: were not being quoted, which results in the parser confusing it with a mapping key and crashing. 1.49 Tue 8 Mar 2011 - No functional changes. - Don't depend on the YAML modules in RELEASE_TESTING, as it can pollute the advisory META.yml. 1.48 Tue 1 Feb 2011 - Fix to the refaddr compatibility where Scalar::Util is installed but is older than 1.18. 1.47 Mon 31 Jan 2011 - No functional changes - Only depend on the YAML implementations when we are release testing 1.46 Thu 16 Dec 2010 - No functional changes - Moving to a production release now CPAN Testers is green again 1.45_02 Tue 7 Dec 2010 - Adding experimental support for exception->errstr conversion - Updating test suite yaml_error to not expect exceptions 1.45_01 Tue 7 Dec 2010 - Added support for trailing line comments (INGY) - Added checks for some characters that are illegal or reserved in plain scalars (INGY) - Minor cleaning up of some out of date POD (ADAMK) - Updated AUTOMATED_TESTING dependencies to new versions (ADAMK) 1.44 Sun 8 Aug 2010 - No functional changes, upgrading is not required - Minor tweaks to Makefile.PL - Minor cleanup around the refaddr emulation code 1.43 Sat 10 Jul 2010 - No functional changes, upgrading is not required - Don't import Carp 'croak' any more, saving a few K 1.42 Fri 25 Jun 2010 - No functional changes, upgrading is not required - Clarified documation to explain that YAML::Tiny escapes "bool" keywords when it writes them as strings so that YAML parsers in other languages won't get confused, but this does not mean that YAML::Tiny actually supports boolean types itself. - Added an extra test case for boolean keyword escaping. - YAML::Perl comparison tests were loading the file back in with YAML.pm by mistake. Corrected this and added an additional case that YAML::Perl doesn't support that I wasn't catching. - Author tests updated and moved into xt/ - Updated the versions of the other YAML parsers we test ourselves against to the most recent versions of each. 1.41 Fri 11 Dec 2009 - Fixes a performance bug reported by Apocalypse. Single line double-quoted strings longer than 32,000ish characters resulted in the regular expression engine crashing due to excessive recursion. Changed to a different regex that will most likely only crash after 32,000 ESCAPED characters. If I could use negative look-behind assertions (I can't because I need 5.004) this whole issue would be MUCH simpler to fix. 1.40 Fri 31 Jul 2009 - Dear Ruby Community. Thank you so much for your bug report to the "Ruby Talk" mailing list regarding the lack of true/false support in Perl YAML modules. http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/169943 This flaw has now been resolved, around 2 hours after we were made aware of it. Next time, we recommend you report these bugs to the people who can actually fix your problem. 1.39 Thu 21 May 2009 - Even though utf8 starts at 5.7+ there's no is_utf till 5.8.1 so skip in the tests if needed (ADAMK) 1.38 Sat 16 May 2009 - Moving the test suite style closer to Parse::CPAN::Meta - Changed exceptions closer to Parse::CPAN::Meta - Fixed Changes file date for 1.37 :) 1.37 Sat 16 May 2009 - Call $self->_error instead of $class->_error when we can - Refactoring away some of the code other people have been contributing lately that most certainly NOT ::Tiny style. - Avoid the need to do '' escaping by moving it to "'" - Added comparative testing with YAML::Perl 1.36 Wed 7 Jan 2009 - Fixing missing feature reported by H.Merijn Brand 1.35 Wed 17 Dec 2008 - Production release for changes in 1.34_01 - No other changes 1.34_01 Wed 19 Nov 2008 - Improving sub-classability by passing the indent level through to the ->_write_scalar method. 1.33 Thu 24 Jul 2008 - Export Load and Dump functions by default. 1.32 Wed 14 May 2008 - Adding a test to check for correct exceptions - ONLY do comparative tests when the modules to compare to are current. (Prevents false failures in some cases) 1.31 Thu 8 May 2008 - Emergency bugfix release 1.30 Sun 4 May 2008 - Better error reporting of unsupported features - Heavily bump automated testing deps to remove false errors 1.29 Sat 12 Apr 2008 - CPAN Testers passes ok, moving to production version 1.28_01 Sat 5 Apr 2008 - Adding support for document terminators (To support YAML embedded in TAP streams) 1.27 Mon 31 Mar 2008 - Skip 04_scalar.t if no YAML.pm - Implement YAML compatibility + tests for LoadFile - Remove the LICENSE key from Makefile.PL (Which failed on some CPAN Testers setups) 1.26 Thu 20 Mar 2008 - Added extra test cases to validate RT bugs that were fixed previous, but not closed at the time. - Always quote when serialising anything that starts with a non-word - YAML::Tiny::Load is now fully compatible with YAML.pm in scalar context (returns the LAST parsed document). 1.25 Mon 14 Jan 2008 - Wrote the specification section 1.24_01 Fri 11 Jan 2008 - Adding additional test cases - Adding support for YAML header for META.yml - Adding support for YAML header for YAML 1.0 - Adding support for YAML header for YAML 1.1 1.23 Thu 10 Jan 2008 - Identical to 1.22_01 - CPAN Testers results positive, pushing to production version 1.22_01 Wed 9 Jan 2008 - Correcting handling of single quote escaping - Adding protection for infinite loops caused by circular references during serializing. - Confirmed support for toolbar.yml sample 1.21 Thu 6 Dec 2007 - Fixing support for unprintable characters 1.20 Mon 19 Nov 2007 - Correcting class name in @EXPORT_OK declaration (Demetrios Biskinis) 1.19 Fri 16 Nov 2007 - Removing the invalid perl dep 1.18 Mon 5 Nov 2007 - Adding a new test file 1.17 Thu 1 Nov 2007 - Updating from Module::Install to the tinier ExtUtils::MakeMaker 1.16 Mon 22 Oct 2007 - Updating to newer AUTOMATED_TESTING tests 1.15 Sat 25 Aug 2007 - Incremental release to include an updated version of 99_author.t - Replace a few CODE INCOMPLETE errors with real errors (those parts of the module are now complete) 1.14 Thu 16 Aug 2007 - Adding support for empty reference documents 1.13 Mon 9 Jul 2007 - Adding a test case for support of multi-byte characters 1.12 Tue 5 Jun 2007 - Adding support for open hash/array at EOF 1.11 Tue 5 Jun 2007 - Forgot to string trailing whitespace in a few cases - 'hashkey: This was mistaken as a hash entry, not a string' - Adding explicit tests from #yaml for single quote escaping 1.10 Tue 5 Jun 2007 - Adding support for null hash/arrays 1.09 Mon 21 May 2007 - Fixing a bug in the trivial scalar case 1.08 Wed 16 May 2007 - Adding support for |- trimming multiline scalars 1.07 Tue 15 May 2007 - Adding support for whitespace after document headers 1.06 Mon 14 May 2007 - Bug fix to support an additional variant of null hashes 1.05 Wed 2 May 2007 - Bug fix to allow support for keys with spaces - Bug fix to allow empty comments 1.04 Wed 21 Feb 2007 - Adding support for LoadFile, DumpFile, freeze and thaw 1.03 Sun 14 Jan 2007 - Removing the forward-looking part of the preamble 1.02 Sun 14 Jan 2007 - Fixing exporting 1.01 Sun 14 Jan 2007 - Removed the ugly bold warning 1.00 Sun 14 Jan 2007 - What the hell, I'm as close as is needed I think 0.90 Sat 13 Jan 2007 - Adding support for inline multi-lines 0.11 Mon 25 Sep 2006 - Fixed bug in regex that detects unheadered ARRAY|HASH 0.10 Thu 24 Aug 2006 - Added double-quote support, making YAML::Tiny a lot more usable - Added Load and Dump for YAML.pm compatibility - Added tests for verifying compatibility with YAML::Syck 0.06 Sun 9 Jul 2006 - Added more tests 0.05 Sat 8 Jul 2006 - Added support for nested inline hashes (parse only) - Added support for naked undef array and hash entries - Can now handle sample Plagger configs from Miyagawa-san's talk - Can now handle vanilla.yml from Perl::Dist::Vanilla 0.04 Sat 8 Jul 2006 - Added support for implicit document start for array/hash types - Added support for colons in hash keys - Added support for simple single quotes - Can now handle our own META.yml file 0.03 Sat 8 Jul 2006 - Got all of the trivial test cases to pass - Good enough for an initial usable release, but still expected to fail a lot 0.02 Thu 26 Apr 2006 - Added support for a single root-level hash - Correcting POD bugs 0.01 Wed 26 Apr 2006 - Initial version - Handles only document headers and non-wrapping scalar documents CPAN-Changes-0.500005/corpus/dists/IUP.parsed000644 000000 000000 00000006601 14472651645 016517 0ustar00000000 000000 { "preamble" => "=head1 Revision history for IUP\n\n=head2 XX/XX/2013 - 0.102\n\n - XXX\n\n=head2 31/07/2013 - 0.101\n\n - fixing broken links to examples\n\n=head2 06/02/2013 - 0.100\n\n - updating callbacks newly added in iup 3.6/3.7\n - starting new version line\n\n=head2 12/08/2012 - 0.006\n\n - attribute accesors now handled via AUTOLOAD\n - Callback.xs+Canvas.xs incorporated into IupLibrary.xs\n - improved thread awareness of Idle callback\n - preparing for iup-3.6\n\n=head2 19/08/2011 - 0.004\n\n - forcing newer Alien::IUP (to make IUP install smoothly on cygwin)\n - fixing cygwin build failures\n\n=head2 18/08/2011 - 0.003\n\n - much better documentation\n - many fixes for IUP::Canvas methods\n - added: IUP::Canvas::(Palette|Pattern|Stipple|Bitmap) - canvas helper modules\n - added: IUP::Canvas::(InternalState|InternalServerImage|InternalContext) - canvas helper modules (hidden)\n - added: IUP::Canvas::FileBitmap\n - added: IUP::Canvas::FileVector - replacement for IUP::Canvas::(SVG|EMF)\n - added: IUP::ConfigData\n - fix for callbacks: better handling of callbacks with no return value (fallback to IUP_DEFAULT)\n - fix for callbacks: MULTITOUCH_CB, MULTISELECTION_CB, MULTIUNSELECTION_CB, NODEREMOVED_CB\n - removing debug stuff 'use Data::Dump(er)'\n\n=head2 29/07/2011 - 0.002\n\n - removing invalid accessors \"0\" and \"1\"\n - fix for \"Can't locate IUP/OleControl.pm\"\n - fixing documentation\n\n=head2 19/07/2011 - 0.001_01\n\n - the first CPAN release\n\n=head2 15/09/2010 - 0.000\n\n - initial proof-of-concept version uploaded to github\n - https://github.com/kmx/perl-iup/commit/e8cb0bb10e4ce6e7a342f65a6b933bbd90c1fb6d", "raw_preamble" => "=head1 Revision history for IUP\r\n\r\n=head2 XX/XX/2013 - 0.102\r\n\r\n - XXX\r\n\r\n=head2 31/07/2013 - 0.101\r\n\r\n - fixing broken links to examples\r\n\r\n=head2 06/02/2013 - 0.100\r\n\r\n - updating callbacks newly added in iup 3.6/3.7\r\n - starting new version line\r\n\r\n=head2 12/08/2012 - 0.006\r\n\r\n - attribute accesors now handled via AUTOLOAD\r\n - Callback.xs+Canvas.xs incorporated into IupLibrary.xs\r\n - improved thread awareness of Idle callback\r\n - preparing for iup-3.6\r\n\r\n=head2 19/08/2011 - 0.004\r\n\r\n - forcing newer Alien::IUP (to make IUP install smoothly on cygwin)\r\n - fixing cygwin build failures\r\n\r\n=head2 18/08/2011 - 0.003\r\n\r\n - much better documentation\r\n - many fixes for IUP::Canvas methods\r\n - added: IUP::Canvas::(Palette|Pattern|Stipple|Bitmap) - canvas helper modules\r\n - added: IUP::Canvas::(InternalState|InternalServerImage|InternalContext) - canvas helper modules (hidden)\r\n - added: IUP::Canvas::FileBitmap\r\n - added: IUP::Canvas::FileVector - replacement for IUP::Canvas::(SVG|EMF)\r\n - added: IUP::ConfigData\r\n - fix for callbacks: better handling of callbacks with no return value (fallback to IUP_DEFAULT)\r\n - fix for callbacks: MULTITOUCH_CB, MULTISELECTION_CB, MULTIUNSELECTION_CB, NODEREMOVED_CB\r\n - removing debug stuff 'use Data::Dump(er)'\r\n\r\n=head2 29/07/2011 - 0.002\r\n\r\n - removing invalid accessors \"0\" and \"1\"\r\n - fix for \"Can't locate IUP/OleControl.pm\"\r\n - fixing documentation\r\n\r\n=head2 19/07/2011 - 0.001_01\r\n\r\n - the first CPAN release\r\n\r\n=head2 15/09/2010 - 0.000\r\n\r\n - initial proof-of-concept version uploaded to github\r\n - https://github.com/kmx/perl-iup/commit/e8cb0bb10e4ce6e7a342f65a6b933bbd90c1fb6d\r\n", "releases" => [] } CPAN-Changes-0.500005/corpus/dists/Ouch.changes000644 000000 000000 00000002540 14472651645 017110 0ustar00000000 000000 0.0407 - September 23, 2013 - Catch subclasses of Ouch as well Thanks to Graham Knop. 0.0406 - September 13, 2013 - Ouch doesn't need 5.12 afterall. Just needed to include the correct prereqs for the pragmas. Thanks to MidLifeXis and Ether. 0.0405 - August 19, 2013 - worr submitted a patch fixing some a POD error 0.0404 - August 19, 2013 - Made Ouch explicitly require Perl 5.12 due to use of "use overload" and "use parent". 0.0403 - July 11, 2013 - Fixed documentation misspellings. @richdouglasevans 0.0402 - June 18, 2013 - Fixed missing documentation for "barf". - Depricated :traditional in favor of Try::Tiny. - Documented rethrowing Ouches. - Added more docs for the :trytiny aliases 0.0401 - April 30, 2011 - beppu pointed out there was no $VERSION. Told Dist::Zilla to add that. 0.0400 - April 30, 2011 - Merged barf() from William Orr. - Added an export called ":trytiny" which exports throw(), caught(), and caught_all(). 0.0300 - April 14, 2011 - Added hug() as a catch all. By popular demand: http://blogs.perl.org/users/jt_smith/2011/04/ouch---exceptions-that-dont-hurt.html#comments - Codes can now be strings. - Added an export called 'traditional' which gives you more traditional names like try(), catch(), throw(), and catch_all(). 0.0200 - April 14, 2011 - Added 'bleep'. 0.0100 - April 13, 2011 - Initial public release. CPAN-Changes-0.500005/corpus/dists/Wiktionary-Parser.changes000644 000000 000000 00000002610 14472651645 021602 0ustar00000000 000000 Revision history for Wiktionary::Parser 0.01 2012-07-05 First version 0.02 2012-07-07 accessors for translations, synonyms, hyponyms, hypernyms, antonyms, pronunciations, word senses, parts of speech stubbed out accessors for etymologies, derived words, alternative forms added methods for accessing and traversing document sections utilize MediaWiki::API package 0.03 2012-07-08 Added subdocuments to provide more functionality when retrieving child sections of the document. Follow Wikisaurus links for synonyms, hyponyms, hypernyms, etc and include content from those pages. Provided method for downloading audio files for pronunciations Normalize language codes and provide consistent language names 0.04 2012-07-11 Added unit test for parsing a document Added unit test for parsing translations Refactored translation parser 0.05 2012-07-14 updated documentation Added example scripts in /bin Various bugfixes 0.06 2012-07-14 Added part of speech info to output of get_translations() Included translations from other wiktionary pages linked to the original one 0.07 2012-07-15 Updates to documentation and example scripts 0.08 2012-07-18 Various bugfixes for data sanitizing Fixed issue with unit tests CPAN-Changes-0.500005/corpus/dists/Test-Aggregate.parsed000644 000000 000000 00000112375 14472651645 020673 0ustar00000000 000000 { "preamble" => "Revision history for Test-Aggregate", "raw_preamble" => "Revision history for Test-Aggregate\n\n", "releases" => [ { "date" => "2013-08-14", "entries" => [ { "line" => 4, "raw" => " - Fix tests on windows\n\n", "style" => "-", "text" => "Fix tests on windows" } ], "line" => 3, "raw" => "0.368 2013-08-14\n", "raw_date" => "2013-08-14", "version" => "0.368" }, { "date" => "2013-08-13", "entries" => [ { "line" => 7, "raw" => " - Improve Test::Aggregate::Nested error handling:\n Don't treat undef as a failure;\n Show a warning and let Test::More::subtest() determine the result.\n This solves the false negative reported in\n https://rt.cpan.org/Public/Bug/Display.html?id=87240\n Thanks to the venerable Andreas J. K\303\266nig for reporting!\n", "style" => "-", "text" => "Improve Test::Aggregate::Nested error handling: Don't treat undef as a failure; Show a warning and let Test::More::subtest() determine the result. This solves the false negative reported in https://rt.cpan.org/Public/Bug/Display.html?id=87240 Thanks to the venerable Andreas J. K\303\266nig for reporting!" }, { "line" => 13, "raw" => " - Add more tests.\n", "style" => "-", "text" => "Add more tests." }, { "line" => 14, "raw" => " - Actually include previously added tests to the dist\n (Where are you Dist::Zilla?)\n\n", "style" => "-", "text" => "Actually include previously added tests to the dist (Where are you Dist::Zilla?)" } ], "line" => 6, "raw" => "0.367 2013-08-13\n", "raw_date" => "2013-08-13", "version" => "0.367" }, { "date" => "2013-07-11", "entries" => [ { "line" => 18, "raw" => " - Update metadata; Re-release to reindex with additional permissions\n\n", "style" => "-", "text" => "Update metadata; Re-release to reindex with additional permissions" } ], "line" => 17, "raw" => "0.366 2013-07-11\n", "raw_date" => "2013-07-11", "version" => "0.366" }, { "date" => "2013-07-10", "entries" => [ { "entries" => [ { "line" => 23, "raw" => " - The problem was that the \$verbose option was hard-coded as\n '2' deep inside the module.\n", "style" => "-", "text" => "The problem was that the \$verbose option was hard-coded as '2' deep inside the module." } ], "line" => 21, "raw" => " - Avoid printing unnecessary \"ok - \"'s diag()s when they are passing,\n and when the 'verbose' option is set to 0.\n", "style" => "-", "text" => "Avoid printing unnecessary \"ok - \"'s diag()s when they are passing, and when the 'verbose' option is set to 0." }, { "line" => 25, "raw" => " - Catch errors in tests under Test::Aggregate::Nested; report as ok(0)\n", "style" => "-", "text" => "Catch errors in tests under Test::Aggregate::Nested; report as ok(0)" }, { "line" => 26, "raw" => " - Pod fixes\n", "style" => "-", "text" => "Pod fixes" }, { "line" => 27, "raw" => " - Update repository metadata\n\n", "style" => "-", "text" => "Update repository metadata" } ], "line" => 20, "raw" => "0.365 2013-07-10\n", "raw_date" => "2013-07-10", "version" => "0.365" }, { "entries" => [ { "line" => 30, "raw" => " - Allow skipping the rest of a test using\n plan skip_all => \$reason\n\n", "style" => "-", "text" => "Allow skipping the rest of a test using plan skip_all => \$reason" } ], "line" => 29, "note" => "04/12/2010", "raw" => "0.364 04/12/2010\n", "version" => "0.364" }, { "entries" => [ { "line" => 34, "raw" => " - Pass current test name to setup and teardown.\n\n", "style" => "-", "text" => "Pass current test name to setup and teardown." } ], "line" => 33, "note" => "24/11/2009", "raw" => "0.363 24/11/2009\n", "version" => "0.363" }, { "entries" => [ { "line" => 37, "raw" => " - Removed broken \"check_plan\" from Test::Aggregate. It was always\n dodgy and really doesn't contribute much and the latest release\n broke with 'no_plan'. We now warn if we see this.\n", "style" => "-", "text" => "Removed broken \"check_plan\" from Test::Aggregate. It was always dodgy and really doesn't contribute much and the latest release broke with 'no_plan'. We now warn if we see this." }, { "line" => 40, "raw" => " - Minimum Test::More is now 0.94. This gives us more robust nested\n TAP.\n\n", "style" => "-", "text" => "Minimum Test::More is now 0.94. This gives us more robust nested TAP." } ], "line" => 36, "note" => "17/11/2009", "raw" => "0.362 17/11/2009\n", "version" => "0.362" }, { "entries" => [ { "line" => 44, "raw" => " - Keep Makefile.PL in synch. Reported by Andreas Koenig\n (https://rt.cpan.org/Ticket/Display.html?id=50673)\n\n", "style" => "-", "text" => "Keep Makefile.PL in synch. Reported by Andreas Koenig (https://rt.cpan.org/Ticket/Display.html?id=50673)" } ], "line" => 43, "note" => "20/10/2009", "raw" => "0.361 20/10/2009\n", "version" => "0.361" }, { "entries" => [ { "line" => 48, "raw" => " - Mark for production.\n", "style" => "-", "text" => "Mark for production." }, { "line" => 49, "raw" => " - Removed 'dump.t' files in tests.\n", "style" => "-", "text" => "Removed 'dump.t' files in tests." }, { "line" => 50, "raw" => " - Improve Test::Aggregate::Nested docs.\n", "style" => "-", "text" => "Improve Test::Aggregate::Nested docs." }, { "line" => 51, "raw" => " - Removed some dead code.\n", "style" => "-", "text" => "Removed some dead code." }, { "line" => 52, "raw" => " - Suppress multiple plans (#48352, Chisel Wright)\n\n", "style" => "-", "text" => "Suppress multiple plans (#48352, Chisel Wright)" } ], "line" => 47, "note" => "18/10/2009", "raw" => "0.36 18/10/2009\n", "version" => "0.36" }, { "entries" => [ { "line" => 55, "raw" => " - Added missing files to MANIFEST.\n\n", "style" => "-", "text" => "Added missing files to MANIFEST." } ], "line" => 54, "note" => "19/08/2009", "raw" => "0.35_07 19/08/2009\n", "version" => "0.35_07" }, { "entries" => [ { "line" => 58, "raw" => " - Added support for nested TAP via Test::Aggregate::Nested.\n", "style" => "-", "text" => "Added support for nested TAP via Test::Aggregate::Nested." }, { "line" => 59, "raw" => " - I really, really need to get a real release out.\n\n", "style" => "-", "text" => "I really, really need to get a real release out." } ], "line" => 57, "note" => "28/06/2009", "raw" => "0.35_06 28/06/2009\n", "version" => "0.35_06" }, { "entries" => [ { "line" => 62, "raw" => " - Removed bogus test file throwing my counts off. No wonder all tests\n were failing for people!\n", "style" => "-", "text" => "Removed bogus test file throwing my counts off. No wonder all tests were failing for people!" }, { "line" => 64, "raw" => " - Remove development lib links.\n\n", "style" => "-", "text" => "Remove development lib links." } ], "line" => 61, "note" => "20/05/2009", "raw" => "0.35_05 20/05/2009\n", "version" => "0.35_05" }, { "entries" => [ { "line" => 67, "raw" => " - Unlink dump files in tests.\n\n", "style" => "-", "text" => "Unlink dump files in tests." } ], "line" => 66, "note" => "Unreleased.", "raw" => "0.35_04 Unreleased.\n", "version" => "0.35_04" }, { "entries" => [ { "line" => 70, "raw" => " - Don't run done_testing() in tests if it doesn't exist.\n\n", "style" => "-", "text" => "Don't run done_testing() in tests if it doesn't exist." } ], "line" => 69, "note" => "15/05/2009", "raw" => "0.35_03 15/05/2009\n", "version" => "0.35_03" }, { "entries" => [ { "line" => 73, "raw" => " - Deprecate tests run in BEGIN/END/CHECK/INIT.\n See http://use.perl.org/~Ovid/journal/38974 for more information.\n", "style" => "-", "text" => "Deprecate tests run in BEGIN/END/CHECK/INIT. See http://use.perl.org/~Ovid/journal/38974 for more information." }, { "line" => 75, "raw" => " - check_plan, if set, is now done at the end of each test instead of\n the end of all tests.\n", "style" => "-", "text" => "check_plan, if set, is now done at the end of each test instead of the end of all tests." }, { "line" => 77, "raw" => " - Make it work with the Test::Builder 0.88 and previous versions.\n", "style" => "-", "text" => "Make it work with the Test::Builder 0.88 and previous versions." }, { "line" => 78, "raw" => " - Embed the calling test script name in a comment at the top of the\n dump file.\n", "style" => "-", "text" => "Embed the calling test script name in a comment at the top of the dump file." }, { "line" => 80, "raw" => " - Fix a doc typo (thanks to Offer Kaye for the report)\n", "style" => "-", "text" => "Fix a doc typo (thanks to Offer Kaye for the report)" }, { "line" => 81, "raw" => " - Cleaned up some tests.\n\n", "style" => "-", "text" => "Cleaned up some tests." } ], "line" => 72, "note" => "14/05/2009", "raw" => "0.35_02 14/05/2009\n", "version" => "0.35_02" }, { "entries" => [ { "line" => 84, "raw" => " - Make 'exit()' scream loudly if called.\n", "style" => "-", "text" => "Make 'exit()' scream loudly if called." }, { "line" => 85, "raw" => " - Move Test::Aggregate::Builder globals into a hashref in the object.\n Further encapsulation to come later.\n", "style" => "-", "text" => "Move Test::Aggregate::Builder globals into a hashref in the object. Further encapsulation to come later." }, { "line" => 87, "raw" => " - Export &run_this_test_program from Test::Aggregate to make dump\n files cleaner.\n", "style" => "-", "text" => "Export &run_this_test_program from Test::Aggregate to make dump files cleaner." }, { "line" => 89, "raw" => " - Reorganize the test suite to avoid false negatives.\n\n", "style" => "-", "text" => "Reorganize the test suite to avoid false negatives." } ], "line" => 83, "note" => "18/11/2008", "raw" => "0.35_01 18/11/2008\n", "version" => "0.35_01" }, { "entries" => [ { "line" => 92, "raw" => " - Move from developer to production version number.\n", "style" => "-", "text" => "Move from developer to production version number." }, { "line" => 93, "raw" => " - Add 'use Test::Aggregate' to the dump file.\n", "style" => "-", "text" => "Add 'use Test::Aggregate' to the dump file." }, { "line" => 94, "raw" => " - Updated the docs to explain that the C functions are\n re-exported.\n\n", "style" => "-", "text" => "Updated the docs to explain that the C functions are re-exported." } ], "line" => 91, "note" => "27/10/2008", "raw" => "0.35 27/10/2008\n", "version" => "0.35" }, { "entries" => [ { "line" => 98, "raw" => " - Added 'tests' key to the constructor. This is an optional method of\n identifying which tests you wish to aggregate.\n\n", "style" => "-", "text" => "Added 'tests' key to the constructor. This is an optional method of identifying which tests you wish to aggregate." } ], "line" => 97, "note" => "15/10/2008", "raw" => "0.34_09 15/10/2008\n", "version" => "0.34_09" }, { "entries" => [ { "line" => 102, "raw" => " - Much refactoring of internals. This moves some autogenerated code\n directly into the Test::Aggregate namespace and Test::Aggregate->run\n calls this code directly to better synchronize behavior between\n running the code and running the dump file. This has the side\n effect of making individual test files much easier to find and read\n and makes the 'dump.t' file smaller.\n", "style" => "-", "text" => "Much refactoring of internals. This moves some autogenerated code directly into the Test::Aggregate namespace and Test::Aggregate->run calls this code directly to better synchronize behavior between running the code and running the dump file. This has the side effect of making individual test files much easier to find and read and makes the 'dump.t' file smaller." }, { "line" => 108, "raw" => " - Fixed a bug where a test dieing could cause the wrong test to be\n reported as failing.\n", "style" => "-", "text" => "Fixed a bug where a test dieing could cause the wrong test to be reported as failing." }, { "line" => 110, "raw" => " - Removed %INC from the list of localized variables. Localazing this\n doesn't remove the code from the symbol tables, so attempting to\n later reload this code leads to strange failures.\n\n", "style" => "-", "text" => "Removed %INC from the list of localized variables. Localazing this doesn't remove the code from the symbol tables, so attempting to later reload this code leads to strange failures." } ], "line" => 101, "note" => "14/10/2008", "raw" => "0.34_08 14/10/2008\n", "version" => "0.34_08" }, { "entries" => [ { "line" => 115, "raw" => " - Fixed bug where dump file tests would fail if check_plan is set to\n true.\n", "style" => "-", "text" => "Fixed bug where dump file tests would fail if check_plan is set to true." }, { "line" => 117, "raw" => " - Common environment variables are now localized on a \"per test file\"\n basis.\n", "style" => "-", "text" => "Common environment variables are now localized on a \"per test file\" basis." }, { "line" => 119, "raw" => " - Make the \"5.006\" requirement explicit in the Build.PL and\n Makefile.PL scripts.\n\n", "style" => "-", "text" => "Make the \"5.006\" requirement explicit in the Build.PL and Makefile.PL scripts." } ], "line" => 114, "note" => "13/10/2008", "raw" => "0.34_07 13/10/2008\n", "version" => "0.34_07" }, { "entries" => [ { "line" => 123, "raw" => " - Skip findbin test if FindBin < 1.47. Seems to cause test failures\n as FindBin *appears* to be getting confused by the setting of \$0,\n but I'm not sure yet as I don't have an older Perl installed.\n\n", "style" => "-", "text" => "Skip findbin test if FindBin < 1.47. Seems to cause test failures as FindBin *appears* to be getting confused by the setting of \$0, but I'm not sure yet as I don't have an older Perl installed." } ], "line" => 122, "note" => "21/10/2008", "raw" => "0.34_06 21/10/2008\n", "version" => "0.34_06" }, { "entries" => [ { "line" => 128, "raw" => " - Changed 'unlink dump.t or die' to a warn (tests only).\n\n", "style" => "-", "text" => "Changed 'unlink dump.t or die' to a warn (tests only)." } ], "line" => 127, "note" => "19/09/2008", "raw" => "0.34_05 19/09/2008\n", "version" => "0.34_05" }, { "entries" => [ { "line" => 131, "raw" => " - Fixed major regression where --dry was eliminated and test counts (X\n of Y tests) were eliminated.\n", "style" => "-", "text" => "Fixed major regression where --dry was eliminated and test counts (X of Y tests) were eliminated." }, { "line" => 133, "raw" => " - Automatically build a proper Makefile.PL.\n", "style" => "-", "text" => "Automatically build a proper Makefile.PL." }, { "line" => 134, "raw" => " - Add FindBin to the dependencies.\n", "style" => "-", "text" => "Add FindBin to the dependencies." }, { "line" => 135, "raw" => " - Major refactoring of internals to make debugging dump files much\n cleaner and easier (and reduce their size, while we're at it).\n\n", "style" => "-", "text" => "Major refactoring of internals to make debugging dump files much cleaner and easier (and reduce their size, while we're at it)." } ], "line" => 130, "note" => "18/09/2008", "raw" => "0.34_03 18/09/2008\n", "version" => "0.34_03" }, { "entries" => [ { "line" => 139, "raw" => " - Again cleaned up dump file generated when running tests. Need to\n guard against that better. Also removed it from the MANIFEST.\n\n", "style" => "-", "text" => "Again cleaned up dump file generated when running tests. Need to guard against that better. Also removed it from the MANIFEST." } ], "line" => 138, "note" => "15/09/2008", "raw" => "0.34_03 15/09/2008\n", "version" => "0.34_03" }, { "entries" => [ { "line" => 143, "raw" => " - Allow skip_all tests.\n\n", "style" => "-", "text" => "Allow skip_all tests." } ], "line" => 142, "note" => "14/09/2008", "raw" => "0.34_02 14/09/2008\n", "version" => "0.34_02" }, { "entries" => [ { "line" => 146, "raw" => " - Add an option to reinitialize FindBin for each aggregated test.\n", "style" => "-", "text" => "Add an option to reinitialize FindBin for each aggregated test." }, { "line" => 147, "raw" => " - Don't emit a plan when not running any tests.\n\n", "style" => "-", "text" => "Don't emit a plan when not running any tests." } ], "line" => 145, "note" => "04/09/2008", "raw" => "0.34_01 04/09/2008\n", "version" => "0.34_01" }, { "entries" => [ { "line" => 150, "raw" => " - Upload 0.32_05 as a non-development release.\n\n", "style" => "-", "text" => "Upload 0.32_05 as a non-development release." } ], "line" => 149, "note" => "03/09/2008", "raw" => "0.33 03/09/2008\n", "version" => "0.33" }, { "entries" => [ { "line" => 153, "raw" => " - Added Test::Aggregate::Builder to the MANIFEST.\n\n", "style" => "-", "text" => "Added Test::Aggregate::Builder to the MANIFEST." } ], "line" => 152, "note" => "03/08/2008", "raw" => "0.32_02 03/08/2008\n", "version" => "0.32_02" }, { "entries" => [ { "line" => 156, "raw" => " - Added line directives to aggregated tests to ensure that\n Test::Builder::ok can now report the correct filename and line\n number.\n", "style" => "-", "text" => "Added line directives to aggregated tests to ensure that Test::Builder::ok can now report the correct filename and line number." }, { "line" => 159, "raw" => " - set_filenames => 1 is now the default behavior.\n", "style" => "-", "text" => "set_filenames => 1 is now the default behavior." }, { "line" => 160, "raw" => " - Split the Test::Builder override into its own package.\n\n", "style" => "-", "text" => "Split the Test::Builder override into its own package." } ], "line" => 155, "note" => "03/08/2008", "raw" => "0.32_01 03/08/2008\n", "version" => "0.32_01" }, { "entries" => [ { "line" => 163, "raw" => " - Minor bugfix to play well with Test::Most (reset test failure when\n forcing failure after test program eval).\n\n", "style" => "-", "text" => "Minor bugfix to play well with Test::Most (reset test failure when forcing failure after test program eval)." } ], "line" => 162, "note" => "22/07/2008", "raw" => "0.31 22/07/2008\n", "version" => "0.31" }, { "entries" => [ { "line" => 167, "raw" => " - Resolved final (known) bug with Test::NoWarnings. If it's loaded\n before the plan is set, make sure we still adjust the plan.\n\n", "style" => "-", "text" => "Resolved final (known) bug with Test::NoWarnings. If it's loaded before the plan is set, make sure we still adjust the plan." } ], "line" => 166, "note" => "17/07/2008", "raw" => "0.30 17/07/2008\n", "version" => "0.30" }, { "entries" => [ { "line" => 171, "raw" => " - Document the 'local \$\@' problem in \"COMMON PITFALLS\".\n", "style" => "-", "text" => "Document the 'local \$\@' problem in \"COMMON PITFALLS\"." }, { "line" => 172, "raw" => " - Ensure that dump file also forces a failure outside the eval().\n", "style" => "-", "text" => "Ensure that dump file also forces a failure outside the eval()." }, { "line" => 173, "raw" => " - Make sure that the TEST_AGGREGATE environment variable is set in a\n BEGIN block. Otherwise, code relying on this variable might get\n called too soon to check it.\n\n", "style" => "-", "text" => "Make sure that the TEST_AGGREGATE environment variable is set in a BEGIN block. Otherwise, code relying on this variable might get called too soon to check it." } ], "line" => 170, "note" => "15/07/2008", "raw" => "0.24 15/07/2008\n", "version" => "0.24" }, { "entries" => [ { "line" => 178, "raw" => " - Reluctantly added Test::NoWarnings as a dependency to avoid test\n failures.\n\n", "style" => "-", "text" => "Reluctantly added Test::NoWarnings as a dependency to avoid test failures." } ], "line" => 177, "note" => "12/06/08", "raw" => "0.23 12/06/08\n", "version" => "0.23" }, { "entries" => [ { "line" => 182, "raw" => " - If we really do have an error from the eval listed below, make sure\n we have a failing test to accompany it. Otherwise, tests which die\n might be reported as passing.\n\n", "style" => "-", "text" => "If we really do have an error from the eval listed below, make sure we have a failing test to accompany it. Otherwise, tests which die might be reported as passing." } ], "line" => 181, "note" => "11/06/2008", "raw" => "0.22 11/06/2008\n", "version" => "0.22" }, { "entries" => [ { "line" => 187, "raw" => " - Wrap ->run_the_tests() calls in an eval so that one package failing\n is less likely to stop the other tests from running.\n\n", "style" => "-", "text" => "Wrap ->run_the_tests() calls in an eval so that one package failing is less likely to stop the other tests from running." } ], "line" => 186, "note" => "11/06/2008", "raw" => "0.21 11/06/2008\n", "version" => "0.21" }, { "entries" => [ { "line" => 191, "raw" => " - 'startup' and 'shutdown' are no longer called in BEGIN/END blocks.\n They were getting rather tricky due to timing issues. This may\n change in the future.\n", "style" => "-", "text" => "'startup' and 'shutdown' are no longer called in BEGIN/END blocks. They were getting rather tricky due to timing issues. This may change in the future." }, { "line" => 194, "raw" => " - Added 'check_plan' attribute. This allows us to verify the plan of\n those test programs which have one (experimental).\n", "style" => "-", "text" => "Added 'check_plan' attribute. This allows us to verify the plan of those test programs which have one (experimental)." }, { "line" => 196, "raw" => " - Added 'test_nowarnings' attribute. This can be used to disable\n C.\n", "style" => "-", "text" => "Added 'test_nowarnings' attribute. This can be used to disable C." }, { "line" => 198, "raw" => " - Reworked some of the Test::Builder changes to minimize the amount of\n monkey patching and to make the intent clearer.\n", "style" => "-", "text" => "Reworked some of the Test::Builder changes to minimize the amount of monkey patching and to make the intent clearer." }, { "line" => 200, "raw" => " - Verbosity is now 0, 1, or 2. If '1' is verbosity, we only show test\n failures.\n", "style" => "-", "text" => "Verbosity is now 0, 1, or 2. If '1' is verbosity, we only show test failures." }, { "line" => 202, "raw" => " - We now maintain the Build.PL and Makefile.PL files separately due to\n issues with the latter not supporting the features of the former.\n", "style" => "-", "text" => "We now maintain the Build.PL and Makefile.PL files separately due to issues with the latter not supporting the features of the former." }, { "line" => 204, "raw" => " - Eliminated some bogus tests added which were only there to show you\n which aggtest was being run.\n", "style" => "-", "text" => "Eliminated some bogus tests added which were only there to show you which aggtest was being run." }, { "line" => 206, "raw" => " - Fixed the dates in the Changes file.\n\n", "style" => "-", "text" => "Fixed the dates in the Changes file." } ], "line" => 190, "note" => "04/04/2008", "raw" => "0.20 04/04/2008\n", "version" => "0.20" }, { "entries" => [ { "line" => 209, "raw" => " - Fixed bug where not having Data::Dump::Streamer installed would\n cause test failures if 'dump' was not set. Reported by numerous\n CPAN smoke testers :)\n", "style" => "-", "text" => "Fixed bug where not having Data::Dump::Streamer installed would cause test failures if 'dump' was not set. Reported by numerous CPAN smoke testers :)" }, { "line" => 212, "raw" => " - Added optional (and experimental) Perl::Tidy support.\n", "style" => "-", "text" => "Added optional (and experimental) Perl::Tidy support." }, { "line" => 213, "raw" => " - Fixed broken 'verbose'. The 'ok/not ok' message was being output\n regardless of verbose setting.\n\n", "style" => "-", "text" => "Fixed broken 'verbose'. The 'ok/not ok' message was being output regardless of verbose setting." } ], "line" => 208, "note" => "15/03/2008", "raw" => "0.11 15/03/2008\n", "version" => "0.11" }, { "entries" => [ { "line" => 217, "raw" => " - Added startup, shutdown, setup, teardown attributes.\n", "style" => "-", "text" => "Added startup, shutdown, setup, teardown attributes." }, { "line" => 218, "raw" => " - Add more tests.\n", "style" => "-", "text" => "Add more tests." }, { "line" => 219, "raw" => " - Clean up dump file generated by tests.\n\n", "style" => "-", "text" => "Clean up dump file generated by tests." } ], "line" => 216, "note" => "13/03/2008", "raw" => "0.10 13/03/2008\n", "version" => "0.10" }, { "entries" => [ { "line" => 222, "raw" => " - Require Test::Builder 0.74.\n", "style" => "-", "text" => "Require Test::Builder 0.74." }, { "line" => 223, "raw" => " - We now diag ok/not ok messages for each test program. This makes it\n much easier to figure out which program failed.\n", "style" => "-", "text" => "We now diag ok/not ok messages for each test program. This makes it much easier to figure out which program failed." }, { "line" => 225, "raw" => " - Fixed warnings when 'dump' was not set. Thanks to RENEEB for the\n bug report [http://rt.cpan.org/Ticket/Display.html?id=32443]\n\n", "style" => "-", "text" => "Fixed warnings when 'dump' was not set. Thanks to RENEEB for the bug report [http://rt.cpan.org/Ticket/Display.html?id=32443]" } ], "line" => 221, "note" => "09/03/2008", "raw" => "0.08 09/03/2008\n", "version" => "0.08" }, { "entries" => [ { "line" => 229, "raw" => " - Added TEST_AGGREGATE environment variable.\n\n", "style" => "-", "text" => "Added TEST_AGGREGATE environment variable." } ], "line" => 228, "note" => "05/03/2008", "raw" => "0.07 05/03/2008\n", "version" => "0.07" }, { "entries" => [ { "line" => 232, "raw" => " - Use an END block instead of adding Test::Builder::DESTROY. This is\n cleaner and doesn't override the DESTROY provided by Test::Most.\n\n", "style" => "-", "text" => "Use an END block instead of adding Test::Builder::DESTROY. This is cleaner and doesn't override the DESTROY provided by Test::Most." } ], "line" => 231, "note" => "15/01/2007", "raw" => "0.06 15/01/2007\n", "version" => "0.06" }, { "entries" => [ { "line" => 236, "raw" => " - Fixed an open in aggtests/boilerplate.t which made the module fail\n with 5.005.\n\n", "style" => "-", "text" => "Fixed an open in aggtests/boilerplate.t which made the module fail with 5.005." } ], "line" => 235, "note" => "29/12/2007", "raw" => "0.05 29/12/2007\n", "version" => "0.05" }, { "entries" => [ { "line" => 240, "raw" => " - Fixed open() to work with versions of Perl < 5.6\n", "style" => "-", "text" => "Fixed open() to work with versions of Perl < 5.6" }, { "line" => 241, "raw" => " - More extensive overriding of Test::Builder internals. I tried to\n subclass it but it's not designed to be subclassed and much pain\n ensued.\n", "style" => "-", "text" => "More extensive overriding of Test::Builder internals. I tried to subclass it but it's not designed to be subclassed and much pain ensued." }, { "line" => 244, "raw" => " - Dump file now has all \"run_the_tests\" lines at the top and the\n packages below them. This makes for easier debugging as you can\n comment out test packages one by one simply by commenting out its\n \"run_the_tests\" line.\n", "style" => "-", "text" => "Dump file now has all \"run_the_tests\" lines at the top and the packages below them. This makes for easier debugging as you can comment out test packages one by one simply by commenting out its \"run_the_tests\" line." }, { "line" => 248, "raw" => " - Fixed bug where runtests() would run tests in a different order from\n the dump file.\n", "style" => "-", "text" => "Fixed bug where runtests() would run tests in a different order from the dump file." }, { "line" => 250, "raw" => " - Fixed bug where Test::NoWarnings would try to run a test after the\n plan was output.\n\n", "style" => "-", "text" => "Fixed bug where Test::NoWarnings would try to run a test after the plan was output." } ], "line" => 239, "note" => "29/12/2007", "raw" => "0.04 29/12/2007\n", "version" => "0.04" }, { "entries" => [ { "line" => 254, "raw" => " - Moved 'skip_all' files into the t/ directory. Aggregating them\n fails. mauzo (http://use.perl.org/~mauzo/)\n\n", "style" => "-", "text" => "Moved 'skip_all' files into the t/ directory. Aggregating them fails. mauzo (http://use.perl.org/~mauzo/)" } ], "line" => 253, "note" => "29/11/2007", "raw" => "0.03 29/11/2007\n", "version" => "0.03" }, { "entries" => [ { "line" => 258, "raw" => " - Fixed bug where multiple tests setting an explicit plan in the use\n statement would cause failures.\n", "style" => "-", "text" => "Fixed bug where multiple tests setting an explicit plan in the use statement would cause failures." }, { "line" => 260, "raw" => " - Attempt to work around 'unauthorized release' issue on the CPAN.\n Simply declaring the 'Test::Builder' package directly is frowned\n upon.\n", "style" => "-", "text" => "Attempt to work around 'unauthorized release' issue on the CPAN. Simply declaring the 'Test::Builder' package directly is frowned upon." }, { "line" => 263, "raw" => " - Update the docs to warn explain 'shared variable' warnings.\n\n", "style" => "-", "text" => "Update the docs to warn explain 'shared variable' warnings." } ], "line" => 257, "note" => "26/11/2007", "raw" => "0.02 26/11/2007\n", "version" => "0.02" }, { "entries" => [ { "line" => 266, "raw" => " First version. Run test suites faster.\n", "style" => "", "text" => "First version. Run test suites faster." } ], "line" => 265, "note" => "25/11/2007", "raw" => "0.01 25/11/2007\n", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/Business-PayPal-API.changes000644 000000 000000 00000017033 14472651645 021603 0ustar00000000 000000 Revision history for Perl extension Business::PayPal::API. Release 0.71 ------------------------------------------- - Merge in changes from Ron Phipps. - Reduce SOAP version requirement. - Protection eligibility support. - Merge in changes from Tomas Doran. - CPAN packaging enhancements. - Extract out more payer details from XML. (PayerName, NameSuffix, PayerCountry). - Fix https://rt.cpan.org/Public/Bug/Display.html?id=67386 Release 0.70 - First OALDERS release ------------------------------------- - Fixes RT #70424 (Syntax deprecated in perl v5.14) >>>>>>> Fixes RT #70424 and bumps version to 0.70 for release. Release 0.68 - First hembreed release ------------------------------------- I've moved the module's scm to http://github.com/hembreed/Business-PayPal-API so others may share my pain. CPAN will be updated from there. - API.pm 1. Changed eq 'Success' to =~ /Success/ to accomodate variations introduced by PayPal. 2. Changed test for duplicates to test for defined variable first. This was causing errors in 5.10+ perl versions. -t/*t Changed test for Success in all test modules as above -t/RecurringPayments Corrected errors in type definitions and testing. Needs more work. -TransactionSearch Corrected test instructions and code to allow transaction searches using the transactionID. This works for some types of transactions but not others as per PayPal. It is the only way to get MassPayment information. Release 0.62 - last scottw release ---------------------------- revision 1.24 date: 2009/07/28 18:00:58; author: scott; state: Exp; lines: +44 -4 - getFields() returns an array ref if multiple values are returned from PayPal, otherwise it behaves as it always did, returning a non-ref scalar. - BillingAgreement information returned in ExpressCheckout - Fix GetTransactionDetails 'PII_SalesTax' parameter - Fix GetTransactionDetails to return multiple PaymentItems - Fix MassPay to use the correct UniqueID parameter - Add DoReferenceTransaction to RecurringPayments API - Lots of credit given to great folks with patches in API docs Thanks everyone! I'm handing this module off to Danny Hembree for maintenance now. Release 0.61 ---------------------------- revision 1.23 date: 2008/05/05 15:10:40; author: scott; state: Exp; lines: +37 -5 - timeout setting available - additional troubleshooting documentation (auth error handling, URL munging) ---------------------------- revision 1.4 [DirectPayments.pm] date: 2008/05/05 15:11:14; author: scott; state: Exp; lines: +34 -2 - add shipto parameters ---------------------------- revision 1.12 [ExpressCheckout.pm] date: 2008/05/05 15:11:51; author: scott; state: Exp; lines: +11 -3 - MaxAmount parameter take currencyID attribute (Sandbox) ---------------------------- revision 1.1 [RecurringPayments.pm] date: 2008/05/05 15:15:04; author: scott; state: Exp; - add base for RecurringPayments (not working yet) Release 0.51 ---------------------------- revision 1.22 date: 2007/09/27 20:32:31; author: scott; state: Exp; lines: +18 -6 - [API.pm] add three-token signature testing URI (Oliver Ready) - [DirectPayments.pm] add ShippingTotal field (patch: Michael Hendricks) - [VoidRequest.pm] documentation fixes for method call (Oliver Ready) - [ReauthorizationRequest.pm] documentation fixes for method call (Oliver Ready) Release 0.51 ---------------------------- revision 1.10 date: 2007/08/29 20:56:42; author: scott; state: Exp; lines: +4 -2 - fix PayerStatus location in DOM, add AddressStatus element (patch: Michael Hendricks) Release 0.50 ---------------------------- revision 1.20 date: 2007/05/21 21:59:33; author: scott; state: Exp; lines: +5 -5 - minor doc changes - new Mass Pay API module included ---------------------------- Release 0.41 ---------------------------- revision 1.19 date: 2007/05/15 20:46:56; author: scott; state: Exp; lines: +34 -12 - some minor documentation additions Release 0.40 ---------------------------- revision 1.18 date: 2006/10/06 17:53:44; author: scott; state: Exp; lines: +2 -2 - version bump ---------------------------- revision 1.17 date: 2006/10/06 17:49:50; author: scott; state: Exp; lines: +42 -38 - using PayPal API version 2.0 - note about SSL requirements of LWP - minor documentation cleanup - DirectPayments tests added - New modules (with tests!) from Danny Hembree: AuthorizationRequest.pm CaptureRequest.pm ReauthorizationRequest.pm VoidRequest.pm ---------------------------- revision 1.16 date: 2006/07/06 15:25:21; author: scott; state: Exp; lines: +9 -2 - add acknowledgement and pointers to example code from Andy Spiegl and others Release 0.33 ---------------------------- revision 1.15 date: 2006/07/05 18:05:39; author: scott; state: Exp; lines: +2 -2 - fix documentation regarding SetExpressCheckout (returns a hash, not a scalar). If you were following the code in the SYNOPSIS for ExpressCheckout and getting a token with '3/8' or '4/8', you should change the $token to %response, since SetExpressCheckout() returns a hash (big thanks to Andy Spiegl for finding this). Release 0.32 ---------------------------- revision 1.14 date: 2006/07/03 15:46:24; author: scott; state: Exp; lines: +16 -1 - acknowledgements section ---------------------------- revision 1.13 date: 2006/07/03 15:40:16; author: scott; state: Exp; lines: +11 -2 - fix for 3-token auth Release 0.31 ---------------------------- revision 1.12 date: 2006/06/29 02:36:24; author: scott; state: Exp; lines: +2 -2 - fix StateOrProvince typo [rt.cpan.org #20176] Release 0.30 ---------------------------- revision 1.11 date: 2006/04/18 16:23:18; author: scott; state: Exp; lines: +2 -2 - added DirectPayments API by Daniel Hembree. Thanks Daniel! Release 0.23 ---------------------------- revision 1.10 date: 2006/04/04 19:29:08; author: scott; state: Exp; lines: +12 -5 - typo fix - wrap soap call in eval for safety (if ssl neg. fails w/ paypal, it croaks) - version bump Release 0.22 ---------------------------- revision 1.9 date: 2006/03/28 18:05:03; author: scott; state: Exp; lines: +54 -44 - documentation updates Release 0.21 ---------------------------- revision 1.8 date: 2006/03/24 17:12:59; author: scott; state: Exp; lines: +14 -4 - fix fault printing - fix getFieldsList record population Release 0.20 ---------------------------- revision 1.7 date: 2006/03/23 17:28:10; author: scott; state: Exp; lines: +90 -9 - allow subclass methods to be imported into API.pm namespace ---------------------------- revision 1.6 date: 2006/03/22 23:20:09; author: scott; state: Exp; lines: +2 -2 - version bump ---------------------------- revision 1.5 date: 2006/03/22 23:19:03; author: scott; state: Exp; lines: +40 -13 - add GetTransactionDetails API - add TransactionSearch API - getFieldList() for API.pm ---------------------------- revision 1.4 date: 2006/03/21 22:15:11; author: scott; state: Exp; lines: +2 -2 - bump version ---------------------------- revision 1.3 date: 2006/03/21 22:05:19; author: scott; state: Exp; lines: +55 -31 - minor debugging changes - documentation update for developers - note about using IO::Socket::SSL (don't) ---------------------------- revision 1.2 date: 2006/03/16 23:33:49; author: scott; state: Exp; lines: +184 -26 - initial checkin of API and subclasses - all tests working, documentation done ---------------------------- revision 1.1 date: 2006/03/15 23:33:53; author: scott; state: Exp; - moved from Business::PayPal::WPP::ExpressCheckout - uses API.pm for authorization/authentication and other common functions ============================================================================= CPAN-Changes-0.500005/corpus/dists/YAML.changes000644 000000 000000 00000020700 14472651645 016752 0ustar00000000 000000 0.90 Mon Feb 10 08:42:31 PST 2014 - Revert Mo from 0.38 to 0.31 - zefram++ reported it breaking cpan client 0.89 Sat Nov 8 12:51:48 PST 2014 - Fixed tests to work under parallel testing -- kentnl - Switched to dzil release process 0.88 Tue Dec 3 05:29:34 UTC 2013 - Fixed YAML loading on perl 5.8 (broken in YAML 0.85) by removing 5.10-specific regex construct. -- hobbs++ 0.87 Sat Nov 30 21:51:48 PST 2013 - Using latest Test::Builder tp fix https://rt.cpan.org/Public/Bug/Display.html?id=90847 0.86 Tue Nov 26 16:43:27 UTC 2013 - Revert YAML::Mo for https://rt.cpan.org/Public/Bug/Display.html?id=90817 0.85 Sun Nov 24 07:43:13 PST 2013 - Fix for https://rt.cpan.org/Ticket/Display.html?id=19838 where synopsis in YAML::Dumper doesn't work as exptected. - Thorsten++ https://rt.cpan.org/Public/Bug/Display.html?id=90593 - Upgrade to latest Mo 0.84 Fri Jul 13 18:17:27 GMT 2012 - Resolve distribution error that caused .git to be shipped in the .tar.gz 0.83 Fri Jul 13 15:44:03 GMT 2012 - Only call stat() and tell() on a filehandle if fileno existed - Explicit tied() call on globs to avoid a 5.16 deprecation warning 0.82 Thu Jul 12 18:49:45 GMT 2012 - Test scalar @array rather than deprecated defined @array (Sebastian Stumpf) 0.81 Thu Apr 19 11:03:38 PDT 2012 - Patch from https://rt.cpan.org/Public/Bug/Display.html?id=74826 - YAML::Mo uses Safe Mo https://rt.cpan.org/Public/Bug/Display.html?id=76664 0.80 Fri Feb 10 12:56:08 PST 2012 - Patch from https://rt.cpan.org/Ticket/Display.html?id=73702 - Make YAML::Node subclass YAML::Mo::Object as well as Exporter (MSTROUT) 0.79 Wed Feb 8 17:25:55 PST 2012 - Peter Scott and others noticed Mo::xxx causing problems on newer perls. Removed xxx for now. 0.78 Sun Jan 1 23:53:57 PST 2012 - Apply patch from ANDK++ to deal with B::Deparse changes. 0.77 Thu Sep 29 18:28:25 CEST 2011 - Add $VERSION back to all modules. - Released from Liz++ and Wendy++ garage attic! 0.76 Wed Sep 28 12:05:08 CEST 2011 - Removed YAML::import per mst. 0.75 Tue Sep 27 00:46:19 CEST 2011 - Switch to Mo for OO (YAML::Mo) - use_test_base in Makefile.PL. 0.74 Sun Sep 25 22:05:05 CEST 2011 - Switch to Module::Package - Removed extra $VERSION lines from submodules - Released from Liz++ and Wendy++'s Tool Basement! 0.73 Tue Apr 19 20:14:59 EST 2011 - Apply ANDK's patch for 5.14.0 0.72 Wed Sep 1 11:54:00 AEST 2010 - Upgrade to Module::Install 1.00 - Upgraded author tests via new ADAMK release automation - Normalise Ingy's name to ASCII in Makefile.PL so that we don't have Unicode in our own META.yml 0.71 Sun Jan 3 12:25:00 AEST 2010 - Set file encoding to UTF-8 in LoadFile/DumpFile (RT#25434) by Olivier Mengue - We shouldn't have to care about 5.8.0. Since it's causing CPAN Testers failures, bump the minimum Perl to 5.8.1 0.70 Tue Aug 11 02:52:10 AEST 2009 - Updated Module::Install dependency to 0.91 - Bumping dependency to 5.8.0 but I think it's only in the test suite. However, I can't prove it. So if anyone wants 5.6 compatibility back you need to fix or rewrite the test suite. 0.69_02 Mon Aug 10 22:37:37 AEST 2009 - Developer $VERSION now has eval correction 0.69_01 Sun Jul 9 02:01:12 AEST 2009 - Added $VERSION to all modules - Removed the use of use base - Imported into the svn.ali.as repo 0.68 Thu Dec 4 01:00:44 PST 2008 - Used update Test::Base to ensure Filter::Util::Call 0.67 Mon Dec 1 02:34:21 PST 2008 - Add YAML::Any - Move ysh to YAML::Shell - Add doc section explaining YAML::Old 0.66 Thu Sep 27 01:37:16 PDT 2007 - Blessed code refs with LoadCode=0 still get blessed. rafl++ 0.65 Thu Jun 21 17:37:32 PDT 2007 - \z is really \0 - Speed up regexp loading. audreyt++ 0.64 Thu Jun 21 14:31:20 PDT 2007 - Better support for loading regexps. audreyt++ 0.63 Wed Jun 20 16:03:22 PDT 2007 - Don't emit nodes blessed into '' in the new tag scheme, and improve semantics of loading such nodes. - New support for dumping/loading regexps. 0.62 Mon Jul 3 15:41:20 PDT 2006 - Patch from rgs for Catalyst users 0.61 Sun Jul 2 15:25:08 CDT 2006 - New CGI.pm made test fail. 0.60 Fri Jun 30 21:55:55 CDT 2006 - Changed object tag format in non backwards compatible way - Removed support for folded scalar emission - Added new tests - Sync with YAML::Syck 0.58 Tue Feb 14 12:42:34 PST 2006 - Fixed bug reported by Slaven Rezic on 5.8.0 - Fixed a ysh bug reported on rt. 17589 0.57 Wed Feb 1 23:06:25 PST 2006 - Add obligatory '1;' to end of each module. 0.56 Mon Jan 30 10:26:33 PST 2006 - Add Module::Install::TestBase support 0.55 Sun Jan 29 19:03:35 PST 2006 - Load YAML::Node because Module::Build expects it to be loaded. We can undo this when Module::Build starts loading it for itself. 0.54 Sun Jan 29 17:28:46 PST 2006 - Remove dependency on Class::Spiffy (and/or Spiffy). 0.53 Thu Jan 19 06:03:17 PST 2006 - Depend on Class::Spiffy instead of Spiffy. No source filtering. 0.52 Wed Jan 18 14:25:24 PST 2006 - Error in Spiffy-0.26 causing problems. Require 0.27 0.51 Sat Jan 14 17:09:09 GMT 2006 - Tests pass on win32 and cygwin - Don't gpg sign the distribution tarball 0.50 Sun Dec 25 11:09:18 PST 2005 - Major refactoring of YAML.pm - Completely OO with same old functional UI - Support the $YAML::Stringify option which most be on for objects to get stringified. Otherwise dump the object. - Can dump overloaded objects now. - Completely refactor test suite using Test::Base - Create Test::YAML - Make test framework compatible with YAML::Syck - Test-Base-0.45 - Reviewed all rt bugs. fixed many - Reviewed all emailed bugs. Fixed many. - Helped audrey complete YAML::Syck and worked on interoperability issues - Test well known yaml docs like svk and META.yml - Eliminate unsafe string evals - Can use with autouse. Spiffy-0.25 - Support YAML::Marshall to help classes that want to do their own marshalling - Make objects tags configurable - -M option for ysh to test other implementations like YAML::Syck 0.39 Tue Apr 12 15:28:40 PDT 2005 - Need newer Test::More or tests hang. 0.38 Thu Mar 31 01:43:21 PST 2005 - Deleted Spiffy -XXX artifact :( 0.37 Thu Mar 31 01:56:24 CST 2005 - All the edge cases with hash key dumping (commas, [], {}, etc) should now be covered 0.36 Sun Jan 30 21:00:28 PST 2005 - Slight changes to the way things are dumped. - Fixed bugs dumping "foo\nbar" for svk acceptance 0.32 Sat May 11 19:54:52 EDT 2002 - Moved error handling into YAML::Error - Enabled UseAliases=0 to mean skip Dump checking of alias nodes. - Changed Defaults. Indent=2. CompressSeries=1. - Deprecated Store() in favor of Dump() - Refactored test suite - Added key list to SortKeys - Added ForceBlock option - CONTROL-D can be used to terminate ysh. Ryan King will be happy. - Added the ability to direct STDIN to the ysh. 0.27 Tue Jan 15 01:46:18 PST 2002 - Make '-' chomp all trailing newlines - Change folded indicator from '^' to ']'. - YAC-010 Allow a map as a sequence entry to be collapsed to one line. - Changed the nextline scalar indicators. '^' means folded, and escaping ('\') can be applied to folded or blocks. Chomping is now '-'. - YAC-013. Generic indentation. This change was big, ugly, hard and it really made my brain hurt. But look. It works! :) - YAC-012. Added ability to put comments anywhere, at any indentation level. - Added $YAML::UseBlock and $YAML::UseFold - Changed $YAML::PerlCode to $YAML::UseCode - Added $YAML::Indent config option - YAC-012. Handled all Throwaway Issues. Blank lines and comments can be used anywhere, and they will work appropriately. - Converted Changes file (this file) to use YAML - AC-016. Support "assumed header" (--- - Added $YAML::UseBlock option - YAC-015. Support Top Level Inline nodes - Added testing for Store to test suite. (Now there's no excuse not to create lot's of new tests. :) 0.26 Wed Jan 9 21:13:45 PST 2002 - Detect implicit scalars more correctly - Refactor test suite - Proofed documentation - Fix ysh doc. Document flags in the pod. - Move test code out of YAML.pm and into testlib - Change directives to use - Parse regexes - YAC-017. Change !perl/ syntax - Emit regexes - support 'ysh -v' and 'ysh -V' and 'ysh -h' - Support blessed globs - Make ysh installable - Parse CODE leaves - Support blessed scalars - Test warnings as well as errors - Use B::Deparse to serialize code - Change 'implicit' to 'simple' 0.25 Wed Dec 19 02:34:38 PST 2001 - Initial module shipped to CPAN 0.01 Mon Oct 15 19:18:49 2001 - original version; created by h2xs 1.19 CPAN-Changes-0.500005/corpus/dists/SQL-Statement.parsed000644 000000 000000 00000134275 14472651645 020474 0ustar00000000 000000 { "preamble" => "Changes log for Perl extension SQL::Statement\n\nVersion 1.405, released June 17, 2013\n-------------------------------------------------\n[Bug fixes]\n* INSERT now expands incomplete rows (Thanks to H.Merijn Brand)\n\nVersion 1.404, released May 23, 2013\n-------------------------------------------------\n[Bug fixes]\n* re-enable cleanup test_output* after test done\n* recommend Text::Soundex and do soundex-test only when have it,\n because it's going to be removed from core for Perl 5.19 (thank Merijn)\n\nVersion 1.403, released May 22, 2013\n-------------------------------------------------\n[Bug fixes]\n* fix documentation (rt#84889 - thanks Xavier Guimard and Florian,\n rt#85257 - thanks Andreas Koenig)\n\nVersion 1.402, released December 19, 2012\n-------------------------------------------------\n\n[Misc]\n* add Math::Complex 1.56 as recommendation (RT#81926, Sam Ferencik)\n* add Math::BigInt 1.88 as recommendation (RT#81927, Sam Ferencik)\n* clarify Test::Simple 1.90 is required for building (RT#81925, Sam Ferencik)\n\n[Bug fixes]\n* fix leaking reference to open tables outside SQL::Statement::execute\n (fixes RT#81523)\n* looks_like_number identifies 'nan' as number sometimes (add regex to\n t/06virtual.t)\n\nVersion 1.401, released October 29, 2012\n-------------------------------------------------\n\n[Misc]\n* Switch to 3-digited minor version\n\n[Bug fixes]\n* undo literal replaces in subqueries before passing them to the\n child parser\n* Fix doc typo RT#76764 (STEFFENW) - thanks Steffen\n* Fix typo documented in RT#71914 (reported by Ze'ev Atlas,\n fixed by H.Merijn Brand) - thanks Ze'ev and Merijn\n* Fix DROP TABLE behaviour and error detection\n\n[Improvements]\n* Improve documentation/tests for multiple JOIN's from RT#69573\n (from BBYRD) with modifications\n* Filling in the SQL92 gaps for functions (BBYRD) from RT#72638\n with minor modifications - thanks Brendan\n\nVersion 1.33, released February 05th, 2011\n----------------------------------------------\n\n[Bug fixes]\n* Move test dependencies to (unreleased) Bundle::Test::SQL::Statement\n to avoid circular dependencies\n\nVersion 1.32, released January 19th, 2011\n----------------------------------------------\n\n[Bug fixes]\n* Fixed invalid check for escaped single quotes\n* Fixed unpermitted modification of array source for table creation\n (CREATE TABLE AS IMPORT(?),[[..],[..]])\n* Fixing alias used in ORDER BY (RT#61384, thanks jvm)\n* Fixing ORDER BY behavior for multiple sort columns\n (slower, but guaranteed correct)\n\n[Improvements]\n* renamed fetch-method into fetch_row (keep fetch() as alias) and\n add a fetch_rows() to fetch all rows at once\n* Different accessors for direction of ORDER BY clause query part\n and it's boolean equivalent \"desc\" (0 or 1, respectively)\n* Add a lot of Pure-Perl DBD's as build dependency for testing\n (skip DBD::AnyData for now, because it seems to be broken - check\n for next release)\n\n[Misc]\n* Bump requirement of DBI to 1.616\n* switch for fully external DBD tests from DBD::XBase to DBD::SQLite\n* Document another limitation (lacking implicit creating temp table\n during processing a query using the same table with different aliases\n twice)\n\nVersion 1.31, released August 16th, 2010\n----------------------------------------------\n\n[Bug fixes]\n* Fix misbehaviour of DELETE/UPDATE for tables with only basic capabilities\n and no matching where clause (reported by H.Merijn Brand and Drew ...)\n* Fix some column identifier splits to respect quoted tables\n\n[Improvements]\n* Optimized some core routines between 25% and 50%.\n\nVersion 1.30, released August 1st, 2010\n----------------------------------------------\n\n[Bug fixes]\n* remove blib directory from distfile\n\nVersion 1.29, released August 1st, 2010\n----------------------------------------------\n\n[Bug fixes]\n* add some getters as documented in SQL::Statement::Structure\n (fixes RT#59834, thanks John Wiersba)\n* add missing import of function croak to SQL::Statement::Term::ColumnValue\n* fix assignment of parser result (doesn't run with perl-5.13.3)\n\nVersion 1.28, released July 15th, 2010\n----------------------------------------------\n\n[Improvements]\n* Introduce new \"capability\" method for SQL::Statement and SQL::Eval::Table\n + Add capability for \"insert_new_row\" to allow DBD::DBM to fix PK\n constrain on INSERT statements.\n* Performance of IMPORT feature improved (thanks to Sven Probst, RT#57322)\n\n[Bug fixes]\n* expect every table object being derived from SQL::Eval::Table\n* rewrite DELETE and UPDATE command based on table capabilities\n* add abstract methods for all methods derived classes must override\n (this means, open_table for SQL::Statement deriveds must be overridden\n and all data access methods of tables - see SQL::Eval::Table for details)\n* Tests are fixed to use TEMP TABLES explicitely when required\n* check for invalid column names fixed\n* Don't let depreciated parser structures stay alive in SQL::Statement when\n reusing the Parser\n\n[Documentation]\n* Method documentation of SQL::Statement and SQL::Eval::Table are improved\n* Add a Roadmap describing future plans for SQL::Statement (in addition to\n DBD::File::Roadmap).\n* POD spelling fixes provided by H.Merijn Brand and Pod::Spell::CommonMistakes\n (thanks Tux)\n* POD grammar fixes and reasonable sentences created by Martin Evans \n\n[Things that may break your code]\n* SQL::Statement 1.28 is expected not to work proper in combination with\n DBI 1.611 and below\n* SQL::Statement::ColumnValue expects now every table being derived from\n SQL::Eval::Table\n\nVersion 1.27, release May 06th, 2010\n----------------------------------------------\n\n[Bug fixes]\n* use originally given table name for open_table() on SELECT, too\n (all other command still use the originally given name)\n* warn/die -> carp/croak\n* fix delete_one_row & update_one_row ability using\n\n[Documentation]\n* Apply spelling fix patch from Ansgar Burchardt (RT#56475)\n\nVersion 1.26, release April 09th, 2010\n----------------------------------------------\n\n[Bug fixes]\n* Handle NULL columns in concatenation as empty strings\n\n[Improvements]\n* Change regex's in parser to use \\p{Word} instead of \\w to allow unicode\n support\n\n[Documentation]\n* Make clear, that identifiers are handled case insensetive and there is\n a real good solution provided by DBI which allows to live great with\n that behaviour.\n\nVersion 1.25, release March 15th, 2010\n----------------------------------------------\n\n[Bug fixes]\n* Keep org_table_names with schema information to allow derived\n table classes to handle as it seems reasonable there\n* Separate columns with \"\\0\" in multi-column aggregation to be able to\n difference between ('1','1foo') and ('11','foo')\n\n[Misc]\n* More resources added to META.yml\n\nVersion 1.24, release March 15th, 2010\n----------------------------------------------\n\n[Misc]\n* Ignore *.rej in MANIFEST.SKIP (fixes RT #52081 reported by\n Lars Thegler)\n\n[Bug fixes]\n* Add missing import of _INSTANCE in SQL::Statement::Function::NumericEval\n fixes RT #52356 - reported by Detlef Pilzecker)\n* Fix wrongly discarded DISTINCT clause (RT#53186)\n\n[Improvements]\n* Fix parsing errors of plain numbers (RT#16931)\n* Fix parsing errors of nested calculation / functions (RT#16931, RT#52356)\n* Rewrite result calculation of aggregation functions (simplify code, speed up)\n* Upgrade Makefile.PL (patch from Alexandr Ciornii) to handle different\n EU::MM versions and abilities properly\n* Update documentation to show how 'column_defs' and SQL::Statement::Term\n instances shall be used\n* Introduce SQL::Dialect::Role providing ini-style data access to SQL::Dialects\n (patch from Michael Schwern)\n\n[Things that may break your code]\n* SQL::Parser now didn't deliver a struct containing 'column_names',\n 'computed_columns' and 'set_functions' - it's combined into one member\n 'column_defs'.\n* Minimum required perl version is now 5.8 - upcoming next version of DBI\n requires perl 5.8, too - and I could simplify some code that's why\n\nVersion 1.23, release November 20th, 2009\n----------------------------------------------\n\n[Misc]\n* Applied patch from Marc Espie which fixes several orthographic\n errors in SQL::Statement::Syntax documentation.\n* Added a fixed version of test reported via RT #34121\n\n[Bug fixes]\n* Fix an issue in UPDATE command which 'shift's the values from\n the list of parameters which causes there're no more parameters\n left after first row get's updated (Fixes RT #50788)\n* Fix aggregate function handling of new code since 1.21_01\n* Correct handling of DISTINCT in aggregate functions\n\n[Improvements]\n* Add support for tables/columns starting with '_' for CSV and AnyData,\n which is usually forbidden by ANSI SQL\n* Add support for inserting multiple lines with one statement\n (fixes RT #31730)\n* Handle ANSI 'IS NULL' and CVS/AnyData 'IS NULL' different\n\n[Things that may break your code]\n* row_value now expects up to two arguments\n\nVersion 1.22, release October 10th, 2009\n----------------------------------------------\n\n[Misc]\n* Add missing changelog - no code changes\n\nVersion 1.21, release October 10th, 2009\n----------------------------------------------\n\n[Misc]\n* remove version dependency to check previously installed version\n* add DBD::File as \"Test\" requirement\n\nVersion 1.21_8, release October 5th, 2009\n----------------------------------------------\n\n[Bug fixes]\n* Add additional test for bug-fix in 1.21_7 to t/18bigjoin.t\n\n[Misc]\n* Correct some typo's in POD\n\nVersion 1.21_7, not public released\n----------------------------------------------\n\n[Bug fixes]\n* Don't fail for non-existent columns introduced by functions\n in joins\n\nVersion 1.21_6, release September 24th, 2009\n----------------------------------------------\n\n[Bug fixes]\n* Don't abort Makefile.PL when in automated smoke tests\n\nVersion 1.21_5, release September 23th, 2009\n----------------------------------------------\n\n[Bug fixes]\n* table order isn't wrongly used in order of appearance when SQL::Parser\n couldn't determine an order\n* Some internal fixes\n\n[Misc]\n* Updated dependency to Params::Util to non-leaking 1.00\n* Note dependency to Carp and Data::Dumper\n* rely on version to compare versions\n* Update POD for terms\n* Update\n\nVersion 1.21_4, release September 21th, 2009\n----------------------------------------------\n\n[Bug fixes]\n* modify regex to match types to fix problems with Perl 5.6.2\n* add DESTROY methods to ensure clean up\n* fix lower casing internal table names when joining tables\n* replace parameter shifting by assigning \@_ to the list of parameters\n\nVersion 1.21_3, release September 17th, 2009\n----------------------------------------------\n\n[Things that may break your code]\n* When someone accesses the where_clause attribute of the SQL::Statement\n instance - be aware that now IN and BETWEEN can be native entries\n\n[Bug fixes]\n* convert operation to upper case when surely initialized\n\n[Improvements]\n* IN and BETWEEN are now native operations - they are not expanded\n to OR'ed equalize operations anymore\n\nVersion 1.21_2, release September 15th, 2009\n----------------------------------------------\n\n[Things that may break your code]\n* modify behavior for unquoted identifiers - they're converted and\n returned lower cased now (instead upper cased as in 1.21_1)\n Fixes bug RT #48502\n\nVersion 1.21_1, release July 30th, 2009\n------------------------------------------\n\n[Things that may break your code]\n* removed SQL::Statement::Column\n* don't instantiate SQL::Statement::Functions objects\n* Reworked internal column and function handling to reduce code complexity\n* rows and columns aren't setable from outside a table or eval object\n anymore\n\n[Bug fixes and other changes]\n* Fixed bugs:\n + RT #47292: Test failures with recent DBI\n + RT #44512: Patch for CREATE TABLE parsing\n + RT #42676: tests 16 failed\n\nVersion 1.20, released March 5th, 2009\n------------------------------------------\n\n* Fixed Makefile in MANIFEST (reported by Havard Eidnes in RT #43586)\n* Fixed invalid label FETCHROW used (reported by Michael in RT #42982)\n* separated update_one_row and update_specific_row method names for tables\n to avoid confusion\n\nVersion 1.19, released February 6th, 2009\n------------------------------------------\n\n* Fixed OUTER JOIN behavior\n* Added version info to all *.pm files to allow CPAN::Reporter find updates\n* Correct META-Files\n* Fixed reported bugs:\n\n\nVersion 1.18_02, no public release\n-----------------------------------\n\nAdditional (profiled) optimizations for complicated where clauses\n\nVersion 1.18_01, released January 12th, 2009\n---------------------------------------------\n\nNo code changes within SQL::Statement - but deliver and execute additional\ntests.\n\nVersion 1.17, released January 12th, 2009\n------------------------------------------\n\n* Fixed reported bugs:\n * RT#42263: GROUP BY doesn't group on multiple columns\n\nVersion 1.16_04, released 4 January, 2009\n------------------------------------------\n\n* added tests to prove valid quoting (most of them fail)\n* Reformat the source\n* add some (profiled) tweaks as removing useless regex to speed up SELECT\n* Fixed Bugs:\n * 14217\tDoes not correctly handle SQL statements with comments\n * 15686\tJoin syntax is case-sensitive, and common columns in natural\n joins are \"ambiguous\" [patch]\n * 13080\tCannot update a field based on its previous value\n * 26058\tfunctions on computed columns aliased to the underlying column\n name are not called\n\nVersion 1.16_03, released 1 January, 2009\n------------------------------------------\n\n* removed *.orig and *.rej relics\n\nVersion 1.16_02, released 1 January, 2009\n------------------------------------------\n\n* Changing join_2_tables to reduce memory usage when joining a lot of tables\n\n* Fixed Bugs:\n * 15688 Columns aliased with double quotes are a fatal error\n * 16579 Speed optimizations\n * 30590 Bug in SQL::Statement::is_number()\n * 41875 Bug in synopsis example\n\nVersion 1.16_01, released 1 January, 2009\n------------------------------------------\n\n* With this release, I'd like to welcome Jens Rehsack as co-maintainer of\n the SQL::Statement and SQL::Parser modules. Jens has added in some\n great improvements.\n Thanks Jens! -- Jeff\n\n* Adding a lot of join tests (once from Jeff, 48 from\n PostgreSQL official handbook) - no error of them will be corrected in the\n first run\n Thanks to Alexander Breibach -- Jens\n\nVersion 1.15, released 2 February, 2006\n----------------------------------------\n* fixed placeholder bug in SQL::Statement::UPDATE\n thanks for bug report Tanktalus\n\nVersion 1.14, released 21 April, 2005\n----------------------------------------\n * fixed circular dependency in tests (one mistakenly required AnyData)\n\nVersion 1.13, released 18 April, 2005\n----------------------------------------\n * pod fixes\n\nVersion 1.12, released 18 April, 2005\n----------------------------------------\n * added support for GROUP BY\n (several people sent suggestions for this in the past, please email me\n so I can credit you, sorry I lost the names)\n\n * added support for true LIMIT - if a LIMIT clause is specified and\n no ORDER BY clause is specified, the SELECT will stop searching\n when the limit is reached; with an ORDER BY clause it will still\n search the entire table because we can only ORDER a set; using\n LIMIT without an ORDER BY will greatly increase speed\n\n * added support for CREATE/DROP keyword|operator|type|function\n\n * optimized process_predicate to only look up scalars once\n\n * completely re-wrote the POD\n\n * fixed bug in primary key search optimization\n thanks for bug report and test scripts: Jim Lambert, \n\n * fixed problem with all_cols slowing inserts\n thanks for patch and test Cosimo Streppone \n\n * cleaned up case of temp table column names\n thanks for bug report: Dan Wright\n\n * added a META.YML and extra tests\n\nVersion 1.11, released 28 March, 2005\n----------------------------------------\n * fixed bug in \"CREATE TABLE AS ...\"\n\nVersion 1.10, released 27 March, 2005\n----------------------------------------\n * added support for CREATE TABLE AS SELECT ... and CREATE TABLE AS IMPORT()\n\n * added support for in-memory tables and heterogeneous operations,\n see the SQL::Parser docs\n\n * added many new built-in functions see SQL::Statement::Functions.pm\n\n * added support for user-defined functions, see SQL::Statement::Functions.pm\n\n * added support for column name aliases\n thanks for patch, Robert Rothenberg\n\n * added support for comparison to empty string (e.g. WHERE col1='')\n currently returns the same as WHERE col1 IS NULL\n thanks for patch, cpanATgoess.org\n\n * fixed bug in S::P::clean_sql() newline-handling,\n thanks for patch Steffen G., steffenATkonzeptloses.de\n\n * fixed bug in SQL::Parser::feature()\n thanks for patch, chromatic\n\n * the word \"INTO\" is now optional in \"INSERT INTO tblname ...\"\n * the word \"FROM\" is now optional in \"DELETE FROM tblname ...\"\n thanks for suggestion, gipeol\@sci.kun.nl\n\n * optimized portions of eval_where, process_predicate, and is_matched\n HUGE thanks Dan Wright and Dean Arnold for patches\n\n * HUGE thanks to Dean Arnold for all the following which should clean up\n a number of bugs in parentheses parsing and in the predicates IN and\n BETWEEN as well as speed things up considerably\n\n\tSQL::Parser changes:\n\t- removed recursion from get_in(), get_btwn()\n\t- fixed paren scan and argument separator scan in get_in()\n\t- optimized get_in/get_btwn code\n\t- made get_in/get_btwn OO methods to support\n\t\tbeing overridden by subclasses\n\t- added transform_syntax() abstract method\n\t\tto permit subclasses to add their own\n\t\tsyntax extensions\n\t- rewrite of parens_search() to fixed predicate\n\t\tparen processing, remove recursion, and optimize\n\t\tcode\n\t- rewrite of non_parens_search() to fixed predicate\n\t\tparen processing and optimize code\n\t- rewrite of PREDICATE to optimize code; moved\n\t\toperator regex construction to dialect\n\t\tinitialization\n\t- change undo_string_funcs(), undo_math_funcs(),\n\t\tnongroup_numeric(), nongroup_string()\n\t\tto remove scoped recursion\n\t- fixed nongroup_numeric() for case insensitive\n\t\toperator match\n\t- fixed nongroup_string, undo_string_funcs() to\n\t\tinclude user defined funcs\n\t- fixed ROW_VALUE's scan for user defined function\n\t\targument separator scan\n\n * fixed function detection regex in SQL::Parser::ROW_VALUE\n \tto accomodate arbitrary spacing\n\n * fixed SQL::Parser::SELECT_LIST()/extract_column_list()\n \tto support concat operator '||' expressions\n\n * added following functions to SQL::Statement::Functions:\n \t- COALESCE\n \t- NVL (same as COALESCE)\n \t- DECODE (same as Oracle DECODE)\n \t- CONCAT\n \t- REPLACE/SUBSTITUTE\n\n * fixed/adapted SQL::Statement::get_row_value(),\n\tSQL::Statement::SELECT(), for join'ed\n \tresultsets\n\n\nVersion 1.09, released 22 April, 2004\n-------------------------------------\n * fixed parens parsing bug reported by Dan Wright, thanks!\n\n\nVersion 1.08, released 20 April, 2004\n-------------------------------------\n\n * fixed bug in JOIN handling introduced in 1.06\n\n\nVersion 1.07, released 20 April, 2004\n-------------------------------------\n\n * fixed infinite recursion bug with empty IN() predicate\n thanks chromatic, for the patch\n\n * fixed case issues with table aliases in joins\n thanks chromatic, for bug report\n\nVersion 1.06, released 18 April, 2004\n-------------------------------------\n\n * column and table name hashes now default to case sensitive\n\n * where() method now supported as per the docs\n\n\nVersion 1.005, released 26 October, 2002\n------------------------------------------\n\n * added support for MySQL-like \"DROP TABLE IF EXISTS\"\n\n * fixed bug in dotted column names e.g. tableA.colB\n\n * fixed bug in MAX and MIN (thanks Michael Kovacs,\n mkovacs\@turing.une.edu.au)\n\n * fixed bug in ORDER BY (when col names not in SELECT list)\n Thanks Janet Goldstein \n\n\nVersion 1.004, released 13 March, 2002\n------------------------------------------\n\n * added support for delimited identifiers (inside double quotes);\n these are case sensitive and can contain spaces and other\n special chars\n\n * added support for two forms of escaping single quotes inside\n quoted values: 'O\\'Brien' or 'O''Brien'\n\n * added support for both C-Style and SQL-Style double-hypen\n comments, e.g. /* comment */ or -- comment\n\n * added GetInfo.pm for use with \$dbh->get_info()\n\n * updated the readme file\n\n * fixed bug in update that refers to its own columns\n (e.g. SET num = num + 2)\n\n * fixed bug in MIN and MAX when used with strings\n Thanks Dean Kopesky \n\nVersion 1.003, released 01 March, 2002\n------------------------------------------\n\n * identifiers (names of columns, tables, and table name\n aliases) are now all case insensitive as required by the SQL\n standard. all older versions including the XS versions used\n case sensitive column names\n\n * added numerous examples to test.pl\n\n * improved and/or fixed bugs in:\n\n * placeholder support\n Thanks Achim Grolms \n\n * ORDER BY clause\n Thanks Jan Stocker \n\n * LIKE/CLIKE/RLIKE/IN predicates\n Thanks Udo Beckmann \n\n * table name aliases in explicit joins\n\nVersion 1.002, released 5 February, 2002\n----------------------------------------\n\n * added backwards compatiblity: both SQL::Statement and\n SQL::Parser now work in perl version 5.004 and above.\n\n * changed defaults for DBD::CSV so it now accepts new SQL\n without adding extra flags to scripts\n\n * added support for SQL comments\n\n * added support for temporary tables and on commit clauses in\n CREATE statements and drop behaviour flags in DROP statements\n (SQL::Parser only, not supported by SQL::Statement)\n\n * fixed bugs in qualified column names (e.g. tableA.*), and in\n joins using ON or WHERE\n\nVersion 1.001, released January 17,2002\n---------------------------------------\n\nFixed bug in UPDATE that caused the new value to be a hash\nrather than a scalar.\n\nVersion 1.0, released January 15, 2002\n--------------------------------------\n\nThis is the first CPAN release of the pure perl version of the\nmodule. It was previously released in an XS version by Jochen\nWiedman who has turned over maintenance of it to me.\n\nThe new Pure Perl version of SQL::Statement supports everything\nsupported by the XS version and, additionally, at least partial\nsupport for the following features that are not supported at all\nby the XS version:\n\n * Explicit and implicit joins\n * Table name aliases\n * Set functions\n * String functions\n * String concatenation\n * Numeric expressions\n * IN predicate\n * BETWEEN predicate\n * Alphabetic comparison in WHERE clauses\n * Ordering of text that looks like a number\n * Verbose error messages for both Parsing and Execution errors", "raw_preamble" => "Changes log for Perl extension SQL::Statement\n\nVersion 1.405, released June 17, 2013\n-------------------------------------------------\n[Bug fixes]\n* INSERT now expands incomplete rows (Thanks to H.Merijn Brand)\n\nVersion 1.404, released May 23, 2013\n-------------------------------------------------\n[Bug fixes]\n* re-enable cleanup test_output* after test done\n* recommend Text::Soundex and do soundex-test only when have it,\n because it's going to be removed from core for Perl 5.19 (thank Merijn)\n\nVersion 1.403, released May 22, 2013\n-------------------------------------------------\n[Bug fixes]\n* fix documentation (rt#84889 - thanks Xavier Guimard and Florian,\n rt#85257 - thanks Andreas Koenig)\n\nVersion 1.402, released December 19, 2012\n-------------------------------------------------\n\n[Misc]\n* add Math::Complex 1.56 as recommendation (RT#81926, Sam Ferencik)\n* add Math::BigInt 1.88 as recommendation (RT#81927, Sam Ferencik)\n* clarify Test::Simple 1.90 is required for building (RT#81925, Sam Ferencik)\n\n[Bug fixes]\n* fix leaking reference to open tables outside SQL::Statement::execute\n (fixes RT#81523)\n* looks_like_number identifies 'nan' as number sometimes (add regex to\n t/06virtual.t)\n\nVersion 1.401, released October 29, 2012\n-------------------------------------------------\n\n[Misc]\n* Switch to 3-digited minor version\n\n[Bug fixes]\n* undo literal replaces in subqueries before passing them to the\n child parser\n* Fix doc typo RT#76764 (STEFFENW) - thanks Steffen\n* Fix typo documented in RT#71914 (reported by Ze'ev Atlas,\n fixed by H.Merijn Brand) - thanks Ze'ev and Merijn\n* Fix DROP TABLE behaviour and error detection\n\n[Improvements]\n* Improve documentation/tests for multiple JOIN's from RT#69573\n (from BBYRD) with modifications\n* Filling in the SQL92 gaps for functions (BBYRD) from RT#72638\n with minor modifications - thanks Brendan\n\nVersion 1.33, released February 05th, 2011\n----------------------------------------------\n\n[Bug fixes]\n* Move test dependencies to (unreleased) Bundle::Test::SQL::Statement\n to avoid circular dependencies\n\nVersion 1.32, released January 19th, 2011\n----------------------------------------------\n\n[Bug fixes]\n* Fixed invalid check for escaped single quotes\n* Fixed unpermitted modification of array source for table creation\n (CREATE TABLE AS IMPORT(?),[[..],[..]])\n* Fixing alias used in ORDER BY (RT#61384, thanks jvm)\n* Fixing ORDER BY behavior for multiple sort columns\n (slower, but guaranteed correct)\n\n[Improvements]\n* renamed fetch-method into fetch_row (keep fetch() as alias) and\n add a fetch_rows() to fetch all rows at once\n* Different accessors for direction of ORDER BY clause query part\n and it's boolean equivalent \"desc\" (0 or 1, respectively)\n* Add a lot of Pure-Perl DBD's as build dependency for testing\n (skip DBD::AnyData for now, because it seems to be broken - check\n for next release)\n\n[Misc]\n* Bump requirement of DBI to 1.616\n* switch for fully external DBD tests from DBD::XBase to DBD::SQLite\n* Document another limitation (lacking implicit creating temp table\n during processing a query using the same table with different aliases\n twice)\n\nVersion 1.31, released August 16th, 2010\n----------------------------------------------\n\n[Bug fixes]\n* Fix misbehaviour of DELETE/UPDATE for tables with only basic capabilities\n and no matching where clause (reported by H.Merijn Brand and Drew ...)\n* Fix some column identifier splits to respect quoted tables\n\n[Improvements]\n* Optimized some core routines between 25% and 50%.\n\nVersion 1.30, released August 1st, 2010\n----------------------------------------------\n\n[Bug fixes]\n* remove blib directory from distfile\n\nVersion 1.29, released August 1st, 2010\n----------------------------------------------\n\n[Bug fixes]\n* add some getters as documented in SQL::Statement::Structure\n (fixes RT#59834, thanks John Wiersba)\n* add missing import of function croak to SQL::Statement::Term::ColumnValue\n* fix assignment of parser result (doesn't run with perl-5.13.3)\n\nVersion 1.28, released July 15th, 2010\n----------------------------------------------\n\n[Improvements]\n* Introduce new \"capability\" method for SQL::Statement and SQL::Eval::Table\n + Add capability for \"insert_new_row\" to allow DBD::DBM to fix PK\n constrain on INSERT statements.\n* Performance of IMPORT feature improved (thanks to Sven Probst, RT#57322)\n\n[Bug fixes]\n* expect every table object being derived from SQL::Eval::Table\n* rewrite DELETE and UPDATE command based on table capabilities\n* add abstract methods for all methods derived classes must override\n (this means, open_table for SQL::Statement deriveds must be overridden\n and all data access methods of tables - see SQL::Eval::Table for details)\n* Tests are fixed to use TEMP TABLES explicitely when required\n* check for invalid column names fixed\n* Don't let depreciated parser structures stay alive in SQL::Statement when\n reusing the Parser\n\n[Documentation]\n* Method documentation of SQL::Statement and SQL::Eval::Table are improved\n* Add a Roadmap describing future plans for SQL::Statement (in addition to\n DBD::File::Roadmap).\n* POD spelling fixes provided by H.Merijn Brand and Pod::Spell::CommonMistakes\n (thanks Tux)\n* POD grammar fixes and reasonable sentences created by Martin Evans \n\n[Things that may break your code]\n* SQL::Statement 1.28 is expected not to work proper in combination with\n DBI 1.611 and below\n* SQL::Statement::ColumnValue expects now every table being derived from\n SQL::Eval::Table\n\nVersion 1.27, release May 06th, 2010\n----------------------------------------------\n\n[Bug fixes]\n* use originally given table name for open_table() on SELECT, too\n (all other command still use the originally given name)\n* warn/die -> carp/croak\n* fix delete_one_row & update_one_row ability using\n\n[Documentation]\n* Apply spelling fix patch from Ansgar Burchardt (RT#56475)\n\nVersion 1.26, release April 09th, 2010\n----------------------------------------------\n\n[Bug fixes]\n* Handle NULL columns in concatenation as empty strings\n\n[Improvements]\n* Change regex's in parser to use \\p{Word} instead of \\w to allow unicode\n support\n\n[Documentation]\n* Make clear, that identifiers are handled case insensetive and there is\n a real good solution provided by DBI which allows to live great with\n that behaviour.\n\nVersion 1.25, release March 15th, 2010\n----------------------------------------------\n\n[Bug fixes]\n* Keep org_table_names with schema information to allow derived\n table classes to handle as it seems reasonable there\n* Separate columns with \"\\0\" in multi-column aggregation to be able to\n difference between ('1','1foo') and ('11','foo')\n\n[Misc]\n* More resources added to META.yml\n\nVersion 1.24, release March 15th, 2010\n----------------------------------------------\n\n[Misc]\n* Ignore *.rej in MANIFEST.SKIP (fixes RT #52081 reported by\n Lars Thegler)\n\n[Bug fixes]\n* Add missing import of _INSTANCE in SQL::Statement::Function::NumericEval\n fixes RT #52356 - reported by Detlef Pilzecker)\n* Fix wrongly discarded DISTINCT clause (RT#53186)\n\n[Improvements]\n* Fix parsing errors of plain numbers (RT#16931)\n* Fix parsing errors of nested calculation / functions (RT#16931, RT#52356)\n* Rewrite result calculation of aggregation functions (simplify code, speed up)\n* Upgrade Makefile.PL (patch from Alexandr Ciornii) to handle different\n EU::MM versions and abilities properly\n* Update documentation to show how 'column_defs' and SQL::Statement::Term\n instances shall be used\n* Introduce SQL::Dialect::Role providing ini-style data access to SQL::Dialects\n (patch from Michael Schwern)\n\n[Things that may break your code]\n* SQL::Parser now didn't deliver a struct containing 'column_names',\n 'computed_columns' and 'set_functions' - it's combined into one member\n 'column_defs'.\n* Minimum required perl version is now 5.8 - upcoming next version of DBI\n requires perl 5.8, too - and I could simplify some code that's why\n\nVersion 1.23, release November 20th, 2009\n----------------------------------------------\n\n[Misc]\n* Applied patch from Marc Espie which fixes several orthographic\n errors in SQL::Statement::Syntax documentation.\n* Added a fixed version of test reported via RT #34121\n\n[Bug fixes]\n* Fix an issue in UPDATE command which 'shift's the values from\n the list of parameters which causes there're no more parameters\n left after first row get's updated (Fixes RT #50788)\n* Fix aggregate function handling of new code since 1.21_01\n* Correct handling of DISTINCT in aggregate functions\n\n[Improvements]\n* Add support for tables/columns starting with '_' for CSV and AnyData,\n which is usually forbidden by ANSI SQL\n* Add support for inserting multiple lines with one statement\n (fixes RT #31730)\n* Handle ANSI 'IS NULL' and CVS/AnyData 'IS NULL' different\n\n[Things that may break your code]\n* row_value now expects up to two arguments\n\nVersion 1.22, release October 10th, 2009\n----------------------------------------------\n\n[Misc]\n* Add missing changelog - no code changes\n\nVersion 1.21, release October 10th, 2009\n----------------------------------------------\n\n[Misc]\n* remove version dependency to check previously installed version\n* add DBD::File as \"Test\" requirement\n\nVersion 1.21_8, release October 5th, 2009\n----------------------------------------------\n\n[Bug fixes]\n* Add additional test for bug-fix in 1.21_7 to t/18bigjoin.t\n\n[Misc]\n* Correct some typo's in POD\n\nVersion 1.21_7, not public released\n----------------------------------------------\n\n[Bug fixes]\n* Don't fail for non-existent columns introduced by functions\n in joins\n\nVersion 1.21_6, release September 24th, 2009\n----------------------------------------------\n\n[Bug fixes]\n* Don't abort Makefile.PL when in automated smoke tests\n\nVersion 1.21_5, release September 23th, 2009\n----------------------------------------------\n\n[Bug fixes]\n* table order isn't wrongly used in order of appearance when SQL::Parser\n couldn't determine an order\n* Some internal fixes\n\n[Misc]\n* Updated dependency to Params::Util to non-leaking 1.00\n* Note dependency to Carp and Data::Dumper\n* rely on version to compare versions\n* Update POD for terms\n* Update\n\nVersion 1.21_4, release September 21th, 2009\n----------------------------------------------\n\n[Bug fixes]\n* modify regex to match types to fix problems with Perl 5.6.2\n* add DESTROY methods to ensure clean up\n* fix lower casing internal table names when joining tables\n* replace parameter shifting by assigning \@_ to the list of parameters\n\nVersion 1.21_3, release September 17th, 2009\n----------------------------------------------\n\n[Things that may break your code]\n* When someone accesses the where_clause attribute of the SQL::Statement\n instance - be aware that now IN and BETWEEN can be native entries\n\n[Bug fixes]\n* convert operation to upper case when surely initialized\n\n[Improvements]\n* IN and BETWEEN are now native operations - they are not expanded\n to OR'ed equalize operations anymore\n\nVersion 1.21_2, release September 15th, 2009\n----------------------------------------------\n\n[Things that may break your code]\n* modify behavior for unquoted identifiers - they're converted and\n returned lower cased now (instead upper cased as in 1.21_1)\n Fixes bug RT #48502\n\nVersion 1.21_1, release July 30th, 2009\n------------------------------------------\n\n[Things that may break your code]\n* removed SQL::Statement::Column\n* don't instantiate SQL::Statement::Functions objects\n* Reworked internal column and function handling to reduce code complexity\n* rows and columns aren't setable from outside a table or eval object\n anymore\n\n[Bug fixes and other changes]\n* Fixed bugs:\n + RT #47292: Test failures with recent DBI\n + RT #44512: Patch for CREATE TABLE parsing\n + RT #42676: tests 16 failed\n\nVersion 1.20, released March 5th, 2009\n------------------------------------------\n\n* Fixed Makefile in MANIFEST (reported by Havard Eidnes in RT #43586)\n* Fixed invalid label FETCHROW used (reported by Michael in RT #42982)\n* separated update_one_row and update_specific_row method names for tables\n to avoid confusion\n\nVersion 1.19, released February 6th, 2009\n------------------------------------------\n\n* Fixed OUTER JOIN behavior\n* Added version info to all *.pm files to allow CPAN::Reporter find updates\n* Correct META-Files\n* Fixed reported bugs:\n\n\nVersion 1.18_02, no public release\n-----------------------------------\n\nAdditional (profiled) optimizations for complicated where clauses\n\nVersion 1.18_01, released January 12th, 2009\n---------------------------------------------\n\nNo code changes within SQL::Statement - but deliver and execute additional\ntests.\n\nVersion 1.17, released January 12th, 2009\n------------------------------------------\n\n* Fixed reported bugs:\n * RT#42263: GROUP BY doesn't group on multiple columns\n\nVersion 1.16_04, released 4 January, 2009\n------------------------------------------\n\n* added tests to prove valid quoting (most of them fail)\n* Reformat the source\n* add some (profiled) tweaks as removing useless regex to speed up SELECT\n* Fixed Bugs:\n * 14217\tDoes not correctly handle SQL statements with comments\n * 15686\tJoin syntax is case-sensitive, and common columns in natural\n joins are \"ambiguous\" [patch]\n * 13080\tCannot update a field based on its previous value\n * 26058\tfunctions on computed columns aliased to the underlying column\n name are not called\n\nVersion 1.16_03, released 1 January, 2009\n------------------------------------------\n\n* removed *.orig and *.rej relics\n\nVersion 1.16_02, released 1 January, 2009\n------------------------------------------\n\n* Changing join_2_tables to reduce memory usage when joining a lot of tables\n\n* Fixed Bugs:\n * 15688 Columns aliased with double quotes are a fatal error\n * 16579 Speed optimizations\n * 30590 Bug in SQL::Statement::is_number()\n * 41875 Bug in synopsis example\n\nVersion 1.16_01, released 1 January, 2009\n------------------------------------------\n\n* With this release, I'd like to welcome Jens Rehsack as co-maintainer of\n the SQL::Statement and SQL::Parser modules. Jens has added in some\n great improvements.\n Thanks Jens! -- Jeff\n\n* Adding a lot of join tests (once from Jeff, 48 from\n PostgreSQL official handbook) - no error of them will be corrected in the\n first run\n Thanks to Alexander Breibach -- Jens\n\nVersion 1.15, released 2 February, 2006\n----------------------------------------\n* fixed placeholder bug in SQL::Statement::UPDATE\n thanks for bug report Tanktalus\n\nVersion 1.14, released 21 April, 2005\n----------------------------------------\n * fixed circular dependency in tests (one mistakenly required AnyData)\n\nVersion 1.13, released 18 April, 2005\n----------------------------------------\n * pod fixes\n\nVersion 1.12, released 18 April, 2005\n----------------------------------------\n * added support for GROUP BY\n (several people sent suggestions for this in the past, please email me\n so I can credit you, sorry I lost the names)\n\n * added support for true LIMIT - if a LIMIT clause is specified and\n no ORDER BY clause is specified, the SELECT will stop searching\n when the limit is reached; with an ORDER BY clause it will still\n search the entire table because we can only ORDER a set; using\n LIMIT without an ORDER BY will greatly increase speed\n\n * added support for CREATE/DROP keyword|operator|type|function\n\n * optimized process_predicate to only look up scalars once\n\n * completely re-wrote the POD\n\n * fixed bug in primary key search optimization\n thanks for bug report and test scripts: Jim Lambert, \n\n * fixed problem with all_cols slowing inserts\n thanks for patch and test Cosimo Streppone \n\n * cleaned up case of temp table column names\n thanks for bug report: Dan Wright\n\n * added a META.YML and extra tests\n\nVersion 1.11, released 28 March, 2005\n----------------------------------------\n * fixed bug in \"CREATE TABLE AS ...\"\n\nVersion 1.10, released 27 March, 2005\n----------------------------------------\n * added support for CREATE TABLE AS SELECT ... and CREATE TABLE AS IMPORT()\n\n * added support for in-memory tables and heterogeneous operations,\n see the SQL::Parser docs\n\n * added many new built-in functions see SQL::Statement::Functions.pm\n\n * added support for user-defined functions, see SQL::Statement::Functions.pm\n\n * added support for column name aliases\n thanks for patch, Robert Rothenberg\n\n * added support for comparison to empty string (e.g. WHERE col1='')\n currently returns the same as WHERE col1 IS NULL\n thanks for patch, cpanATgoess.org\n\n * fixed bug in S::P::clean_sql() newline-handling,\n thanks for patch Steffen G., steffenATkonzeptloses.de\n\n * fixed bug in SQL::Parser::feature()\n thanks for patch, chromatic\n\n * the word \"INTO\" is now optional in \"INSERT INTO tblname ...\"\n * the word \"FROM\" is now optional in \"DELETE FROM tblname ...\"\n thanks for suggestion, gipeol\@sci.kun.nl\n\n * optimized portions of eval_where, process_predicate, and is_matched\n HUGE thanks Dan Wright and Dean Arnold for patches\n\n * HUGE thanks to Dean Arnold for all the following which should clean up\n a number of bugs in parentheses parsing and in the predicates IN and\n BETWEEN as well as speed things up considerably\n\n\tSQL::Parser changes:\n\t- removed recursion from get_in(), get_btwn()\n\t- fixed paren scan and argument separator scan in get_in()\n\t- optimized get_in/get_btwn code\n\t- made get_in/get_btwn OO methods to support\n\t\tbeing overridden by subclasses\n\t- added transform_syntax() abstract method\n\t\tto permit subclasses to add their own\n\t\tsyntax extensions\n\t- rewrite of parens_search() to fixed predicate\n\t\tparen processing, remove recursion, and optimize\n\t\tcode\n\t- rewrite of non_parens_search() to fixed predicate\n\t\tparen processing and optimize code\n\t- rewrite of PREDICATE to optimize code; moved\n\t\toperator regex construction to dialect\n\t\tinitialization\n\t- change undo_string_funcs(), undo_math_funcs(),\n\t\tnongroup_numeric(), nongroup_string()\n\t\tto remove scoped recursion\n\t- fixed nongroup_numeric() for case insensitive\n\t\toperator match\n\t- fixed nongroup_string, undo_string_funcs() to\n\t\tinclude user defined funcs\n\t- fixed ROW_VALUE's scan for user defined function\n\t\targument separator scan\n\n * fixed function detection regex in SQL::Parser::ROW_VALUE\n \tto accomodate arbitrary spacing\n\n * fixed SQL::Parser::SELECT_LIST()/extract_column_list()\n \tto support concat operator '||' expressions\n\n * added following functions to SQL::Statement::Functions:\n \t- COALESCE\n \t- NVL (same as COALESCE)\n \t- DECODE (same as Oracle DECODE)\n \t- CONCAT\n \t- REPLACE/SUBSTITUTE\n\n * fixed/adapted SQL::Statement::get_row_value(),\n\tSQL::Statement::SELECT(), for join'ed\n \tresultsets\n\n\nVersion 1.09, released 22 April, 2004\n-------------------------------------\n * fixed parens parsing bug reported by Dan Wright, thanks!\n\n\nVersion 1.08, released 20 April, 2004\n-------------------------------------\n\n * fixed bug in JOIN handling introduced in 1.06\n\n\nVersion 1.07, released 20 April, 2004\n-------------------------------------\n\n * fixed infinite recursion bug with empty IN() predicate\n thanks chromatic, for the patch\n\n * fixed case issues with table aliases in joins\n thanks chromatic, for bug report\n\nVersion 1.06, released 18 April, 2004\n-------------------------------------\n\n * column and table name hashes now default to case sensitive\n\n * where() method now supported as per the docs\n\n\nVersion 1.005, released 26 October, 2002\n------------------------------------------\n\n * added support for MySQL-like \"DROP TABLE IF EXISTS\"\n\n * fixed bug in dotted column names e.g. tableA.colB\n\n * fixed bug in MAX and MIN (thanks Michael Kovacs,\n mkovacs\@turing.une.edu.au)\n\n * fixed bug in ORDER BY (when col names not in SELECT list)\n Thanks Janet Goldstein \n\n\nVersion 1.004, released 13 March, 2002\n------------------------------------------\n\n * added support for delimited identifiers (inside double quotes);\n these are case sensitive and can contain spaces and other\n special chars\n\n * added support for two forms of escaping single quotes inside\n quoted values: 'O\\'Brien' or 'O''Brien'\n\n * added support for both C-Style and SQL-Style double-hypen\n comments, e.g. /* comment */ or -- comment\n\n * added GetInfo.pm for use with \$dbh->get_info()\n\n * updated the readme file\n\n * fixed bug in update that refers to its own columns\n (e.g. SET num = num + 2)\n\n * fixed bug in MIN and MAX when used with strings\n Thanks Dean Kopesky \n\nVersion 1.003, released 01 March, 2002\n------------------------------------------\n\n * identifiers (names of columns, tables, and table name\n aliases) are now all case insensitive as required by the SQL\n standard. all older versions including the XS versions used\n case sensitive column names\n\n * added numerous examples to test.pl\n\n * improved and/or fixed bugs in:\n\n * placeholder support\n Thanks Achim Grolms \n\n * ORDER BY clause\n Thanks Jan Stocker \n\n * LIKE/CLIKE/RLIKE/IN predicates\n Thanks Udo Beckmann \n\n * table name aliases in explicit joins\n\nVersion 1.002, released 5 February, 2002\n----------------------------------------\n\n * added backwards compatiblity: both SQL::Statement and\n SQL::Parser now work in perl version 5.004 and above.\n\n * changed defaults for DBD::CSV so it now accepts new SQL\n without adding extra flags to scripts\n\n * added support for SQL comments\n\n * added support for temporary tables and on commit clauses in\n CREATE statements and drop behaviour flags in DROP statements\n (SQL::Parser only, not supported by SQL::Statement)\n\n * fixed bugs in qualified column names (e.g. tableA.*), and in\n joins using ON or WHERE\n\nVersion 1.001, released January 17,2002\n---------------------------------------\n\nFixed bug in UPDATE that caused the new value to be a hash\nrather than a scalar.\n\nVersion 1.0, released January 15, 2002\n--------------------------------------\n\nThis is the first CPAN release of the pure perl version of the\nmodule. It was previously released in an XS version by Jochen\nWiedman who has turned over maintenance of it to me.\n\nThe new Pure Perl version of SQL::Statement supports everything\nsupported by the XS version and, additionally, at least partial\nsupport for the following features that are not supported at all\nby the XS version:\n\n * Explicit and implicit joins\n * Table name aliases\n * Set functions\n * String functions\n * String concatenation\n * Numeric expressions\n * IN predicate\n * BETWEEN predicate\n * Alphabetic comparison in WHERE clauses\n * Ordering of text that looks like a number\n * Verbose error messages for both Parsing and Execution errors\n\n\n\n", "releases" => [] } CPAN-Changes-0.500005/corpus/dists/Mock-Person.changes000644 000000 000000 00000000211 14472651645 020340 0ustar00000000 000000 Revision history for Mock::Person 0.01 Tue Oct 26, 2010 First release. 0.02 2013-06-23 * Switched to Dist::Zilla CPAN-Changes-0.500005/corpus/dists/BreadBoard.changes000644 000000 000000 00000027556 14472651645 020215 0ustar00000000 000000 Revision history for Bread-Board {{$NEXT}} 0.30 2014-02-02 - fix deprecated use of Class::MOP::load_class (Caleb Cushing, #33) 0.29 2013-11-21 - Fix deprecated enum syntax 0.28 2013-08-30 - Allow overriding of services and containers. This is useful when using the common pattern of "sub BUILD { my $self = shift; container $self => as { ... } }" since the BUILD method in a subclass can modify existing services and containers that were defined in a superclass, rather than only being able to replace them (Florian Ragwitz, #26, #27). 0.27 2013-08-06 - allow the 'container $obj' sugar for parameterized containers (Florian Ragwitz, #25) 0.26 2013-08-01 - allow cloning containers with parameterized subcontainers (Florian Ragwitz, #22) - allow referencing parent services from parameterized subcontainers (Florian Ragwitz, #23) - deprecate special case in path traversal where a path component with the name of the current container was ignored (doy, #20) - fix setting the current container multiple times from outside of a container (doy) - make some error messages more helpful (Jason Galea, #14) - doc improvements (Sterling Hanenkamp, zdk, Philippe Bruhat, and Gabor Szabo; #15, #17, #19, #21) - remove the (unmaintained) Bread::Board::GraphViz 0.25 2011-10-20 * Bread::Board - the container sugar was misbehaving (since April 2010 apparently), so we have fixed it and clarified it 0.24 2011-10-15 * Bread::Board::Container - make sure to clone subcontainers, this is necessary for parameterized containers to retain their connections * Bread::Board::Traversable - add some errors, be a little more defensive 0.23 2011-10-14 * Bread::Board::Container::Parameterized - retain control of names of the generated containers, so if your the container being generated has a name, it keeps it. - this makes these containers more addressable when composed into higher level containers - this helps when subclassing parameterized containers - switch the generated containers to be created with builder instead of default - also helps when subclassing parameterized containers as well * t/046_custom_parameter_service.t - fixing the error about Moose deprecations 0.22 2011-10-03 - When inferring a service for a type, allow subclasses to fulfill discovered types. - Converted to Dist::Zilla 0.21 2011-09-06 * Bread::Board - Allow service() and alias() sugar functions to return the newly-created objects if the context container is not defined. (thanks to kip hampton) - added tests for this - this module is just an exporter, so it does not need to 'use Moose' (thanks to Tomas Doran) - fixed some spelling and grammar errors (thanks to ben hengst and Brad Bowman) * Bread::Board::Service::WithParameters - parameters attribute now has a builder instead of a default, so as to allow better tweaking in subclasses (thanks to Andre Walker) - added tests for this 0.20 2011-06-13 * Bread::Board::Lifecycle::Singleton - fix bug in singletons with circular refs (thanks to doy) - added tests for this (thanks to perigrin) 0.19 2011-06-01 * Bread::Board::GraphViz - added by jrockway, this allows you to visualise a Bread::Board system using GraphViz - note that this is optional and requires you to install optional dependencies * Bread::Board::Service::Alias - add the ability to alias services under another name (thanks to doy) - added tests for this * Bread::Board::Service::Inferred - improving edge cases (thanks to doy) * Bread::Board::Service::* - several code improvements (thanks to doy) * Bread::Board::Service - allow for custom Lifecycles by using the "+" prefix (thanks to jasonmay) - added tests for this 0.18 2011-04-13 * Bread::Board::Service::WithParameters - added has_parameter_defaults method to check if a parameter has default values * Bread::Board::Service::WithDependencies - added a check for has_parameter_defaults before we make a Thunk - added test for this (thanks to rafl) 0.17 2011-02-22 * Bread::Board::Service::Inferred - make recrusive inferrence work - add tests for this * Bread::Board::Manual::Concepts::Advanced - small doc update about subclassing and the name parameter, resolving RT#63124 (thanks to Evan Haas) !! POSSIBLE BACK COMPAT BREAKAGE !! * Bread::Board::Traversal - make relative parent path traversal more sane, there should be no more need for excessive ../../ stuff in dependency service paths (thanks doy) - adjust tests accordingly - this should fix RT#64478 as well 0.16 2011-01-10 * Bread::Board::service sugar - adding the 'service_class' param for the service sugar function which allows you to pass in a custom service subclass - added tests for this (062_service_class_w_sugar.t) * Bread::Board::Dependency - added the service_params attribute here so that it is possible to pass in parameters when you depend on a service which requires them - added tests for this (045_parameters_in_dependency.t) * Bread::Board::Service::Inferred - when a typemapped service is created it is now named with the special 'type:' prefix. This allows you to depend on a typemapped service in a non-typemapped service - added tests for this (079_depending_on_type.t) * Bread::Board::Traversable - improving the error messages when a container/service is not found 0.15 2010-09-30 * Bread::Board::Service - removed the MooseX::Param dependency and implemented it internally so that we have more control * Bread::Board::Types - the Bread::Board::Service::Dependencies type now can also coerce ArrayRef[Str] and HashRef[Str] types correctly (doy) * Bread::Board::Service::WithDependencies - we now only create a ::Deferred::Thunk object if we have non-optional params * Bread::Board::Service::WithParameters - added the has_required_parameters method, to see if there are any non-optional parameters - added tests for both the above !! NEW EXPERIMENTAL FEATURE !! * Bread::Board - added the typemap and infer keyword to help in the mapping of types and construction of inferred services - added tests for this * Bread::Board::Container - added the typemap feature and added the ->resolve( type => $type ) call - added tests for this * Bread::Board::Service::Inferred - added this and tests for it * Bread::Board::Manual::Concepts::Typemap - added this to help explain the typemap feature 0.14 2010-08-24 * Bread::Board::Container - added the ->resolve method to replace the ->fetch( $service )->get pattern that annoys mst so much. - adjusted all the tests to account for this change. - adjusted all the docs to now use this approach instead - now using Try::Tiny for all exception handling (except the Deferred service) * Bread::Board::Service::WithDependencies - if you want to depend on a parameterized service, now you can and it will return a Bread::Board::Service::Deferred::Thunk that you can call ->inflate on and pass in the parameters for it. - added tests for this * Bread::Board::Service::Deferred::Thunk - added this + tests for it 0.13 2010-04-23 * Bread::Board - making the include keyword handle compilation errors better (doy) - added test for this * Bread::Board::Container Bread::Board::Container::Parameterized - it is now possible to store parameterized containers within regular containers and have them behave properly - added tests for this * Bread::Board::Manual::Example::* - adding some examples of ways to use Bread::Board to the manual - added tests to confirm they work 0.12 2010-04-18 * Bread::Board - added the `include` keyword which will evaluate an external file within your Bread::Board configuration - added tests for this - added support for parameterized containers - added tests for this - the 'container' keyword will now accept an instance of Bread::Board::Container instead of the name, this makes subclassing easier - added tests for this + Bread::Board::Container::Parameterized - added this module and tests + Bread::Baord::Manual - moved, re-organizad and added too the docs that were previously in Bread::Board.pm 0.11 2010-03-25 * Much improved documentation. * Fixed inc/ to include all used Module-Install extensions. 0.10 2010-02-22 * Bread::Board - import strict and warnings into the caller upon import (Florian Ragwitz) - fixing the SYNOPSIS so that it will actually run (thanks to zby for spotting this) * Bread::Board::ConstructorInjection - Add a constructor_name parameter for classes using MooseX::Traits or other things which need an alternately named constructor. (Tomas Doran) 0.09 2009-07-29 Add cloning support for containers and services (thanks to jrockway for this) - adding tests for this * Bread::Board::ConstructorInjection - use meta->constructor_name instead of "new" if possible (jrockway) * Bread::Board::Service::WithParameters - fixing a leak where we would hold onto parameters that were passed into get() 0.08 2009-07-18 - updating dates on all files * Bread::Board::LifeCycle::Singleton::WithParameters - new module added to support the idea of a singleton lifecycle keyed on the parameters rather then just a per-instance item. * Bread::Board::Traversable - fixed the is_weak_ref mis-spelling 0.07 2009-02-18 - Work with new MooseX::Params::Validate - Specify MX::P::Validate version number in Makefile.PL 0.06 2008-11-03 - Forgot to update MANIFEST before uploading to CPAN. 0.05 2008-11-03 - Applied immutablity to classes where applicable, and vigorously unimport Moose keywords when they are no longer needed. This results in x 2 performance as far as defining a Bread::Board model (Daisuke Maki). * Bread::Board - Implemented unimport(), thus allowing you to remove keywords exported by Bread::Board (Daisuke Maki). * Bread::Board::Traversable - Unrolled recursive calls to loops, and removed Sub::Current dependency (Daisuke Maki) 0.04 2008-10-31 * Bread::Board Bread::Board::Traversable - fix root path handling (thanks to Daisuke Maki) - added tests for this * Bread::Board::Dumper - Simple utility for dumping containers (thanks to Daisuke Maki) * t/ - fixing the plans so that new versions of Test::More stop complaining 0.03 2008-01-08 * Bread::Board::Service::WithParameters - fixed the parameter validation to use a custom cache key, this is so that it plays nicely with the new MooseX::Params::Validate - added tests for this 0.02 2008-01-08 - forgot a dependency, whoops. 0.01 2008-01-07 - Out with the old (IOC) and in with the new (Bread::Board) CPAN-Changes-0.500005/corpus/dists/WWW-Mechanize-Cached.changes000644 000000 000000 00000010006 14472651645 021740 0ustar00000000 000000 Revision history for Perl extension WWW::Mechanize::Cached 1.42 2013-06-29 - Allow caching w/ Content-Encoding == chunked + no size header (Kent Fredric) 1.41 2012-06-27 - Account for content length when deciding whether to cache (Kent Fredric) 1.40 2010-10-18 - Fixed file prefix in cache_key.t when run under Windows 1.39 2010-10-09 - live tests now skip if we can't connect to the live URL - Storable now has a specific version prerequisite 1.38 2010-10-07 - cache_key test should now be portable to Windows - Critic test removed as Dist::Zilla runs this test automatically - POD tests should now only be run by author 1.37 2010-08-30 - Removed TestCache from Makefile. Had been automatically added by Dist::Zilla 1.36 2010-08-30 - Caching is now positive by default (was negative up to this point) - Referring URLs are now, by defaut, not used when creating cache keys. This reverses the behaviour of previous versions. RT #56757 - Now using Moose and Dist::Zilla 1.35 2009-11-20 - Changed test URL, which was causing a small percentage of installs to fail - Added latest HTTP::Headers to prerequisites in order to prevent some failed installs 1.34 2009-11-20 - Added first example script - Expanded documentation re: custom caches - Removed some outdated files from distro 1.33 2009-07-13 - Now maintained by Olaf Alders. Thanks to Andy Lester for offering to let me take this on. - Applied patch from RT http://rt.cpan.org/Public/Bug/Display.html?id=42693 This fixes the "Can't store CODE items" errors - Now requires Test::Warn 0.11 (fixes errors in t/002-bad-custom-cache.t) - Moved development to GitHub: http://github.com/oalders/www-mechanize-cached/tree/master - Added Perl::Critic author tests 1.32 Sun Apr 11 22:19:49 CDT 2004 [ENHANCEMENTS] * Added the $mech->is_cached() method. * Verified that reusing an existing cache gives you the pages back. [INTERNAL] * Now requires WWW::Mechanize 1.00, because previous versions goofed up the HTTP headers on some requests. 1.30 Sun Mar 14 02:51:19 CST 2004 No new features. [FIXED] * Fixed stupid configuration problem in t/bad-cache-test.t. If you got 1.28 installed OK, you don't need 1.30. 1.28 Sat Mar 13 22:05:26 CST 2004 [THINGS THAT WILL BREAK YOUR CODE] * The C parm to the constructor is no longer a set of parms to specify how the cache will be initialized. It must now be a fully-initialized cache object, probably in the Cache::Cache hierarchy. * Existing caches will not work, because I changed the directory that they get written to. It used to go into /tmp/FileCache/WWW::Mechanize::Cached, but now will go into /tmp/FileCache/www-mechanize-cached. This is so the Windows folks can use the module, too. However, if you want to create your own cache object that writes to /tmp/FileCache/WWW::Mechanize::Cached, for compatibility, you can create it and pass it in. [ENHANCEMENTS] * You can now specify your own Cache::Cache object to pass into the constructor. 1.26 Sun Feb 29 23:59:48 CST 2004 [FIXES] * Removed a duplicate $key. Cleaned up some of the internal code, and made the variable names more explicit. * Added an autocheck=>1 to the t/cached.t test. Also hits time.gov instead of Iain's now-gone website. * Removed the SIGNATURE, which I don't intend to maintain. 1.24 Sun Jan 18 23:10:40 CST 2004 NO NEW FUNCTIONALITY. On December 29th, 2003, Iain Truskett, the original author of WWW::Mechanize::Cached passed away. I've taken over maintenance of the module. If you're interested in carrying on Iain's work, let me know. 1.23 December 1, 2003 Initial version, released by Iain Truskett. CPAN-Changes-0.500005/corpus/dists/App-rainbarf.changes000644 000000 000000 00000003360 14472651645 020515 0ustar00000000 000000 Changelog for App-rainbarf v0.8 2013-04-06T10:55:00 [Stanislaw Pusep ] - Config file can be specified via RAINBARF environment variable; - Use select() instead of sleep() for faster execution under Linux; - Documentation enhancements; - Better CPAN compliance. v0.7 2013-03-04T13:15:00 [Tom Cammann ] - Allow --nobattery --remaining (show remaining time with no battery symbol). [Stanislaw Pusep ] - FreeBSD compatibility; - Code cleanup. v0.6 2013-02-26T08:15:00 [Stanislaw Pusep ] - Added support for the 256-color palette; - Added support for ~/.rainbarf.conf; - Code cleanup. v0.5 2013-02-17T17:36:00 [Joe Hassick ] - Add option that will display the time remaining until the battery is fully charged/empty; - Remove one second delay after executing top; - Add new screenshot to readme. [Stanislaw Pusep ] - Bookkeeping. v0.4 2013-02-13T10:43:00 [Stanislaw Pusep ] - Bundled with the Module::Build installer; - Updated docs (Installation & Configuration sections); - Released to CPAN! v0.3 2013-02-11T23:39:00 [Stanislaw Pusep ] - This release uses the "CPU utilization %" metric instead of the "load average" by default; - CPU/RAM stats are pulled from a single call to top(1) on Mac OS X (Linux still accesses /proc for everything); - Shebang has been changed to use Perl from PATH instead of the hardcoded /usr/bin/perl v0.2 2013-02-04T23:33:00 [Stanislaw Pusep ] - Bugfixes; - Screen(1) compatibility; - Fewer dependencies; - A smaller runtime footprint; - Memory allocation bar reordering. v0.1 2013-02-02T11:16:00 [Stanislaw Pusep ] - First public release. CPAN-Changes-0.500005/corpus/dists/Crypt-SaltedHash.parsed000644 000000 000000 00000005651 14472651645 021205 0ustar00000000 000000 { "preamble" => "Revision history for Perl extension Crypt::SaltedHash.", "raw_preamble" => "Revision history for Perl extension Crypt::SaltedHash.\r\n\r\n", "releases" => [ { "date" => "2010-02-28T01:55:22Z", "entries" => [ { "entries" => [ { "line" => 5, "raw" => "\t- add returns now \$self\r\n\r\n", "style" => "-", "text" => "add returns now \$self" } ], "line" => 4, "raw" => " - added clear method\r\n", "style" => "-", "text" => "added clear method" } ], "line" => 3, "raw" => "0.06 Sun Feb 28 01:55:22 2010\r\n", "raw_date" => "Sun Feb 28 01:55:22 2010", "version" => "0.06" }, { "date" => "2006-08-10T03:04:33Z", "entries" => [ { "line" => 8, "raw" => " - switched to Module::Build\r\n\r\n", "style" => "-", "text" => "switched to Module::Build" } ], "line" => 7, "raw" => "0.05 Thu Aug 10 03:04:33 2006\r\n", "raw_date" => "Thu Aug 10 03:04:33 2006", "version" => "0.05" }, { "date" => "2006-01-26T04:56:56Z", "entries" => [ { "line" => 11, "raw" => "\t- algorithm recognition fixed\r\n\r\n", "style" => "-", "text" => "algorithm recognition fixed" } ], "line" => 10, "raw" => "0.04 Thu Jan 26 04:56:56 2006\r\n", "raw_date" => "Thu Jan 26 04:56:56 2006", "version" => "0.04" }, { "date" => "2005-11-14T23:59:59Z", "entries" => [ { "line" => 14, "raw" => "\t- spelling fixed\r\n\r\n", "style" => "-", "text" => "spelling fixed" } ], "line" => 13, "raw" => "0.03 Mon Nov 14 23:59:59 2005\r\n", "raw_date" => "Mon Nov 14 23:59:59 2005", "version" => "0.03" }, { "date" => "2005-11-14T17:54:00Z", "entries" => [ { "line" => 17, "raw" => " - fixed some bugs; added tests and documentation\r\n\r\n", "style" => "-", "text" => "fixed some bugs; added tests and documentation" } ], "line" => 16, "raw" => "0.02 Mon Nov 14 17:54:00 2005\r\n", "raw_date" => "Mon Nov 14 17:54:00 2005", "version" => "0.02" }, { "date" => "2005-11-13T05:41:23Z", "entries" => [ { "line" => 20, "raw" => " - original version; created by h2xs 1.23 with options\r\n\t\t-XA -n Crypt::SaltedHash\r\n\r\n", "style" => "-", "text" => "original version; created by h2xs 1.23 with options -XA -n Crypt::SaltedHash" } ], "line" => 19, "raw" => "0.01 Sun Nov 13 05:41:23 2005\r\n", "raw_date" => "Sun Nov 13 05:41:23 2005", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/File-Tail.changes000644 000000 000000 00000014021 14472651645 017755 0ustar00000000 000000 Revision history for Perl extension File::Tail. 0.01 Fri Nov 28 09:44:06 1997 - original version; created by h2xs 1.18 0.5 Fri Nov 28 12:25:13 MET 1997 - original version; created by matija.grabnar@arnes.si 0.6 Thu Dec 4 14:16:59 MET 1997 - assigning error values to $! didn't work. Replaced with croaks. - passing only the filename didn't work. 0.7 Mon Jun 1 17:23:23 MET 1998 - implemented tied interface - implemented non-blocking read (against my better judgement) - implemented more flexible error handling a-la Net::Telnet - implemented ignore_nonexistat Release of 0.7 was delayed because I wanted to see if Tied Handle handling will include select in 5.005. After two people sent me their tied interfaces, I figured maybe it was time to release it before implementing select :-) 0.8 Wed Oct 14 19:29:30 MET DST 1998 implemented wantarray handling in READLINE implemented some tests for make test documented the tied interface in synopsis (Duh!) - implemented tail -n functionality 0.81 Thu Oct 15 07:54:36 MET DST 1998 There was a bug in tail -n part, and the tail -n tests were missing from the distribution 0.85 Wed Oct 28 15:44:47 MET 1998 The introduction of tail -n broke the handling of files where a line might be written incompletely (e.g. without the final \n). OOps! 0.90 Tue Nov 10 11:02:35 MET 1998 fix for reset_tail (it couldn't be set to 0) from Chris_Heller/PeopleSoft@peoplesoft.com fixed some -> references which complained in Perl5.4 but not in 5.5 moved debugging statement to a separate routine, logit logit now outputs the name of the calling routine and the name of the file the object refers to. select functionality added. 0.91 Tue Feb 2 17:14:27 MET 1999 another ambigous reference (fixed thanks to Peter Wirdemo ) nasty select bug discovered by "Weeber, Steve" select can now also be called as File::Tail::select, as long as there is at least one tail object given. 0.92 Thu Oct 21 11:28:57 MET DST 1999 Blair Zajac sent a patch to fix some problems when returning an empty string when the request was for an array. Gerben Wierda sent a patch that should fix problems with files that don't get updated for a while (a file could accidentaly be read the whole way through again under some circumstances) 0.94 Wed Nov 3 12:46:29 MET 1999 Some changes in the way internal data caching is done - primarily support for cases where you shouldn't keep all the pending lines in memory. logit calls are now stripped by default before the module is installed. If you want to patch File::Tail now, you must edit Tail.pm.debug, the do a perl Makefile.PL which will create a Tail.pm Select returned ALL handles instead of just the ones with input ready. 0.95 Thu Dec 9 10:25:47 MET 1999 I couldn't get Pause to recognise that 0.94 was newer than 0.91 for some reason. I added Tail.pm back into the manifest to see if that will help. 0.96 Mon May 29 09:33:27 MET DST 2000 added binmode to improve running on Microsoft platforms added a check in DESTROY to avoid a warning in Perl 5.6 fixed prerequisites in Makefile.PL 0.97 Persistent "go wild after log rotation, but only sometimes" bug perhaps eliminated. Thanks elfchief@lupine.org for making a script that triggered the previously interminent problem every time. 0.98 David Pfitzner release - David send me 6 patches (some for bugs, others for inefficiencies, or lack of clarity in documents) 0.99 "Lyle D. Brooks" reported there were instances where interval was set to a negative value Joe Smith noted that one shouldn't declare @ISA=qw(Autoloader) unless one is prepared to deal with it correctly. Peter Allen undef warnings when starting up on a nonexistant file Alain Fauconnet and Benjamin Zwittnig provided test cases which helped me chase down another two cases where File::Tail would spontaneously read too much. 0.99.2 Some operating systems sometimes return 0 for sysread on busy files. This should now be handled correctly. nowait can now be specified at object creation. A callback is called on every file rotation, which can be used for files that change their names with time. 0.99.3 Firefox crashed while I attempted upload to PAUSE, so I had to make a new version just for that. Life is ridiculous. 1.0 Actually just two minor bug fixes (one of them in a test), but I no longer see a point in not having a 1.0 version. 1.1 Lee Duncan drew my attention to Stephan Muller's fixes for Windows compatibility Changed the use of the system's mv command to using File::Copy in the tests. (Steffen Mueller) Added machine-readable license statement to Makefile.PL and thus META.yml (Steffen Mueller) The sixth test in 10/open.t is skipped on win32 because you can't just move files around that are opened. (Steffen Mueller) Due to using sysread and friends, there were newline problems on win32. That should be fixed now. (Steffen Mueller) 1.2 Break the infinite loop that can result when the average length of lines causes the attempt to fill the tail buffer to fill with the exact same or even smaller number of lines. 1.3 Fix for a stupid bug in 1.2 (GFILATOV, Slaven_Rezic) Added a warning for use of debug in a non-debug version of File::Tail Shows a warning when maxbuf is set to a too-small value Invoking name_changes callback changes the value of input attribute (sottile@ix.netcom.com) When deciding to reopen the file, check if the inode matches (that would mean it has not been ranamed) CPAN-Changes-0.500005/corpus/dists/YAML.parsed000644 000000 000000 00000116773 14472651645 016640 0ustar00000000 000000 { "raw_preamble" => "", "releases" => [ { "date" => "2014-02-10T08:42:31Z", "entries" => [ { "line" => 2, "raw" => " - Revert Mo from 0.38 to 0.31 - zefram++ reported it breaking cpan client\n\n", "style" => "-", "text" => "Revert Mo from 0.38 to 0.31 - zefram++ reported it breaking cpan client" } ], "line" => 1, "raw" => "0.90 Mon Feb 10 08:42:31 PST 2014\n", "raw_date" => "Mon Feb 10 08:42:31 PST 2014", "version" => "0.90" }, { "date" => "2014-11-08T12:51:48Z", "entries" => [ { "line" => 5, "raw" => " - Fixed tests to work under parallel testing -- kentnl\n", "style" => "-", "text" => "Fixed tests to work under parallel testing -- kentnl" }, { "line" => 6, "raw" => " - Switched to dzil release process\n\n", "style" => "-", "text" => "Switched to dzil release process" } ], "line" => 4, "raw" => "0.89 Sat Nov 8 12:51:48 PST 2014\n", "raw_date" => "Sat Nov 8 12:51:48 PST 2014", "version" => "0.89" }, { "date" => "2013-12-03T05:29:34Z", "entries" => [ { "line" => 9, "raw" => " - Fixed YAML loading on perl 5.8 (broken in YAML 0.85) by removing\n 5.10-specific regex construct. -- hobbs++\n\n", "style" => "-", "text" => "Fixed YAML loading on perl 5.8 (broken in YAML 0.85) by removing 5.10-specific regex construct. -- hobbs++" } ], "line" => 8, "raw" => "0.88 Tue Dec 3 05:29:34 UTC 2013\n", "raw_date" => "Tue Dec 3 05:29:34 UTC 2013", "version" => "0.88" }, { "date" => "2013-11-30T21:51:48Z", "entries" => [ { "line" => 13, "raw" => " - Using latest Test::Builder tp fix\n https://rt.cpan.org/Public/Bug/Display.html?id=90847\n\n", "style" => "-", "text" => "Using latest Test::Builder tp fix https://rt.cpan.org/Public/Bug/Display.html?id=90847" } ], "line" => 12, "raw" => "0.87 Sat Nov 30 21:51:48 PST 2013\n", "raw_date" => "Sat Nov 30 21:51:48 PST 2013", "version" => "0.87" }, { "date" => "2013-11-26T16:43:27Z", "entries" => [ { "line" => 17, "raw" => " - Revert YAML::Mo for https://rt.cpan.org/Public/Bug/Display.html?id=90817\n\n", "style" => "-", "text" => "Revert YAML::Mo for https://rt.cpan.org/Public/Bug/Display.html?id=90817" } ], "line" => 16, "raw" => "0.86 Tue Nov 26 16:43:27 UTC 2013\n", "raw_date" => "Tue Nov 26 16:43:27 UTC 2013", "version" => "0.86" }, { "date" => "2013-11-24T07:43:13Z", "entries" => [ { "line" => 20, "raw" => " - Fix for https://rt.cpan.org/Ticket/Display.html?id=19838 where synopsis\n in YAML::Dumper doesn't work as exptected.\n", "style" => "-", "text" => "Fix for https://rt.cpan.org/Ticket/Display.html?id=19838 where synopsis in YAML::Dumper doesn't work as exptected." }, { "line" => 22, "raw" => " - Thorsten++ https://rt.cpan.org/Public/Bug/Display.html?id=90593\n", "style" => "-", "text" => "Thorsten++ https://rt.cpan.org/Public/Bug/Display.html?id=90593" }, { "line" => 23, "raw" => " - Upgrade to latest Mo\n\n", "style" => "-", "text" => "Upgrade to latest Mo" } ], "line" => 19, "raw" => "0.85 Sun Nov 24 07:43:13 PST 2013\n", "raw_date" => "Sun Nov 24 07:43:13 PST 2013", "version" => "0.85" }, { "date" => "2012-07-13T18:17:27Z", "entries" => [ { "line" => 26, "raw" => " - Resolve distribution error that caused .git to be shipped in the .tar.gz\n\n", "style" => "-", "text" => "Resolve distribution error that caused .git to be shipped in the .tar.gz" } ], "line" => 25, "raw" => "0.84 Fri Jul 13 18:17:27 GMT 2012\n", "raw_date" => "Fri Jul 13 18:17:27 GMT 2012", "version" => "0.84" }, { "date" => "2012-07-13T15:44:03Z", "entries" => [ { "line" => 29, "raw" => " - Only call stat() and tell() on a filehandle if fileno existed\n", "style" => "-", "text" => "Only call stat() and tell() on a filehandle if fileno existed" }, { "line" => 30, "raw" => " - Explicit tied() call on globs to avoid a 5.16 deprecation warning\n\n", "style" => "-", "text" => "Explicit tied() call on globs to avoid a 5.16 deprecation warning" } ], "line" => 28, "raw" => "0.83 Fri Jul 13 15:44:03 GMT 2012\n", "raw_date" => "Fri Jul 13 15:44:03 GMT 2012", "version" => "0.83" }, { "date" => "2012-07-12T18:49:45Z", "entries" => [ { "line" => 33, "raw" => " - Test scalar \@array rather than deprecated defined \@array (Sebastian\n Stumpf)\n\n", "style" => "-", "text" => "Test scalar \@array rather than deprecated defined \@array (Sebastian Stumpf)" } ], "line" => 32, "raw" => "0.82 Thu Jul 12 18:49:45 GMT 2012\n", "raw_date" => "Thu Jul 12 18:49:45 GMT 2012", "version" => "0.82" }, { "date" => "2012-04-19T11:03:38Z", "entries" => [ { "line" => 37, "raw" => " - Patch from https://rt.cpan.org/Public/Bug/Display.html?id=74826\n", "style" => "-", "text" => "Patch from https://rt.cpan.org/Public/Bug/Display.html?id=74826" }, { "line" => 38, "raw" => " - YAML::Mo uses Safe Mo\n https://rt.cpan.org/Public/Bug/Display.html?id=76664\n\n", "style" => "-", "text" => "YAML::Mo uses Safe Mo https://rt.cpan.org/Public/Bug/Display.html?id=76664" } ], "line" => 36, "raw" => "0.81 Thu Apr 19 11:03:38 PDT 2012\n", "raw_date" => "Thu Apr 19 11:03:38 PDT 2012", "version" => "0.81" }, { "date" => "2012-02-10T12:56:08Z", "entries" => [ { "line" => 42, "raw" => " - Patch from https://rt.cpan.org/Ticket/Display.html?id=73702\n", "style" => "-", "text" => "Patch from https://rt.cpan.org/Ticket/Display.html?id=73702" }, { "line" => 43, "raw" => " - Make YAML::Node subclass YAML::Mo::Object as well as Exporter (MSTROUT)\n\n", "style" => "-", "text" => "Make YAML::Node subclass YAML::Mo::Object as well as Exporter (MSTROUT)" } ], "line" => 41, "raw" => "0.80 Fri Feb 10 12:56:08 PST 2012\n", "raw_date" => "Fri Feb 10 12:56:08 PST 2012", "version" => "0.80" }, { "date" => "2012-02-08T17:25:55Z", "entries" => [ { "line" => 46, "raw" => " - Peter Scott and others noticed Mo::xxx causing problems on newer perls.\n Removed xxx for now.\n\n", "style" => "-", "text" => "Peter Scott and others noticed Mo::xxx causing problems on newer perls. Removed xxx for now." } ], "line" => 45, "raw" => "0.79 Wed Feb 8 17:25:55 PST 2012\n", "raw_date" => "Wed Feb 8 17:25:55 PST 2012", "version" => "0.79" }, { "date" => "2012-01-01T23:53:57Z", "entries" => [ { "line" => 50, "raw" => " - Apply patch from ANDK++ to deal with B::Deparse changes.\n\n", "style" => "-", "text" => "Apply patch from ANDK++ to deal with B::Deparse changes." } ], "line" => 49, "raw" => "0.78 Sun Jan 1 23:53:57 PST 2012\n", "raw_date" => "Sun Jan 1 23:53:57 PST 2012", "version" => "0.78" }, { "date" => "2011-09-29T18:28:25Z", "entries" => [ { "line" => 53, "raw" => " - Add \$VERSION back to all modules.\n", "style" => "-", "text" => "Add \$VERSION back to all modules." }, { "line" => 54, "raw" => " - Released from Liz++ and Wendy++ garage attic!\n\n", "style" => "-", "text" => "Released from Liz++ and Wendy++ garage attic!" } ], "line" => 52, "raw" => "0.77 Thu Sep 29 18:28:25 CEST 2011\n", "raw_date" => "Thu Sep 29 18:28:25 CEST 2011", "version" => "0.77" }, { "date" => "2011-09-28T12:05:08Z", "entries" => [ { "line" => 57, "raw" => " - Removed YAML::import per mst.\n\n", "style" => "-", "text" => "Removed YAML::import per mst." } ], "line" => 56, "raw" => "0.76 Wed Sep 28 12:05:08 CEST 2011\n", "raw_date" => "Wed Sep 28 12:05:08 CEST 2011", "version" => "0.76" }, { "date" => "2011-09-27T00:46:19Z", "entries" => [ { "line" => 60, "raw" => " - Switch to Mo for OO (YAML::Mo)\n", "style" => "-", "text" => "Switch to Mo for OO (YAML::Mo)" }, { "line" => 61, "raw" => " - use_test_base in Makefile.PL.\n\n", "style" => "-", "text" => "use_test_base in Makefile.PL." } ], "line" => 59, "raw" => "0.75 Tue Sep 27 00:46:19 CEST 2011\n", "raw_date" => "Tue Sep 27 00:46:19 CEST 2011", "version" => "0.75" }, { "date" => "2011-09-25T22:05:05Z", "entries" => [ { "line" => 64, "raw" => " - Switch to Module::Package\n", "style" => "-", "text" => "Switch to Module::Package" }, { "line" => 65, "raw" => " - Removed extra \$VERSION lines from submodules\n", "style" => "-", "text" => "Removed extra \$VERSION lines from submodules" }, { "line" => 66, "raw" => " - Released from Liz++ and Wendy++'s Tool Basement!\n\n", "style" => "-", "text" => "Released from Liz++ and Wendy++'s Tool Basement!" } ], "line" => 63, "raw" => "0.74 Sun Sep 25 22:05:05 CEST 2011\n", "raw_date" => "Sun Sep 25 22:05:05 CEST 2011", "version" => "0.74" }, { "date" => "2011-04-19T20:14:59Z", "entries" => [ { "line" => 69, "raw" => " - Apply ANDK's patch for 5.14.0\n\n", "style" => "-", "text" => "Apply ANDK's patch for 5.14.0" } ], "line" => 68, "raw" => "0.73 Tue Apr 19 20:14:59 EST 2011\n", "raw_date" => "Tue Apr 19 20:14:59 EST 2011", "version" => "0.73" }, { "date" => "2010-09-01T11:54:00Z", "entries" => [ { "line" => 72, "raw" => " - Upgrade to Module::Install 1.00\n", "style" => "-", "text" => "Upgrade to Module::Install 1.00" }, { "line" => 73, "raw" => " - Upgraded author tests via new ADAMK release automation\n", "style" => "-", "text" => "Upgraded author tests via new ADAMK release automation" }, { "line" => 74, "raw" => " - Normalise Ingy's name to ASCII in Makefile.PL so that we don't have\n Unicode in our own META.yml\n\n", "style" => "-", "text" => "Normalise Ingy's name to ASCII in Makefile.PL so that we don't have Unicode in our own META.yml" } ], "line" => 71, "raw" => "0.72 Wed Sep 1 11:54:00 AEST 2010\n", "raw_date" => "Wed Sep 1 11:54:00 AEST 2010", "version" => "0.72" }, { "date" => "2010-01-03T12:25:00Z", "entries" => [ { "line" => 78, "raw" => " - Set file encoding to UTF-8 in LoadFile/DumpFile (RT#25434) by Olivier\n Mengue\n", "style" => "-", "text" => "Set file encoding to UTF-8 in LoadFile/DumpFile (RT#25434) by Olivier Mengue" }, { "line" => 80, "raw" => " - We shouldn't have to care about 5.8.0. Since it's causing CPAN Testers\n failures, bump the minimum Perl to 5.8.1\n\n", "style" => "-", "text" => "We shouldn't have to care about 5.8.0. Since it's causing CPAN Testers failures, bump the minimum Perl to 5.8.1" } ], "line" => 77, "raw" => "0.71 Sun Jan 3 12:25:00 AEST 2010\n", "raw_date" => "Sun Jan 3 12:25:00 AEST 2010", "version" => "0.71" }, { "date" => "2009-08-11T02:52:10Z", "entries" => [ { "line" => 84, "raw" => " - Updated Module::Install dependency to 0.91\n", "style" => "-", "text" => "Updated Module::Install dependency to 0.91" }, { "line" => 85, "raw" => " - Bumping dependency to 5.8.0 but I think it's only in the test suite.\n However, I can't prove it. So if anyone wants 5.6 compatibility back you\n need to fix or rewrite the test suite.\n\n", "style" => "-", "text" => "Bumping dependency to 5.8.0 but I think it's only in the test suite. However, I can't prove it. So if anyone wants 5.6 compatibility back you need to fix or rewrite the test suite." } ], "line" => 83, "raw" => "0.70 Tue Aug 11 02:52:10 AEST 2009\n", "raw_date" => "Tue Aug 11 02:52:10 AEST 2009", "version" => "0.70" }, { "date" => "2009-08-10T22:37:37Z", "entries" => [ { "line" => 90, "raw" => " - Developer \$VERSION now has eval correction\n\n", "style" => "-", "text" => "Developer \$VERSION now has eval correction" } ], "line" => 89, "raw" => "0.69_02 Mon Aug 10 22:37:37 AEST 2009\n", "raw_date" => "Mon Aug 10 22:37:37 AEST 2009", "version" => "0.69_02" }, { "date" => "2009-07-09T02:01:12Z", "entries" => [ { "line" => 93, "raw" => " - Added \$VERSION to all modules\n", "style" => "-", "text" => "Added \$VERSION to all modules" }, { "line" => 94, "raw" => " - Removed the use of use base\n", "style" => "-", "text" => "Removed the use of use base" }, { "line" => 95, "raw" => " - Imported into the svn.ali.as repo\n\n", "style" => "-", "text" => "Imported into the svn.ali.as repo" } ], "line" => 92, "raw" => "0.69_01 Sun Jul 9 02:01:12 AEST 2009\n", "raw_date" => "Sun Jul 9 02:01:12 AEST 2009", "version" => "0.69_01" }, { "date" => "2008-12-04T01:00:44Z", "entries" => [ { "line" => 98, "raw" => " - Used update Test::Base to ensure Filter::Util::Call\n\n", "style" => "-", "text" => "Used update Test::Base to ensure Filter::Util::Call" } ], "line" => 97, "raw" => "0.68 Thu Dec 4 01:00:44 PST 2008\n", "raw_date" => "Thu Dec 4 01:00:44 PST 2008", "version" => "0.68" }, { "date" => "2008-12-01T02:34:21Z", "entries" => [ { "line" => 101, "raw" => " - Add YAML::Any\n", "style" => "-", "text" => "Add YAML::Any" }, { "line" => 102, "raw" => " - Move ysh to YAML::Shell\n", "style" => "-", "text" => "Move ysh to YAML::Shell" }, { "line" => 103, "raw" => " - Add doc section explaining YAML::Old\n\n", "style" => "-", "text" => "Add doc section explaining YAML::Old" } ], "line" => 100, "raw" => "0.67 Mon Dec 1 02:34:21 PST 2008\n", "raw_date" => "Mon Dec 1 02:34:21 PST 2008", "version" => "0.67" }, { "date" => "2007-09-27T01:37:16Z", "entries" => [ { "line" => 106, "raw" => " - Blessed code refs with LoadCode=0 still get blessed. rafl++\n\n", "style" => "-", "text" => "Blessed code refs with LoadCode=0 still get blessed. rafl++" } ], "line" => 105, "raw" => "0.66 Thu Sep 27 01:37:16 PDT 2007\n", "raw_date" => "Thu Sep 27 01:37:16 PDT 2007", "version" => "0.66" }, { "date" => "2007-06-21T17:37:32Z", "entries" => [ { "line" => 109, "raw" => " - \\z is really \\0\n", "style" => "-", "text" => "\\z is really \\0" }, { "line" => 110, "raw" => " - Speed up regexp loading. audreyt++\n\n", "style" => "-", "text" => "Speed up regexp loading. audreyt++" } ], "line" => 108, "raw" => "0.65 Thu Jun 21 17:37:32 PDT 2007\n", "raw_date" => "Thu Jun 21 17:37:32 PDT 2007", "version" => "0.65" }, { "date" => "2007-06-21T14:31:20Z", "entries" => [ { "line" => 113, "raw" => " - Better support for loading regexps. audreyt++\n\n", "style" => "-", "text" => "Better support for loading regexps. audreyt++" } ], "line" => 112, "raw" => "0.64 Thu Jun 21 14:31:20 PDT 2007\n", "raw_date" => "Thu Jun 21 14:31:20 PDT 2007", "version" => "0.64" }, { "date" => "2007-06-20T16:03:22Z", "entries" => [ { "line" => 116, "raw" => " - Don't emit nodes blessed into '' in the new tag scheme, and improve\n semantics of loading such nodes.\n", "style" => "-", "text" => "Don't emit nodes blessed into '' in the new tag scheme, and improve semantics of loading such nodes." }, { "line" => 118, "raw" => " - New support for dumping/loading regexps.\n\n", "style" => "-", "text" => "New support for dumping/loading regexps." } ], "line" => 115, "raw" => "0.63 Wed Jun 20 16:03:22 PDT 2007\n", "raw_date" => "Wed Jun 20 16:03:22 PDT 2007", "version" => "0.63" }, { "date" => "2006-07-03T15:41:20Z", "entries" => [ { "line" => 121, "raw" => " - Patch from rgs for Catalyst users\n\n", "style" => "-", "text" => "Patch from rgs for Catalyst users" } ], "line" => 120, "raw" => "0.62 Mon Jul 3 15:41:20 PDT 2006\n", "raw_date" => "Mon Jul 3 15:41:20 PDT 2006", "version" => "0.62" }, { "date" => "2006-07-02T15:25:08Z", "entries" => [ { "line" => 124, "raw" => " - New CGI.pm made test fail.\n\n", "style" => "-", "text" => "New CGI.pm made test fail." } ], "line" => 123, "raw" => "0.61 Sun Jul 2 15:25:08 CDT 2006\n", "raw_date" => "Sun Jul 2 15:25:08 CDT 2006", "version" => "0.61" }, { "date" => "2006-06-30T21:55:55Z", "entries" => [ { "line" => 127, "raw" => " - Changed object tag format in non backwards compatible way\n", "style" => "-", "text" => "Changed object tag format in non backwards compatible way" }, { "line" => 128, "raw" => " - Removed support for folded scalar emission\n", "style" => "-", "text" => "Removed support for folded scalar emission" }, { "line" => 129, "raw" => " - Added new tests\n", "style" => "-", "text" => "Added new tests" }, { "line" => 130, "raw" => " - Sync with YAML::Syck\n\n", "style" => "-", "text" => "Sync with YAML::Syck" } ], "line" => 126, "raw" => "0.60 Fri Jun 30 21:55:55 CDT 2006\n", "raw_date" => "Fri Jun 30 21:55:55 CDT 2006", "version" => "0.60" }, { "date" => "2006-02-14T12:42:34Z", "entries" => [ { "line" => 133, "raw" => " - Fixed bug reported by Slaven Rezic on 5.8.0\n", "style" => "-", "text" => "Fixed bug reported by Slaven Rezic on 5.8.0" }, { "line" => 134, "raw" => " - Fixed a ysh bug reported on rt. 17589\n\n", "style" => "-", "text" => "Fixed a ysh bug reported on rt. 17589" } ], "line" => 132, "raw" => "0.58 Tue Feb 14 12:42:34 PST 2006\n", "raw_date" => "Tue Feb 14 12:42:34 PST 2006", "version" => "0.58" }, { "date" => "2006-02-01T23:06:25Z", "entries" => [ { "line" => 137, "raw" => " - Add obligatory '1;' to end of each module.\n\n", "style" => "-", "text" => "Add obligatory '1;' to end of each module." } ], "line" => 136, "raw" => "0.57 Wed Feb 1 23:06:25 PST 2006\n", "raw_date" => "Wed Feb 1 23:06:25 PST 2006", "version" => "0.57" }, { "date" => "2006-01-30T10:26:33Z", "entries" => [ { "line" => 140, "raw" => " - Add Module::Install::TestBase support\n\n", "style" => "-", "text" => "Add Module::Install::TestBase support" } ], "line" => 139, "raw" => "0.56 Mon Jan 30 10:26:33 PST 2006\n", "raw_date" => "Mon Jan 30 10:26:33 PST 2006", "version" => "0.56" }, { "date" => "2006-01-29T19:03:35Z", "entries" => [ { "line" => 143, "raw" => " - Load YAML::Node because Module::Build expects it to be loaded. We can\n undo this when Module::Build starts loading it for itself.\n\n", "style" => "-", "text" => "Load YAML::Node because Module::Build expects it to be loaded. We can undo this when Module::Build starts loading it for itself." } ], "line" => 142, "raw" => "0.55 Sun Jan 29 19:03:35 PST 2006\n", "raw_date" => "Sun Jan 29 19:03:35 PST 2006", "version" => "0.55" }, { "date" => "2006-01-29T17:28:46Z", "entries" => [ { "line" => 147, "raw" => " - Remove dependency on Class::Spiffy (and/or Spiffy).\n\n", "style" => "-", "text" => "Remove dependency on Class::Spiffy (and/or Spiffy)." } ], "line" => 146, "raw" => "0.54 Sun Jan 29 17:28:46 PST 2006\n", "raw_date" => "Sun Jan 29 17:28:46 PST 2006", "version" => "0.54" }, { "date" => "2006-01-19T06:03:17Z", "entries" => [ { "line" => 150, "raw" => " - Depend on Class::Spiffy instead of Spiffy. No source filtering.\n\n", "style" => "-", "text" => "Depend on Class::Spiffy instead of Spiffy. No source filtering." } ], "line" => 149, "raw" => "0.53 Thu Jan 19 06:03:17 PST 2006\n", "raw_date" => "Thu Jan 19 06:03:17 PST 2006", "version" => "0.53" }, { "date" => "2006-01-18T14:25:24Z", "entries" => [ { "line" => 153, "raw" => " - Error in Spiffy-0.26 causing problems. Require 0.27\n\n", "style" => "-", "text" => "Error in Spiffy-0.26 causing problems. Require 0.27" } ], "line" => 152, "raw" => "0.52 Wed Jan 18 14:25:24 PST 2006\n", "raw_date" => "Wed Jan 18 14:25:24 PST 2006", "version" => "0.52" }, { "date" => "2006-01-14T17:09:09Z", "entries" => [ { "line" => 156, "raw" => " - Tests pass on win32 and cygwin\n", "style" => "-", "text" => "Tests pass on win32 and cygwin" }, { "line" => 157, "raw" => " - Don't gpg sign the distribution tarball\n\n", "style" => "-", "text" => "Don't gpg sign the distribution tarball" } ], "line" => 155, "raw" => "0.51 Sat Jan 14 17:09:09 GMT 2006\n", "raw_date" => "Sat Jan 14 17:09:09 GMT 2006", "version" => "0.51" }, { "date" => "2005-12-25T11:09:18Z", "entries" => [ { "line" => 160, "raw" => " - Major refactoring of YAML.pm\n", "style" => "-", "text" => "Major refactoring of YAML.pm" }, { "line" => 161, "raw" => " - Completely OO with same old functional UI\n", "style" => "-", "text" => "Completely OO with same old functional UI" }, { "line" => 162, "raw" => " - Support the \$YAML::Stringify option which most be on for objects to get\n stringified. Otherwise dump the object.\n", "style" => "-", "text" => "Support the \$YAML::Stringify option which most be on for objects to get stringified. Otherwise dump the object." }, { "line" => 164, "raw" => " - Can dump overloaded objects now.\n", "style" => "-", "text" => "Can dump overloaded objects now." }, { "line" => 165, "raw" => " - Completely refactor test suite using Test::Base\n", "style" => "-", "text" => "Completely refactor test suite using Test::Base" }, { "line" => 166, "raw" => " - Create Test::YAML\n", "style" => "-", "text" => "Create Test::YAML" }, { "line" => 167, "raw" => " - Make test framework compatible with YAML::Syck - Test-Base-0.45\n", "style" => "-", "text" => "Make test framework compatible with YAML::Syck - Test-Base-0.45" }, { "line" => 168, "raw" => " - Reviewed all rt bugs. fixed many\n", "style" => "-", "text" => "Reviewed all rt bugs. fixed many" }, { "line" => 169, "raw" => " - Reviewed all emailed bugs. Fixed many.\n", "style" => "-", "text" => "Reviewed all emailed bugs. Fixed many." }, { "line" => 170, "raw" => " - Helped audrey complete YAML::Syck and worked on interoperability issues\n", "style" => "-", "text" => "Helped audrey complete YAML::Syck and worked on interoperability issues" }, { "line" => 171, "raw" => " - Test well known yaml docs like svk and META.yml\n", "style" => "-", "text" => "Test well known yaml docs like svk and META.yml" }, { "line" => 172, "raw" => " - Eliminate unsafe string evals\n", "style" => "-", "text" => "Eliminate unsafe string evals" }, { "line" => 173, "raw" => " - Can use with autouse. Spiffy-0.25\n", "style" => "-", "text" => "Can use with autouse. Spiffy-0.25" }, { "line" => 174, "raw" => " - Support YAML::Marshall to help classes that want to do their own\n marshalling\n", "style" => "-", "text" => "Support YAML::Marshall to help classes that want to do their own marshalling" }, { "line" => 176, "raw" => " - Make objects tags configurable\n", "style" => "-", "text" => "Make objects tags configurable" }, { "line" => 177, "raw" => " - -M option for ysh to test other implementations like YAML::Syck\n\n", "style" => "-", "text" => "-M option for ysh to test other implementations like YAML::Syck" } ], "line" => 159, "raw" => "0.50 Sun Dec 25 11:09:18 PST 2005\n", "raw_date" => "Sun Dec 25 11:09:18 PST 2005", "version" => "0.50" }, { "date" => "2005-04-12T15:28:40Z", "entries" => [ { "line" => 180, "raw" => " - Need newer Test::More or tests hang.\n\n", "style" => "-", "text" => "Need newer Test::More or tests hang." } ], "line" => 179, "raw" => "0.39 Tue Apr 12 15:28:40 PDT 2005\n", "raw_date" => "Tue Apr 12 15:28:40 PDT 2005", "version" => "0.39" }, { "date" => "2005-03-31T01:43:21Z", "entries" => [ { "line" => 183, "raw" => " - Deleted Spiffy -XXX artifact :(\n\n", "style" => "-", "text" => "Deleted Spiffy -XXX artifact :(" } ], "line" => 182, "raw" => "0.38 Thu Mar 31 01:43:21 PST 2005\n", "raw_date" => "Thu Mar 31 01:43:21 PST 2005", "version" => "0.38" }, { "date" => "2005-03-31T01:56:24Z", "entries" => [ { "line" => 186, "raw" => " - All the edge cases with hash key dumping (commas, [], {}, etc) should\n now be covered\n\n", "style" => "-", "text" => "All the edge cases with hash key dumping (commas, [], {}, etc) should now be covered" } ], "line" => 185, "raw" => "0.37 Thu Mar 31 01:56:24 CST 2005\n", "raw_date" => "Thu Mar 31 01:56:24 CST 2005", "version" => "0.37" }, { "date" => "2005-01-30T21:00:28Z", "entries" => [ { "line" => 190, "raw" => " - Slight changes to the way things are dumped.\n", "style" => "-", "text" => "Slight changes to the way things are dumped." }, { "line" => 191, "raw" => " - Fixed bugs dumping \"foo\\nbar\" for svk acceptance\n\n", "style" => "-", "text" => "Fixed bugs dumping \"foo\\nbar\" for svk acceptance" } ], "line" => 189, "raw" => "0.36 Sun Jan 30 21:00:28 PST 2005\n", "raw_date" => "Sun Jan 30 21:00:28 PST 2005", "version" => "0.36" }, { "date" => "2002-05-11T19:54:52Z", "entries" => [ { "line" => 194, "raw" => " - Moved error handling into YAML::Error\n", "style" => "-", "text" => "Moved error handling into YAML::Error" }, { "line" => 195, "raw" => " - Enabled UseAliases=0 to mean skip Dump checking of alias nodes.\n", "style" => "-", "text" => "Enabled UseAliases=0 to mean skip Dump checking of alias nodes." }, { "line" => 196, "raw" => " - Changed Defaults. Indent=2. CompressSeries=1.\n", "style" => "-", "text" => "Changed Defaults. Indent=2. CompressSeries=1." }, { "line" => 197, "raw" => " - Deprecated Store() in favor of Dump()\n", "style" => "-", "text" => "Deprecated Store() in favor of Dump()" }, { "line" => 198, "raw" => " - Refactored test suite\n", "style" => "-", "text" => "Refactored test suite" }, { "line" => 199, "raw" => " - Added key list to SortKeys\n", "style" => "-", "text" => "Added key list to SortKeys" }, { "line" => 200, "raw" => " - Added ForceBlock option\n", "style" => "-", "text" => "Added ForceBlock option" }, { "line" => 201, "raw" => " - CONTROL-D can be used to terminate ysh. Ryan King will be happy.\n", "style" => "-", "text" => "CONTROL-D can be used to terminate ysh. Ryan King will be happy." }, { "line" => 202, "raw" => " - Added the ability to direct STDIN to the ysh.\n\n", "style" => "-", "text" => "Added the ability to direct STDIN to the ysh." } ], "line" => 193, "raw" => "0.32 Sat May 11 19:54:52 EDT 2002\n", "raw_date" => "Sat May 11 19:54:52 EDT 2002", "version" => "0.32" }, { "date" => "2002-01-15T01:46:18Z", "entries" => [ { "line" => 205, "raw" => " - Make '-' chomp all trailing newlines\n", "style" => "-", "text" => "Make '-' chomp all trailing newlines" }, { "line" => 206, "raw" => " - Change folded indicator from '^' to ']'.\n", "style" => "-", "text" => "Change folded indicator from '^' to ']'." }, { "line" => 207, "raw" => " - YAC-010 Allow a map as a sequence entry to be collapsed to one line.\n", "style" => "-", "text" => "YAC-010 Allow a map as a sequence entry to be collapsed to one line." }, { "line" => 208, "raw" => " - Changed the nextline scalar indicators. '^' means folded, and escaping\n ('\\') can be applied to folded or blocks. Chomping is now '-'.\n", "style" => "-", "text" => "Changed the nextline scalar indicators. '^' means folded, and escaping ('\\') can be applied to folded or blocks. Chomping is now '-'." }, { "line" => 210, "raw" => " - YAC-013. Generic indentation. This change was big, ugly, hard and it\n really made my brain hurt. But look. It works! :)\n", "style" => "-", "text" => "YAC-013. Generic indentation. This change was big, ugly, hard and it really made my brain hurt. But look. It works! :)" }, { "line" => 212, "raw" => " - YAC-012. Added ability to put comments anywhere, at any indentation\n level.\n", "style" => "-", "text" => "YAC-012. Added ability to put comments anywhere, at any indentation level." }, { "line" => 214, "raw" => " - Added \$YAML::UseBlock and \$YAML::UseFold\n", "style" => "-", "text" => "Added \$YAML::UseBlock and \$YAML::UseFold" }, { "line" => 215, "raw" => " - Changed \$YAML::PerlCode to \$YAML::UseCode\n", "style" => "-", "text" => "Changed \$YAML::PerlCode to \$YAML::UseCode" }, { "line" => 216, "raw" => " - Added \$YAML::Indent config option\n", "style" => "-", "text" => "Added \$YAML::Indent config option" }, { "line" => 217, "raw" => " - YAC-012. Handled all Throwaway Issues. Blank lines and comments can be\n used anywhere, and they will work appropriately.\n", "style" => "-", "text" => "YAC-012. Handled all Throwaway Issues. Blank lines and comments can be used anywhere, and they will work appropriately." }, { "line" => 219, "raw" => " - Converted Changes file (this file) to use YAML\n", "style" => "-", "text" => "Converted Changes file (this file) to use YAML" }, { "line" => 220, "raw" => " - AC-016. Support \"assumed header\" (---\n", "style" => "-", "text" => "AC-016. Support \"assumed header\" (---" }, { "line" => 221, "raw" => " - Added \$YAML::UseBlock option\n", "style" => "-", "text" => "Added \$YAML::UseBlock option" }, { "line" => 222, "raw" => " - YAC-015. Support Top Level Inline nodes\n", "style" => "-", "text" => "YAC-015. Support Top Level Inline nodes" }, { "line" => 223, "raw" => " - Added testing for Store to test suite. (Now there's no excuse not to\n create lot's of new tests. :)\n\n", "style" => "-", "text" => "Added testing for Store to test suite. (Now there's no excuse not to create lot's of new tests. :)" } ], "line" => 204, "raw" => "0.27 Tue Jan 15 01:46:18 PST 2002\n", "raw_date" => "Tue Jan 15 01:46:18 PST 2002", "version" => "0.27" }, { "date" => "2002-01-09T21:13:45Z", "entries" => [ { "line" => 227, "raw" => " - Detect implicit scalars more correctly\n", "style" => "-", "text" => "Detect implicit scalars more correctly" }, { "line" => 228, "raw" => " - Refactor test suite\n", "style" => "-", "text" => "Refactor test suite" }, { "line" => 229, "raw" => " - Proofed documentation\n", "style" => "-", "text" => "Proofed documentation" }, { "line" => 230, "raw" => " - Fix ysh doc. Document flags in the pod.\n", "style" => "-", "text" => "Fix ysh doc. Document flags in the pod." }, { "line" => 231, "raw" => " - Move test code out of YAML.pm and into testlib\n", "style" => "-", "text" => "Move test code out of YAML.pm and into testlib" }, { "line" => 232, "raw" => " - Change directives to use\n", "style" => "-", "text" => "Change directives to use" }, { "line" => 233, "raw" => " - Parse regexes\n", "style" => "-", "text" => "Parse regexes" }, { "line" => 234, "raw" => " - YAC-017. Change !perl/ syntax\n", "style" => "-", "text" => "YAC-017. Change !perl/ syntax" }, { "line" => 235, "raw" => " - Emit regexes\n", "style" => "-", "text" => "Emit regexes" }, { "line" => 236, "raw" => " - support 'ysh -v' and 'ysh -V' and 'ysh -h'\n", "style" => "-", "text" => "support 'ysh -v' and 'ysh -V' and 'ysh -h'" }, { "line" => 237, "raw" => " - Support blessed globs\n", "style" => "-", "text" => "Support blessed globs" }, { "line" => 238, "raw" => " - Make ysh installable\n", "style" => "-", "text" => "Make ysh installable" }, { "line" => 239, "raw" => " - Parse CODE leaves\n", "style" => "-", "text" => "Parse CODE leaves" }, { "line" => 240, "raw" => " - Support blessed scalars\n", "style" => "-", "text" => "Support blessed scalars" }, { "line" => 241, "raw" => " - Test warnings as well as errors\n", "style" => "-", "text" => "Test warnings as well as errors" }, { "line" => 242, "raw" => " - Use B::Deparse to serialize code\n", "style" => "-", "text" => "Use B::Deparse to serialize code" }, { "line" => 243, "raw" => " - Change 'implicit' to 'simple'\n\n", "style" => "-", "text" => "Change 'implicit' to 'simple'" } ], "line" => 226, "raw" => "0.26 Wed Jan 9 21:13:45 PST 2002\n", "raw_date" => "Wed Jan 9 21:13:45 PST 2002", "version" => "0.26" }, { "date" => "2001-12-19T02:34:38Z", "entries" => [ { "line" => 246, "raw" => " - Initial module shipped to CPAN\n\n", "style" => "-", "text" => "Initial module shipped to CPAN" } ], "line" => 245, "raw" => "0.25 Wed Dec 19 02:34:38 PST 2001\n", "raw_date" => "Wed Dec 19 02:34:38 PST 2001", "version" => "0.25" }, { "date" => "2001-10-15T19:18:49Z", "entries" => [ { "line" => 249, "raw" => " - original version; created by h2xs 1.19\n\n", "style" => "-", "text" => "original version; created by h2xs 1.19" } ], "line" => 248, "raw" => "0.01 Mon Oct 15 19:18:49 2001\n", "raw_date" => "Mon Oct 15 19:18:49 2001", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/Data-MPQ.changes000644 000000 000000 00000000521 14472651645 017513 0ustar00000000 000000 0.04 30 Oct 2011 - Add full covered tests for Data::MPQ - Change repository name in META 0.03 29 Oct 2011 - Fix some critical bugs - Rename module to Data::MPQ::* (https://rt.cpan.org/Public/Bug/Display.html?id=71938) - Add a bit of Pod documentation 0.02 26 Oct 2011 - Fix bugs at 32bit platform 0.01 23 Oct 2011 - First version CPAN-Changes-0.500005/corpus/dists/YAML-Tiny.parsed000644 000000 000000 00000115005 14472651645 017544 0ustar00000000 000000 { "preamble" => "Revision history for Perl extension YAML-Tiny", "raw_preamble" => "Revision history for Perl extension YAML-Tiny\n\n", "releases" => [ { "date" => "2013-08-20", "entries" => [ { "line" => 4, "raw" => " - really fixed metadata\n\n", "style" => "-", "text" => "really fixed metadata" } ], "line" => 3, "raw" => "1.53 2013-08-20\n", "raw_date" => "2013-08-20", "version" => "1.53" }, { "date" => "2013-08-20", "entries" => [ { "line" => 7, "raw" => " - updated repository metadata to reflect move to github\n\n", "style" => "-", "text" => "updated repository metadata to reflect move to github" } ], "line" => 6, "raw" => "1.52 2013-08-20\n", "raw_date" => "2013-08-20", "version" => "1.52" }, { "entries" => [ { "line" => 10, "raw" => "\t- The fix described in 1.48 was incorrect. Removing an additional\n\t if \$\@ to fix it properly.\n", "style" => "-", "text" => "The fix described in 1.48 was incorrect. Removing an additional if \$\@ to fix it properly." }, { "line" => 12, "raw" => "\t- Make the Scalar::Util version check resistant to bugs caused by\n\t development versions.\n\n", "style" => "-", "text" => "Make the Scalar::Util version check resistant to bugs caused by development versions." } ], "line" => 9, "note" => "Sun 11 Mar 2012", "raw" => "1.51 Sun 11 Mar 2012\n", "version" => "1.51" }, { "entries" => [ { "line" => 16, "raw" => "\t- Major bug fix, all code that writes arbitrary data should upgrade.\n", "style" => "-", "text" => "Major bug fix, all code that writes arbitrary data should upgrade." }, { "line" => 17, "raw" => "\t- Simple scalars with no whitespace but ending in a colon like ABC: were\n\t not being quoted, which results in the parser confusing it with a\n\t mapping key and crashing.\n\n", "style" => "-", "text" => "Simple scalars with no whitespace but ending in a colon like ABC: were not being quoted, which results in the parser confusing it with a mapping key and crashing." } ], "line" => 15, "note" => "Thu 23 Jun 2011", "raw" => "1.50 Thu 23 Jun 2011\n", "version" => "1.50" }, { "entries" => [ { "line" => 22, "raw" => "\t- No functional changes.\n", "style" => "-", "text" => "No functional changes." }, { "line" => 23, "raw" => "\t- Don't depend on the YAML modules in RELEASE_TESTING, as it can\n\t pollute the advisory META.yml.\n\n", "style" => "-", "text" => "Don't depend on the YAML modules in RELEASE_TESTING, as it can pollute the advisory META.yml." } ], "line" => 21, "note" => "Tue 8 Mar 2011", "raw" => "1.49 Tue 8 Mar 2011\n", "version" => "1.49" }, { "entries" => [ { "line" => 27, "raw" => "\t- Fix to the refaddr compatibility where Scalar::Util is installed\n\t but is older than 1.18.\n\n", "style" => "-", "text" => "Fix to the refaddr compatibility where Scalar::Util is installed but is older than 1.18." } ], "line" => 26, "note" => "Tue 1 Feb 2011", "raw" => "1.48 Tue 1 Feb 2011\n", "version" => "1.48" }, { "entries" => [ { "line" => 31, "raw" => "\t- No functional changes\n", "style" => "-", "text" => "No functional changes" }, { "line" => 32, "raw" => "\t- Only depend on the YAML implementations when we are release testing\n\n", "style" => "-", "text" => "Only depend on the YAML implementations when we are release testing" } ], "line" => 30, "note" => "Mon 31 Jan 2011", "raw" => "1.47 Mon 31 Jan 2011\n", "version" => "1.47" }, { "entries" => [ { "line" => 35, "raw" => "\t- No functional changes\n", "style" => "-", "text" => "No functional changes" }, { "line" => 36, "raw" => "\t- Moving to a production release now CPAN Testers is green again\n\n", "style" => "-", "text" => "Moving to a production release now CPAN Testers is green again" } ], "line" => 34, "note" => "Thu 16 Dec 2010", "raw" => "1.46 Thu 16 Dec 2010\n", "version" => "1.46" }, { "entries" => [ { "line" => 39, "raw" => "\t- Adding experimental support for exception->errstr conversion\n", "style" => "-", "text" => "Adding experimental support for exception->errstr conversion" }, { "line" => 40, "raw" => "\t- Updating test suite yaml_error to not expect exceptions\n\n", "style" => "-", "text" => "Updating test suite yaml_error to not expect exceptions" } ], "line" => 38, "note" => "Tue 7 Dec 2010", "raw" => "1.45_02 Tue 7 Dec 2010\n", "version" => "1.45_02" }, { "entries" => [ { "line" => 43, "raw" => "\t- Added support for trailing line comments (INGY)\n", "style" => "-", "text" => "Added support for trailing line comments (INGY)" }, { "line" => 44, "raw" => "\t- Added checks for some characters that are illegal or reserved\n\t in plain scalars (INGY)\n", "style" => "-", "text" => "Added checks for some characters that are illegal or reserved in plain scalars (INGY)" }, { "line" => 46, "raw" => "\t- Minor cleaning up of some out of date POD (ADAMK)\n", "style" => "-", "text" => "Minor cleaning up of some out of date POD (ADAMK)" }, { "line" => 47, "raw" => "\t- Updated AUTOMATED_TESTING dependencies to new versions (ADAMK)\n\n", "style" => "-", "text" => "Updated AUTOMATED_TESTING dependencies to new versions (ADAMK)" } ], "line" => 42, "note" => "Tue 7 Dec 2010", "raw" => "1.45_01 Tue 7 Dec 2010\n", "version" => "1.45_01" }, { "entries" => [ { "line" => 50, "raw" => "\t- No functional changes, upgrading is not required\n", "style" => "-", "text" => "No functional changes, upgrading is not required" }, { "line" => 51, "raw" => "\t- Minor tweaks to Makefile.PL\n", "style" => "-", "text" => "Minor tweaks to Makefile.PL" }, { "line" => 52, "raw" => "\t- Minor cleanup around the refaddr emulation code\n\n", "style" => "-", "text" => "Minor cleanup around the refaddr emulation code" } ], "line" => 49, "note" => "Sun 8 Aug 2010", "raw" => "1.44 Sun 8 Aug 2010\n", "version" => "1.44" }, { "entries" => [ { "line" => 55, "raw" => "\t- No functional changes, upgrading is not required\n", "style" => "-", "text" => "No functional changes, upgrading is not required" }, { "line" => 56, "raw" => "\t- Don't import Carp 'croak' any more, saving a few K\n\n", "style" => "-", "text" => "Don't import Carp 'croak' any more, saving a few K" } ], "line" => 54, "note" => "Sat 10 Jul 2010", "raw" => "1.43 Sat 10 Jul 2010\n", "version" => "1.43" }, { "entries" => [ { "line" => 59, "raw" => "\t- No functional changes, upgrading is not required\n", "style" => "-", "text" => "No functional changes, upgrading is not required" }, { "line" => 60, "raw" => "\t- Clarified documation to explain that YAML::Tiny escapes \"bool\"\n\t keywords when it writes them as strings so that YAML parsers in\n\t other languages won't get confused, but this does not mean that\n\t YAML::Tiny actually supports boolean types itself.\n", "style" => "-", "text" => "Clarified documation to explain that YAML::Tiny escapes \"bool\" keywords when it writes them as strings so that YAML parsers in other languages won't get confused, but this does not mean that YAML::Tiny actually supports boolean types itself." }, { "line" => 64, "raw" => "\t- Added an extra test case for boolean keyword escaping.\n", "style" => "-", "text" => "Added an extra test case for boolean keyword escaping." }, { "line" => 65, "raw" => "\t- YAML::Perl comparison tests were loading the file back in with\n\t YAML.pm by mistake. Corrected this and added an additional case\n\t that YAML::Perl doesn't support that I wasn't catching.\n", "style" => "-", "text" => "YAML::Perl comparison tests were loading the file back in with YAML.pm by mistake. Corrected this and added an additional case that YAML::Perl doesn't support that I wasn't catching." }, { "line" => 68, "raw" => "\t- Author tests updated and moved into xt/\n", "style" => "-", "text" => "Author tests updated and moved into xt/" }, { "line" => 69, "raw" => "\t- Updated the versions of the other YAML parsers we test ourselves\n\t against to the most recent versions of each.\n\n", "style" => "-", "text" => "Updated the versions of the other YAML parsers we test ourselves against to the most recent versions of each." } ], "line" => 58, "note" => "Fri 25 Jun 2010", "raw" => "1.42 Fri 25 Jun 2010\n", "version" => "1.42" }, { "entries" => [ { "line" => 73, "raw" => "\t- Fixes a performance bug reported by Apocalypse.\n\t Single line double-quoted strings longer than 32,000ish characters\n\t resulted in the regular expression engine crashing due to\n\t excessive recursion. Changed to a different regex that will most\n\t likely only crash after 32,000 ESCAPED characters. If I could use\n\t negative look-behind assertions (I can't because I need 5.004)\n\t this whole issue would be MUCH simpler to fix.\n\n", "style" => "-", "text" => "Fixes a performance bug reported by Apocalypse. Single line double-quoted strings longer than 32,000ish characters resulted in the regular expression engine crashing due to excessive recursion. Changed to a different regex that will most likely only crash after 32,000 ESCAPED characters. If I could use negative look-behind assertions (I can't because I need 5.004) this whole issue would be MUCH simpler to fix." } ], "line" => 72, "note" => "Fri 11 Dec 2009", "raw" => "1.41 Fri 11 Dec 2009\n", "version" => "1.41" }, { "entries" => [ { "line" => 82, "raw" => "\t- Dear Ruby Community.\n\t Thank you so much for your bug report to the \"Ruby Talk\" mailing list\n\t regarding the lack of true/false support in Perl YAML modules.\n\t http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/169943\n\t This flaw has now been resolved, around 2 hours after we\n\t were made aware of it. Next time, we recommend you report these bugs\n\t to the people who can actually fix your problem.\n\n", "style" => "-", "text" => "Dear Ruby Community. Thank you so much for your bug report to the \"Ruby Talk\" mailing list regarding the lack of true/false support in Perl YAML modules. http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/169943 This flaw has now been resolved, around 2 hours after we were made aware of it. Next time, we recommend you report these bugs to the people who can actually fix your problem." } ], "line" => 81, "note" => "Fri 31 Jul 2009", "raw" => "1.40 Fri 31 Jul 2009\n", "version" => "1.40" }, { "entries" => [ { "line" => 91, "raw" => "\t- Even though utf8 starts at 5.7+ there's no is_utf till\n\t 5.8.1 so skip in the tests if needed (ADAMK)\n\n", "style" => "-", "text" => "Even though utf8 starts at 5.7+ there's no is_utf till 5.8.1 so skip in the tests if needed (ADAMK)" } ], "line" => 90, "note" => "Thu 21 May 2009", "raw" => "1.39 Thu 21 May 2009\n", "version" => "1.39" }, { "entries" => [ { "line" => 95, "raw" => "\t- Moving the test suite style closer to Parse::CPAN::Meta\n", "style" => "-", "text" => "Moving the test suite style closer to Parse::CPAN::Meta" }, { "line" => 96, "raw" => "\t- Changed exceptions closer to Parse::CPAN::Meta\n", "style" => "-", "text" => "Changed exceptions closer to Parse::CPAN::Meta" }, { "line" => 97, "raw" => "\t- Fixed Changes file date for 1.37 :)\n\n", "style" => "-", "text" => "Fixed Changes file date for 1.37 :)" } ], "line" => 94, "note" => "Sat 16 May 2009", "raw" => "1.38 Sat 16 May 2009\n", "version" => "1.38" }, { "entries" => [ { "line" => 100, "raw" => "\t- Call \$self->_error instead of \$class->_error when we can\n", "style" => "-", "text" => "Call \$self->_error instead of \$class->_error when we can" }, { "line" => 101, "raw" => "\t- Refactoring away some of the code other people have been\n\t contributing lately that most certainly NOT ::Tiny style.\n", "style" => "-", "text" => "Refactoring away some of the code other people have been contributing lately that most certainly NOT ::Tiny style." }, { "line" => 103, "raw" => "\t- Avoid the need to do '' escaping by moving it to \"'\"\n", "style" => "-", "text" => "Avoid the need to do '' escaping by moving it to \"'\"" }, { "line" => 104, "raw" => "\t- Added comparative testing with YAML::Perl\n\n", "style" => "-", "text" => "Added comparative testing with YAML::Perl" } ], "line" => 99, "note" => "Sat 16 May 2009", "raw" => "1.37 Sat 16 May 2009\n", "version" => "1.37" }, { "entries" => [ { "line" => 107, "raw" => "\t- Fixing missing feature reported by H.Merijn Brand\n\n", "style" => "-", "text" => "Fixing missing feature reported by H.Merijn Brand" } ], "line" => 106, "note" => "Wed 7 Jan 2009", "raw" => "1.36 Wed 7 Jan 2009\n", "version" => "1.36" }, { "entries" => [ { "line" => 110, "raw" => "\t- Production release for changes in 1.34_01\n", "style" => "-", "text" => "Production release for changes in 1.34_01" }, { "line" => 111, "raw" => "\t- No other changes\n\n", "style" => "-", "text" => "No other changes" } ], "line" => 109, "note" => "Wed 17 Dec 2008", "raw" => "1.35 Wed 17 Dec 2008\n", "version" => "1.35" }, { "entries" => [ { "line" => 114, "raw" => "\t- Improving sub-classability by passing the indent level through\n\t to the ->_write_scalar method.\n\n", "style" => "-", "text" => "Improving sub-classability by passing the indent level through to the ->_write_scalar method." } ], "line" => 113, "note" => "Wed 19 Nov 2008", "raw" => "1.34_01 Wed 19 Nov 2008\n", "version" => "1.34_01" }, { "entries" => [ { "line" => 118, "raw" => "\t- Export Load and Dump functions by default.\n\n", "style" => "-", "text" => "Export Load and Dump functions by default." } ], "line" => 117, "note" => "Thu 24 Jul 2008", "raw" => "1.33 Thu 24 Jul 2008\n", "version" => "1.33" }, { "entries" => [ { "line" => 121, "raw" => "\t- Adding a test to check for correct exceptions\n", "style" => "-", "text" => "Adding a test to check for correct exceptions" }, { "line" => 122, "raw" => "\t- ONLY do comparative tests when the modules to compare to are current.\n\t (Prevents false failures in some cases)\n\n", "style" => "-", "text" => "ONLY do comparative tests when the modules to compare to are current. (Prevents false failures in some cases)" } ], "line" => 120, "note" => "Wed 14 May 2008", "raw" => "1.32 Wed 14 May 2008\n", "version" => "1.32" }, { "entries" => [ { "line" => 126, "raw" => "\t- Emergency bugfix release\n\n", "style" => "-", "text" => "Emergency bugfix release" } ], "line" => 125, "note" => "Thu 8 May 2008", "raw" => "1.31 Thu 8 May 2008\n", "version" => "1.31" }, { "entries" => [ { "line" => 129, "raw" => "\t- Better error reporting of unsupported features\n", "style" => "-", "text" => "Better error reporting of unsupported features" }, { "line" => 130, "raw" => "\t- Heavily bump automated testing deps to remove false errors\n\n", "style" => "-", "text" => "Heavily bump automated testing deps to remove false errors" } ], "line" => 128, "note" => "Sun 4 May 2008", "raw" => "1.30 Sun 4 May 2008\n", "version" => "1.30" }, { "entries" => [ { "line" => 133, "raw" => "\t- CPAN Testers passes ok, moving to production version\n\n", "style" => "-", "text" => "CPAN Testers passes ok, moving to production version" } ], "line" => 132, "note" => "Sat 12 Apr 2008", "raw" => "1.29 Sat 12 Apr 2008\n", "version" => "1.29" }, { "entries" => [ { "line" => 136, "raw" => "\t- Adding support for document terminators\n\t (To support YAML embedded in TAP streams)\n\n", "style" => "-", "text" => "Adding support for document terminators (To support YAML embedded in TAP streams)" } ], "line" => 135, "note" => "Sat 5 Apr 2008", "raw" => "1.28_01 Sat 5 Apr 2008\n", "version" => "1.28_01" }, { "entries" => [ { "line" => 140, "raw" => "\t- Skip 04_scalar.t if no YAML.pm\n", "style" => "-", "text" => "Skip 04_scalar.t if no YAML.pm" }, { "line" => 141, "raw" => "\t- Implement YAML compatibility + tests for LoadFile\n", "style" => "-", "text" => "Implement YAML compatibility + tests for LoadFile" }, { "line" => 142, "raw" => "\t- Remove the LICENSE key from Makefile.PL\n\t (Which failed on some CPAN Testers setups)\n\n", "style" => "-", "text" => "Remove the LICENSE key from Makefile.PL (Which failed on some CPAN Testers setups)" } ], "line" => 139, "note" => "Mon 31 Mar 2008", "raw" => "1.27 Mon 31 Mar 2008\n", "version" => "1.27" }, { "entries" => [ { "line" => 146, "raw" => "\t- Added extra test cases to validate RT bugs that were fixed\n\t previous, but not closed at the time.\n", "style" => "-", "text" => "Added extra test cases to validate RT bugs that were fixed previous, but not closed at the time." }, { "line" => 148, "raw" => "\t- Always quote when serialising anything that starts with a non-word\n", "style" => "-", "text" => "Always quote when serialising anything that starts with a non-word" }, { "line" => 149, "raw" => "\t- YAML::Tiny::Load is now fully compatible with YAML.pm in scalar\n\t context (returns the LAST parsed document).\n\n", "style" => "-", "text" => "YAML::Tiny::Load is now fully compatible with YAML.pm in scalar context (returns the LAST parsed document)." } ], "line" => 145, "note" => "Thu 20 Mar 2008", "raw" => "1.26 Thu 20 Mar 2008\n", "version" => "1.26" }, { "entries" => [ { "line" => 153, "raw" => "\t- Wrote the specification section\n\n", "style" => "-", "text" => "Wrote the specification section" } ], "line" => 152, "note" => "Mon 14 Jan 2008", "raw" => "1.25 Mon 14 Jan 2008\n", "version" => "1.25" }, { "entries" => [ { "line" => 156, "raw" => "\t- Adding additional test cases\n", "style" => "-", "text" => "Adding additional test cases" }, { "line" => 157, "raw" => "\t- Adding support for YAML header for META.yml\n", "style" => "-", "text" => "Adding support for YAML header for META.yml" }, { "line" => 158, "raw" => "\t- Adding support for YAML header for YAML 1.0\n", "style" => "-", "text" => "Adding support for YAML header for YAML 1.0" }, { "line" => 159, "raw" => "\t- Adding support for YAML header for YAML 1.1\n\n", "style" => "-", "text" => "Adding support for YAML header for YAML 1.1" } ], "line" => 155, "note" => "Fri 11 Jan 2008", "raw" => "1.24_01 Fri 11 Jan 2008\n", "version" => "1.24_01" }, { "entries" => [ { "line" => 162, "raw" => "\t- Identical to 1.22_01\n", "style" => "-", "text" => "Identical to 1.22_01" }, { "line" => 163, "raw" => "\t- CPAN Testers results positive, pushing to production version\n\n", "style" => "-", "text" => "CPAN Testers results positive, pushing to production version" } ], "line" => 161, "note" => "Thu 10 Jan 2008", "raw" => "1.23 Thu 10 Jan 2008\n", "version" => "1.23" }, { "entries" => [ { "line" => 166, "raw" => "\t- Correcting handling of single quote escaping\n", "style" => "-", "text" => "Correcting handling of single quote escaping" }, { "line" => 167, "raw" => "\t- Adding protection for infinite loops caused by circular\n\t references during serializing.\n", "style" => "-", "text" => "Adding protection for infinite loops caused by circular references during serializing." }, { "line" => 169, "raw" => "\t- Confirmed support for toolbar.yml sample\n\n", "style" => "-", "text" => "Confirmed support for toolbar.yml sample" } ], "line" => 165, "note" => "Wed 9 Jan 2008", "raw" => "1.22_01 Wed 9 Jan 2008\n", "version" => "1.22_01" }, { "entries" => [ { "line" => 172, "raw" => "\t- Fixing support for unprintable characters\n\n", "style" => "-", "text" => "Fixing support for unprintable characters" } ], "line" => 171, "note" => "Thu 6 Dec 2007", "raw" => "1.21 Thu 6 Dec 2007\n", "version" => "1.21" }, { "entries" => [ { "line" => 175, "raw" => "\t- Correcting class name in \@EXPORT_OK declaration\n\t (Demetrios Biskinis)\n\n", "style" => "-", "text" => "Correcting class name in \@EXPORT_OK declaration (Demetrios Biskinis)" } ], "line" => 174, "note" => "Mon 19 Nov 2007", "raw" => "1.20 Mon 19 Nov 2007\n", "version" => "1.20" }, { "entries" => [ { "line" => 179, "raw" => "\t- Removing the invalid perl dep\n\n", "style" => "-", "text" => "Removing the invalid perl dep" } ], "line" => 178, "note" => "Fri 16 Nov 2007", "raw" => "1.19 Fri 16 Nov 2007\n", "version" => "1.19" }, { "entries" => [ { "line" => 182, "raw" => "\t- Adding a new test file\n\n", "style" => "-", "text" => "Adding a new test file" } ], "line" => 181, "note" => "Mon 5 Nov 2007", "raw" => "1.18 Mon 5 Nov 2007\n", "version" => "1.18" }, { "entries" => [ { "line" => 185, "raw" => "\t- Updating from Module::Install to the tinier ExtUtils::MakeMaker\n\n", "style" => "-", "text" => "Updating from Module::Install to the tinier ExtUtils::MakeMaker" } ], "line" => 184, "note" => "Thu 1 Nov 2007", "raw" => "1.17 Thu 1 Nov 2007\n", "version" => "1.17" }, { "entries" => [ { "line" => 188, "raw" => "\t- Updating to newer AUTOMATED_TESTING tests\n\n", "style" => "-", "text" => "Updating to newer AUTOMATED_TESTING tests" } ], "line" => 187, "note" => "Mon 22 Oct 2007", "raw" => "1.16 Mon 22 Oct 2007\n", "version" => "1.16" }, { "entries" => [ { "line" => 191, "raw" => "\t- Incremental release to include an updated version of 99_author.t\n", "style" => "-", "text" => "Incremental release to include an updated version of 99_author.t" }, { "line" => 192, "raw" => "\t- Replace a few CODE INCOMPLETE errors with real errors\n\t (those parts of the module are now complete)\n\n", "style" => "-", "text" => "Replace a few CODE INCOMPLETE errors with real errors (those parts of the module are now complete)" } ], "line" => 190, "note" => "Sat 25 Aug 2007", "raw" => "1.15 Sat 25 Aug 2007\n", "version" => "1.15" }, { "entries" => [ { "line" => 196, "raw" => "\t- Adding support for empty reference documents\n\n", "style" => "-", "text" => "Adding support for empty reference documents" } ], "line" => 195, "note" => "Thu 16 Aug 2007", "raw" => "1.14 Thu 16 Aug 2007\n", "version" => "1.14" }, { "entries" => [ { "line" => 199, "raw" => "\t- Adding a test case for support of multi-byte characters\n\n", "style" => "-", "text" => "Adding a test case for support of multi-byte characters" } ], "line" => 198, "note" => "Mon 9 Jul 2007", "raw" => "1.13 Mon 9 Jul 2007\n", "version" => "1.13" }, { "entries" => [ { "line" => 202, "raw" => "\t- Adding support for open hash/array at EOF\n\n", "style" => "-", "text" => "Adding support for open hash/array at EOF" } ], "line" => 201, "note" => "Tue 5 Jun 2007", "raw" => "1.12 Tue 5 Jun 2007\n", "version" => "1.12" }, { "entries" => [ { "line" => 205, "raw" => "\t- Forgot to string trailing whitespace in a few cases\n", "style" => "-", "text" => "Forgot to string trailing whitespace in a few cases" }, { "line" => 206, "raw" => "\t- 'hashkey: This was mistaken as a hash entry, not a string'\n", "style" => "-", "text" => "'hashkey: This was mistaken as a hash entry, not a string'" }, { "line" => 207, "raw" => "\t- Adding explicit tests from #yaml for single quote escaping\n\n", "style" => "-", "text" => "Adding explicit tests from #yaml for single quote escaping" } ], "line" => 204, "note" => "Tue 5 Jun 2007", "raw" => "1.11 Tue 5 Jun 2007\n", "version" => "1.11" }, { "entries" => [ { "line" => 210, "raw" => " - Adding support for null hash/arrays\n\n", "style" => "-", "text" => "Adding support for null hash/arrays" } ], "line" => 209, "note" => "Tue 5 Jun 2007", "raw" => "1.10 Tue 5 Jun 2007\n", "version" => "1.10" }, { "entries" => [ { "line" => 213, "raw" => "\t- Fixing a bug in the trivial scalar case\n\n", "style" => "-", "text" => "Fixing a bug in the trivial scalar case" } ], "line" => 212, "note" => "Mon 21 May 2007", "raw" => "1.09 Mon 21 May 2007\n", "version" => "1.09" }, { "entries" => [ { "line" => 216, "raw" => " - Adding support for |- trimming multiline scalars\n\n", "style" => "-", "text" => "Adding support for |- trimming multiline scalars" } ], "line" => 215, "note" => "Wed 16 May 2007", "raw" => "1.08 Wed 16 May 2007\n", "version" => "1.08" }, { "entries" => [ { "line" => 219, "raw" => "\t- Adding support for whitespace after document headers\n\n", "style" => "-", "text" => "Adding support for whitespace after document headers" } ], "line" => 218, "note" => "Tue 15 May 2007", "raw" => "1.07 Tue 15 May 2007\n", "version" => "1.07" }, { "entries" => [ { "line" => 222, "raw" => "\t- Bug fix to support an additional variant of null hashes\n\n", "style" => "-", "text" => "Bug fix to support an additional variant of null hashes" } ], "line" => 221, "note" => "Mon 14 May 2007", "raw" => "1.06 Mon 14 May 2007\n", "version" => "1.06" }, { "entries" => [ { "line" => 225, "raw" => "\t- Bug fix to allow support for keys with spaces\n", "style" => "-", "text" => "Bug fix to allow support for keys with spaces" }, { "line" => 226, "raw" => "\t- Bug fix to allow empty comments\n\n", "style" => "-", "text" => "Bug fix to allow empty comments" } ], "line" => 224, "note" => "Wed 2 May 2007", "raw" => "1.05 Wed 2 May 2007\n", "version" => "1.05" }, { "entries" => [ { "line" => 229, "raw" => "\t- Adding support for LoadFile, DumpFile, freeze and thaw\n\n", "style" => "-", "text" => "Adding support for LoadFile, DumpFile, freeze and thaw" } ], "line" => 228, "note" => "Wed 21 Feb 2007", "raw" => "1.04 Wed 21 Feb 2007\n", "version" => "1.04" }, { "entries" => [ { "line" => 232, "raw" => "\t- Removing the forward-looking part of the preamble\n\n", "style" => "-", "text" => "Removing the forward-looking part of the preamble" } ], "line" => 231, "note" => "Sun 14 Jan 2007", "raw" => "1.03 Sun 14 Jan 2007\n", "version" => "1.03" }, { "entries" => [ { "line" => 235, "raw" => "\t- Fixing exporting\n\n", "style" => "-", "text" => "Fixing exporting" } ], "line" => 234, "note" => "Sun 14 Jan 2007", "raw" => "1.02 Sun 14 Jan 2007\n", "version" => "1.02" }, { "entries" => [ { "line" => 238, "raw" => "\t- Removed the ugly bold warning\n\n", "style" => "-", "text" => "Removed the ugly bold warning" } ], "line" => 237, "note" => "Sun 14 Jan 2007", "raw" => "1.01 Sun 14 Jan 2007\n", "version" => "1.01" }, { "entries" => [ { "line" => 241, "raw" => "\t- What the hell, I'm as close as is needed I think\n\n", "style" => "-", "text" => "What the hell, I'm as close as is needed I think" } ], "line" => 240, "note" => "Sun 14 Jan 2007", "raw" => "1.00 Sun 14 Jan 2007\n", "version" => "1.00" }, { "entries" => [ { "line" => 244, "raw" => "\t- Adding support for inline multi-lines\n\n", "style" => "-", "text" => "Adding support for inline multi-lines" } ], "line" => 243, "note" => "Sat 13 Jan 2007", "raw" => "0.90 Sat 13 Jan 2007\n", "version" => "0.90" }, { "entries" => [ { "line" => 247, "raw" => "\t- Fixed bug in regex that detects unheadered ARRAY|HASH\n\n", "style" => "-", "text" => "Fixed bug in regex that detects unheadered ARRAY|HASH" } ], "line" => 246, "note" => "Mon 25 Sep 2006", "raw" => "0.11 Mon 25 Sep 2006\n", "version" => "0.11" }, { "entries" => [ { "line" => 250, "raw" => "\t- Added double-quote support, making YAML::Tiny a lot more usable\n", "style" => "-", "text" => "Added double-quote support, making YAML::Tiny a lot more usable" }, { "line" => 251, "raw" => "\t- Added Load and Dump for YAML.pm compatibility\n", "style" => "-", "text" => "Added Load and Dump for YAML.pm compatibility" }, { "line" => 252, "raw" => "\t- Added tests for verifying compatibility with YAML::Syck\n\n", "style" => "-", "text" => "Added tests for verifying compatibility with YAML::Syck" } ], "line" => 249, "note" => "Thu 24 Aug 2006", "raw" => "0.10 Thu 24 Aug 2006\n", "version" => "0.10" }, { "entries" => [ { "line" => 255, "raw" => "\t- Added more tests\n\n", "style" => "-", "text" => "Added more tests" } ], "line" => 254, "note" => "Sun 9 Jul 2006", "raw" => "0.06 Sun 9 Jul 2006\n", "version" => "0.06" }, { "entries" => [ { "line" => 258, "raw" => "\t- Added support for nested inline hashes (parse only)\n", "style" => "-", "text" => "Added support for nested inline hashes (parse only)" }, { "line" => 259, "raw" => "\t- Added support for naked undef array and hash entries\n", "style" => "-", "text" => "Added support for naked undef array and hash entries" }, { "line" => 260, "raw" => "\t- Can now handle sample Plagger configs from Miyagawa-san's talk\n", "style" => "-", "text" => "Can now handle sample Plagger configs from Miyagawa-san's talk" }, { "line" => 261, "raw" => "\t- Can now handle vanilla.yml from Perl::Dist::Vanilla\n\n", "style" => "-", "text" => "Can now handle vanilla.yml from Perl::Dist::Vanilla" } ], "line" => 257, "note" => "Sat 8 Jul 2006", "raw" => "0.05 Sat 8 Jul 2006\n", "version" => "0.05" }, { "entries" => [ { "line" => 264, "raw" => "\t- Added support for implicit document start for array/hash types\n", "style" => "-", "text" => "Added support for implicit document start for array/hash types" }, { "line" => 265, "raw" => "\t- Added support for colons in hash keys\n", "style" => "-", "text" => "Added support for colons in hash keys" }, { "line" => 266, "raw" => "\t- Added support for simple single quotes\n", "style" => "-", "text" => "Added support for simple single quotes" }, { "line" => 267, "raw" => "\t- Can now handle our own META.yml file\n\n", "style" => "-", "text" => "Can now handle our own META.yml file" } ], "line" => 263, "note" => "Sat 8 Jul 2006", "raw" => "0.04 Sat 8 Jul 2006\n", "version" => "0.04" }, { "entries" => [ { "line" => 270, "raw" => "\t- Got all of the trivial test cases to pass\n", "style" => "-", "text" => "Got all of the trivial test cases to pass" }, { "line" => 271, "raw" => "\t- Good enough for an initial usable release, but still expected to fail a lot\n\n", "style" => "-", "text" => "Good enough for an initial usable release, but still expected to fail a lot" } ], "line" => 269, "note" => "Sat 8 Jul 2006", "raw" => "0.03 Sat 8 Jul 2006\n", "version" => "0.03" }, { "entries" => [ { "line" => 274, "raw" => "\t- Added support for a single root-level hash\n", "style" => "-", "text" => "Added support for a single root-level hash" }, { "line" => 275, "raw" => "\t- Correcting POD bugs\n\n", "style" => "-", "text" => "Correcting POD bugs" } ], "line" => 273, "note" => "Thu 26 Apr 2006", "raw" => "0.02 Thu 26 Apr 2006\n", "version" => "0.02" }, { "entries" => [ { "line" => 278, "raw" => "\t- Initial version\n", "style" => "-", "text" => "Initial version" }, { "line" => 279, "raw" => "\t- Handles only document headers and non-wrapping scalar documents\n", "style" => "-", "text" => "Handles only document headers and non-wrapping scalar documents" } ], "line" => 277, "note" => "Wed 26 Apr 2006", "raw" => "0.01 Wed 26 Apr 2006\n", "version" => "0.01" } ] } CPAN-Changes-0.500005/corpus/dists/Module-Rename.changes000644 000000 000000 00000001102 14472651645 020635 0ustar00000000 000000 ###################################################################### Revision history for Perl extension Module::Rename 0.04 (2013/07/27) (ms) [rt.cpan.org #87172] Applied changes by Jim Cochrane to add a -g switch, which uses "git mv" instead of mv. Added various fixes and test cases. 0.03 (2005/04/09) (ms) Added sandbox/eg to MANIFEST to fix installation problem 0.02 (2005/03/28) (ms) Replace "Foo/Bar" in files just like "Foo::Bar". (ms) Replace pm files outside the regular dir structure. 0.01 (2005/03/27) (ms) Where it all began. CPAN-Changes-0.500005/corpus/dists/GraphViz2.changes000644 000000 000000 00000061771 14472651645 020041 0ustar00000000 000000 Revision history for Perl extension GraphViz2. 2.27 Tue Feb 11 13:40:00 2014 - Stop using bare word file handles (again). - Change sub BUILD() in all sub-classes to check whether or not a 'graph' parameter was supplied to new(). If so, use it rather than instantiating a new GraphViz2 object. This fixes a problem with those script/*.pl demos which use this feature. - Fiddle t/sample.recdescent.1.dat, since the original test data happened to look like HTML, and that stopped GraphViz2.stringify_attributes() adding double-quotes to protect the label. That in turn caused dot to issue a syntax error when the generated DOT data was read. 2.26 Thu Jan 30 12:44:00 2014 - Stop using bare word file handles. - Remove these lines from GraphViz2.pm (because utf8 is global and the others are not needed): use utf8; use open qw(:std :utf8); # Undeclared streams in UTF-8. use charnames qw(:full :short); # Unneeded in v5.16. 2.25 Mon Jan 6 17:06:00 2014 - Remove debug printing of the output of 'dot -T?' (a list of valid output formats). - Fix typos in output names in rank.sub.graph.1.pl and rank.sub.graph.2.pl. rank.sub.graph.1.pl was outputting to html/rank.sub.graph.2.svg and visa versa. 2.24 Mon Dec 2 09:30:00 2013 - Rewrite scripts/extract.output.formats.pl, which used to download a page of documentation from graphviz.org, and parse it to build a list of output formats. The problems are: (1) Forgetting to run the script; (2) the on-line docs being out-of-date. So, as of this version, I now parse the output of 'dot -T?', which will not just be more accurate, but will also include the formats supported by locally-installed plugins. It's a win-win result. - Put that new logic into GraphViz2's load_valid_attributes() method. - Expand the FAQ to discuss the above operation. 2.23 Sun Dec 1 09:42:00 2013 - Update lists of valid attibutes by running scripts/extract.*.pl, and incorporating the changes into the source code of GraphViz2.pm (at the end). I use Data::Section::Simple to read this data. These lists now correspond to Graphviz V 2.34. Changes: o Remove 'aspect' as an attribute 'graph'. o Add 'inputscale' as an attribute of 'graph'. o Add 'overlap_shrink' as an attribute of 'graph'. o Add 'star' as an attribute of 'node shape'. o Add 'underline' as an attribute of 'node shape'. o Add 'xdot1.2' as an attribute of 'output format'. o Add 'xdot1.4' as an attribute of 'output format'. See RT#91073. Many thanx for Kent Fredric for bringing this to my attention. - Add t/version.t, which uses Test::Version. - Update pre-reqs. - Add use strict/warnings to Build.PL and Makefile.PL. 2.22 Fri Sep 6 16:03:00 2013 - Fix handling of graph attributes which are for clusters but not for subgraphs. See scripts/sub.graph.frames.pl for sample code. See the demo page for the output of that script. See the new FAQ item 'How do I specify attributes for clusters?' for details. Many thanx to Bill Hollingsworth (private email) for prompting me to investigate this bug. - Document method default_subgraph(). 2.21 Fri Sep 6 13:00:00 2013 - Replace Path::Tiny with File::Spec, because the former's list of dependencies is soooo long :-(. Changed files: GraphViz2::Config, scripts/copy.config.pl, scripts/find.config.pl, Build.PL and Makefile.PL. See: RT#88435 (for Tree::DAG_Node) for an explanation. 2.20 Tue Aug 27 16:22:00 2013 - In sub stringify_attributes(), remove leading and trailing whitespace from HTML tables like so: s/^\s+(<)/$1/ and s/(>)\s+$/$1/. This is formatting sugar, but it also affects the next regexp. - In the same sub, change a regexp from /^<.+>$/ to /^<.+>$/s. Note trailing 's'. This allows '.' to match newlines within HTML lables. This fixes a bug (not yet reported :-). - Both these changes allow HTML labels to be more nicely formatted in the source code of the module which uses GraphViz2 (such as MarpaX::Grammar::GraphViz2). - Split scripts/html.labels.pl into scripts/html.labels.1.pl and scripts/html.labels.2.pl. These demonstrate the 2 types of HTML labels. - Document sub escape_some_chars(). - Add an FAQ item on using whitespace in HTML labels. 2.19 Tue Aug 20 10:44:00 2013 - Remove the global graph attribute 'record_orientation', as forewarned in V 2.10, in June. - Fix handling of some global attributes. Previously, some options mentioned in the call to new(...) were not set by that call. The options affected were: 'driver', 'format', 'strict', 'subgraph' and 'timeout'. The options 'driver', 'format', and 'timeout' could be set in the call to run(...), but in new(...), the value of 'format' was ignored, and the value of 'subgraph' generated an error referring to '... not a valid attribute ...'. Thanx to Larry Knibb for reporting this problem, for 'driver'. - Remove reference to GraphViz2::Parse::Marpa from scripts/pod2html.sh. See comment below for V 2.15. This module has been replaced by MarpaX::Grammar::GraphViz2, which depends on MarpaX::Grammar::Parser. 2.18 Wed Aug 7 09:22:00 2013 - Remove print from sub BUILD() left over from debugging. - Update Build.PL and Makefile.PL to include bugtracker and license items. Also replace the Perl version checking code with a simple 'require 5.014.002; # For the utf8 stuff.'. 2.17 Sat Aug 3 08:58:00 2013 - Fix handling of record shapes. E.g. label => [] ignored global default shape 'Mrecord'. Thanx to Kent Fredric for this report. See RT#87560. - Fix handling of the graph's default name. This is used in 'digraph $name {...}'. Previously, names like '' or '0' were ignored, and such values defaulted to 'Perl'. - Add scripts/record.4.pl to demonstrate setting record-style node attributes. - Fix names of html/utf8*.svg and png files, as output by scripts/utf8*.pl. - Fix scripts/generate.sh.pl which generates scripts/generate.(png,svg).sh. 2.16 Fri Aug 2 10:54:00 2013 - Patch GraphViz2.pm to handle both SVG and (eg) PNG output. I failed to test this properly. Thanx to Kent Fredric for this report. See RT#87525. - Patch scripts/Heawood.pl to use font ArialMT instead of Arial when running under Darwin (OSX). Grrrr. Thanx to David Jack Olrik for this report. See RT#87478. - Remove special case code in scripts/jointed.edges.pl. It used png:gd instead of png, to work round an unknown Graphviz problem. Let's hope /your/ version of Graphviz is up-to-date. - Patch scripts/circo.pl: Add comment searched for by t/test.t, which is used to label html/index.html. - Add scripts/generate.sh.pl to generate scripts/generate.png.sh and scripts/generate.svg.sh. This adds 2 tests, and 2 images to the demo page, and fixes various typos in those *.sh files. - Switch from Hash::FieldHash to Moo. - Add config/.htgraphviz2 to help the author generate the demo. - Add GraphViz2::Config.pm, and split GraphViz2::Filer off from GraphViz2::Utils, which also helps generate the demo. - Switch from Hash::FieldHash to Moo. - Use File::Slurp except where I need Perl6::Slurp's utf8 option. I needed File::Slurp's write_file for the new script scripts/generate.sh.pl, so I decided to use it in most places. - Rename scripts/utf8.pl to scripts/utf8.1.pl. - Rename scripts/utf8.test.pl to scripts/utf8.2.pl. - Rename html/utf8.svg to html/utf8.1.svg. - Rename html/utf8.test.svg to html/utf8.2.svg. 2.15 Mon Jul 29 14:42:00 2013 - Remove GraphViz2::Parse::Marpa, until it's re-written to use Jeffrey Kegler's code to dump a grammar. - Add scripts/circo.pl and it's output html/circo.svg. - For non-HTML labels, escape double-quotes if they are not already escaped. This allows pathological labels such as '\"'. - For all labels, escape '[' and ']' if they are not already escaped. The rationale for this is shrouded in the mists of time :-(. - Put author tests in xt/author. - Add Algorithm::Dependency::Source::HoA V 1.110 to the pre-reqs to keep my home-grown Build.PL and Makefile.PL checker a bit quieter. - Add Config V 0, channames V 0 and open V 0 to the pre-reqs. - Move t/pod.t to xt/author/. - Switch from IPC::Run to IPC::Run3. This after a discussion with Larry Knibb re the fact that his code is hanging under Apache (mod_cgi) on Windows. He suggested using qx//, but I've gone for IPC::Run3. The other reason to switch is the overly-long bug list for IPC::Run, including Larry's report RT#87397. I went thru the same issues with Lee when switching from system() to IPC::Run for V 2.02. See RT#76459. IPC::Run3 has the advantage of letting me set binmode on various file handles. - For all modules and some scripts, convert: use strict; use warnings; into: use strict; use utf8; use warnings; use warnings qw(FATAL utf8); # Fatalize encoding glitches. use open qw(:std :utf8); # Undeclared streams in UTF-8. use charnames qw(:full :short); # Unneeded in v5.16. 2.14 Mon Jul 1 10:09:00 2013 - Patch push_subgraph() to correctly handle the case of an unnamed subgraph. The code was outputting 'subgraph "" {...}'. The extra "" are now suppressed. The code also handles the case of the name being undef. There are no doc changes because the docs described precisely what should have happened, thusly: So, without $name, 'subgraph {' is written to the output stream. With $name, 'subgraph "$name" {' is written to the output stream. Many thanx (again) to Larry Marso for reporting this, with sample code. - Add scripts/unnamed.sub.graph.pl. 2.13 Fri Jun 28 12:02:00 2013 - Oops - Patch scripts/record.1.pl as was allegedly done for V 2.11. 2.12 Thu Jun 27 14:40:00 2013 - Add scripts/plaintext.pl, which generates a 'Use of uninitialized value...' error under V 2.11 and, after the fix, does not do so under V 2.12. Many thanx to Larry Marso for the (private email) report. 2.11 Thu Jun 27 09:21:00 2013 - Correct spelling of Kent Fredric's name below, with apologies. - Patch scripts/record.1.pl and scripts/record.2.pl to use '\\n' to get a literal '\n' in the output dot file. The original works my Debian machine, but needs fixing in case there's someone out there not using Debian :-). - Remove debug log message from add_edge(). 2.10 Mon Jun 24 11:05:00 2013 - Overview: Re-work the label and port handing code. - Note: the global graph attribute 'record_orientation' no longer does anything. The new label syntax, (next, and in detail in the FAQ (https://metacpan.org/module/GraphViz2#How-labels-interact-with-ports) ), is now the recommended way of using labels to specify both ports and orientation. Using 'record_orientation' will not cause parameter validation to fail, it just won't have any effect. The attribute will be removed in a future version, so prepare now by deleting it from your code. - Labels can be a string, an arrayref of strings, or an arrayref of hashrefs. The latter alternative is new. The keys to the hashrefs are 'text' and 'port', with the latter being optional. See the FAQ topic mentioned above. See scripts/record.2.pl for sample code. Many thanx to Kent Fredric for the report (RT#85976), and the list of suggestions. - Add scripts/record.3.pl and add it to the demo generating code scripts/generate.*.sh. It demonstrates deeply nested record structures using a string as a label. The same effect could be achieved by using an arrayref of hashrefs, of course. scripts/record.2.pl shows how. - Stop escaping the 2 label characters { and }, since they are used to orient fields within records. On the demo page http://savage.net.au/Perl-modules/html/graphviz2/, see scripts/record.*.pl. Expand the FAQ discussion of escaping to cover this issue. - Remove restriction that port names in calls to add_edge() had to start with 'port'. This was due to my misreading of the Graphviz docs, where all examples used a 'port' prefix. The code also now checks for '*::*', in case the program is using Perl classes for node names, in which case we don't want the first ':' to be taken as the introduction for a port name. - Update words/tokens (arrow shapes etc) stored within the source code, by running scripts/extract.*.pl and storing the output in lib/GraphViz2.pm after the __DATA__ token. Yes, I know this is hard-coding. See the amazing module Data::Section::Simple for details. The set of words/tokens matches Graphviz 2.30.1, as of today, 2013-06-24. - Rename CHANGES to Changes as per CPAN::Changes::SPEC. - Reformat the POD in lib/GraphViz2.pm slightly. - Remove scripts/parse.marpa.pl and t/sample.marpa.1.dat, as a step in removing all Marpa-related material, because it uses the deprecated NAIF interface. All new Marpa work should use the scanless interface (SCIF). - Change Build.PL and Makefile.PL to check for Perl being at least V 5.14.0. If you are using an earlier version, you can forgo utf8 support by editing the files to relax this restriction. Some tests (utf8.pl, utf8.test.pl) will presumably fail as a consequence. Lastly, my attention has been drawn to Unicode::Semantics::up(), but I've chosen not to use it. 2.09 Fri May 31 09:57:00 2013 - Re-write the code in Build.PL and Makefile.PL which checks for Graphviz (dot) being installed, since the previous code, using a pipe, was failing on some versions of Windows. - Assume Config.pm is installed, and hence remove it from the pre-reqs. This also stops a warning message generated because Config's version # is undef. - Likewise assume File::Spec and File::Temp are installed, and 'recent enough'. This is because the new code uses these 3 modules before specifying the pre-reqs. - Bump the pre-req for Perl from 5.10.0 to 5.14, since we 'use feature qw/unicode_strings/. - Re-write the code in Build.PL and Makefile.PL which checks for Perl being 'recent enough', since the previous code, using a pre-req of "perl => '5.10.0'" generates a warning message when using Makefile.PL (for my current Perl V 5.14.2). Now we analyze $Config{version}. - One CPAN Tester found tests failing even though Graphviz was installed. The problem was that the Times font was missing. The new code should fail during 'perl Build.PL', or 'perl Makefile.PL', rather than during testing, which is good. 2.08 Thu Mar 21 13:16:00 2013 - Add $ENV{DBI_SCHEMA} to scripts/dbi.schema.pl. - For the MusicBrainz database, use DBI_SCHEMA=musicbrainz,cover_art_archive,report,statistics. See http://musicbrainz.org/doc/MusicBrainz_Database for details. Users of cpanm will want 'cpanm Carton' instead of 'sudo cpan Carton' in Perl dependencies. See https://github.com/metabrainz/musicbrainz-server/blob/master/INSTALL.md for details. 2.07 Wed Mar 13 13:24:00 2013 - Extend GraphViz2::DBI to handle SQLite using pragma foreign_key_list($table_name). - Add scripts/sqlite.foreign.keys.pl to help analyze that pragma's output. - Remove the string 'App-Office-CMS' from scripts/dbi.schema.pl. That is, the create() method is called as $g -> create(name => ''). This has the effect of removing the global node from the resultant graph. All tables were descendents of this node, but with schemas of dozens or hundreds of tables, it became confusing. - Patch dbi.schema.pl to set the DBI connect attr sqlite_unicode and foreign_keys pragma if using SQLite. 2.06 Thu Nov 8 12:38:00 2012 - No code changes. - For pre-reqs such as strict, warnings, etc, which ship with Perl, set the version # to 0. Reported as RT#80663 by Father Chrysostomos for Tree::DAG_Node. 2.05 Tue Oct 2 10:20:00 2012 - No fundamental code changes, so no need to upgrade, unless you need the following new features. - After a request from Jack Maney, author of the Perl module Hypatia: o Document the mutator node_hash(), which returns a hashref keyed by node name. Use this to get a list of all nodes and their attributes. o Add a new mutator, edge_hash(), which also returns a hashref keyed by node name. The node is the one at the arrow/tail/ end of the edge, i.e. where the edge starts from. Use this to learn all sorts of things about the edge. o Add scripts/report.nodes.and.edges.pl (a version of scripts/html.labels.pl) to demonstrate how to access this data. o Update to POD to match. 2.04 Fri Aug 17 10:48:00 2012 - Add Perl V 5.14.2 to the pre-reqs, for the utf8 stuff. - Re-write the subgraph handling code, which was broken up to V 2.03. Add samples, script/rank.sub.graph.[1234].pl, to demonstrate subgraph name effects and node rankings. script/rank.sub.graph.[12].pl use subgraphs to force a set of nodes to be horizontally aligned. script/rank.sub.graph.[34].pl show the effects of subgraph name changes on the same data. 2.03 Mon Jun 18 9:47:00 2012 - Switch from double to single quotes in line 22 of GraphViz2::Parse::Regexp, so the resultant string, treated as Perl code, runs on Windows. Reported by Max Maischein as RT#77869. - Also, slightly reformat line 39 of that module. 2.02 Thu Apr 19 11:51:00 2012 - Accept patch from Lee as in RT#76459, to replace the code which writes the dot input file to a file with binmode, and just pass the data to dot via IPC::Run. Happily, this allows me to eliminate 'use open qw/:encoding(UTF-8) :std/;' in t/test.t. - Update the pre-reqs in Build.PL and Makefile.PL. - Add scripts/utf8.test.pl to the list of scripts shipped with this module. - Add scripts/utf8* to scripts/generate.*.sh. - Make scripts/generate.*.sh emit a warning when DBI_DSN is not set. 2.01 Wed Mar 7 08:50:00 2012 - I only tested V 2.00 by outputting to SVG (a text format), but outputting to a binary format such as PNG was broken. So, remove the 'use open qw/:encoding(UTF-8) :std/;', and restore binmode, in GraphViz2.pm. - Remove log to screen in utf8.pl, since Log::Handler doesn't accept utf8 as a logger option. - Copy scripts/utf8.pl to scripts/utf8.test.pl and edit to display just 5 delta characters. See html/utf8.test.svg. PNG is ok too. This demonstrates (hopefully) we can get the correct output on a binary format despite the 'Wide character in print...' message. - Add FAQ topic regarding this 'Wide character in print...' problem. 2.00 Tue Mar 6 16:02:00 2012 - Support utf8 in labels. This required changes to GraphViz2.pm. See scripts/utf8.pl and html/utf8.svg. I'm using Perl V 5.14.2. Sample output is online at http://savage.net.au/Perl-modules/html/graphviz2/utf8.svg. - Add an item to the FAQ about how to write scripts using utf8. - Re-write GraphViz2::Parse::ISA to draw multiple class hierarchies on 1 graph. This means the API for that class has changed. Specifically, create() no longer exists. Call add() 1 or more times instead. Then, call generate_graph(). See the docs for details. Sample output is online at http://savage.net.au/Perl-modules/html/graphviz2/parse.isa.svg. 1.13 Sun Dec 25 10:33:00 2011 - Change to in the demo creation code, to keep poor old FireFox happy. - Change various things in html/graphviz2.index.tx to we validate as XHTML 1.0 Strict. - Unreleased. 1.12 Wed Dec 14 11:22:00 2011 - Add 5 scripts, scripts/macro.*.pl, to demonstrate using a Perl sub as a macro to generate both cluster and non-cluster sub-graphs. - Update the TODO in GraphViz2.pm, since it erroneously gave the impression the current code did not handle compound clusters. - Re-generate the demo. See: http://savage.net.au/Perl-modules/html/graphviz2/. - Adopt Flavio Poletti's suggestion of trying to pipe to dot, in Build.PL/Makefile.PL, rather than using File::Which, to see if dot (Graphviz) is installed. This (hopefully) solves the problem of using File::Which on systems where it is not installed, before Build.PL/Makefile.PL has a chance to tell the user that File::Which is required. See: RT#73077. - No code changes in *.pm files. 1.11 Tue Nov 8 10:21:00 2011 - Fix bug where double quotes in HTML labels were being escaped and should not have been. Many thanx to Fitz Elliott for the report and initial patch. See https://rt.cpan.org/Ticket/Display.html?id=72259. - Patched scripts/html.labels.pl as per Fitz's suggested test code. - Rename t/lib/Parent.pm to t/lib/Adult.pm to avoid a reported problem with "use parent 'Parent';" under Windows. This affect various files. See https://rt.cpan.org/Public/Bug/Display.html?id=69076. 1.10 Thu Sep 1 10:45:00 2011 - Fix bug in GraphViz in handling of nodes whose shape is none or plaintext, and whose label is HTML. - Fix bug in scripts/generate.png.sh to add png parameter to 'perl -Ilib scripts/generate.demo.pl png'. - HTML labels work without any code changes, so references to them not working have been removed from the docs. - GraphViz2 is called by the now-released Graph::Easy::Marpa, so remove that item from the TODO list. - Fix doc referring to scripts/generate.index.pl. It now refers to scripts/generate.demo.pl. - Add DOCTYPE and Content-type to html/graphviz.index.tx. Output by scripts/generate.demo.pl, html/index.html, now handles UTF-8 properly. - Add alt to the tags output by scripts/generate.demo.pl. - Add scripts/html.labels.pl. This code includes a demo of using ports. - Reorder methods in GraphViz2::Utils to be in alphabetical order. 1.09 Thu Jul 21 14:13:00 2011 - Patch parameter validation to allow for output image types such as png:gd etc. Only the prefix before the first ':' is validated. 1.08 Thu Jul 21 11:53:00 2011 - Change the behaviour of sub log() in GraphViz.pm. Now if called with $level eq 'error', it dies with $message. - Change references to the color darkblue to blue, so it's compatible with both the X11 and SVG color schemes. - Likewise change chartreuse to lawngreen. - Rename scripts/generate.index.pl to scripts/generate.demo.pl, as a more meaningful name. - Patch scripts/generate.demo.pl to accept the output image type as a command line parameter. - Use this new feature to generate png files, and upload them to the demo site http://savage.net.au/Perl-modules/html/graphviz2/ even though png is often uglier than svg. I did this because Iceweasel (Firefox) V 3.5.16 was not displaying svgs within the index file, even though they are fine when displayed directly. - Add scripts/generate.png.sh. - Note: scripts/jointed.edges.pl must call dot with -Tpng:gd and not -Tpng, for unknown reasons. - Make both scripts/generate.png.sh and scripts/generate.svg.sh redirect their log files to /tmp, so that we don't have to ship the logs, and also so they don't keep changing and hence need checking in. - Remove ./dbi.schema.log from the distro. 1.07 Mon Jul 4 15:46:00 2011 - Use Date::Format to add a date stamp at the end of html/index.html, as output by generate.index.pl. 1.06 Tue Jun 28 11:10:00 2011 - Change usage of File::Temp -> newdir to fix problems testing on BSD-based systems. - Add scripts/jointed.edges.pl. This demo - in Graph::Easy syntax - ships with Graph::Easy::Marpa. - Re-write generate.index.pl to put all demo data (where available) and images on 1 page. - Upload demo to (new location) http://savage.net.au/Perl-modules/html/graphviz2/index.html. 1.05 Fri Jun 24 12:40:00 2011 - Implement GraphViz2::Parse::Marpa, along with scripts/parse.marpa.pl and t/sample.marpa.1.dat. The output is html/parse.marpa.svg. - Implement GraphViz2::Parse::STT, along with scripts/parse.stt.pl and t/sample.stt.1.dat. The output is html/parse.stt.svg. - Add use File::Spec to t/test.t 1.04 Wed Jun 22 9:36:00 2011 - Reduce required version of File::Basename to 2.77, which came with Perl 5.10.1. - Stop trying to write to t/html/, and use File::Temp for a directory instead. That way, it doesn't matter who owns t/html/, nor whether or not it's writable. 1.03 Sun Jun 19 16:27:00 2011 - Tweak File::Temp -> new to be File::Temp ->new(EXLOCK => 0) for BSD-based systems. 1.02 Fri Jun 17 8:36:00 2011 - Add the pre-requisite Log::Handler to Build.PL and Makefile.PL. - Release HTML::Entities::Interpolate V 1.04 and Set::Array V 0.23 to CPAN. - Add README file. - Clean up TODO list. 1.01 Wed Jun 15 15:00:00 2011 - Quote cluster/subgraph names so they may contain weird characters. - Add method dependency(data => $depend) to GraphViz2.pm, which accepts an object of type Algorithm::Dependency. See scripts/dependency.pl and html/dependency.svg. - Add GraphViz2::Parse::ISA, and scripts/parse.isa.pl, and the t/lib/Parent hierarchy. 1.00 Wed Jun 15 14:26:00 2011 - This is a re-write of GraphViz. The method parameter lists are incompatible. Sorry, but it now supports all options and attributes in Graphviz V 2.23.6. - Rewrite GraphViz, GraphViz::Data::Grapher, GraphViz::Parse::RecDescent, GraphViz::Parse::Yacc and GraphViz::Parse::Yapp. The core code of *::RecDescent, *::Yacc and *::Yapp has been copied from GraphViz, with tiny changes. - GraphViz2::Data::Grapher uses Tree::DAG_Node to hold information, before calling external plotting programs. The tree is available for you to process whether or not you actually plot the graph. - GraphViz::Regex renamed GraphViz2::Parse::Regexp. - GraphViz::XML renamed GraphViz2::Parse::XML. And it uses XML::Tiny by default. One demo shows how to use XML::Bare instead. - All new documentation. - All new demos, in scripts/*.pl. These are documented in GraphViz's POD. - All demo output included, in html/*.html and html/*.svg. CPAN-Changes-0.500005/corpus/test/ugly_dates.changes000644 000000 000000 00000000114 14472651645 020176 0ustar00000000 000000 This changelog has an ugly date 0.01 Mon Jul 20 12:26:55 2015 - a change CPAN-Changes-0.500005/corpus/test/valid.changes000644 000000 000000 00000000110 14472651645 017131 0ustar00000000 000000 This changelog is entirely valid 0.01 2015-06-20 12:26:55 - a change CPAN-Changes-0.500005/corpus/test/bad_versions.changes000644 000000 000000 00000000117 14472651645 020517 0ustar00000000 000000 This changelog has a bad version {{ $NEXT }} 2015-06-20 12:26:55 - a change CPAN-Changes-0.500005/corpus/test/legacy/000755 000000 000000 00000000000 15000255764 015742 5ustar00000000 000000 CPAN-Changes-0.500005/corpus/test/empty_release.changes000644 000000 000000 00000000076 14472651645 020703 0ustar00000000 000000 This changelog has an empty release 0.01 2015-06-20 12:26:55 CPAN-Changes-0.500005/corpus/test/no_releases.changes000644 000000 000000 00000000037 14472651645 020341 0ustar00000000 000000 This changelog has no releases CPAN-Changes-0.500005/corpus/test/bad_dates.changes000644 000000 000000 00000000103 14472651645 017742 0ustar00000000 000000 This changelog has a bad date 0.01 Some time in July - a change CPAN-Changes-0.500005/corpus/test/date_formats.changes000644 000000 000000 00000000777 14472651645 020525 0ustar00000000 000000 Various date formats 0.01 Mon Jul 20 12:26:55 2015 WANT:2015-07-20T12:26:55Z - a change 0.02 Jul Mon 20 12:26:55 EST 2015 WANT:2015-07-20T12:26:55Z - a change 0.03 Mon, 20 Jul 2015 12:26:55 +0600 WANT:2015-07-20T12:26:55+06:00 - a change 0.04 2015-07-20 12:26:55 America/New_York WANT:2015-07-20T12:26:55Z - a change 0.05 2015-07-20T12:26:55.00-16:20:15 WANT:2015-07-20T12:26:55.00-16:20:15 - a change 0.06 Development Release WANT:Development Release - a change 0.07 Not Parsable WANT:undef CPAN-Changes-0.500005/corpus/test/legacy/long_preamble.changes000644 000000 000000 00000000124 14472651645 022111 0ustar00000000 000000 Revision history for perl module Foo::Bar Yep. 0.01 2010-06-16 - Initial release CPAN-Changes-0.500005/corpus/test/legacy/basic.changes000644 000000 000000 00000000043 14472651645 020364 0ustar00000000 000000 0.01 2010-06-16 - Initial release CPAN-Changes-0.500005/corpus/test/legacy/space-before-date.changes000644 000000 000000 00000000107 14472651645 022552 0ustar00000000 000000 0.02 2010-06-17 - Testing tabs 0.01 2010-06-16 - Initial release CPAN-Changes-0.500005/corpus/test/legacy/group-brackets.changes000644 000000 000000 00000000155 14472651645 022237 0ustar00000000 000000 0.01 2010-06-16 [Group 1] - Initial release [not a group], seriously. - change [also] [not a group] CPAN-Changes-0.500005/corpus/test/legacy/version-date-separator.changes000644 000000 000000 00000000100 14472651645 023673 0ustar00000000 000000 0.03 - 2013-12-11 0.02 == 2013-12-10 0.01 -=\/\/=- 2013-12-09 CPAN-Changes-0.500005/corpus/test/legacy/dist-zilla.changes000644 000000 000000 00000000454 14472651645 021365 0ustar00000000 000000 Revision history for Catalyst-Plugin-Sitemap {{$NEXT}} - Something 1.0.0 2010-11-30 - Change sitemap object under the hood to WWW::Sitemap::XML. - Add Dancer::Plugin::SiteMap in the 'SEE ALSO' section. 0.0.1 2010-09-29 - original version unleashed on an unsuspecting world CPAN-Changes-0.500005/corpus/test/legacy/preamble.changes000644 000000 000000 00000000116 14472651645 021073 0ustar00000000 000000 Revision history for perl module Foo::Bar 0.01 2010-06-16 - Initial release CPAN-Changes-0.500005/corpus/test/legacy/utf8.changes000644 000000 000000 00000000052 14472651645 020171 0ustar00000000 000000 0.01 2010-06-16 - change made by käthe CPAN-Changes-0.500005/corpus/test/legacy/latin1.changes000644 000000 000000 00000000051 14472651645 020472 0ustar00000000 000000 0.01 2010-06-16 - change made by kthe CPAN-Changes-0.500005/corpus/test/legacy/dist-zilla_format.changes000644 000000 000000 00000000072 14472651645 022731 0ustar00000000 000000 0.01 2010-12-28 00:15:12 Europe/London - Initial release CPAN-Changes-0.500005/corpus/test/legacy/timestamp.changes000644 000000 000000 00000001137 14472651645 021313 0ustar00000000 000000 0.11 2011-04-12T12:00:00+01:00 - W3CDTF, with timezone 0.10 2011-04-14 13:00:00.123 - Factional Seconds 0.09 2011-04-14 12:00:00 America/Halifax - Dist::Zilla style date 0.08 2011-04-13 12:00 Test - Datetime w/o T or Z, plus note 0.07 2011-04-12T12:00:00Z # JUNK! - W3CDTF, with junk marker 0.06 Mon, 11 Apr 2011 21:40:45 -0300 - RFC 2822 0.05 2011-04-11 15:14 - Similar to 0.04, without seconds 0.04 2011-04-11 12:11:10 - Datetime w/o T or Z 0.03 Fri Mar 25 2011 - Yet another release 0.02 Fri Mar 25 12:18:36 2011 - Another release 0.01 Fri Mar 25 12:16:25 ADT 2011 - Initial release CPAN-Changes-0.500005/corpus/test/legacy/unknown_date.changes000644 000000 000000 00000000155 14472651645 022003 0ustar00000000 000000 0.05 Developer Release 0.04 Development Release 0.03 Unknown Release Date 0.02 Not Released 0.01 Unknown CPAN-Changes-0.500005/corpus/test/legacy/different-indentation.changes000644 000000 000000 00000000106 14472651645 023563 0ustar00000000 000000 0.02 2010-06-17 - New version 0.01 2010-06-16 - Initial release CPAN-Changes-0.500005/corpus/test/legacy/group.changes000644 000000 000000 00000000056 14472651645 020443 0ustar00000000 000000 0.01 2010-06-16 [Group 1] - Initial release CPAN-Changes-0.500005/corpus/test/legacy/no-leading-space-for-change.changes000644 000000 000000 00000000103 14472651645 024415 0ustar00000000 000000 0.01 2010-06-16 - Initial release This line is part of the first CPAN-Changes-0.500005/corpus/test/legacy/multiple_releases.changes000644 000000 000000 00000000103 14472651645 023016 0ustar00000000 000000 0.02 2010-06-17 - New version 0.01 2010-06-16 - Initial release CPAN-Changes-0.500005/corpus/test/legacy/line-continuation.changes000644 000000 000000 00000000105 14472651645 022741 0ustar00000000 000000 0.01 2010-06-16 - Initial release This line is part of the first CPAN-Changes-0.500005/bin/tidy_changelog000755 000000 000000 00000004252 14360707326 015671 0ustar00000000 000000 #!/usr/bin/perl use CPAN::Changes; use Getopt::Long qw(GetOptions); use Pod::Usage qw(pod2usage); GetOptions( \my %opt, 'next!', 'token:s', 'headers!', 'reverse', 'check', 'help', ) or pod2usage( -verbose => 2 ); pod2usage( -verbose => 2 ) if $opt{help}; $opt{token} ||= qr/\{\{\$NEXT\}\}/; my $changelog = shift; unless ( $changelog ) { # try to guess it opendir my $dir, '.'; my @files = grep { -f $_ and /^change/i } readdir $dir; die "changelog not provided and couldn't be guessed\n" unless @files == 1; $changelog = shift @files; warn "changelog not provided, guessing '$changelog'\n\n"; } if ($opt{check}) { require Test::CPAN::Changes; require Test::More; Test::CPAN::Changes::changes_file_ok($changelog || "Changes"); # test plan is only set when using changes_ok() Test::More::done_testing(); exit; } my $changes = CPAN::Changes->load( $changelog, ( next_token => $opt{token} ) x $opt{next}, ); if( $opt{headers} ) { $_->clear_changes for $changes->releases; } print $changes->serialize( reverse => $opt{reverse}, ); __END__ =head1 NAME tidy_changelog - command-line tool for CPAN::Changes =head1 SYNOPSIS $ tidy_changelog Changelog =head1 DESCRIPTION Takes a changelog file, parse it using L and prints out the resulting output. If a file is not given, the program will see if there is one file in the current directory beginning by 'change' (case-insensitive) and, if so, assume it to be the changelog. =head1 ARGUMENTS =head2 --next If provided, assumes that there is a placeholder header for an upcoming next release. The placeholder token is given via I<--token>. =head2 --token Regular expression to use to detect the token for an upcoming release if I<--next> is used. If not explicitly given, defaults to C<\{\{\$NEXT\}\}>. =head2 --headers If given, only print out the release header lines, without any of the changes. =head2 --reverse Prints the releases in reverse order (from the oldest to latest). =head2 --check Only check if the changelog is formatted properly using the changes_file_ok function of L. =head2 --help This help