Revision history for SQL-SplitStatement
1.00023 2021-06-05 22:10:21 IDT
1.00022 2021-06-05 21:53:11 IDT (TRIAL RELEASE)
* support REPLACE as an INSERT alternative (gh #5)
* allow { and } to pass through in PL/Perl functions (gh #2)
1.00021 2021-06-04 15:21:30 IDT (TRIAL RELEASE)
* fix POD issues
* fix issues with options in bin/sql-split (breaking, but wasn't working anyways)
1.00020 2011-03-26 11:05:02 Europe/Rome
* Emergency release: fixed several problems caused by the new
SQL::Tokenizer (0.21 and above) releases. SQL::Tokenizer 0.22 now
required.
* Minor doc additions and fixes.
1.00009 2011-02-09 10:37:48 Europe/Rome
* Fixed a corner case where an empty statement was not removed (upon request)
if it was closed by a /strange/ DELIMITER-defined terminator.
* Added a test for this.
* Fixed "t/90-mysql_sakila.t" and "t/92-postgresql_pagila.t" for older Perls
(pre 5.8.7 it seems). Thank you CPAN Testers!
* POD formatting fixes to obtain a better (automatically generated)
README.mkdn
1.00000 2011-02-09 01:40:58 Europe/Rome
* PL/SQL PACKAGE limitation removed: now a PACKAGE with an initialization
block is correctly recognized even if it lacks both the package name at the
END and the slash terminator.
* PL/SQL parser fully rewritten again.
* Added a new terminator: semicolon followed by a period on its own line
followed by a forward slash on its own line (PL/SQL).
* Extended dollar-quoted strings handling, that is strings like "$TAG$", are
now handled correctly (whereas before only "$$" was permitted as a
dollar-quote).
* Two new types of placeholders added: /dollar sign numbers/
($1, $2, ..., $n) and /named parameters/ (:foo, :bar, :baz).
* PL/SQL "DECLARE CURSOR" handling;
* Fixed missing PL/SQL "END CASE" check;
* Fixed a bug with DELIMITER-defined terminators when their scope persisted
over multiple statements.
* Fixed a bug which caused certain DELIMITER-defined terminators not to be
removed in the returned statements (when "keep_terminators" was set to
false).
* Many further improvements and fixes.
* Added the new "slash_terminates" option (NOT a change in the default
behavior, but please read the docs).
* Massive test additions (the two popular Sakila and Pagila sample db now
included).
* Docs updates.
* Markdown README added (via Dist::Zilla::Plugin::ReadmeMarkdownFromPod).
0.30000 2011-01-23 11:00:02 Europe/Rome
* Fixed a PL/SQL problem where a FUNCTION or PROCEDURE inside a PACKAGE,
could cause the parser to trip over the end of the package.
* Tests for this.
* keep_terminator as a keep_terminators alias fix.
* Minor doc fixes.
0.20000 2011-01-21 18:53:11 Europe/Rome
* Removed the limitation on the BEGIN, DECLARE, FUNCTION and PROCEDURE
keywords: they can now be used even as unquoted identifiers! :-)
* Minor docs enhancements.
0.10000 2011-01-20 07:00:00 Europe/Rome
* Moose dropped in favour of Class::Accessor::Fast, since some people think
Moose is an overkill for such a simple module.
* Command line SQL splitting utility sql-split added.
* Added GRANT support: thanks Alexander Sennhauser for the report.
* Added MySQL DELIMITER support; closes bug #60401: thanks ed.shrock.
* Private methods heavily refactored.
* Many improvements and additions on docs and tests.
0.07000 2010-06-26 04:00:00 Europe/Rome
* Much improved procedural blocks handling:
* dollar quoted blocks handling;
* better "CREATE ... FUNCTION|PROCEDURE" handling.
* Minimum required SQL::Tokenizer version is now 0.20
(thanks Igor Sutton for this new version).
* End of deprecation cycle on the "keep_semicolon" option (has now been
removed for good).
* Tests and docs additions.
0.05003_1 2010-06-21 08:30:00 Europe/Rome
* Fixed a bug which caused a PL/SQL package without the package name after
the END to not be split correctly. Kindly reported by Dan Horne: thanks!
* Tests for this.
* Updated the LIMITATIONS section in the docs to explain that we cannot
handle a PL/SQL PACKAGE block _with_ an initialization block inside, if the
package lacks _both_ its name after the END and the trailing slash.
0.05003 2010-06-20 00:00:00 Europe/Rome
* A bit more robust "CREATE ... PACKAGE" handling, so that it is now
accepted the use of the "PACKAGE" keyword as an identifier (even unquoted).
* Tests for that.
* Better explained LIMITATIONS.
* Minor doc fixes.
* Cleaned MANIFEST up from a perl stackdump.
0.05002 2010-06-17 08:00:00 Europe/Rome
* Now handles also the presence of a so-called "initialization block" inside
a "PACKAGE" block.
* Tests for that.
0.05001 2010-06-17 06:00:00 Europe/Rome
* Now handles also the PL/SQL "CREATE ... PACKAGE" construct (thanks
Dan Horne for his info about that!)
* Tests for that.
0.05000 2010-06-17 04:00:00 Europe/Rome
* Now handles transactions (starting either with "BEGIN" and "START")
correclty.
Closes bug #58032. Thanks Frew Schmidt.
* Now handles procedural code as well.
Closes bug #57971. Thanks Dan Horne (thank you Dan also for the info by
private mail!)
* Now handle also Oracle-style statement terminators (slash and
semicolon-newline-slash-newline).
* Start of deprecation cycle on the "keep_semicolon" option which has been
renamed to "keep_terminator" (as now different terminator tokens are
recognized).
* Many tests and docs additions.
* Switch from Class::Accessor to Moose.
0.03000 2010-05-30 03:00:00 Europe/Rome
* "split_with_placeholders" method added.
* Tests and docs for "split_with_placeholders".
* Assorted minor code and docs enhancements.
0.01002 2010-05-28 20:30:00 Europe/Rome
* Removed "use DBI" from some tests, which was left there for error (and
caused said tests to fail, where DBI was not installed).
* Minor docs enhancements.
0.01001 2010-05-28 19:00:00 Europe/Rome
* Added the ability to discard/keep comments.
Really, this is a change in the API, since now comments are discarded by
default, while before they were returned instead.
I hope this won't harm any user, given the young age of this module
(furthermore there isn't any difference when feeding the returned
statements to a DBMS, the differences are just /cosmetic/).
Sorry anyway!
* Added tests and docs for this.
0.01000 2010-05-27 08:00:00 Europe/Rome
* Initial release.