Revision history for SQL-SplitStatement
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 and the slash
terminator.
* PL/SQL parser fully rewritten again.
* Added terminator: semicolon followed by a period on its own line
followed by a forward slash on its own line.
* 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).
* 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 # NEVER RELEASED TO CPAN!
* 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 (anyone who happen to be a PL/SQL user: my sincere
condolences!)
* 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 # NEVER RELEASED TO CPAN!
* "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.