[libsql-translator-perl] annotated tag upstream/0.11021 created (now 661ead4)

gregor herrmann gregoa at debian.org
Fri Jun 12 17:33:01 UTC 2015


This is an automated email from the git hooks/post-receive script.

gregoa pushed a change to annotated tag upstream/0.11021
in repository libsql-translator-perl.

        at  661ead4   (tag)
   tagging  2fe1bdb0d6d9352883e689cc044df476537d5bdb (commit)
  replaces  upstream/0.11020
 tagged by  gregor herrmann
        on  Fri Jun 12 19:09:29 2015 +0200

- Log -----------------------------------------------------------------
Upstream version 0.11021

Aaron Schrab (3):
      Fix POD for Schema::Index::type method
      Avoid warning about exiting sub with next
      Add trigger support to PostgreSQL producer and parser (including trigger scope)

Aaron Trevena (3):
      added triggers and procedures
      added expected trigger and stored procedure output
      fixed triggers

Alexander Hartmaier (4):
      Fix Oracle producer creating numeric precision statements that the test case expects (no whitespace)
      added myself to the list of authors
      test + fix for Oracle multi-column constraint generation
      Fix Oracle producer

Allen Day (82):
      added Class::Base preq
      an adaptor for postgres.  this works, but i think my primary key and
      here is the pgsql test script.  NOTE: it will not work right now b/c i've
      moving files around per ky's request
      added a serial->int auto_increment fix, a varchar->varchar(255) workaround.
      BUG.  the parser cannot handle 'precision' as a qualifier for 'double'.  this also applies to the mysql parser.
      i forget what i did, but i found more bugs.  we need to be able to support 'varchar'
      turning off debugging in t/08
      workaround to get auto_increment working from PG "serial" datatype.  i didn't do this right, someone fix it :|
      adding callbacks to Translator.pm to allow mangling of PK/FK/table names/package names (CDBI specific)
      adding recognition of key type "key" for table indices.
      adding ClassDBI producer.
      asdf
      adding capability to give 'filename' constructor arg an arrayref.
      cosmetic changes to autogenerated code.
      adding graphviz dep
      adding a pg src file example
      low hanging fruit, please read the diff below
      some fixes to fk method name generation.  failed to add nice m-to-m mapping method b/c
      added width and height options for graphviz out.  no docs
      linktable traversal seems to be working!  haven't tried the code yet, but it looks good.
      supposedly hasa()is deprecated in favor of has_a().
      it was buggy
      move over bacon
      fk references in many-to-many mappings need to refer to table column names
      adding strict and quotes for barewords
      fixes for base DBI package setting db vendor based on $translator->parser_type().
      had to fix up the format_pk_method (somehow it got broken, hmm...).
      commenting shortcoming
      aliasing ugly tablename_fieldname ref methods where possible (ie create them
      no longer using set_up_table method.  it incurs an overhead penalty by making
      removing changes related to primary/essential/other categorization of fields.  this
      moving reusable (useful?) code into schema classes
      more functionality in Table.pm, Turnkey.pm is broken (working on it...)
      firming up can_link()
      turnkey producer still broken, will try to get it working on the plane...
      adding dg classes to represent schema.  these are currently dependent on
      moved graph generating code (except hyperedges) to Graph.pm, producer
      adding more XMI files.  these are identical models in different XMI
      this is pretty stable, and is ( i think ) generating usable class::dbi
      fix for strange interpretation of 1liner
      oops, missing }
      we need to rely on the vendor set_up_table() method b/c ddl may not have
      cleanup for 0.03 release
      adding COMMENT processing to Pg parser
      ya
      removing hardcoded colors/styles to CSS
      transfering functionality from branch
      factored out more styles to css.  atom macros are now focus-aware.
      fixing bugs on sf turnkey tracker
      merging patch from Dave Cash.  description:
      added credit for dave cash
      individual tables now returned as a hash of separate tt2 templates, keyed
      return hashref instead of hash
      template files shall be lowercase
      add file extension
      no warnings for redefined methods
      fixes for code clarity
      more readable tag names
      improved element names
      uri->object mapping changing from GET params to URI path encoding
      bugfixes in Class::DBI method generation.  they were caused by bad schema
      aeshetic fixes, largely.
      many graph introspection problems solved.  method name generation is still
      updated turnkey regression testing schema.  added comments RE what role
      add test data
      m2m FK link table import mappings now generate traversal methods.  whew!
      no autocommit
      silence redefined warnings
      Class::MakeMethods prereq for Turnkey producer.
      almost working.  there is a package name mangling problem where the
      lc the template files... flipflop
      some refactoring.  moving to being able to call $schema->as_graph to do
      patch for parser/producer args courtesy of darren (w/ embellishments by me)
      Producer::Turnkey obsolete.  now rely on TTSchema parser (see concommitant
      replaced by TT producer
      incrementing for next release
      *** empty log message ***
      fix to allow GraphViz to load -- someone who understands why this is needed please comment!
      changes to allow subclass tables identical to superclass
      backing out non-callback package mangling
      missed a spot

Amiri Barksdale at Home (3):
      Fix CREATE VIEW syntax.
      Add test for DROP VIEW IF EXISTS
      Release 0.11010

Andreas 'ac0v' Specht (2):
      fixed alter_drop_constraint for foreign keys and applying multiple changes via alter_field to a column in Postgres Producer
      added a working mechanism for naming foreign keys

Andrew Gregory (1):
      Provide default index names for SQLite

Andrew Rodland (3):
      SQLite parser: handle named constraints, and don't choke on a comment
      Forgot to add the test data file for r1676
      Fix SQLite producer create_view so it doesn't generate statements with semicolons.

André Walker (1):
      Make MySQL producer add NULL for every nullable field

Arthur Axel 'fREW' Schmidt (76):
      add shim for non-lethal future development
      tear out useless unreserve hash
      whitespace changes
      Quote everything in SQL Server
      Turn off constraints before dropping tables in SQL Server
      Make true unique constraints if needed in SQL Server
      Create and parse FK constraints in SQLite
      fix repo url
      rename Shim to ProducerUtils for accuracy
      ignore vim swap files
      Release 0.11008
      Whitespace
      take out duplicate docs
      remove commented copyright
      use warnings
      our > use vars
      better error messages for the SQLite parser
      quote SQLite identifiers
      factor quote method out of Generator::Utils
      start of hardcore refactoring
      use future stuff for SQL Server field generation
      add comments, better default handling
      initial SQLite Producer object
      use future stuff for SQLite field generation
      factor out some basic constraints
      factor out unique constraints
      add foreign_key_constraint
      add enum_constraint
      less accumulators more reduction
      migrate table to Generator::Role::DDL
      delete dead code
      rearrange pod
      migrate drop_table to future
      dead
      add remove_table_constraints to future
      less accumulators more reduction
      refactor table into more methods
      add drop_tables method
      add header_comment
      add table_comments
      add foreign_key_constraints
      add unique_constraints_multiple and indices
      migrate almost all code to Generator::Role::DDL
      better
      lazify things
      migrate duplicated code into role
      setting the quote accessors separately no longer makes sense
      Default SQLite quoting to off until we are capable of disabling it everywhere
      assign copyright to my new files
      fix list of numeric types for SQLite
      fix sizeless types and typemap for SQLite
      fix excepted and scalarref quoting for DEFAULTS in SQLite (and SQL Server)
      FINALLY A RELEASE!
      Add missing quote function to SQLServer producer
      Release 0.11012
      fix a test broken by ad071409cb8f526337abbe025a63aa1e67716165
      release 0.11013
      release 0.11013_01
      release v0.11013_02
      include Moo version in a single place
      add missing Changes
      release 0.11013_03
      switch to Perl Licensing
      Release 0.11014
      Fix stupid missing version number in SQL::Translator::Schema::Object
      release 0.11015
      release 0.11016
      add missing Changes
      release 0.11017
      Revert "Fixed autoincrement in primary keys for SQLite"
      release 0.011018 🎃
      remove default Pg dsn
      Fix DROP TABLE in SQL Server Producer
      Test against travis
      add missing Changes
      fixup! Test against travis

Ash Berlin (36):
      Branch for diff refactoring
      MAss diff changes imported from Ash's local diff-refactor branch
      Some work on sanely normalizing fields
      Some SQL_TYPE mapping stuff
      Fix some more normalization problems
      Remove breakpoints
      Fix test
      Correct constraint names in preprocess for MySQL producer
      Move more normalization changes to preprocess_schema
      Added an 'alter sequence' line to the parser grammer which will simply skip over an alter sequence statement.
      Fix after typo in merge
      Add renamed_from to tables.
      Start transactions in a portable manner
      Work round MySQL/InnoDB bug http://bugs.mysql.com/bug.php?id=13741
      Fix BEGIN in sqlite diff test
      Better tests (and fix bug) in batch alter with renamed tables + constraints
      Merging back Diff refactor
      Fix warning messages
      Document significance of preproces_schema method
      Add support for COLLATE table option to MySQL parser
      Allow DEFAULT CHARACTER SET without '=' (as produced by mysqldump)
      Fix drop indexes for uniq constraints
      Remove breakpoint
      Allow quote and other option to be passed to the producers.
      Fix false-diffing due to order of table options
      Fix suprious diff on cols with charsets/collates (MySQL)
      svk-commitdCGXq.tmp
      Only create views for mysql on v5 and up
      Removed source_db and target_db accessors from Diff (throwback to old version, only output_db is used)
      META.yaml is generated at build time and does not beling in the repo
      PgSQL diff patch from wries
      Since MANIFEST.SKIP is in svn, this file does not belong
      svk-commitTn2OH.tmp
      Fix tests!
      Move XMI stuff to branches/xmi since no one has worked on them and the tests have failed for years, and they've been skipped from dists for an equally long time
      Added semi-colon for (DROP|CREATE) TYPE statements in the Pg producer (wreis)

Ben Faga (32):
      Applied Eric Just's changes to the Oracle producer. His comments follow:
      Added Class::MakeMethods to the requirements.
      Muffled a warning message, by changing '">&NULL"' (which I don't really understand) to '\*NULL' which is a nice pointer to the file handle opened in the line above.
      Fixed small error that was causing a test to fail.
      Removed the @_ from the import statement, since @_ contains the path(s) to the module and not subs to import.
      Added a couple things to the manifest skip file.
      New Manifest
      Added META.yml to manifest
      Added the header to the change file.
      Made the changes suggested by Michael Slattery.  Made the column size undef if the data type is text of blob and made some other minor changes.
      Changed references to on_delete_do to on_delete and on_update_do to on_update.  I tried to keep it backwards compatible.
      Made some changes suggested by Michael Slattery to fix table level comments.  Also added in field level comments.
      Changed the second "my $h" to just "$h" because it was throwing warnings.
      Removed the line that declared YAML to be the producer.  This stopped the YAML warnings from ./Build test and didn't seem to affect anything else.
      Applied changes submitted by Paul Makepeace <sourceforge.net at paulm.com>.
      Applying the patch submitted with this bug report
      Fixed a problem with the trigger_steps where it used to expect a string when it was getting an array.
      Applied patch sent in by Daniel Westermann-Clark on Oct 11 2006.
      Added a semicolon at the end of the create trigger definition because SQLite seems to require it.
      Updated version number and Change log for recent patches.
      Applied Hilmar's patches.
      Committing patches sent by Florian Helmberger.  Here are his remarks:
      Fixed a problem where the deferrable definition required to have a "not".
      Changed the name of unnamed foreign key constraints to TABLENAME_fk.
      Allows schema-qualified table names.
      Added fixes submitted by Peter Rabbitson:
      Added an 'alter sequence' line to the parser grammer which will simply skip over an alter sequence statement.
      Added a select section to the parser.  This is to handle function calls that
      Applied patch submitted by Nathan Gray
      Support uppercase foreign key target-columns.  Sent in by Daniel Boehringer
      Made change suggested by Daniel Böhringer to allow "ID" integer DEFAULT nextval(('"AlleStudien_ID_seq"'::text)::regclass), to parse properly
      Applied patches written by Nigel Metheringham.  His notes follow.

Brian Cassidy (1):
      Normalize Changes file to CPAN::Changes::Spec

Brian O'Connor (30):
      The Turnkey package is based on the ClassDBI package (1.35) and includes functionality needed by the
      Changes for Turnkey Atom class creation.  Right now DBI and Atom classes seem to be created correctly with the Turnkey producer.
      The Turnkey producer now uses the latest head on SQLFairy.  There may still be some bugs but the autogeneration seems to work OK.
      Fixed problem with rendering atoms in Turnkey Producer.
      Fixed problem with Turnkey producer where the db connection string wasn't passes to the templates while generating the DBI output.
      Search string in DBI output was fixed to escape @_ in template.
      Added a method based to the template to correctly reformat module names to include cap chars after a '_' in the Turnkey producer embedded templates.
      Added a method based to the template to correctly reformat module names to include cap chars after a '_' in the Turnkey producer embedded templates.
      Fixed a problem for the Turnkey producer where the atomtemplate is not fully dereferencing the hash containing the field data.
      Fixed a possible infinite loop problem where the primary key accessor calls itself in the Turnkey producer.
      An update of the Turnkey producer to output with better css support. May be slightly broken, there've been lots of changes to this file lately for both layout and the schema object.
      Updated the Turnkey producer to correctly read the db values in the atom object layer.
      removed xlink tag
      Updates to the Turnkey templates for atoms, tt2 templates, and xml
      Updated a problem with the Turnkey template producer
      Fixes a bug in the way the Turnkey producer's macro.tt2 output renders minor focus panels.
      Added dumper method.
      Updated heredocs to not be interpreted.
      Fixed bug in Data::Dumper statement
      Updates for dump method.
      Removed some character escape problems with the Turnkey producer.
      Modified the Turnkey producer to correcly output URLs.  This method will need to be updated once we start
      URL link corrections
      Updates to the Turnkey class bindings, will need to be revised later when we switch to search on it's own handler.
      Changes to the Turnkey producer related to soap output, AutoDBI output, and comment syntax.
      Updates to include special comments for Atom and Model classes to make
      Correctly produces settings file for soap Turnkey components.
      Changes to the Turnkey producer to better support IE.
      Modifications to the Turnkey producer to support file split in the Turnkey install process
      I needed to be able to pass in additional information to the templates (beyond the schema object)

CVS2SVN (1):
      This commit was manufactured by cvs2svn to create branch 'darren-1_0'.

Cedric Carree (5):
      Create unit test for ::Parser::DBI::PostgreSQL, fix parser namespace lookup
      Patch to get correct SQL data types from  Postgres
      Fix index issue in Parser::DBI::PostgreSQL
      get Postgres table and column descriptions
      SQLT::Parser::PostgreSQL parses table def with default values

Chris Hilton (82):
      A DBI Parser for SQL Server, mostly copied from DBI/Sybase
      A Parser for SQL Server, mostly copied from Sybase parser and geared toward working with SQLServer Producer output
      Added mapping of ODBC connections to DBI-SQLServer parser
      Added comments lines to test data forworking with new YAML Producer output
      Added collate and 'on update current_timestamp' field qualifiers
      Added character set, on update, and collate field qualifiers to field definition output
      Added to fields that do not require size argument
      Additional tests for new parser capabilities
      Added Data::Compare module to requirements list
      Added equals function for base equality testing
      Added equals function for equality testing
      Added case insensitivity option to get_table()
      Added additional tests for sqlt-diff
      A whole lot of changes, but major additions include adding diffs for table options and constraints
      Modified _compare_objects() to use ref_compare from Class::MakeMethods::Utility::Ref instead of Data::Compare. It seems more reliable and comes in a package we already require.
      Removed Data::Compare from requirements list
      Modfied fields() to return empty array when there are no fields
      Modified equals() to get scalar references to fields for comparison
      Fixed bug in equals() to exhaustively search sets of indices and constraints
      Fixed bug to exhaustively search for equal constraints and indices
      Slight adjustment to parsing of identity/auto-increment field qualifier
      Made sure defined scalar references are passed to _compare_objects(). Removed is_valid comparisons from equals().
      Modified test text to reflect that fields() now return empty strings instead of undef when there are no fields
      If a DSN is defined but no 'from' db type given, we infer the 'from' type is DBI
      Re-arranged to put null/not null before default value; looks and parses better
      Removed '#' and '--' comments from being included in table comments; they aren't part of the schema and hose the schema diffing
      Removed auto_increment from a field's extra attribute; it's already saved in is_auto_increment and this prevents it unnecessarily showing up in the field's comment when producing MySQL
      Fixed case-insensitivity matching for SQL Server and field names
      It helps if you use the correct version of the case-insensitive field name you're trying to return
      Removing foreign key check from field equality; foreign key inequality is better caught with the constraint check
      Modified "create anything else" rule to not include table and index creates so any syntax errors in those are properly caught
      Added negative sign possibility to default number values.
      Use the overload::StrVal method to check if references are the same instead of the possibly overloaded stringify
      Modified equals() to include type check, stringify field checks, and more case insensitivity when required
      Modified equals() to include case insensitive data type checking and removed is_unique check (better caught by a constraint check)
      Modified equals() to include more case insensitivity when required
      Modified equals() to stringify field checks and use more case insensitivity when required
      Added some constraint tests
      Various tweaks to produce Oracle diffs
      Adding non-zero exit status if differences were found
      Parser changes to accomodate function-based indexes and optional size modifier for data type
      Fixed preservation of function call as field in function-based indices
      Minor refactor to avoid uninitialized value warning
      Fix field default value output bug I introduced
      Added 'default null' parsing
      Added ON DELETE and ON UPDATE clauses to FK output
      Fixed up ON DELETE parsing for FKs
      Removed conflict markers
      Added tests to catch Oracle problem with parser being reused
      Modified parse() to instantiate a separate RecDescent parser like other Parsers do
      Ignore Oracle system constraints on source DB schema, also
      Get SQLT version dynamically
      Remove row requirement for returning indices
      Added MySQL 5.0 DELIMITER functionality
      Added test for delimiter functionality and multiple comments on a line
      Fixed passing references to GetOptions
      Added comment to diff output if target database is not one of the few, the proud
      Added linefeeds so beginning of create view/procedure statements don't end up commented out
      Slight change to comment parsing to allow asterisks in comments
      Tweak previous comment parsing tweak for multiple lines
      Changed Constraint.equals() to ignore ordering of fields and reference fields
      Added options to sqlt-diff to ignore index and/or constraint name differences
      Don't test is_valid in equals()
      Skip constraint and index comparison shortcuts when ignoring the relevant names
      Corrected index parsing on Oracle so every index is not a unique constraint
      Added output-db option
      Made fields check in equals() ignore ordering
      Added output_db option
      Helps to actually pass the output-db option
      Added GO to output after views and procedures
      Added cursory parsing of procedures, functions, and views (oh my!)
      Removed mistakenly checked in debug code
      Hacks for comparing sql attribute in equals() to ignore unimportant differences
      Added diff comparison of views and procedures
      Small change to ordering of view and procedure diffs
      Removed unused rules procedure_body and view_body
      Added cursory parsing of view, functions, and procedures (oh why!)
      Added mysql-parser-version command-line option
      Added cursory parsing of views and procedures
      Added options for ignoring the differences in SQL for views and procedures
      Added command-line option for MySQL parser version arg
      Ignore views and procedures with no text (weeds out exatraneous results from SQL Server 2005)

Chris Mungall (4):
      *** empty log message ***
      fixed parsing of Pg COMMENT ON ... syntax
      throws error if a comment is placed on a non-existent column
      new: makes tables in latex format

Colin Newell (1):
      Simple change to make Postgres simple array types produce correctly

Dagfinn Ilmari Mannsåker (130):
      Ignore editor droppings
      Mooify SQLT::Schema
      Mooify SQLT::Schema::Index
      Use 'isa' checks for attribute validation
      Mooify SQLT::Schema::Table
      Mooify SQLT::Schema::Procedure
      Mooify SQLT::Schema::View
      Mooify SQLT::Schema::Trigger
      Mooify SQLT::Schema::Constraint
      Mooify SQLT::Schema::Field
      Remove unused base class
      Filter undef from all constructor args
      Remove unused variables and module import
      Remove pointless DESTROY methods
      Use weak refs for schema object attributes
      Rename non-schema-specific roles to SQLT::Role::Foo
      Reinstate schema object base class
      Make SQLT::Role::Error internals closer to Class::Base
      Fix broken reset attempt
      Mooify SQL::Translator
      Factor list attributes into variant role
      Use quote_sub for trivial defaults
      Check Moo version at runtime
      Use quote_sub for trivial coercions
      Wrap some over-log has statements
      Document new roles, types and utility functions
      Add enum type
      Add Changes entries for mooification and leak fix
      Carp instead of dying if arguments are passed to read-only accessors
      Add carping wrapper to SQL::Translator->schema as well
      Make read-only SQLT::Schema::Table attributes carp instead of die
      Add missing List::MoreUtils dep
      Allow passing an arrayref to SQLT->filename
      Fix POD wording
      Use the API to access extra attributes
      Clean up properly after Parser::DBI::PostgreSQL tests
      Use accessor for table options in MySQL producer
      Don't reimplement perl's built-in default behaviour
      Fix typos in error messages
      Document append behaviour of options setters
      Merge branch 'patch-1' of https://github.com/dsteinbrunner/sql-translator
      Fix typo
      Remove documentation for field moved to role
      Add missing attribute name in header
      Fix typo in synopsis
      Fix incorrect module names in conditional plan
      Add myself to AUTHORS
      Fix confusingly erroneous variable name
      Fix Pg DBI parser test
      Add .mailmap entry for Ash Berlin
      Stop Makefile.PL hanging at prompts under Travis
      Install author-mode configure reqs in Travis
      Install DBI as well in Travis
      Install optional test deps in Travis
      Don't install Text::RecordParser, it's broken
      Add Changes entries for 6c77378 and 1fb4f40
      Fix handling of views in MySQL DBI parser
      Install XML::Parser in Travis, it's used by t/05bgep-re.t
      Test Parser::DBI::PostgreSQL in Travis
      Set all the env variables in one "env" entry
      Switch t/13schema.t to done_testing
      Test Schema::Table->is_trivial_link and ->is_data
      Install Graph::Directed and GD to test Producer::Diagram
      Output the build log on cpanm failure
      Install the libgd development package
      Ignore Devel::Cover output
      Use a schema with FKs for diagram testing
      Fix and extend link table tests
      Add 'use warnings', test case-insensitive ->get_field
      Switch to @haarg's perl-travis-helper, add 5.20 and blead
      Use my fork of the helpers, for debugging
      Die instead of warning if roundtrip regen fails
      Actually install Devel::Cover
      Propagate switches when running perl in tests
      Add Changes entry for SQLite diff fix
      Add Changes entry for numeric field default fix
      Clean up Pg batch alter test
      Fix POD syntax for PODed-out code
      Document producer_args in SQL::Translator::Diff
      Fix argument documentation for preprocess_schema
      Factor out calling of normal diff-production functions
      Add Changes entry for Pg diff fix
      [merge] Batch alter support for Pg and refactoring
      release 0.11019
      Fix test failure if Test::PostgreSQL is installed but not working
      release 0.11020
      Skip HTML tests if CGI is not installed (RT#98027)
      Fix broken POD links found by App::PodLinkChecker
      Fix undef warnings from Text::ParseWords when running tests with -w
      Add IRC metadata and update repository and bugtracker URLs
      Update help/support and contributing POD section
      Fix JSON and YAML tests if the defaults have been tweaked (RT#98824)
      Switch back to upstream Travis helpers
      Install YAML and XML::LibXML before build-dist
      Install YAML and XML::LibXML in the perl used for testing too
      Switch back to my travis helpers fork
      Factor out quote option handling
      Clean up option parsing and identifier quoting in Producer::PostgreSQL
      Clean up option parsing and fix identifier quoting in Producer::MySQL
      Fix handling of quoted identifiers and strings in Parser::SQLite
      Fix handling of quoted identifiers and strings in Parser::MySQL
      Fix handling of quoted identifiers and strings in Parser::PostgreSQL
      Fix handling of quoted identifiers and strings in Parser::SQLServer
      Fix handling of quoted identifiers and strings in Parser::Oracle
      Escape the closing quote character when quoting indentifiers
      Test table and field names with quote characters in them
      Escape quotes in string values in producers
      Test round-tripping default values with quotes and backslashes
      Test round-tripping decimal default values
      Test quotes in field comments
      Quote table names in 'SHOW CREATE TABLE' in Parser::DBI::MySQL
      Add Changes entry for quoting fixes
      Merge branch 'quoting-fixes'
      Handle ALTER TABLE ... ADD CONSTRAINT in Parser::Oracle
      Add support for triggers in Parser::Oracle
      Narrow the scope of Oracle roundtrip TODO
      Merge branch 'oracle-fixes'
      Call close as a function rather than a method
      Remove executable bit from Parser/JSON.pm (RT#100532)
      Update the Free Software Foundation's address (RT#100531)
      Fix quoting of trigger name and table in Producer::PostgreSQL
      Remove redundant entries from Producer::PostrgeSQL's type mapping
      Fix clob type translation in Producer::PostgreSQL
      Translate MS Access memo type to text in Producer::PostgreSQL
      Fix SQLite diffing on perl 5.8.1
      Add Changes entry for 5.8.1 SQLite diffing fix
      Fix multi-column indexes in Parser::DBI::PostgreSQL
      Switch back to upstream travis-perl-helpers
      Fix array types and multidimensional sizes in Parser::PostgreSQL
      release 0.11021

Daniel Ruoso (14):
      waiting for patch to be applied
      implements options in oracle indexes
      Fix weird bug, caused by a double evaluation in ternary if
      producer_args->{delay_constraints} can be used to add primary keys later
      Document delay_constraints producer_args option
      Define a name for pk constraint when delay_constraints is on
      Declares the new tests in the MANIFEST, remove useless warnings
      Test for oracle alter_field
      alter_field implemented. alter_field test Pass.
      Including new test and test data into MANIFEST
      Fix ORA-01442: column to be modified to NOT NULL is already NOT NULL
      Small fix in delay_constraints (missing ;).
      Adding tests for Oracle->add_field
      Implemented add_field, only the field is added, nothing more for now.

Darren Chamberlain (147):
      Many, many changes.  Changed the basic assumptions about the module.
      Reverted to a version 1.1, due to botched branch attempt.
      Another attempt to check in a branch.
      Updated to work with my updated API.
      Added test data in groovy hierarchical directories.
      Added copyright notices to top of files.
      Added MANIFEST, MANIFEST.skip, and Makefile.PL
      Added files.
      Added note of a bug
      Changed many assumptions about the test.
      Updated docs, especially detailed internal API docs.
      Changelog file.
      Automatically generated by cvs2cl.pl
      Changed some of the basic assumptions.
      This was a synmail test.
      syncmail test.
      Automatically generated by cvs2cl.pl
      Added Pod::Usage as a prerequisite
      Modified POD to include a complex description of the format of the data structure returned by parse.
      Changed name of translate method to produce, to be consistant with Producer API. Added __END__ token.  Updated $VERSION to be CPAN-compliant.
      Broke the 1 test out into 11 different tests, each one of which tests a specific part of the data structure returned by parse.
      Turned off SQL::Translator::DEBUG.
      Removed warns and debugging, so this test will actually pass when run as part of make test.
      Removed comment lines (the parser chokes on these, I think).
      Added some basic files, removed unused data file (the contents were moved into the test that used the data).
      Updated filelist
      Re-added
      Accidentally PREREQ_PM'ed XML::Writer instead fo XML::Dumper
      Test changes
      Removed in anticipation of a merge.
      Merged changes from darren-1_0 tag into HEAD branch (hopefully!).
      Automatically generated by cvs2cl.pl
      Added 'order' to data structure description
      Added test structure.
      Added extra files to MANIFEST.skip.  Updated MANIFEST.
      Added CSV parser and a test.
      Added support for producer_args and parser_args.
      Added MySQL producer (still in a pretty alpha stage, only barely functional).
      Added generation of PRIMARY KEY and KEY clauses to CREATE statements.
      Fixed some typos, added some basic re-logicing (is that even a word?)
      Shitload of changes.  Still passes all tests, such as they are.
      Subclasses Class::Base. Removed error_out, error, in favor Class::Base::error.
      Changed error_out usage to error
      Added list_parsers and list_producers methods, in response to <Pine.LNX.4.44.0211211124100.4042-100000 at localhost.localdomain>
      Added some comments (comments?)
      Updated an example to make it happier.
      More generic clean macro
      Moved MANIFEST.skip to MANIFEST.SKIP
      MANIFEST.SKIP takes a regex, not a list.  Some of the .pm files weren't in the MANIFESt.
      Documentation fixes; added Chris' name to copyright notice; updated copyright year.
      Added SQL::Translator::Producer::Raw to MANIFEST.
      Removed extra unused junk.
      Set $DEBUG to 0 by default.
      Moved all POD to the end of the module, to make it easier
      Did you forget what year it is, Ken?
      Added new files to MANIFEST.
      Added t/08postgres-to-mysql.t
      Some doc changes; added Allen to AUTHORS section
      o Added bin/auto-dia.pl to scripts list
      A README, which is required by CPAN.
      Added Utils package with debug method, shared between MySQL and SQLite producers.
      Added SQLite producer and Utils.
      - load now sets $ERROR on failure.
      Hey, this could never have worked as advertised. *blush*.
      Why make these globals?
      And again, with the globals. Yeesh.
      Added stub test.
      Added missing stuff.  Remember folks, anything not in MANIFEST will not be part of a distribution!
      Added Spreadsheet::ParseExcel
      Moving tests to Test::More
      Updated README to reflect changes to SQL/Translator.pm POD.
      Let's check before we assume this is a ref, eh?
      Added normalize_name function, which normalizes names.  Primarily needed by the Excel parser.
      Attempt to be more robust.lib/SQL/Translator/Validator.pm
      Forgot to add this yesterday.
      Added header_comment function; see docs for details.
      Added refactored comment producing using header_comment.
      Test file for header_comment function from SQL::Translator::Utils.
      Added Schema and some more dependencies
      Doc changes (use C<> instead of B<>)
      Updated XML test.
      Uses XML::Writer instead of aggregate() and a global.
      Updated README via perldoc -t lib/SQL/Translator.pm
      Trim whitespace from arrayref elements as well as array elements; see <Pine.LNX.4.50.0305121004300.32235-100000 at oakhill.homeip.net>.
      Slightly more paranoid version of parse_list_arg -- check length as well as definedness.
      Initial import of Jason Williams' SQL Fairy logo.
      The $DEFAULT_SUB was still looking at $_[1], and not $_[0]->schema
      Added "use Class::Base;" declaration to go with use base statement.
      Some simple cleanups.
      .cvsignore
      Oops, haven't added these yet.
      Addressed Ken's concerns -- versions remain .02f floats.  Made Test::Differences mandatory, since tests fail without it.
      Added the new files
      Added some email addresses.
      Typo alert!
      PODified smelto's email address.
      Fixed pod oopsie
      Updated MANIFEST.
      Forgot to add my new test, and made the use of CGI vs. CGI::Pretty more consistent.
      Typo fix.
      Tabs suck!  Die 0x09, die!
      Removed definedness check for file-based data, for the DBI-based parsers, which will not pass a data or file element.
      SQL::Translator::Shell - and interactive Schema browser.  This is a placeholder commit.
      Command-line wrapper for SQL::Translator::Shell.
      Basic test for SQL::Translator::Shell
      Added YAML parser, producer, and basic test.  All need more work!
      Added YAML stuff
      A better YAML producer, actually using the YAML module.  Updated test
      Work in filter mode -- accept data on standard input.
      Context fix.  Rar.
      Made $0 a little nicer.
      Added index view.  Dunno if it works. :(
      Slightly more verbose error reporting.
      Small pod fix.
      Almost all elements have consistently named classes, rather than
      HTML producer test.  Uses HTML::Parser.
      Sorted.  Added a few missing items.
      Updated YAML test.
      Brought the test up to date with some recent changes.
      Added a libscan to supplement the default libscan.
      sqlt-diff test (very basic)
      Bring tests to passing.
      Added explicit unlink of the temp file; it wasn't always being deleted.
      quotemeta for directory names.  See https://rt.cpan.org/Ticket/Display.html?id=4505.
      Stifle undefined variable warnings.
      Fixed 'useless use of constant in void context' warning.
      Robustify the tests a little.
      More TODO items.
      Reverse order of the Changes file, so that recent Changes are at the top.
      More TODOs
      Remove all those subroutine redefined warnings.
      Just the fairy.
      Integrate Dave Cash's changes.
      Added blibdirs, which recent MakeMakers create.
      Make SIGN conditional based on MakeMaker version.
      POD update.
      Will someone just frickin' fix XML::Writer already?
      Added maybe_plan function.
      Update tests to use maybe_plan.
      Removed 01test.t
      Readding, at kyc's request.
      DOAP for SQL::Translator
      Original artwor, courtesy of Jason Williams
      Moved to htdocs module
      Removed doap.rdf from MANIFEST, since I removed it from CVS a few days earlier.
      Merging patch from ddascalescu+perl at gmail.com, for https://rt.cpan.org/Ticket/Display.html?id=44769.  I've not tested it.
      Revert last change becuase it broke a bunch of tests.

David Steinbrunner (28):
      typo fix
      typo fix
      typo fix
      typo fix
      typo fixes
      typo fix
      typo fixes
      typo fix
      typo fixes
      typo fix
      typo fix
      typo fix
      typo fix
      typo fix
      typo fix
      typo fix
      typo fix
      typo fixes
      typo fix
      typo fixes
      typo fix
      typo fix
      typo fixes
      typo fixes
      more typo fixes
      typo fixes
      typo fixes
      typo fixes

Devin Austin (1):
      added kaitlyn's patch for mysql->sqlite translation

Earl Cahill (3):
      initial adds for the oracle dbi parser and a simple test to make sure the use works
      adding in Oracle driver support and making the DRIVER keys alphabetical :)
      -O::Is, accidentally committed some debug, thanks to Darren Chamberlain [dlc at sevenroot.org] for pointing it out

Fabien Wernli (12):
      test I'm not committing to trunk instead
      initial things don't look at this yet
      text -> varchar2(4000) instead of clob, get rid of reserved keywords, import oracle_version from DBD::Oracle
      missed some quotes and added tests to avoid that
      missed some quotes and added tests to avoid that
      double and float thou shall now be float
      fix committed
      tests
      text back to clob
      I'm not to be trusted with the chainsaw
      add to changes
      float doesn't need to be forced to 126 either

Fabrice Gabolde (1):
      Support for SET NULL, SET DEFAULT and NO ACTION in foreign key clauses for SQLite.

Florian Ragwitz (1):
      PostGIS functions are case-sensitive

Gavin Shelley (1):
      TTSchema doc fixes

Geistteufel (2):
      quote reference_table
      add quoted reference to check if the table name contain a full declaration, it quote it properly

Gudmundur A. Thorisson (1):
      Changed max_id_length to 62, from previous 30, since PostgreSQL now allows

Jaime Soriano (2):
      Bit size can range from 1 to 64, test added for size greater than one
      sqlt-diff arguments parsing reimplemented using Getopt

Jaime Soriano Pastor (6):
      Default bits and double quoted strings are parsed now
      MySQL parsing fails if a table is defined more than once in the same file, if not, indices are messed up
      Names accepted (and ignored) as types of primary keys in create tables
      Name of unique keys are not written if empty
      Integer default sizes are one point smaller if they are unsigned
      sqlt-diff option to quote names

Jess Robinson (86):
      New column_info definition, correct nullable
      Add Triggers
      DB2 P::RD grammar
      DB2.pm the first
      Drop functions
      produce DB2 tables
      Initial devision of sqlt-diff: Most of the functionality into a module
      Use DB2 Parser
      DB2 producer tests
      More DB2 producing
      Producers can now return individual statements as s list, if wantarray set
      Added quote-field-names, quote-table-names options
      Recognise & skip DROP statements when parsing
      Document producer methods
      Produce either a list of statements or a string
      Update Trigger to insist on a valid table for on_table
      Add tests for new alter_field, add_field, drop_field methods
      Typo fixing
      SQLite  and YAML tests broken, fixed
      Allow skipped insert statements and trigger bodies to contain quoted semi-colons
      Add test to prove insert statements with quoted semi-colons can still be skipped
      Fix mysql_table_type .. (where did this go, or why was it not there?)
      Improvements to MySQL producers foreign key and comment handling
      Lots of Pg Producer tests, some other fixes
      Splitting of MySQL, Postgres and SQLite producers into sub methods
      Move Template into reccommends for now
      Changes for 0.08_01
      Build files for 0.08_01
      Add timestamp tests, make postgres produce timestamp(0) if asked
      Add quoting support to the mysql producer, thanks ash!
      Fixed up tests to accommodate new DB2 producer changes and sqlite tests to not test for comments.
      Default auto-inc fields to start at one, and increase by one
      Support Pg timestamp type followed by an optional size, which denotes the type of timestamp
      Fix typo, no_comments arg wasnt getting passed. Thanks Penguin!
      Also collect function objects. Thanks Gordon!
      Make TTSchema work with TT 2.15, somehow
      Remove strange manifest entry
      Add default timestamp support to Postgres producer
      Make the DROP commands a separate item in arrary context (mysql producer)
      Fixed tests for mysql producer changes
      Upped version to _03
      Update TODO file
      Cascade drop pg tables to overcome key constraints when dropping
      Update changes, oops
      Patched mysql producer to name constraints sanely
      Fix bug in YAML test
      Fix to not test while TT is broken
      Ignore all TT test while TT is broken
      0.0899_01 diffing fixes
      Only run test if Graph::Directed installed
      Update oracle producer, patch from plu.
      Fix syntax for index dropping in sqlite producer
      Oops, fix tests for fixed syntax
      Update changes/version for 0.0899_02
      Add DBI dep (oops)
      Update changes with latest release date
      0.09000 not 0.0900 (cpan gets confused if numbers go downwards)
      Added support for proper enums under pg (as of 8.3), with pg version check, and deferrable constraints
      Updated change file
      Add support for proper boolean fields in the mysql producer, as of v4.x
      Applied patch from Ryan to uniqify index names sanely for the mysql producer
      Make Schema::Graph only load if "as_graph" is called on a Schema object
      Patch from ribasushi: Correctly graph self-referential constraints
      Added patch from groditi adding SET type support to the mysql producer
      Add views to mysql producer, thanks groditi
      Added patch from groditi to support views in sqlite
      Added patch from wreis, view support for pg producer
      Add target_db to diff test as it was producing warnings..
      Enormous patch from Peter Rabbitson making mysql version parsing saner and adding tests for it.
      Updated authors/Changes
      Update mysql producer test to saner field names, Peter R.
      Pg views and sqlite views, patch from wreis
      By royal decree, produced statements in list context shall not end in a semi-colon, or any newlines! (They may contain newlines)
      Skip on newer Spreadsheet::ParseExcel
      lukes' patch: drop if exists under sqlite 3.3+
      Now supporting scalar refs as default values! (rjbs)
      Missed file from default-value-improvements commit
      Patches for/with jgoulah:
      Default sqlite_version so we dont get uninitialised errors when calling from ::Diff
      Patch from rbo to support multiple database events per trigger
      Patch from jgoulah for mysqls UNION (merge engine) option
      Support for temporary tables in Pg, from nachos
      Changes + Reverts for 0.11000, see Changes file for info
      Released 0.11007
      Update to version 0.011009
      Add geiststeufel to the AUTHORs list

Johannes Plunien (17):
      delayed adding semicolon in oracle producer
      using unreserved table name for drop statements in oracle producer
      ensure to not exceed max allowed size for oracle data types
      add semicolon to CREATE TRIGGER after END which i have removed before accidentally
      using unreserved table name for FK alter statements in oracle producer
      updated Changes
      triggers may NOT end with a semicolon
      If wantarray is set we have to omit the last "/" in this statement so it can be executed by DBI->do() directly.
      added notes about changed behaviour when calling oracle producer in array/scalar context
      Skip tests for buggy Spreadsheet::ParseExcel versions (rbo)
      fixed 51-xml-to-oracle.t
      fixed *old regex, added *tar.gz regex in MANIFEST.SKIP
      removed semicolon from CREATE VIEW in oracle producer
      added release-date to Changes
      Translate bytea to BLOB in MySQL producer. This fixes a few tests of DBIC if you run the full test-suite against MySQL instead of SQLite
      New method to clear out extra attributes
      MySQL producer skips length attribute for columns which do not support that attribute. Currently following column types are added to that list: date time timestamp datetime year

John Goulah (6):
      add support for a skip option to the parser
      added ignore_opts parser arg to ignore table options
      add param to _apply_default_value so that certain values can output without quotes
      needed to tighten up regex added in last commit
      reverting r1413 and r1414 in favor of passing a scalar ref to parser which the producer outputs correctly without quotes
      added parser support for MySQL default values with a single quote

John Napiorkowski (1):
      fix for when we are adding /dropping columns in sqlite and need to roundtrip via a temp table

Jon Jensen (1):
      Add JSON parser and producer modules

Jonathan C. Otsuka (4):
      Adding DECIMAL_DIGITS to SQLServer size field for scale info: http://msdn.microsoft.com/en-us/library/aa258832(v=sql.80).aspx
      Revert "Adding DECIMAL_DIGITS to SQLServer size field for scale info: http://msdn.microsoft.com/en-us/library/aa258832(v=sql.80).aspx"
      Quote table_name to fix tables using reserve words as their name
      Add DECIMAL_DIGITS to SQLServer size field for scale info

Jonathan Otsuka (1):
      Honor supplied field order when adding fields to a table object

Jonathan Yu (21):
      - Updated GraphViz producer module per the modifications discussed on the sqlfairy-developers mailing list (http://www.mail-archive.com/sqlfairy-developers@lists.sourceforge.net/msg00223.html)
      - Minor documentation changes. Namely, noted that the index types are stored internally as uppercase; this is the only way to ensure the Producer modules still work properly.
      Since Oracle understands a double precision floating point type, I added "double" to the ora_data_type file.
      - Added a show_index_name parameter which determines whether index names should be shown. If false, then the module will just print a list of tuples of indexed fields.
      - Fixes a bug where _apply_default_value is not found (due to it being part of SQL::Translator::Producer); does this by simply making this PostgreSQL producer a subclass of the SQLT::Producer base.
      - Add support for 'extended' friendly ints (the nonstandard extensions provided by MySQL)
      - Fixed POD producer
      - Added some stuff to MANIFEST.SKIP
      - Some minor cosmetic changes
      - Added myself to the AUTHORS file
      - Added myself to the SQL::Translator file as an author
      - Merged some changes by myself, and also from ribasushi
      - Updated copyright, added myself to contributors list
      Added a Module::Build::Compat 'passthrough' Makefile.PL
      - Removed use of $Revision$ SVN keyword to generate VERSION variables; now sub-modules are unversioned.
      Changed show_index_name to show_index_names to make it better match the other options
      Reverted VERSION so it was no longer dependent on $Revision$, the semantics of which are different under SVN
      Applied patch to switch dependency on XML::XPath to XML::LibXML (Closes: RT#32130)
      fix a bunch of spelling errors, and add whatis entries (these are applying patches from Debian)
      Remove copyright headers from individual scripts
      Revert my previous changes (rev 1722 reverted back to rev 1721)

Justin Hunter (1):
      address some issues with Pg producer and quoting

Ken Youens-Clark (714):
      Initial checkin.
      Fixed a lot of little things in modules, docs, etc.  Bugs in sql_translator.pl.
      Added PostgreSQL producer.
      Rolled in Darren's new list_[producers|parsers], lots of cosmetic changes,
      Fixed spelling of "indices" in various files, finished adding all of Tim
      Added "show_warnings" and "add_drop_table" options to sql_translator.pl and
      Added a rule to MySQL parser to disregard "DROP...;" statements, filled out
      Fixed a bug in Oracle producer that allowed for identifiers longer than the
      Fixed problem with truncating an identifier when it was exactly the
      Fixed bug where it was truncating table name needlessly.
      Added "Raw" to be able to get to raw parser output.
      Added "auto-dia.pl" script for generating ER diagrams.
      Added fulltext index.
      Made it better.
      Lots o' bug fixes.  Added "join-pk-only" option.
      A working PG parser!
      Mods to handles FK references.
      Added some documentation to PG and MySQL; the "eofile" rule to MySQL.
      Added production to field rule to handle embedded comments.
      Deleted "index" rules, allowed fore and aft comments in fields and
      Added more rule (alter table) to be able handle Chado schema.
      Handle "on [delete|update] action" differently
      Some minor mods to POD.
      Added SQLite producer, basic knock-off of MySQL producer, made some mods
      Added code to kill field qualifiers in index field declarations.
      Added font options, made default font size 'small' instead of 'tiny.'
      Added mark for unique constraint and legend to explain extra markings.
      Added color option.
      Added options for natual joins only, made code work with proper FK
      Got foreign key references basically working now.
      Added grammar for "REFERENCES" (foreign keys).
      Shortened "natural-join-fk-only" option to "natural-join-fk,"
      Adding "auto-graph.pl" to automatically create graphs (via GraphViz) from
      Some syntax fixes, package name was wrong, added Mikey's name to AUTHORS.
      Hey, new Oracle parser!
      Small fix.
      Added Oracle parser to MANIFEST.
      Fixes to help with Oracle data types, also fixes with table constraints.
      Fixed error for: "Use of uninitialized value in string eq at
      Moved all the real code into a module so this script now just uses the new
      Minor cosmetic changes.
      Adding new GraphViz producer.
      Cosmetic changes to keep the coding style consistent.
      Moved most of the code into a new "Diagram" producer.
      Adding new ER diagramming producer.
      Fixed bug (illegal div by 0) if "no_columns" wasn't numeric, also fixed
      Adding new CGI script front-end for GraphViz and Diagram producers.
      Added defaults to arguments.
      Added new files.
      Fixed error that was preventing MySQL parser from working with
      Adding new schema test, commiting fixes to MySQL parser test.
      Adding new objects for handing schema data.  Not being used while I work
      More changes to getting the schema to a working state.
      Not much to say ... just trying to get this working.
      Using some of the rules from the PG grammar to make mine better, cleaned
      Trying to add tests as I write methods, so lots of new stuff to mirror
      Adding a new PG parser test.
      Added the requirement of Parse::RecDescent 1.94 or later, added
      Fixed an error in default value regex that disallowed a value like "00:18:00".
      For some reason, "t.pl" was still in there.
      Fixed error '"my" variable $wb_count masks earlier declaration in same scope at blib/lib/SQL/Translator/Parser/Excel.pm line 68.'
      Fixed error 'Use of uninitialized value in string eq at blib/lib/SQL/Translator/Producer/MySQL.pm line 164.'
      Fixed error 'Use of uninitialized value in repeat (x) at blib/lib/SQL/Translator/Producer/XML.pm line 110.'
      "size" of a field needs to be an arrayref as it could be two numbers (e.g.,
      Changed to use Test::More, cleaned up syntax.  Still pretty useless.
      Fixed error 'Use of uninitialized value in pattern match (m//) at blib/lib/SQL/Translator/Schema/Field.pm line 144.'
      Too many changes to mention.
      Too many changes.
      More changes to keep up with code.
      Added mods to pass parser_args for xSV parser.
      Updated to use Text::RecordParser and added scanning of fields, more
      Updated tests to match new code.
      Added Text::RecordParser 0.02 pre-req.
      Minor fixes to primary_key method.
      *** empty log message ***
      Passing schema object now as third argument.
      Made "order" a property of the table and view objects, use a Schwatzian
      Added oft-used "parse_list_arg" sub for Schema classes.
      Playing around with new schema object.
      Added passing of schema arg.
      Removed warning.
      Added "match_type," use "parse_list_arg," added DESTROY.
      Playing with constants.
      Added use of "parse_list_arg," changed "nullable" method to "is_nullable"
      Use "parse_list_args," added "options" (still vague on this), set a default
      Use "parse_list_arg," put field order into field object, added "order"
      Use "parse_list_args," added "fields" method, changed validation, break
      Lots of changes to reflect library mods.
      Lots of changes to fix merge.
      Modified to call translator to get schema rather than passing.
      Don't pass schema, let others call for it.
      Since "true" is the default for trimming and scanning fields for the xSV
      Change to avoid warning of "use of unitialized value."
      Added Sybase producer to MANIFEST.
      Cosmetic change in POD.
      Addressed a few style issues to make it like the other producers (use
      Changed grammar to bring it more inline with the official MySQL YACC
      Added more tests.
      Fixed bug with initialization.
      Added default field sizes for numeric fields if not specified, removed
      More work on default field sizes for numerics.
      Added a few more tests.
      Added rules to catch common (but useless) statements.
      Added ability to manipulate height, width, and whether to show the field
      Added options for height, width, and showing field names.
      Added better options for accepting height and width, changed default node
      Changes to grammar to clean up, moved primary key defs and unique keys
      Fixed parsing of field size for float values.
      Moved some code around to get methods in alphabetical order.
      Moved some code around to fix ordering, convert "type" to match what's
      Added parsing of default value on init, added "extra" method for misc field
      Moved some code around, fixed some POD, added checking of existing
      Fixed up some POD.
      Changed tests to use the Schema objects instead of looking at the data
      Added tests for $field->extra.
      Changed tests to use Schema objects instead of data structure, added more
      The test schema actually had incorrect syntax, so I fixed that;  changed
      Now that the PG parser is using the Schema object, a previously uncaught
      Changed $table->primary_key not to return an error if there is no PK,
      Added a lot more tests, now using the Schema object.
      Added new Oracle parser test.
      Added a better quote; quit putting FKs at field level (only at table); fixed
      Quit putting PK defs as indices, cosmetic changes to grammar, remove quotes
      Cleaned up code (mostly cosmetic), added normalization of column name,
      Removed Sybase parser because it's complete broken.  When this works, we can
      Changed "FULLTEXT."
      Changed constant to a hash to avoid silly Perl errors about it being
      Changed constant to a hash to avoid silly Perl errors about it being
      Added parsing of comments on init, added "comments" method.
      Added comments method and parsing on init.
      Added sorting of tables, other cosmetic changes.
      Fixed test numbers, removed unnecessary code.
      Fixed test numbers.
      General clean up to make it more like other tests.
      General clean up to make it more like the others.
      Added "use strict;"
      General mods to make it like others.
      Added Oracle parser test.
      Removed unnecessary backslash-escapes of single quotes, reformatted spacing
      Changed to use schema objects.
      Cleaned up "translate" hash a bit, changed to use schema objects now,
      Changed to use schema API.
      General cleanup, changed to use schema API.
      Expanded "translate" hash, changed to use schema API.
      Some cosmetic changes, changed to use schema API.
      Removing "Raw" producer as it's unnecessary now.
      Removed "Raw" producer.
      Small change to comment.
      Small changes to comments and size methods.
      Added "alter" to be able to parse output of Oracle producer, other small changes.
      Minor change to affect context.
      Removed debugging warning.
      Added rule to catch a default value given just as "null."
      Added "is_unique" method to determine if a field has a UNIQUE index.
      Added "make_natural_joins."
      Some bug fixen.
      Changed to use schema, refactored duplicated code (also in GraphViz) up
      Changed to use schema API.
      A POD producer.
      Minor changes.
      Adding new HTML producer.
      Mostly cosmetic changes (Allen -- no tabs, indent = 4 spaces!), got rid of
      Added "is_valid" tests.
      These tests relied on now deprecated action that the raw data structure
      Added validation code.
      Modified all filed to quit returning the data structure, now only return "1"
      Modified producers to quite looking for the data structure to be sent as
      Added HTML and POD producers.
      Updated TODO.
      Removed fixed bugs, either need to verify other bugs exist (and fix) or
      Upped the version in anticipation of making a new release soon, removed
      Altered POD description.
      Changed getting of version from main module, added exe file.
      Removed some things that don't actually work.
      Removed Validator class as validation is now in the Schema object.
      Renamed auto-dia.pl to sqlt-diagram.pl
      Renamed auto-graph.pl to sqlt-graph.pl
      Renamed auto-viv.cgi to sql_translator.cgi
      Fixed script name in docs.
      Fixed script name in POD.
      Removed this file as it uses the Validator which has been removed.
      Fixed EXE_FILES filenames, decided to removed CGI script.
      Added some ideas for 0.03.
      Added LICENSE.
      All the copyright notices say how the user should have received a copy of
      I was going to move the "format_*_name" methods to the ClassDBI producer,
      Created a more generic README for the project.
      Regenerated Chagnes using cvs2cl.pl
      Renamed 09auto-dia.t to 09sqlt-diagram.t to match the move in script filenames
      Fixed MANIFEST to match change in filename.
      Added INSERT and UPDATE placeholders to get parser to not barf on those.
      Nothing really changed.
      Updated README.
      Decided against using cvs2cl.pl as it's way too verbose, using a simpler
      Added SEE ALSO to send people to SF site.
      Cleaning up the project description.
      Trying to get everything "on message."
      The grammar bothered me.
      Added more TODO items.
      Fixed VERSION strings.
      Fixed VERSION string.
      Fixed VERSION.
      Added single quotes around the "use base 'foo';" line.
      Fixed grammar for REVOKE and GRANT (missing word "table").
      Allow data types which haven't been listed in translation table to pass
      Adding dumper creator.
      Changed "hasa" to "has_a."
      Added more description; allow options for db user/pass/dsn, skipping certain
      Allow translation from parsers other than MySQL, Pg, and Oracle and just
      Attempting clean up something.
      Fixed a bug-fix of mine that was contingent on my checking in another module.
      Added "()" to character class of "default_val" rule to allow "now()" to
      Removed redeclaration of "$parser_type," fixed bug in DSN, removed "s" on
      Minor change.
      I've tried to address Allen's concerns about naming of FKs, but still haven't
      Efforts to re-enable Allen's many-to-many linktable code.  I have no idea
      Reversed earlier change to VERSION after Darren scolded me.
      Fixed VERSION.
      Fixed VERSION to be CPAN-friendly.
      Strip field size qualifiers from index fields as SQLite doesn't like.
      Made "pg_data_type" rules case-insensitive per a patch from Richard
      Added options to make an image map.
      Added a "table" section at the top to click right to a particular table.
      Print out field comments using Oracle "comment on field" syntax.
      Allow embedded comments a la the PG parser, store the comments; also strip
      Added options for specifying image map.
      Added "character set" as field qualifier as this is part of MySQL 4 output.
      Applying (spirit of) patch from RT making keyword "table" optional in
      New MySQL 4 syntax allows field names to be in backticks (and this is the
      Added line to disable checking of FKs on import of tables.
      Reversed the arrowheads.
      Reversed arrowheads.
      Allow more producers than just the two graphical.
      FK defs were leaving out the field name.
      Added dependencies from new XML modules.
      Changed to use new "SqlfXML" producer.
      Fixing bugs as reported by S. Quinney in RT ticket.
      Added "set" rule, remove extra space after comment character.
      Changed to look at different constraints as NOT NULLs are now allowed as
      Changes to make case-insensitive rules, fixed spelling error of "deferrable,"
      Fixed spelling error of "deferrable."
      Added logic to ensure the PK fields are not nullable (thanks to S. Quinney).
      Ran through perltidy, broke long lines, changed logic on setting of
      More cosmetic changes to make comments pretty, added ability to set
      Added "reset" method, check for existing Schema before called parser again.
      Fixed bug where "layout" wasn't being passed to producer.
      Adding acceptance of a "title" arg.
      Changed default value rule slightly to allow the empty string.
      Added "integer" conversion.
      Adding a few rules so that "make clean" isn't necessary before "make manifest."
      Fixed bug in timestamp trigger syntax.
      Expanded default value rule to allow a bare word like "current_timestamp,"
      Use of "map," emit warning when changing PK from CLOB to VARCHAR2.
      Minor cosmetic changes.
      Breaking a long line.
      Adding AUTHORS file per suggestion from Darren.
      Removed Sybase parser from MANIFEST, update TODO.
      Update of README.
      Added Paul and Jason, more e-mail addresses.
      Adding some Sybase schema to parse, though it's from a pretty old version
      Adding Sybase parser test.
      Replacing contents with Paul's output from dbschema.pl 2.4.2.
      Added setting of field size for *text fields.  Did I get them right?
      Changed "tinytext" to convert to "varchar2," undef field size when the
      Added code to print out table comments.
      Added code to catch table comments (simply assumes that all comments before
      Almost functional.
      Mostly functional.
      Added Sybase parser back in.
      Added test number.
      Working changes I made to 1.31 back in:  Many cosmetic changes to make
      Some changes to "comments" method.
      Some minor bug fixen, additions.
      All cosmetic changes while I was looking to find "uninitialized values,"
      Making sure that all vars are initialized to get rid of silly warnings.
      Fixed bug where the "is_auto_increment" flag wasn't being set for serial
      Added test to make sure that serial field has 1 for "is_auto_increment."
      Changed test to match what "comments" now returns.
      Changed test to match what's returned for the size of a "text" field.
      Added boilerplate header, some cosmetic/POD changes.
      Added small transform to turn "XML-SQLFairy" into "XML::SQLFairy" so that
      Added "template" option for TTSchema produce, added docs for "pretty" and
      Started trying to think of all the changes for 0.03.
      Created a separate rule for "text" datatype and set the "size" to "64,000";
      Removed "use warnings" to make 5.00503-friendly.
      Bug fixes prompted by Gail Binkley:
      Fixed up POD, some other cosmetics changes, removed "use warnings" to make
      Added a little to POD, some other simple changes to make more like other
      Fixed POD.
      Adding former "SqlfXML.pm" as "XML/SQLFairy.pm."
      Moved to "XML/SQLFairy.pm."
      Adding it back and making it an alias to XML::SQLFairy.
      Corrections.
      Moved XML producer.
      Increased field sizes to match what PG parser is storing now.
      Changed the default sizes to be the width of the field, not the byte size.
      Got rid of "our," changed field sizes.
      Changed field size.
      Got rid of "our."
      Modified to use XML::SQLFairy, changed field size to match MySQL parser.
      Changed to use XML::SQLFairy.
      Added Ying.
      Changed default layout type.
      Some POD changes.
      Chagned default.
      Changed default layout.
      Added tests for check constraint.
      Added test for check constraint.
      Some cosmetic changes, some stuff dealing with check constraints, make
      Wasn't adding check constraints!  Fixed.
      Now with check constraints!
      Some special logic to handle check constraints.
      Some special logic to better handle check constraints (which don't have
      Expanded on AUTHORS, added dumping of Schema object if debugging, added
      Added link to CPAN ratings.
      Fixed problem with "deep recursion."
      Small change.
      Moving to XML/SQLFairy.pm.
      Adding old SqlfXML producer as XML/SQLFairy.
      Cosmetic changes.
      Changed the way "_list" works to use File::Find so it can go deeper to find
      Adding XML and XML-SQLFairy producers.
      Changes to quit using "SqlfXML."
      Got rid of "SqlfXML."
      One day we'll make this the 0.03 release.
      Added "META.yml" as newest version of ExtUtils::MakeMaker will add this
      OK, I guess it's not necessary to explicitly add "META.yml" to the MANIFEST
      Corrected the docs a bit (no more data structure to pass around!), but
      Fixing docs.
      No real changes.
      Moving files around, removing ".pl" suffixes, now all start with "sqlt."
      Moved POD around, added all options for all parsers and non-graphical
      Fixed up POD, allow for other ways to specify db.
      Adding new files.
      Changes.
      Added "title" arg.
      Added default of PAargs.
      Fixed drop table rule.
      Updated with new bin file names.
      Used to be "sql_translator.cgi."
      Alias to XML::SQLFairy.
      Fixed script name.
      Added drop table rule, saving of table comments.
      No longer calling script "sql_translator.pl."
      Fixed EXE_FILES filenames.
      Fixed docs.
      Fixed bug in comment rule.
      Added test for table comment as SQL comment.
      Added rule for "create index" and fine tuned "default_value" rule.
      Added some Oracle datatypes so you can translate Oracle-to-Oracle; better
      The arg is called "output_type," not "image_type."
      Trying to expand to cover all args to parsers and producers;  NEED HELP
      Changed POD to match class name, added link to Turnkey project page.
      Removed backslash-escaping of single quotes where unnecessary, ran new
      PG was choking on a lot of small errors, and some of the translations didn't
      Fixed problems in foreign key rule.
      Allow space as part of default value.
      Added alternate form of comments "/* ... */."
      Added tests for alternate form of comments.
      Added a comment for a test.
      Wasn't producing field comments.
      Checking for field comments now.
      Trying to correct header for HTML.
      Added some rules to better handle the output of DDL::Oracle, now saving
      Removed unnecessary code.
      Fixed "parse_list_args" to not stringify reference arguments.
      No need to create constraint names if they don't already exist (and PG
      Push foreign key defs to end of file to avoid errors with referenced tables
      Added comment for FKs (if necessary).
      Kill size attribute if field data type is "text."
      New SQLite parser.
      Adding new DBI and experimental DBI::SQLite parsers.
      Added options for DBI parser.
      Streamlined.
      Adding a MySQL/DBI parser that talks to the db for the structures.
      Fixing AUTHORS.
      Some mods.
      Adding Sybase parser for Paul.
      Fixed syntax error.
      Adding new Sybase entries -- should the full "use" statement be used or
      Added "add_trigger" method.
      New trigger class.
      Tests for triggers.
      Now parsing and adding views and triggers to schema.
      Don't make up unnecessary monikers, added support for table options that
      Lots o' refinements.
      Disabling some suspect code.
      No longer require file arg here -- let modules decide.
      Fixed a problem with POD.
      Adding Paul's Procedure class.
      Fixed POD, added "schema" method, fixed DESTROY.
      Added "schema" method, added to object initialization and destruction.
      Fixed spacing.
      Added support for adding procedures, getting procedures and triggers.
      Added tests for procedures, expanded view and trigger tests.
      Adding SQLite parser test.
      New test data for SQLite parser.
      Fixed bug that wasn't maintaining table order.
      Basic tests for SQLite, will expand later.
      Fixed syntax errors.
      Fleshing out.
      No reason to see Excel parser.
      Needed semicolon on end of constraint def.
      Small change to prevent "use of uninitialized value" warnings.
      POD changes, small change to prevent "use of uninitialized value" warning.
      Fixed normalize_name per DLC.
      Fix PK info if available.
      POD fix.
      Trying to be smarter about intuiting field types and sizes.
      POD fixes.
      Fixing up "view_field" to use all the field attributes.
      Adding a DBI-Pg parser based on DBIx::DBSchema, but I'm not sure if I'm
      Added PG support, more POD.
      POD fixes, fix to field size for a float.
      Fix to size of float field.
      Minor changes.
      Fixed some spacing and POD.
      Fixing POD.
      Added boilerplate intro, fixed POD.
      Fixed POD, removed commented warnings.
      Added boilerplate intro/copyright.
      Doc fixes.
      Mostly POD fixes.
      Small POD fix.
      Added some more POD.
      Notes about DDL::Oracle.
      Fixes to POD, mention DDL::Oracle.
      POD fixes.
      POD fixes, removed some unnecessary code.
      POD fixes.
      Trying to get sqlt to play nicely with DBI parsers which need no input file.
      Added a little to the POD to explain version dependency.
      Be stricter about no comments.
      Adding new schema differ.
      Corrections.
      No reason to distribute logo.
      Removed "use Data::Dump" as it wasn't being used and makes tests fail if
      Not ready to distribute this script yet.
      Keeping up with changes in code.
      Some refinements in assigning field types, size of field for floats.
      Getting float sizes to work properly.
      POD changes.
      Fixing default datatype if unknown.
      Upped number of constraints.
      Changed a little to make more interesting.
      Keeping up with changes in module.
      Update number of tests.
      Added YAML.
      Fixing error ""my" variable %format_X_name masks earlier declaration in same scope at t/20format_X_name.t line 11."
      Added "order" to tables (should have been there already, but was also causing
      Added missing data file.
      Added another missing test data file.
      Added map to overcome "Use of uninitialized value in join or string at
      Corrections after adding scan fields.
      Fixen.
      If no data is present, then assign a field size of "1" and not "0" (as the
      Changing test to keep up with module.
      Some of the same changes to Excel.
      Updated for release.
      Updating for 0.03 release.
      Updating for release.
      Small fix.
      Updated changes.
      Fixed typo in POD.
      Making a more thorough check of things.
      Pushing up revision so make CPAN happy.
      Increased VERSION to 0.04 to make a fix-up release.
      Indicating changes for 0.04.
      Hardcoding PREREQ_PM, removing code that set it dynamically.
      Changed tempfile stuff to use "mktemp" to get rid of warnings.
      Initializing variable to suppress silly warnings.
      Skip creating package if no name (must have been an error in the source file
      Added more rules to handle all variations of the "ALTER TABLE" statement
      Added tests to keep up with new ALTER TABLE rules in the grammar.
      Fixed number of tests.
      Minor changes.
      Fixed errors in grammar as reported in "https://rt.cpan.org/Ticket/Display.html?id=4936."
      Changed default_val rule according to bug report on RT.cpan.org.
      Fixed constraints and indices.
      Null out size if a blob field.
      Various bug fixen.
      Wasn't producing constraint defs, fixed indices to be a list.
      Updated.
      Small fix.
      Try to make usage clearer.
      Changed index creation to better handle output of DDL::Oracle.
      Fixed test.
      Outline for manual.
      Added reference to manual, fixed copyright.
      Being case-insensitive on datatype translations.
      Added manual.
      Changed to print out schema mutation statements (CREATE/ALTER/DROP) instead
      sqlt-diff is now functional enough to include.
      Updated.
      Added Dave Cash for his work on GraphViz producer.
      Changed copyright.
      Fixed copyrights.
      Updated.
      Fixed copyright.
      Fixed copyrights.
      Fixed copyrights.
      Fixed copyrights.
      Minor bug fixes ("top" and table links didn't work), added borders to tables,
      Pushed field attributes to after datatype/size to make consistent with
      Fixing up new options for showing data types, etc.
      Added some debugging comments.
      Applied patch to pass new options to producer.
      Added rules (REM, prompt) to help parse output of DDL::Oracle; changed
      Upped $VERSION to 0.05, created a "version" sub to easily get this.
      Misplaced semi.
      Changed test to match output.
      Adding another data file for sqlt-diff test.
      Some bug fixes, better formatting when no field size is applicable.
      Updated to match new output;  also had to remove "close STDERR;" to get working.
      Now installing sqlt-diff.
      The manual isn't in a state to send out.
      Small change to make installation easier.
      Updated with what I can think has changed.
      Fixed conflicts.
      Added "SIGN" option.
      Adding SIGNATURE.
      Adding SIGNATURE file.
      Apparently it's unnecessary for me to put the SIG in the MANIFEST as it's
      Modified comment rules.
      Updated with comment tests.
      Requiring a recent version of Spreadsheet::ParseExcel as an earlier version
      Fixed bug in script which didn't actually escape single ticks in string vals.
      Added options for new Dumper producer.
      Adding a producer to replicate (and extend) what was being done in the
      Fixed indentation.
      Getting translator options.
      Serializing translator options.
      Changing to use new Producer.
      Some fixes.
      Removed "sort" as it puts the tables in a different order than they appear in
      Moving to test module not script.
      Adding test for Dumper producer.
      Added "takelike" option.
      Added tests for Dumper producer.
      Add test for closing file.
      Updated to match new YAML output.
      Used code found http://www.mail-archive.com/perl-documentation@perl.org/msg00380.html to fix reading of STDERR (?).
      Some editing to make "make test" happy.
      Requiring latest version of XML::Writer where error was fixed.
      Oops!
      Fixed bug.
      Fixed per Tony Bowden to allow all integer fields (including LARGEINT,
      Adding Manual now that it is somewhat useful.
      Now with content!
      Fixes.
      Added section on Dumper producer.
      Added a couple more sections.
      Added examples of plugging in custom parsers and producers.
      Just a couple tweaks.
      Massaging of Oracle varchar2 field if larger than 255.
      Adding test data for Access parser.
      Committing new Access parser (yeah, Bill, we're coming after you now).
      Added Access data types.
      Adding tests for Access parser.
      Added alternate way to declare unique constraints.
      Updated tests for alternate unique constraint.
      Upped version.  We should release soon.
      Give higher billing for manual.
      Added bit to help.
      Fixed error in output.
      Fixed merge.
      Some changes to get tests to pass.
      Fixed problems with non-unique names.
      Added "enum" to string types.
      Added 'date' to "string" types.
      Fixed documentation in template.
      Fixed docs.
      Adding new Module::Build-based build script.
      Changing to use Build.PL/Module::Build.
      Updated.
      Fixed naming of file.
      Removing commented-out code.
      Just some cosmetic changes to the docs.
      Removed some old code, make table type "InnoDB" if there's a FK constraint.
      Make sure there's some size value for a character-based field.
      Add indexes for FKs as necessary.
      Check for >255 field size for all char fields (not just varchar); turn a
      Take the defined field size if present.
      Added "version" argument to show SQLT::VERSION.
      Adding Jess's DB2 DBI parser.
      Applying patches from Markus Törnqvis.
      Fixed problems in POD.
      Allow "gutter" to be set by producer arg (Markus Törnqvis).
      Allow "gutter" to be set by producer arg (Markus Törnqvist).
      Some updates to tests to skip when required dependencies are missing.
      Bug fix to keep FK constraints from being created twice, expanded a couple
      Moved "interval" rule.
      Trying to be smarter and stricter on translating FKs.
      The default too often was "tinyint," changed to only make it that when
      That last commit wasn't very thought-out.
      OK, I really got it this time.
      Fixed syntax error.
      Fixed POD.
      Fixing the error "Can't use an undefined value as a HASH reference at
      Moved graph tests out.
      Tests moved from 13graph.t.
      Accepted changes from Eric Just.
      Made the field definition rows alternate "even" and "odd" classes so
      Some changes that should have been applied a while back.
      Some cosmetic changes.
      While trying to create CDBI classes myself, I found some of the decisions
      Changes to work with latest MySQL TIMESTAMP columns.
      CPAN is complaining about the version, so I made a trivial change to get
      Added tests for other comments.
      Added "official" table and field comment rules.
      Field comments weren't printing.
      Put field and table comments into proper MySQL syntax.
      Added Ben, changed my name.
      Testing CVS checkin, added two new developers.
      The short arg for "font-size" was colliding with the "f" for the parser.
      Fixed usage docs.
      Just committing, but is it necessary?  It will be regenerated by Build.PL.
      Moved YAML to a build requirement.
      Changes to make more efficient use of memory with large tables.
      Changed my name.
      Changed to build up schema from "show create table" statements and then
      Updates.
      Added grammar for handling "unique" and "key" qualifiers to field definition.
      Added tests for "unique" and "key" qualifiers to field definitions.
      Removing.
      Removed SIGNATURE.
      Commiting.
      Added use of graph.
      Fixed handling of NULLs.
      Adding option to skip tables.
      Adding option for skipping tables.
      Put double quotes and backticks around table identifiers to test rules.
      Added double quote rule for table/field identifiers, cleaned up some code
      Per a suggestion from Darren, changed the skipping of tables in the GraphViz
      Fixed typos.
      Upped requirement of Parse::RecDescent.
      Added patch from user.
      Added "FULLTEXT" as valid index type.
      Added test for fulltext.
      Some code cleanup, added clustering of tables, fixed a bug that kept circular
      Upped version to 0.10.
      Return lines of output in a list context per user request.
      Fixed name, perl.
      Fixed my name, Perl shebang.
      Return lines of input in a list context, fixed my name.
      Lots of cleanup.
      Lots of cleanup, removal of "foo" variables which are opaque.
      Fixed "database_events".
      Fixed up "equals" to be more informative when there's a problem.
      Fixed to pass tests.
      Fixed "database_events."
      Cleaned up, Template version no longer a problem(?).
      Changed database_events to return an arrayref.
      Cleaned up a bit, checked for interactive tty so that ugly warning
      Checked for interactive so no ugly messages during test suite.
      Cleaned up, fixed db events.
      Now passes.
      No warnings during tests -- it's ugly.
      No warnings on test.
      Template version doesn't matter.
      Fixed "database_events."
      Database events now returns a list.
      Fixed "database_events."
      Fixed "database_events."
      Use three-arg open.
      Use three-arg open.
      Just made a little more readable.
      Need to call "load" as a class method rather than an object method.
      Make a little more flexible.
      Catch case of specifying 'DBI-Driver' and quietly fix this.
      Added a little more POD on clustering.
      Fixing my name (is this vain?).
      Adding.
      Added test for list context return.
      Added return of diff as array in list context.
      Changes to handle a constraint like:
      Added tests for check constraint.
      Test and data for FK in SQLite.
      Parsing of foreign keys.
      Resolves RT#48025.
      Use Readonly for constant value, some aesthetic changes.
      Added "using btree" for test.
      Added parsing of index types (btree, rtree, hash).
      Adding patch from user.
      Some whitespace changes, create a default index name if one is not provided.
      Just whitespace changes -- I wouldn't normally commit something like this, but
      Smoother regex (thanks Jim Thomason).
      Fixed my name, fixed some use of uninitialized vars.
      Just fixed some whitespace.
      Resolves RT#35448.
      Resolves RT#21065.
      Resolves RT#8847.
      Fixed some whitespace, resolve RT#13915 by requiring XML and YAML libs.
      Upped version for 0.10 release.
      Upping version per RT#43173, fixed my name.
      Some whitespace fixes, resolve RT#42548 (incorrectly inserts the size in
      Added patch from user (RT#42548).
      Fixes per RT#37814 (parsing of field/index names with double quotes, also fix
      Added tests for RT#37814 (parsing of double quotes, autoincrement).
      Fixed test.
      Leave out empty bits.
      Fixed test.
      Just a cleaner version of "next_unused_name."
      Removing, make dist smaller.
      Upped version numbers, cleaned up code, fixed my name.
      Changed version number to stay consistent with new scheme.
      Changed "no_columns" arg to "num_columns" (I used to use "no_" for both
      Added "skip_tables" options.
      When adding the edges, it's necessary to quote the table names exactly the
      sqlt-graph now has a --trace option.
      MySQL Parser now handles views more completely
      Some aesthetic changes
      Added "tables" and "options" methods to Schema::View
      Allow VALUEs to be enclosed in double and single quotes, specifically

Larry Leszczynski (1):
      Suppress "Exiting subroutine via next"

Lukas Mai (2):
      image is returned, not written w/o out_file (bug #71398)
      binmode STDOUT to not generate garbage in a UTF-8 environment (bug #71399)

Mark Addison (168):
      Moved Producer::XML to Producer::SqlfXML.
      Fixed default value bug in Parser::SqlfXML.
      Added TTSchema producer.
      Added BUG notes and test about single tags e.g. <foo/>
      Changed term single tags to empty tags to mean <foo/> like tags, it being the correct term :)
      D'oh! Fixed comment typo that chaged the meaning of the comment.
      Fixed bug with emit_empty_tags. It now works and we get more explict values for things instead of lots of empty sets of tags ie <foo>0</foo> not <foo></foo>.
      Added a test for Producer::SqlfXML.
      Added explicit version of 1.13 for XML::XPath as the parser doesn't seem to work with older versions.
      Added attrib_values option.
      Added support for the attrib_values option of the XML producer.
      Initial version of XMI parser.
      + Added visability arg.
      Refactored the internals so that the XMI parsing is seperate from the
      More refactoring and code tidy. We now have get_attributes and
      Added parsing of operations from the XMI. Do we have enough to do the Rational Profile now?
      Split out XMI parsing to SQL::Translator::XMI::Parser. All the XPath is
      Doc notes on version selection and added xmi.id to specs.
      Started on rational data modeling profile.
      Added lib/SQL/Translator/XMI/Parser.pm
      Moved Rational profile code to its own mod. Added support for tagged values, so
      The data, as it is being parsed, is added to $self->{model}. Anything seen before
      Different versions of XMI now handled by sub-classes (still generating methods
      Changed debug to dump xmi model data and not just classes.
      AssociationEnds gets an 'otherEnd' ref added so you can navigate associations
      Added FKeys from associations
      Added some test xmi files for rational profile (tests coming soon ;-)
      Moved visibility test to its own .t
      Tidy up, as they seemed to be a bit of a mess.
      Removed debug warning
      Added test for the Rational profile.
      Made dataType a proper obj instead of just a name.
      Added tagged values to DataType's
      Fixed serious bug in xmiDeref: was only working for tags with xmi.idref
      Added multiplicity to AssociationEnds.
      Removed some unneeded, commented out code.
      Fixed broken otherEnd linking for assoctionEnds.
      Removed TODO comment- cos its done
      Changed ends to associationEnds in the Association's spec.
      Made debugging work and it now exports its parse method.
      Initial code for SQLFairy UML profile for the XMI parser. The name may need
      PKeys automatically generated for Classes that don't set them explicitly with
      Added m:n joins. Can now model m:n association in your class diag and the
      POD update for m:n stuff.
      Fix: Now includes the Schema's name and database attributes
      Added missing test for attrib_values=>1.
      Moved all the XMI stuff from MANIFEST to MANIFEST.SKIP and added missing
      Fixed broken --emit-empty-tags option.
      Added Views, Procedures and Triggers to bring it inline with the current Schema features.
      Added Views, Procedures and Triggers to bring it inline with the current Schema features and updated producer.
      When using attrib_values the attribs are now written in alphabetical order
      Refactored attrib ordering fix.
      Handles order given as attrib.
      Added list of constants exported to the docs.
      Order of schema objects properties in XML changed to something more sensible
      reference_fields now returns an empty list (or array ref) for constraints that
      Fixed so they test for empty list reference_fields and not the old undef return.
      Test::More Schema testing.
      Uses Test::SQL::Translator.pm
      Added schema_ok. Some tweaks to the test output.
      Now uses schema_ok
      Now uses Test::SQL::Translator
      Fixed test count.
      Added Todo
      Removed unused Test::Exception
      Added lib/Test/SQL/Translator.pm
      Added stringify to name and error check to stop creation of object without a name.
      Tests for Table and Field stringify.
      Tweaked to use (test ;-) table and field stringify.
      Removed check on field name when adding fields, as the fields constructor does it now.
      Added full_name.
      Doc tweaks.
      Doc tweaks.
      Added shortcut method to get the fields Schema object.
      Added test of field schema shortcut and table stringify.
      Changed the 'id' field to 'age' on the first test constraint, so that one of its
      fields returns Field objects when it can. Added field_names().
      Uses field_names when making constraint YAML to avoid field overloading.
      Tests of Constraint::fields() object return and Constraint::field_names().
      Removed __WARN__ handler.
      Opps, forgot the sub seperator comment.
      Added field_names() and field/constraint lookup methods
      Added test of Table::field_names()
      Tests for the Table, field and constraint lookup methods
      Added TT::Table producer.
      Doc fix.
      Initial crack at a base class for building TT based producers.
      As a quick test to see if Test::SQL::Translator really is quicker added tests
      Added hook for sub classes to set Template config. Docs next...
      Added test for tt_config
      Tweaked tt_schema
      Documentation.
      Initial stab at a section on building producers with TT::Base
      Tweaked to use the default reading of __DATA__
      Added experimental pre_process_schema method.
      Doc tweaks.
      Updated to produce the new, single format sqlf xml.
      Updated to parse the new, single format sqlf xml and emit warnings when the old style is used (but still parse it).
      Updated to test the new, single format sqlf xml.
      XML test src changed name.
      *** empty log message ***
      Added docs about the legacy format xml.
      Added items about the change of XML format and additional TT based producers.
      Added producer args to control indenting, newlines and namespace prefixing.
      Updated with the new XML producer args.
      Added writing of field.extra
      Allow extra to be set via constructor.
      Added parsing of field.extra
      Fixed break due to XML Parser now supporting field.extra
      XML test file changed
      Move the list of methods to write as elements out into a global.
      Added collection tags for the Schemas objects (tables, views, etc)
      Doc tweaks
      Doc tweaks
      Doc tweaks
      Doc tweaks
      Doc tweaks.
      Added SQL::Translator::Schema::Object, a base class for all the Schema
      Added diagnostics on fail.
      Added _attributes class data to SQL::Translator::Schema::Object for sub classes
      All Schema objects now have an extra attribute. Added parsing support (and
      Added writing of extra data for all objects to XML producer.
      Added extra and Schema::Object stuff
      Refactored producer() and parser() to use a sub, _tool(), implimenting their
      Factored _load_sub() out of _tool(). Ground work for adding filters.
      Re-added ttvars. Added docs and test for ttvars.
      Applied Dave Howorth's MySQL parser patches
      Deprecated ttargs producer arg in favour of tt_vars
      Added tt-vars to pass variables to templates.
      Template config is now passed using tt_conf producer arg. Deprecated passing
      Added tt-conf option
      Added TTSchema changes.
      Clean up
      Added schema filters
      Re-added proper error trapping and reporting when trying to set the parser,
      localised setting of %Data::Dumper::Maxdepth (and Indent), to stop it polluting
      Removed (annoying) warning when order attributes are not used.
      Fixed test name
      Made extra interface more context sensative.
      mysql_table_type extra data and InnoDB derivation fix.
      A SQLServer producer. (They made me do it! :(
      Fixed YAML testi. Failed due to sqlfairy version increase and YAML not putting
      Fixed. Broke due to changes in YAML.
      Added hack to remove the Graph stuff hack of adding a ref to the translator, to
      Upped version of Test::More req so we get upto date is_deeply().
      Fixed error propogation when loading filters.
      Fixed broken comment in test (from Chris Hilton patch)
      Added Chris Hilton's patch so version number test is based on current version and not hardcoded.
      Added explicit close on FILE and fixed spelling mistaked (from Chris Hilton patch
      Applied Chis Hilton patch to fix. (Test used non existant test file)
      Fixed InnoDB table type errors (Chris Hilton patch)
      Applied Chris Hilton patch to remove 'Use of uninitialized value in addition' warnings
      Apllied Chris Hilton patch to remove subroutine redefinition
      Parses extra attributes for tables. Tweaked debug output.
      Added mysql extra attribs for charset and collation.
      Added test for mysql_table_type. Removed dodgey testing code so test works for everyone else.
      Tweaked filter interface to take args as a list.
      Added mysql_character_set for 4.1+
      Experimental filters
      Fixed missing schema table comments
      Build support for installing templates.
      Intial code for Dia producer
      Backed out M::B ConfigData based installed templates and moved DiaUml
      Removed un-used stuff left from CutNPaste of t/36-filters.t
      Added Globals filter.
      Fixed warning for tables with no order attrib
      Added constraint copy to Globals filter. (Seem to be getting lots of warnings from YAML now...)
      Globals filter now copies extra

Mateu X Hunter (1):
      Test Str and ArrayRef input for SQLT->filename

Matt Phillips (1):
      remove spurious warning from 6+ years ago.

Michal Jurosz (1):
      fix doc typo

Mikey Melillo (4):
      added need for Excel Spreadsheet parser module
      :)
      Init Check in. This follows closely along the lines of xSV.pm but its cooler
      added a text spreadsheet, hopefully in the right directory and such

Moritz Onken (1):
      Make Pg producer consistent with the rest in terms of quoting

Nick Wellnhofer (1):
      Fix erroneous PostgreSQL floating point type translations (RT#99725)

Paul Harrington (11):
      dump out views and stored procedures
      extract out text of stored procedures and triggers
      Storable stuff
      load test for sybase DBI parser
      add methods for dealing with procedures
      reverting to previous revision as I had duplicated some of the subroutines to handle procedures... sorry about that!
      store in network order
      still a bit hacky .. would like to use a method that will work on either "store" or "freeze" data. This will still break if you are passed in a file that contains the result of a freeze
      use DBI and a recent revision of DBD::Pg
      This module does not actually use any DBD::Pg calls, just DBI. However, the DBI calls are delegated to DBD::Pg and the revision on CPAN (1.22) does not have very usable table_info() and column_info catalog methods. Put in a nagging message so that the user does not get too shocked by the poor results if running with <1.31
      sp_columns on Sybase 12.5.2 (and, perhaps, earlier) needs to be passed nulls explicitly so pass in list of undefs to column_info

Peter Mottram (3):
      fix Producer::SQLite::batch_alter_table rename field
      initial batch_alter_table for ::Producer::PostgreSQL
      test to demonstrate Pg diff failure with rename_table+rename_field

Peter Rabbitson (184):
      Add sqlite roundtrip test (probably need to do the same for the rest of the parser/producer combos, possibly using a known xml schema as a starting point)
      Release 0.09003
      Update autogenerated makefile
      Another chunk of the GraphViz rewrite:
      Strip evil svn:keywords
      This file is empty, tests seem fine... deleting
      Actually there was an empty test for it as well :)
      Force everything to 1.99, hopefully will work
      Reduce $Id to its normal form
      Minor test cleanup
      Cleanup part 2
      Remove all expansion $XX tags (isolated commit, easily revertable)
      Forgot to up one VERSION
      Schema::Graph - switch ugly use of Log4perl to an even uglier (but at least available) use of Class::Base for debug messages
      Downgrade global version - highest version in 9002 on cpan is 1.58 - thus go with 1.59
      Whop - forgot to commit 9004 changes
      Support for mysql fully qualified table names (db.table) by Debolaz
      MySQL parser patch by Tokuhiro Matsuno
      Make minor adjustments to the grammars in order to work around https://rt.cpan.org/Ticket/Display.html?id=45262
      Pg producer improvements by mo: ALTER TABLE / ALTER COLUMN / DROP DEFAULT
      Minor POD fix
      Merge 'trunk' into 'roundtrip'
      Somewhat working global roundtrip test
      Add an oversized varchar to schema.xml
      Fix mysql roundtrip glitch
      Test seems to be finioshed - massive bowl of FAIL
      Bail out from failing tests early
      Translator/schema dependency test
      Todoify test - probably not in this lifetime
      Changes to tests to go along r1512
      Teah xml parser about database_events
      Extra data and first test for xml database_event support
      Improve xml database_event deprecation warning
      Teach sqlite how to deal with multi-event triggers
      Adjust xml-db2 tests
      Add Carp::Clan to dependencies
      Merge 'trunk' into 'roundtrip'
      Test XML roundtrip as well (also fail)
      re-fix tests after merge
      Bring version bump back - there is still work to be done (reoundtrip branch), I think this is too early
      Remove duplicate req
      Rewind exhausted globs before attempting a read
      Do not add xml comment header if no_comments is set
      Better debug output
      table/field counts are held per-object, not globally
      Concentrate on testing the 'big 3' for now
      Variable table and column names? wtf?!
      SQLite improvements:
      Adjust insane tests to pass (the expected returns at times are mind-boggling)
      Fix a couple of mistakes in the PG parser
      Add disabled YAML roundtrip test
      Update changelog
      Add POD checker and fix a couple of POD errors
      Reorder authors and consolidate them in one point (AUTHORS). Add link from main POD
      Switch to Module::Install
      Merge forgotten rewrite of the GraphViz producer - keep all the logic intact but do not do any parameter sanity checking - just pass things straight to GraphViz.pm
      Graphviz does not like empty hahsrefs - prune those
      VIEW support for Pg parser, also some cleanups
      Add parenthesis into the VIEW definition to make sure the pg parser still can deal with them
      The way we generate create view statements is not standards compliant (per RhodiumToad in #postgresql)
      Multiple fixes for the SQLServer producer/parser combo
      Merge 'trunk' into 'roundtrip'
      Make perlpod happy
      Merge 'roundtrip' into 'trunk'
      Strip exe bit
      Fill in changes, todoify non-passing tests (to draw attention)
      Release 0.09005
      Fix a couple of tests and add forgotten dependency
      Teach YAML producer to encode extra attributes
      Create a YAML copy of the main roundtrip schema - this is what we use to run t/60roundtrip.t without depending on LibXML. The YAML is regenerated on every Makefile.PL run
      Switch the roundtrip test to the yaml base source. Add test skips
      More test sanification
      Proper support for size in pg timestamp columns (patch by mo)
      Saner Changes
      (bugfixed) release 0.09006
      Backout teejay's changes to get trunk stable again
      Why the fuck did I do that ???
      Mssql does not understand ON DELETE RESTRICT
      Do not cache the P::RD grammar - it breaks stuff
      MSSQL fixes and improvements
      Release 0.09007
      The indexer does not understand license links
      Fix for bleadperl
      Use accessors instead of reaching down object guts
      YAML is a test-dep (or at least it's a good thing to have)
      Release 0.11001
      Makefile fixes + changes
      Release 0.11002
      Sanify test
      Real 0.11002 release
      Fix pg matchtype parsing
      Changes
      Cleanup changelog
      Someone claimed this doesn't work
      proper pg timestamp parsing (by mo)
      Fix RT#27438
      Enforce XML::LibXML version requirements
      Make maybe_plan insufficent-version-aware
      Dep fixes and changes
      Release 0.11003
      Add a size/precision field to test file, make sure xml parser/producer work fine
      Add numeric/decimal precision support to DB2 producer
      Fix TT templates and tests
      Fix RT49301
      Oracle/SQLite test adjustments to deal with new testdata field
      Changes
      changing SQL::Translator::Diff to use producer_args instead of producer_options
      Cleanup tabs/whitespace
      Changes
      Changes2
      Oracle fix primarily to have it not capitalize but quote instead
      Release 0.11005
      Merge 'oracle_datatypes' into 'trunk'
      Get SQLite to produce saner output
      Changes
      Changes reformat
      Make 'default_value' behave like a real accessor
      Fix index quoting for mysql
      Adjust view production for stupid mysql
      Awesome non-quoted numeric default patch by Stephen Clouse
      Release 0.11006
      Even though it is in the depchain due to YAML - just go ahead and declare it
      Bump M::I dep to a version not abusing FindBin
      Turn the roundtrip source generation fail into a warning
      Add support for PostGIS Geometry and Geography data types
      Fix some legacy code to stop warning on newer perls
      Support a custom_type_name hint for Pg enum creation
      Fix sqlt options not matching documentation (RT#58318)
      Changes from abraxxa
      Fix MySQL producer attaching View definitions to a schema
      Correct postgis geography type insertion and linebreak fix for multiple geometry/geography columns
      .gitignore
      Make autoinc PKs show up in GraphViz
      Fix RT#64728
      Better diagnostics
      Parse new SQL Server stuff
      Do not depend on implicit hash ordering in YAML load
      gitignoring
      patch from rt67989 applied, changes dependency from Digest::SHA1 to Digest::SHA
      Add giftnuss to contributors, awesome triage work
      Drop Class::Accessor::Fast in favor of Moo
      Use precompiled Parse::RecDescent parsers for moar speed
      Tab/WS crusade
      Combined patches from RT#70734 and RT#44769
      Fix misleading Diagram POD
      Fix ignored option to script/sqlt-diagram (RT#5992)
      Changes for a1afcdb6
      Add forgotten contributors from various patches:
      Fix spurious whitespace failures in t/17sqlfxml-producer.t (RT#70786)
      Pod fixage
      Deprecate SQL::Translator::Schema::Graph, undocument as_graph()
      Add a git mailmap
      Fix incorrect ordering in test (fails under unstable hash order i.e. 5.8.1)
      Fix MANIFEST.SKIP (MYMETA fail)
      Quote all dep versions (preserve trailing 0's and whatnot)
      Forgotten dependency used in bdf60588
      Add forgotten test skip after removed dependency in 1abbbee1
      Correct SQLite quote-char
      Really fix mysql CURRENT_TIMESTAMP handling (solves RT#65844)
      A set of placeholder directories for future refactoring
      Move ProducerUtils into the new dir layout
      Merge branch 'people/frew/mega-refactor'
      Back out bdf60588b to disable P::RD grammar precompilation - until P::RD is fixed
      Silence prove -w warnings
      Incomplete revert in 0eb3b94a5
      Dependency cleanup
      Switch to sane subcommand launch in tests
      Stop the DBI parser from disconnecting externally supplied DBI handles
      Fix silly syntax error, introduced in 0c04c5a22
      Add Jess as authority for new namespaces
      Fix broken plan
      Hide deprecated stuff
      Resurrect the DB2 precompiled grammar to which we lost the source
      This seems to no longer be used anywhere...?
      Moar documentation, shape up license/copyright notices
      Fixor borked docs (we already test for this in t/66-postgres-dbi-parser.t)
      Remove old dist tarball which snuck in during a14ab50e
      Remove SQL::Translator::Schema::Graph as announced in 0.11011
      Moo port makes both of these no longer needed
      Both of these are pre 5.8 coredeps
      Lose one more useless dependency
      XML writing is not strictly necessary for everything else to work
      No versions in use statements - encourages shit like autorequires
      Properly tag our XML namespace URI - it is not a real link

Rafael Kitover (7):
      normalize SQLite and Postgres version numbers
      remove unnecessary bit of code
      patch from abraxxa (Alexander Hartmaier) to truncate unique constraint names that are too long
      update Changes
      Fix POD typo in SQL/Translator/Schema/Trigger.pm (RT#63451)
      Add support for triggers in the MySQL producer (RT#63452) ilmari++
      tests for MySQL Producer triggers

Ricardo Signes (2):
      properly compare fields
      fix test expectations

Robert Bohne (3):
      Call ->on_delete & ->on_update in SCALAR context not in LIST context
      Handle on_delete => 'restrict' in Producer::Oracle
      Change my E-Mail address

Ross Smith II (15):
      MySQL allows for length parameter on PRIMARY KEY field names
      Applied patch #780781: Missing binmode in Producer/GraphViz.pm.
      Applied CPAN patch #3235 MANIFEST: missing some files [patch]
      Applied CPAN patch #3247: Missing ora_data_type dec(imal)
      Fixed ENUMs (They were coming over as ENUM(n)).
      Stops Use of uninitialized value in numeric gt (>) at /usr/local/share/perl/5.6.1/SQL/Translator/Parser/MySQL.pm line 594
      zerofill has translated as 1
      We need to quote the enum field values
      Added test file that includes all (well, most) of the DDL for MySQL
      Added test file that includes all (well, it will) of the DDL for Postgres
      Lots of Postgres fixes:
      Added quotes around ENUM values in CONSTRAINT for Oracle & Sybase.
      Added DOUBLE PRECISION. Parser::MySQL chokes on this
      Added FIXED as DEC per http://www.mysql.com/doc/en/Column_types.html
      Fixed ORA-02329 and ORA-00907 errors.

Sam Angiuoli (1):
      added Sybase producer

Scott Cain (2):
      revamped Pg DBI parser to query system tables.  This still doesn't work
      refining the parser, but it still doesn't do everything it should:

Sebatian B. Knapp (3):
      Add (now passing) test with file from RT#70473
      fixed typo reported in rt68912
      Fix for mysql producer drop primary key, refs #62250

Songmu (1):
      Add SQL_TINYINT and SQL_BIGINT to %SQL::Translator::Schema::Field::type_mapping

Stephen Bennett (1):
      Use CASCADE when dropping a postgres enum type, to be consistent with table drops

Tina Mueller (3):
      add support for "DEFAULT (\d+)::data_type" in PostgreSQL Parser
      fix diff for altering two things per column - add ; at the end
      produce_diff_sql(): list context

Vincent Bachelier (2):
      quote properly all table name
      test quoted for mysql

Wallace Reis (5):
      Added CREATE VIEW subrules for mysql parser
      Produce DDL for MySQL table field with ref in 'ON UPDATE'
      Fix warning due uninitialized var
      Extend Field->equals() for numeric comparison
      Add more data_types for sql_types mapping

William Wolf (1):
      Fix Pg diff issue with drop constraint on primary keys

clodeindustrie (1):
      Add Json and hstore types in the PostgreSQL parser

giftnuss (1):
      Change mysql parser to throw exceptions on unspecified default values (RT#4835)

gregor herrmann (1):
      Imported Upstream version 0.11021

rporres (1):
      Fixed autoincrement in primary keys for SQLite

-----------------------------------------------------------------------

No new revisions were added by this update.

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libsql-translator-perl.git



More information about the Pkg-perl-cvs-commits mailing list