Skip to content

Commit

Permalink
prepare for a CPAN dev release (v2.47_01)
Browse files Browse the repository at this point in the history
  • Loading branch information
damil committed Jan 1, 2018
1 parent 73ef9b8 commit 9cd1a31
Show file tree
Hide file tree
Showing 6 changed files with 113 additions and 77 deletions.
4 changes: 1 addition & 3 deletions Build.PL
Original file line number Diff line number Diff line change
Expand Up @@ -10,16 +10,14 @@ my $builder = Module::Build->new(
dist_version_from => 'lib/DBIx/DataModel.pm',
requires => {
'perl' => 5.008,
'Test::More' => 0,
'version' => 0,
'Carp::Clan' => 0,
'DBI' => 0,
'SQL::Abstract::More' => 1.31,
'Module::Build' => 0,
'Acme::Damn' => 0,
'Scalar::Util' => 1.07,
'Storable' => 0,

# new dependencies in 2.0
'namespace::clean' => 0,
'MRO::Compat' => 0,
'Module::Load' => 0,
Expand Down
7 changes: 6 additions & 1 deletion Changes
Original file line number Diff line number Diff line change
@@ -1,14 +1,19 @@
Revision history for Perl extension DBIx::DataModel.

v2.47
v2.47_01 01.01.2018
- extending -result_as through subclasses in DBIDM::Schema::ResultAs namespace
- new result kinds : xlsx, tsv, file_tabular, count, etc.
- methods db_schema() and with_db_schema to prefix tables by DB schema name
- new method $schema->do_after_commit()
- new statement methods : dbh(), finish(), headers()
- better factorization of operations for update()
- better validation of arguments (no longer allow_extra)
- use Carp::Clan
- drop dependency on Scalar::Does
- Meta::Utils exports subroutines instead of OO methods
- simplify ConnectedSource and delegate most methods to Source
- main test suite ported to v2 syntax
- fix RT#113092 "can't locally disable a schema-general auto_update spec"

v2.46 02.06.2015
- let SQL::Abstract quote identifiers in ON conditions (Sergiy Zuban++)
Expand Down
152 changes: 94 additions & 58 deletions MANIFEST
Original file line number Diff line number Diff line change
@@ -1,58 +1,94 @@
Build.PL
Changes
lib/DBIx/DataModel.pm
lib/DBIx/DataModel/Compatibility/V0.pm
lib/DBIx/DataModel/Compatibility/V1.pm
lib/DBIx/DataModel/ConnectedSource.pm
lib/DBIx/DataModel/Doc/Cookbook.pod
lib/DBIx/DataModel/Doc/Delta_v1.pod
lib/DBIx/DataModel/Doc/Delta_v2.pod
lib/DBIx/DataModel/Doc/Design.pod
lib/DBIx/DataModel/Doc/Glossary.pod
lib/DBIx/DataModel/Doc/Internals.pod
lib/DBIx/DataModel/Doc/Misc.pod
lib/DBIx/DataModel/Doc/Quickstart.pod
lib/DBIx/DataModel/Doc/Reference.pod
lib/DBIx/DataModel/Meta.pm
lib/DBIx/DataModel/Meta/Association.pm
lib/DBIx/DataModel/Meta/Path.pm
lib/DBIx/DataModel/Meta/Schema.pm
lib/DBIx/DataModel/Meta/Source.pm
lib/DBIx/DataModel/Meta/Source/Join.pm
lib/DBIx/DataModel/Meta/Source/Table.pm
lib/DBIx/DataModel/Meta/Type.pm
lib/DBIx/DataModel/Meta/Utils.pm
lib/DBIx/DataModel/Schema.pm
lib/DBIx/DataModel/Schema/Generator.pm
lib/DBIx/DataModel/Source.pm
lib/DBIx/DataModel/Source/Join.pm
lib/DBIx/DataModel/Source/Table.pm
lib/DBIx/DataModel/Statement.pm
lib/DBIx/DataModel/Statement/JDBC.pm
lib/DBIx/DataModel/Statement/Oracle.pm
MANIFEST This list of files
META.json
META.yml
README
t/paging.t
t/v1_DBIx-DataModel.t
t/v1_Limit.t
t/v1_LocalizeState.t
t/v1_MsAccess.t
t/v1_ParentClasses.t
t/v1_Storable.t
t/v2_Oracle.t
t/v2_autolimit_firstrow.t
t/v2_array_datatypes.t
t/v2_bind_param.t
t/v2_define_class.t
t/v2_delete.t
t/v2_generator.t
t/v2_join_same_table.t
t/v2_multischema.t
t/v2_paths.t
t/v2_json.t
t/v2_type.t
t/v2_union.t
t/v2_update.t
t/v2_where_on.t
Build.PL
Changes
file
lib/DBIx/DataModel.pm
lib/DBIx/DataModel/Compatibility/V0.pm
lib/DBIx/DataModel/Compatibility/V1.pm
lib/DBIx/DataModel/ConnectedSource.pm
lib/DBIx/DataModel/Doc/Cookbook.pod
lib/DBIx/DataModel/Doc/Delta_v1.pod
lib/DBIx/DataModel/Doc/Delta_v2.pod
lib/DBIx/DataModel/Doc/Design.pod
lib/DBIx/DataModel/Doc/Glossary.pod
lib/DBIx/DataModel/Doc/Internals.pod
lib/DBIx/DataModel/Doc/Misc.pod
lib/DBIx/DataModel/Doc/Quickstart.pod
lib/DBIx/DataModel/Doc/Reference.pod
lib/DBIx/DataModel/Meta.pm
lib/DBIx/DataModel/Meta/Association.pm
lib/DBIx/DataModel/Meta/Path.pm
lib/DBIx/DataModel/Meta/Schema.pm
lib/DBIx/DataModel/Meta/Source.pm
lib/DBIx/DataModel/Meta/Source/Join.pm
lib/DBIx/DataModel/Meta/Source/Table.pm
lib/DBIx/DataModel/Meta/Type.pm
lib/DBIx/DataModel/Meta/Utils.pm
lib/DBIx/DataModel/Schema.pm
lib/DBIx/DataModel/Schema/Generator.pm
lib/DBIx/DataModel/Schema/pr_generator.pm
lib/DBIx/DataModel/Schema/pr_generator.pm.foo
lib/DBIx/DataModel/Schema/ResultAs.pm
lib/DBIx/DataModel/Schema/ResultAs/Categorize.pm
lib/DBIx/DataModel/Schema/ResultAs/Count.pm
lib/DBIx/DataModel/Schema/ResultAs/Fast_statement.pm
lib/DBIx/DataModel/Schema/ResultAs/File_tabular.pm
lib/DBIx/DataModel/Schema/ResultAs/Firstrow.pm
lib/DBIx/DataModel/Schema/ResultAs/Flat_arrayref.pm
lib/DBIx/DataModel/Schema/ResultAs/Hashref.pm
lib/DBIx/DataModel/Schema/ResultAs/Json.pm
lib/DBIx/DataModel/Schema/ResultAs/Rows.pm
lib/DBIx/DataModel/Schema/ResultAs/Sql.pm
lib/DBIx/DataModel/Schema/ResultAs/Statement.pm
lib/DBIx/DataModel/Schema/ResultAs/Sth.pm
lib/DBIx/DataModel/Schema/ResultAs/Subquery.pm
lib/DBIx/DataModel/Schema/ResultAs/Tsv.pm
lib/DBIx/DataModel/Schema/ResultAs/Xlsx.pm
lib/DBIx/DataModel/Schema/ResultAs/Yaml.pm
lib/DBIx/DataModel/Source.pm
lib/DBIx/DataModel/Source/Join.pm
lib/DBIx/DataModel/Source/Table.pm
lib/DBIx/DataModel/Statement.pm
lib/DBIx/DataModel/Statement/JDBC.pm
lib/DBIx/DataModel/Statement/Oracle.pm
MANIFEST This list of files
META.json
META.yml
README
setenv_tests_ORACLE.pl
t/00-load.t
t/file
t/foo.pl
t/foo_ora.pl
t/launch_oracle.bat
t/lib/HR/ResultAs/Buggy.pm
t/lib/HR/ResultAs/Stupid.pm
t/paging.t
t/pod.t
t/rt099205.t
t/rt104856_dot_in_function.t
t/v1_DBIx-DataModel.t
t/v1_Limit.t
t/v1_LocalizeState.t
t/v1_MsAccess.t
t/v1_ParentClasses.t
t/v1_Storable.t
t/v2_array_datatypes.t
t/v2_auto_update.t
t/v2_autolimit_firstrow.t
t/v2_bind_param.t
t/v2_db_schema.t
t/v2_Dbix-DataModel.t
t/v2_define_class.t
t/v2_delete.t
t/v2_generator.t
t/v2_join_same_table.t
t/v2_json.t
t/v2_multischema.t
t/v2_Oracle.t
t/v2_paths.t
t/v2_result_as.t
t/v2_type.t
t/v2_union.t
t/v2_update.t
t/v2_where_on.t
t/v2_where_on_Basis.pl
6 changes: 6 additions & 0 deletions MANIFEST.SKIP
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
\bCVS\b
,v$
\B\.svn\b
^\.git

# Avoid Makemaker generated and utility files.
\bMakefile$
Expand All @@ -22,7 +23,12 @@ Build.bat$
\.tmp$
\.old$
\.bak$
\.log$
\.BUG$
\#$
\b\.#
^MYMETA.yml$
^MYMETA\.json$

DBIC_example
tmp/
9 changes: 6 additions & 3 deletions lib/DBIx/DataModel.pm
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,10 @@ package DBIx::DataModel;
use 5.008;
use warnings;
use strict;
use version;
use MRO::Compat (); # don't want to call MRO::Compat::import()
use Carp::Clan qw[^(DBIx::DataModel::|SQL::Abstract)];
our $VERSION = '2.47';
our $VERSION = '2.47_01';

# compatibility setting : see import()
our $COMPATIBILITY = $VERSION; # from 2.20, no longer automatic compatibility
Expand All @@ -35,8 +36,10 @@ sub import {
|| $VERSION; # undef : means no compatibility
}

require DBIx::DataModel::Compatibility::V1 if $COMPATIBILITY < 1.99;
require DBIx::DataModel::Compatibility::V0 if $COMPATIBILITY < 1.00;
require DBIx::DataModel::Compatibility::V1
if version->parse($COMPATIBILITY) < version->parse("1.99");
require DBIx::DataModel::Compatibility::V0
if version->parse($COMPATIBILITY) < version->parse("1.00");
}


Expand Down
12 changes: 0 additions & 12 deletions lib/DBIx/DataModel/Doc/Design.pod
Original file line number Diff line number Diff line change
Expand Up @@ -1482,11 +1482,6 @@ Here is a list of points to improve in future versions C<DBIx::DataModel> :

- explain how to design families of tables with an intermediate superclass

- add attribute 'db_schema_name' in Schema->new(). Then one can have
my $dev = Schema->new(dbh => ..., db_schema_name => 'DEV');
my $prod = Schema->new(dbh => ..., db_schema_name => 'PROD');
and that name is prepended to table names

- doc glossary, introduce the 'path' term

- find a way to rename _singleInsert > _single_insert, without breaking
Expand All @@ -1507,17 +1502,10 @@ Here is a list of points to improve in future versions C<DBIx::DataModel> :
- think about freeze/thaw in multi-schema mode
- tune croak() in Statement.pm so that SQL errors are reported
from caller's line
- add methods $schema->meta_table($name), $schema->meta_join(qw/.../)
- add method "delete_..." for components of a Composition
- -result_as => 'count'
.. or should it be select(-columns => [-count => '*'],
-result_as => 'scalar') ??


- $obj->join(path1 ...)->select(...) should automatically add
-result_as => 'firstrow' when all multiplicities are 1. See TODO
in ConnnectedSources::join

- check auto_insert / auto_update columns to prevent intersections

- support for database schemas (i.e. prefix table names with schema names)

0 comments on commit 9cd1a31

Please sign in to comment.