5 years agoPort Makefile.PL from Module::Install to Distar mohawk2-eumm
Ed J [Tue, 14 Aug 2018 02:19:10 +0000]
Port Makefile.PL from Module::Install to Distar

5 years agoAdd ether to AUTHORS
Dagfinn Ilmari Mannsåker [Sun, 28 Apr 2019 10:21:45 +0000]
Add ether to AUTHORS

5 years agoAdd support for materialized views in Oracle producer
Alexander Hartmaier [Thu, 7 Apr 2016 14:50:23 +0000]
Add support for materialized views in Oracle producer

5 years agoJSON.pm -> JSON::MaybeXS
Karen Etheridge [Wed, 5 Dec 2018 17:41:55 +0000]
JSON.pm -> JSON::MaybeXS

5 years agoTest on 5.28 in Travis
Dagfinn Ilmari Mannsåker [Thu, 2 Aug 2018 13:57:30 +0000]
Test on 5.28 in Travis

5 years agoLinkify class names in Schema POD
Dagfinn Ilmari Mannsåker [Thu, 2 Aug 2018 13:54:42 +0000]
Linkify class names in Schema POD

6 years agoGive more friendly error message for missing M:I author plugins
Dagfinn Ilmari Mannsåker [Mon, 5 Mar 2018 16:28:29 +0000]
Give more friendly error message for missing M:I author plugins

6 years agoAdd support for parsing PostgreSQL dollar-quoted strings
Dagfinn Ilmari Mannsåker [Fri, 23 Sep 2016 14:04:41 +0000]
Add support for parsing PostgreSQL dollar-quoted strings

6 years agoavoid conditional variable declaration
exercism-1 [Thu, 25 Jan 2018 12:41:15 +0000]
avoid conditional variable declaration

perldoc perlsyn:

> The behaviour of a `my`, `state`, or `our` modified with a statement modifier conditional or loop construct (for example, `my $x if ...` ) is **undefined**.

6 years agoReport coverage to Codecov as well as Coveralls
Dagfinn Ilmari Mannsåker [Tue, 16 Jan 2018 18:21:46 +0000]
Report coverage to Codecov as well as Coveralls

Devel::Cover::Report::Codecov 0.22 works on perl 5.8

6 years agoExplicitly set COVERAGE=coveralls
Dagfinn Ilmari Mannsåker [Tue, 9 Jan 2018 13:50:15 +0000]
Explicitly set COVERAGE=coveralls

No codedov, it the reporter module has deps that require 5.10.1.

6 years agoTest more perl versions in Travis
Dagfinn Ilmari Mannsåker [Tue, 9 Jan 2018 13:15:11 +0000]
Test more perl versions in Travis

6 years agoExplicitly configure CPAN in Travis
Dagfinn Ilmari Mannsåker [Tue, 9 Jan 2018 13:07:56 +0000]
Explicitly configure CPAN in Travis

Fixes depedency installation on 5.8

6 years agorelease 0.11024 v0.11024
Dagfinn Ilmari Mannsåker [Tue, 9 Jan 2018 10:23:56 +0000]
release 0.11024

6 years agoRemove temporary test diagnostics
Dagfinn Ilmari Mannsåker [Mon, 11 Dec 2017 12:15:13 +0000]
Remove temporary test diagnostics

6 years agoEscape newlines in skip reason
Dagfinn Ilmari Mannsåker [Mon, 11 Dec 2017 12:14:40 +0000]
Escape newlines in skip reason

6 years agodev release 0.11023_02
Dagfinn Ilmari Mannsåker [Fri, 8 Dec 2017 11:14:49 +0000]
dev release 0.11023_02

6 years agoMake maybe_plan skip on unrecognised failures to load modules
Dagfinn Ilmari Mannsåker [Fri, 8 Dec 2017 11:14:06 +0000]
Make maybe_plan skip on unrecognised failures to load modules

6 years agoDev release with diagnostics for mysterious test failures
Dagfinn Ilmari Mannsåker [Thu, 7 Dec 2017 12:45:58 +0000]
Dev release with diagnostics for mysterious test failures

6 years agorelease 0.11023 v0.11023
Dagfinn Ilmari Mannsåker [Tue, 5 Dec 2017 13:48:46 +0000]
release 0.11023

6 years agoFix error handling for Test::PostgreSQL 1.20
Dagfinn Ilmari Mannsåker [Tue, 5 Dec 2017 13:45:29 +0000]
Fix error handling for Test::PostgreSQL 1.20

Version 1.20 started throwing instead of returning undef for on
errors.  It still sets $Test::PostgreSQL::errstr, so use that in the
skip message for compatibility with the older versions.

6 years agorelease 0.11022 v0.11022
Dagfinn Ilmari Mannsåker [Mon, 4 Dec 2017 11:50:21 +0000]
release 0.11022

6 years agoFix running Makefile.PL without '.' in @INC
Dagfinn Ilmari Mannsåker [Mon, 4 Dec 2017 11:53:35 +0000]
Fix running Makefile.PL without '.' in @INC

6 years agoFix relying on exact serialisation for JSON/YAML tests (RT#121901)
Dagfinn Ilmari Mannsåker [Wed, 6 Sep 2017 14:57:04 +0000]
Fix relying on exact serialisation for JSON/YAML tests (RT#121901)

Instead, decode the expected and generated JSON/YAML and use
is_deeply() on the data structures.

7 years agoOnly output trigger 'scope' if it's set in YAML and JSON producers
Dagfinn Ilmari Mannsåker [Thu, 26 Jan 2017 18:28:05 +0000]
Only output trigger 'scope' if it's set in YAML and JSON producers

7 years agoImprove trigger 'scope' attribute support (RT#119997)
Dagfinn Ilmari Mannsåker [Thu, 26 Jan 2017 17:42:30 +0000]
Improve trigger 'scope' attribute support (RT#119997)

- JSON, YAML and XML producers
- XML and SQLite parsers

TODO: Unify with the DB2 parser/producer's 'granularity' extra attribute

8 years agoRemove duplicate entry in DBI drivers hash
Dagfinn Ilmari Mannsåker [Sun, 17 Apr 2016 16:08:15 +0000]
Remove duplicate entry in DBI drivers hash

8 years agoFix incorrect serial instead of bigserial in PG
Andrew Beverley [Tue, 29 Sep 2015 09:19:00 +0000]
Fix incorrect serial instead of bigserial in PG

When generating PostgreSQL, auto-incrementing bigint columns are
incorrectly converted to serial types. Instead they should be
converted to bigserial.

8 years agoWork around RT#108460, intermittent postgresql-rename-table-and-field.t fail
Peter Rabbitson [Wed, 4 Nov 2015 16:25:11 +0000]
Work around RT#108460, intermittent postgresql-rename-table-and-field.t fail

8 years agoFail more gracefully on non-loadable compiled module parts
Peter Rabbitson [Wed, 4 Nov 2015 14:48:23 +0000]
Fail more gracefully on non-loadable compiled module parts

Without this in my current system state `prove -l t/09sqlt-diagram.t` gives

...Can't load producer 'Diagram' : Error loading Diagram as SQL::Translator::Producer::Diagram :
Can't load '.../5.16.2/lib/site_perl/5.16.2/x86_64-linux-thread-multi-ld/auto/GD/GD.so' for module GD:
libgd.so.2: cannot open shared object file: No such file or directory at
.../5.16.2/lib/5.16.2/x86_64-linux-thread-multi-ld/DynaLoader.pm line 190.

8 years agoUpdated MANIFEST.SKIP to include AUTHORS file.
Mohammad S Anwar [Sun, 1 Nov 2015 17:24:53 +0000]
Updated MANIFEST.SKIP to include AUTHORS file.

8 years agoPass $options through directly instead of $generator
Dagfinn Ilmari Mannsåker [Wed, 9 Sep 2015 15:09:26 +0000]
Pass $options through directly instead of $generator

8 years agoFix identifier quoting in PostGIS statements
Dagfinn Ilmari Mannsåker [Wed, 9 Sep 2015 14:08:09 +0000]
Fix identifier quoting in PostGIS statements

8 years agoFix string quoting in PostGIS statements
Dagfinn Ilmari Mannsåker [Wed, 9 Sep 2015 11:52:29 +0000]
Fix string quoting in PostGIS statements

8 years agoFix missing semicolons between PostGIS statements
Dagfinn Ilmari Mannsåker [Wed, 9 Sep 2015 14:02:20 +0000]
Fix missing semicolons between PostGIS statements

8 years agoFurther clean up PostGIS code
Dagfinn Ilmari Mannsåker [Wed, 9 Sep 2015 13:56:11 +0000]
Further clean up PostGIS code

No functional changes

8 years agoFix horrendous indentation in PostGIS code
Dagfinn Ilmari Mannsåker [Wed, 9 Sep 2015 13:22:52 +0000]
Fix horrendous indentation in PostGIS code

8 years agoRemove or use unused variables in PostgreSQL producer
Dagfinn Ilmari Mannsåker [Wed, 9 Sep 2015 14:08:35 +0000]
Remove or use unused variables in PostgreSQL producer

8 years agoFix identifier quoting in PostgreSQL diff producer
Dagfinn Ilmari Mannsåker [Wed, 9 Sep 2015 11:34:02 +0000]
Fix identifier quoting in PostgreSQL diff producer

8 years agoReduce scope of file-level variables
Dagfinn Ilmari Mannsåker [Wed, 9 Sep 2015 11:04:10 +0000]
Reduce scope of file-level variables

They're only used in one function each, but need to carry state between
invocations, so wrap each in a new scope.

Read under diff -w

8 years agoRemove unused reserved words list
Dagfinn Ilmari Mannsåker [Wed, 9 Sep 2015 10:56:03 +0000]
Remove unused reserved words list

Special-casing of reserved words was removed in favour of proper quoting
in 2011 (commit 5f31ed6), but the list of reserved words was left in.

8 years agoMake PostgreSQLs max identifier length a constant
Dagfinn Ilmari Mannsåker [Wed, 9 Sep 2015 10:52:14 +0000]
Make PostgreSQLs max identifier length a constant

8 years agoMinor cleanups in Producer::PostgreSQL::create_table()
Dagfinn Ilmari Mannsåker [Tue, 8 Sep 2015 17:18:45 +0000]
Minor cleanups in Producer::PostgreSQL::create_table()

8 years agoFix multi-line comments in PostgreSQL producer
Dagfinn Ilmari Mannsåker [Tue, 8 Sep 2015 17:15:30 +0000]
Fix multi-line comments in PostgreSQL producer

8 years agoFix multi-line comments in YAML and JSON producers
Dagfinn Ilmari Mannsåker [Tue, 8 Sep 2015 17:04:42 +0000]
Fix multi-line comments in YAML and JSON producers

8 years agoFix parsing of MySQL column comments (RT#83380)
Dagfinn Ilmari Mannsåker [Tue, 8 Sep 2015 16:19:50 +0000]
Fix parsing of MySQL column comments (RT#83380)

8 years agoSwitch MySQL parser test to done_testing
Dagfinn Ilmari Mannsåker [Tue, 8 Sep 2015 12:31:40 +0000]
Switch MySQL parser test to done_testing

8 years agoFix parsing quoted strings with leading spaces
Dagfinn Ilmari Mannsåker [Mon, 7 Sep 2015 16:49:27 +0000]
Fix parsing quoted strings with leading spaces

8 years agoSimplify .travis.yml
Dagfinn Ilmari Mannsåker [Sun, 28 Jun 2015 19:13:16 +0000]
Simplify .travis.yml

8 years agoInstall more test deps on Travis
Dagfinn Ilmari Mannsåker [Sun, 28 Jun 2015 20:23:52 +0000]
Install more test deps on Travis

8 years agoExplicitly install CGI from CPAN on Travis
Dagfinn Ilmari Mannsåker [Sun, 28 Jun 2015 20:13:30 +0000]
Explicitly install CGI from CPAN on Travis

The core version is deprecated in 5.20 and removed in perl 5.22

8 years agoUse Travis container infrastructure for faster builds
Dagfinn Ilmari Mannsåker [Sun, 28 Jun 2015 18:21:07 +0000]
Use Travis container infrastructure for faster builds

8 years agoAdd support for CHECK constraint in POD producer (GH#63)
Andrew Gregory [Sat, 27 Jun 2015 15:38:01 +0000]
Add support for CHECK constraint in POD producer (GH#63)

8 years agoAdd support for USING and WHERE on indexes in PostgreSQL parser
Sebastian Podjasek [Fri, 26 Jun 2015 13:43:07 +0000]
Add support for USING and WHERE on indexes in PostgreSQL parser

RT#63814, GH#52

8 years agoAdd support for USING and WHERE on indexes in PostgreSQL producer
Sebastian Podjasek [Wed, 8 Apr 2015 23:40:35 +0000]
Add support for USING and WHERE on indexes in PostgreSQL producer

RT#63814, GH#52

8 years agoAdd C<> formatting to code-like text elements
Paul Cochrane [Thu, 25 Jun 2015 11:33:47 +0000]
Add C<> formatting to code-like text elements

This makes things which are basically code stand out as being such.

8 years agoFix minor typos in POD
Paul Cochrane [Thu, 25 Jun 2015 11:33:31 +0000]
Fix minor typos in POD

8 years agoRemove empty sections
Paul Cochrane [Thu, 25 Jun 2015 11:27:08 +0000]
Remove empty sections

This removes (most of, but not yet all) the `empty section in previous
paragraph` warnings.

8 years agoAdd a DESCRIPTION to SQL::Translator::Filter::Names
Paul Cochrane [Thu, 25 Jun 2015 11:16:33 +0000]
Add a DESCRIPTION to SQL::Translator::Filter::Names

Do this correctly this time.  I seem to have mixed up the location while
merging other patches.

8 years agoFix PostgreSQL grammar parsing of UUID, time, timetz column types
Sebastian Podjasek [Wed, 8 Apr 2015 23:36:40 +0000]
Fix PostgreSQL grammar parsing of UUID, time, timetz column types

8 years agoAdd SQLite support for check constraints
Andrew Gregory [Sun, 7 Jun 2015 06:30:30 +0000]
Add SQLite support for check constraints

8 years agoReplace sectioned links with C<> formatting
Paul Cochrane [Fri, 12 Jun 2015 12:49:40 +0000]
Replace sectioned links with C<> formatting

Using L<> for sectioned links (e.g. L<perl(1)>) is deprecated.  The
Pod::Checker docs state that "POD hyperlinks may point to POD documents
only."  This change also removes a warning from podchecker.

8 years agoRemove empty =over blocks
Paul Cochrane [Fri, 12 Jun 2015 11:06:43 +0000]
Remove empty =over blocks

This removes the 'No items in =over' warning from podchecker

8 years agoAdd space after =cut statement
Paul Cochrane [Fri, 12 Jun 2015 10:59:33 +0000]
Add space after =cut statement

This corrects the 'Spurious text after =cut' errors found by podchecker.

8 years agoImprove add_trigger consistency between producers
Andrew Gregory [Sun, 14 Dec 2014 22:29:45 +0000]
Improve add_trigger consistency between producers

Update Producer::SQLite and Producer::MySQL to only wrap the trigger
action in "BEGIN...END" when the user has not already done so, bringing
them in line with other producers and the add_trigger documentation.

8 years agoQuoted table_name wasn't being used during MySQL DROP TABLE construction
mix3@サタデーナイトフィーバー [Thu, 2 Apr 2015 04:14:46 +0000]
Quoted table_name wasn't being used during MySQL DROP TABLE construction

8 years agoprevent debug calls with expensive arguments if debugging is not enabled
Christian Walde [Mon, 11 May 2015 15:03:33 +0000]
prevent debug calls with expensive arguments if debugging is not enabled

15-05-11@16:58:43
(ribasushi) just optimize for "minimal logical diff", and
            ignore the urge to "strive for elegance"

8 years agoRemove dependency on List::MoreUtils
Peter Rabbitson [Wed, 24 Jun 2015 15:31:31 +0000]
Remove dependency on List::MoreUtils

Current LMU maintainer was proven unresponsive to concerns about the towering
complexity of that modules dependency chain. Use a pure-perl implementation
of uniq() compatible with the version in LMU 0.4xx series

The slowdown, while noticeable, is of no consequence to the larger codebase

~$ dd if=/dev/urandom bs=512 count=1 2>/dev/null | perl -0777 -Ilib -MSQL::Translator::Utils -MList::MoreUtils::XS -MBenchmark::Dumb -e '
  my @list = map ord, split "", <>;

  Benchmark::Dumb::cmpthese( 0.0001 => {
    lmu => sub {
      List::MoreUtils::uniq(@list);
    },
    pp => sub {
      SQL::Translator::Utils::uniq(@list);
    }
  })
'
               Rate    pp    lmu
pp  2838.17+-0.28/s    -- -35.2%
lmu 4381.99+-0.44/s 54.4%     --

9 years agoDeclare dependencies in deterministic order (RT#102859)
Zefram [Fri, 20 Mar 2015 10:40:21 +0000]
Declare dependencies in deterministic order (RT#102859)

The dependencies were declared in a non-deterministic order, due to hash
randomisation.  This causes noise when diffing build logs.

9 years agoAdd support for optional monotonically increasing sqlite autoincrement
Ivan Baidakou [Mon, 8 Dec 2014 05:49:06 +0000]
Add support for optional monotonically increasing sqlite autoincrement

Enabled with $field->extra->{auto_increment_type} = 'monotonic'

9 years agoRemove explicit strictures usage
Peter Rabbitson [Thu, 26 Feb 2015 18:11:12 +0000]
Remove explicit strictures usage

9 years agorelease 0.11021 v0.11021
Dagfinn Ilmari Mannsåker [Thu, 29 Jan 2015 12:33:04 +0000]
release 0.11021

9 years agoFix array types and multidimensional sizes in Parser::PostgreSQL
Dagfinn Ilmari Mannsåker [Tue, 27 Jan 2015 14:46:35 +0000]
Fix array types and multidimensional sizes in Parser::PostgreSQL

Fixes #49

9 years agoSwitch back to upstream travis-perl-helpers
Dagfinn Ilmari Mannsåker [Wed, 7 Jan 2015 13:26:14 +0000]
Switch back to upstream travis-perl-helpers

9 years agoFix multi-column indexes in Parser::DBI::PostgreSQL
Dagfinn Ilmari Mannsåker [Tue, 6 Jan 2015 19:04:50 +0000]
Fix multi-column indexes in Parser::DBI::PostgreSQL

9 years agoAdd Changes entry for 5.8.1 SQLite diffing fix
Dagfinn Ilmari Mannsåker [Tue, 6 Jan 2015 18:46:25 +0000]
Add Changes entry for 5.8.1 SQLite diffing fix

9 years agoFix SQLite diffing on perl 5.8.1
Dagfinn Ilmari Mannsåker [Tue, 6 Jan 2015 15:38:25 +0000]
Fix SQLite diffing on perl 5.8.1

Empty subs return their arguments in list context on 5.8.1, so stick
an empty expression in it.

9 years agoTranslate MS Access memo type to text in Producer::PostgreSQL
Dagfinn Ilmari Mannsåker [Wed, 10 Dec 2014 17:29:25 +0000]
Translate MS Access memo type to text in Producer::PostgreSQL

9 years agoFix clob type translation in Producer::PostgreSQL
Dagfinn Ilmari Mannsåker [Wed, 10 Dec 2014 17:28:59 +0000]
Fix clob type translation in Producer::PostgreSQL

- Match types to translate case-insensitively
- Convert clob to text, not bytea

9 years agoRemove redundant entries from Producer::PostrgeSQL's type mapping
Dagfinn Ilmari Mannsåker [Wed, 10 Dec 2014 17:27:44 +0000]
Remove redundant entries from Producer::PostrgeSQL's type mapping

9 years agoProvide default index names for SQLite
Andrew Gregory [Mon, 3 Nov 2014 18:19:42 +0000]
Provide default index names for SQLite

The allegedly default names were never used causing the first index
created without a name to fail and subsequent indices to be named 02,
03, 04...  This uses the table name with '_idx' appended as the default,
similar to the PostgreSQL producer.

9 years agoFix quoting of trigger name and table in Producer::PostgreSQL
Dagfinn Ilmari Mannsåker [Sun, 14 Dec 2014 19:57:38 +0000]
Fix quoting of trigger name and table in Producer::PostgreSQL

9 years agoUpdate the Free Software Foundation's address (RT#100531)
Dagfinn Ilmari Mannsåker [Mon, 24 Nov 2014 18:29:50 +0000]
Update the Free Software Foundation's address (RT#100531)

9 years agoRemove executable bit from Parser/JSON.pm (RT#100532)
Dagfinn Ilmari Mannsåker [Mon, 24 Nov 2014 18:18:50 +0000]
Remove executable bit from Parser/JSON.pm (RT#100532)

9 years agoFix erroneous PostgreSQL floating point type translations (RT#99725)
Nick Wellnhofer [Mon, 27 Oct 2014 13:26:21 +0000]
Fix erroneous PostgreSQL floating point type translations (RT#99725)

9 years agoCall close as a function rather than a method
Dagfinn Ilmari Mannsåker [Wed, 22 Oct 2014 15:44:41 +0000]
Call close as a function rather than a method

Hopefully fixes test failure on 5.10.0 on MSWin32

9 years agoMerge branch 'oracle-fixes'
Dagfinn Ilmari Mannsåker [Sat, 18 Oct 2014 14:49:54 +0000]
Merge branch 'oracle-fixes'

9 years agoNarrow the scope of Oracle roundtrip TODO
Dagfinn Ilmari Mannsåker [Sun, 21 Sep 2014 22:41:15 +0000]
Narrow the scope of Oracle roundtrip TODO

The parser can now understand the producer output, but doesn't turn the
triggers it generates back into is_auto_increment and timestamp fields.

9 years agoAdd support for triggers in Parser::Oracle
Dagfinn Ilmari Mannsåker [Sat, 20 Sep 2014 16:20:12 +0000]
Add support for triggers in Parser::Oracle

9 years agoHandle ALTER TABLE ... ADD CONSTRAINT in Parser::Oracle
Dagfinn Ilmari Mannsåker [Sat, 20 Sep 2014 16:07:09 +0000]
Handle ALTER TABLE ... ADD CONSTRAINT in Parser::Oracle

9 years agoMerge branch 'quoting-fixes'
Dagfinn Ilmari Mannsåker [Sat, 18 Oct 2014 14:47:48 +0000]
Merge branch 'quoting-fixes'

9 years agoAdd Changes entry for quoting fixes
Dagfinn Ilmari Mannsåker [Mon, 22 Sep 2014 00:06:10 +0000]
Add Changes entry for quoting fixes

9 years agoQuote table names in 'SHOW CREATE TABLE' in Parser::DBI::MySQL
Dagfinn Ilmari Mannsåker [Thu, 24 Jul 2014 16:30:01 +0000]
Quote table names in 'SHOW CREATE TABLE' in Parser::DBI::MySQL

9 years agoTest quotes in field comments
Dagfinn Ilmari Mannsåker [Sun, 21 Sep 2014 23:52:35 +0000]
Test quotes in field comments

9 years agoTest round-tripping decimal default values
Dagfinn Ilmari Mannsåker [Sun, 21 Sep 2014 19:05:27 +0000]
Test round-tripping decimal default values

9 years agoTest round-tripping default values with quotes and backslashes
Dagfinn Ilmari Mannsåker [Sun, 21 Sep 2014 19:10:44 +0000]
Test round-tripping default values with quotes and backslashes

9 years agoEscape quotes in string values in producers
Dagfinn Ilmari Mannsåker [Tue, 1 Jul 2014 08:19:59 +0000]
Escape quotes in string values in producers

9 years agoTest table and field names with quote characters in them
Dagfinn Ilmari Mannsåker [Mon, 30 Jun 2014 17:58:45 +0000]
Test table and field names with quote characters in them

9 years agoEscape the closing quote character when quoting indentifiers
Dagfinn Ilmari Mannsåker [Sun, 29 Jun 2014 17:36:33 +0000]
Escape the closing quote character when quoting indentifiers

9 years agoFix handling of quoted identifiers and strings in Parser::Oracle
Dagfinn Ilmari Mannsåker [Mon, 30 Jun 2014 21:16:50 +0000]
Fix handling of quoted identifiers and strings in Parser::Oracle