David Schmidt [Wed, 20 Feb 2013 13:46:08 +0000]
fix missing cond in 'Equivalent SQL'
Peter Rabbitson [Wed, 20 Feb 2013 09:58:31 +0000]
Release v0.08208
Peter Rabbitson [Wed, 20 Feb 2013 09:57:03 +0000]
Add optdep on CPAN::Uploader to get an effortless `make upload`
Peter Rabbitson [Wed, 20 Feb 2013 09:35:00 +0000]
Even more distbuilding checks
Frew's environment (and *only* his environment) keeps producing weirdly
broken dists. Add an extra check for this until we figure out how exactly
his environment is broken.
Extra check tested on cygwin and strawberry for good measure.
Peter Rabbitson [Mon, 18 Feb 2013 20:22:26 +0000]
New Test::Strict no longer detects Moose::Role (RT#83433) - workaround
Peter Rabbitson [Sat, 16 Feb 2013 15:27:23 +0000]
Prevent SQL::Translator::Producer::YAML from seeing our potential $dbh
The failure mode here is extremely convoluted, full of unimaginable fail
and makes baby jesus cry :(
The long story: there are two ways to supply a $schema to the SQLT producer:
via an argument to translate() (sane) or at the time of translator instance
creation (less sane). In the second case this becomes a problem because some
serializing producers (e.g. SQLT::Producer::YAML) take the *entire*
SQLT instance and dump it to YAML. This includes the arguments which include
our schema with its storage and potentially its $dbh. This causes the
weird warnings described in e.g. RT#75394, because YAML creates a dead
DBI object upon de-serialization of said arguments. What's even more sad is
that while the YAML Producer dumps the entire SQLT instance, the YAML Parser
simply takes the ->{schema} part of this structure and throws everything
else away.
Of course we can not just fix the ::Producer - folks may very well be relying
on the structure it spits out (nobody knows if the *only* consumer of the
Producer::YAML output is in fact Parser::YAML). Really the only thing we can
know (well not know, but reasonably assume) is that there is no way that any
user relies on the accessing the storage passed in with a schema instance to
be parsed.
So what we do is the least invasive thing of all - at translate() time we
check the state of the passed in $schema and if it does have a storage
instance we simply detach it (by cloning the $schema instance) and as a
result everything remains happy.
Peter Rabbitson [Sat, 16 Feb 2013 15:12:50 +0000]
Deprecate the insane forest of SQLT::Parser::DBIC arguments
It seems like things have been just piled up with no plan nor reason. Bring in
the broom - converge on an argument name that actuall makes sense - dbic_schema
Peter Rabbitson [Sat, 16 Feb 2013 16:44:54 +0000]
Readjust the parallel no-test dependency install order
Better utilize the massive amount of CPUs we have available
Peter Rabbitson [Sat, 16 Feb 2013 16:05:12 +0000]
It appears that travis drastically increased the amount of available CPUs
Well, this is awesome - we just happen to be equipped to take advantage
of this ;)
Remove the branch-name limitations - now a smoke takes fraction of the time
it used to, no point to limit what we smoke anymore.
At the same time reduce the amount of threads building the perls - older
binaries do not build very well on -j32. This is a temporary thing - the
perl-building will soon be exported away anyway.
Peter Rabbitson [Fri, 15 Feb 2013 08:48:50 +0000]
More (temporary) kwalitee fixups
Peter Rabbitson [Thu, 14 Feb 2013 04:41:20 +0000]
Moar kwalitee - we do have pod(coverage) tests
Peter Rabbitson [Wed, 13 Feb 2013 22:20:29 +0000]
Add strict/warnings test, adjust all offenders (wow, that was a lot)
Should shut kwalitee up: http://cpants.cpanauthors.org/dist/DBIx-Class
Peter Rabbitson [Wed, 13 Feb 2013 18:39:57 +0000]
Stop shipping world writeable files in our tarball
The chain of failures would go as follows: when we prepare the tarball
we briefly copy all generated POD to our root dir so that the
manifest/distdir_copy process can pick it up. Then before the distdir is
ready we run a cleanup using ExtUtils::Install::uninstall. However
everything in the ditdir is hardlinked to our root dir, including the
files we "uninstall". EU::I::uninstall has a weird dance deep in its
source[1] where it explicitly does chmod(0666) on the file it is about
to delete (why?!). Thus we end up with world-writables in our distdir,
since the hardlinked inode still retains the result of that last chmod.
Switch to a manual cleanup, and leave EU::I alone.
[1] https://metacpan.org/source/YVES/ExtUtils-Install-1.54/lib/ExtUtils/Install.pm#L274
André Walker [Wed, 13 Feb 2013 15:47:17 +0000]
Fix duplicated columns for count()
When a same aggregate function was used more than once in a 'having'
clause, count() added that function more than once to 'select'.
Alexander Hartmaier [Mon, 11 Feb 2013 17:59:09 +0000]
release v0.08206
Peter Rabbitson [Thu, 7 Feb 2013 05:21:22 +0000]
Try Schwern's latest Test::Builder offering on a stock perl and a threaded blead
Peter Rabbitson [Thu, 7 Feb 2013 05:10:43 +0000]
Reorganize travis stuff a little - no functional changes
Peter Rabbitson [Thu, 7 Feb 2013 04:06:24 +0000]
Try to config Fibrebird twice - it does seem to help >.<
Read changeset under -w
Peter Rabbitson [Thu, 7 Feb 2013 04:04:37 +0000]
Temporary workaround for Path::Class not being installable (RT#83143)
Peter Rabbitson [Fri, 1 Feb 2013 06:55:04 +0000]
Changelogging for
728f32b5 and e705f529
Peter Rabbitson [Fri, 1 Feb 2013 06:50:15 +0000]
Revert parts of
6864429a which utterly broke dbh_do() retries
Was never noticed because of undertesting, now should behave correctly
Peter Rabbitson [Fri, 1 Feb 2013 04:34:01 +0000]
Clarify travis timings
Peter Rabbitson [Fri, 1 Feb 2013 04:28:03 +0000]
New travis build infrastructure is 'set -e' sensitive
Peter Rabbitson [Tue, 29 Jan 2013 21:52:45 +0000]
Prevent spurious unclean git repo state on ddl regeneration
Peter Rabbitson [Tue, 29 Jan 2013 10:57:49 +0000]
Extra sanity check of a fresh DBI handle
Peter Rabbitson [Fri, 25 Jan 2013 13:14:31 +0000]
Make `perl Makefile.PL` runs more user friendly - better diagnostics
Peter Rabbitson [Fri, 25 Jan 2013 12:25:52 +0000]
Stop `perl Makefile.PL` from recursing into distdirs if present
Peter Rabbitson [Thu, 20 Dec 2012 15:11:09 +0000]
More .mailmap fixes
Peter Rabbitson [Thu, 1 Sep 2011 10:13:36 +0000]
General cleanup of error messages - quote identifiers/names where sensible
No functional changes
Peter Rabbitson [Wed, 26 Dec 2012 10:31:00 +0000]
Remove TODO labels from blocks not using todo_skip() - no test changes
Peter Rabbitson [Fri, 25 Jan 2013 02:26:06 +0000]
Revert
344f761c - this was a stupid idea
Way too many failures, maked CPANTesters output unusable.
Extracted and submitted as DBI RT#82942 instead
Peter Rabbitson [Wed, 23 Jan 2013 12:31:50 +0000]
::Storage::BlockRunner now has minimum POD, tell CPAN to noindex
It is not ready for prime time yet
Dagfinn Ilmari Mannsåker [Wed, 23 Jan 2013 12:07:33 +0000]
Only allow known globals in SQL::Translator leak allowance
Arthur Axel 'fREW' Schmidt [Wed, 23 Jan 2013 01:02:54 +0000]
release v0.08205
Peter Rabbitson [Tue, 22 Jan 2013 21:04:23 +0000]
Ensure xt/whitespace.t executes standalone
This way it will not pick up anything temporary a test may have left
around, and won't complain about the whitespace contents.
Jason McIntosh [Tue, 22 Jan 2013 03:17:47 +0000]
Clarifying that the "around" method modifier can come from Moose
Also adding a trailing semicolon to the "around" example. This way, it
better agrees with the information in Manual::FAQ.
Peter Rabbitson [Tue, 22 Jan 2013 01:35:06 +0000]
Do not tax travis with full pull request smoking
Peter Rabbitson [Sun, 20 Jan 2013 18:23:48 +0000]
Some cleanups around loading/use of DBIx::Class::Exception (no func. changes)
Peter Rabbitson [Sun, 20 Jan 2013 18:09:46 +0000]
Revert workarounds for $@ broken during 5.13.x - mainly
1f870d5a
Luckily reason prevailed and $@ was left alone during DESTROY time,
the complexity (mnost of it compiled away) is no longer needed
More historic info can be found here: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=dbsrgits/DBIx-Class-Historic.git;a=blob_plain;f=useful_guard_objects.html;h=4678884
Peter Rabbitson [Fri, 11 Jan 2013 17:58:42 +0000]
Further reshuffle logic in _rs_update_delete - no functional changes
review with -w, lots of reindentation
Peter Rabbitson [Wed, 21 Nov 2012 11:38:43 +0000]
Fix self-referential resultset update/delete on MySQL (aggravated by
31073ac7)
MySQL is unable to figure out it needs a temp-table when it is trying
to update a table with a condition it derived from that table. So what
we do here is give it a helpful nudge by rewriting any "offending"
subquery to a double subquery post-sql-generation.
Performance seems to be about the same for moderately large sets. If it
becomes a problem later we can always revisit and add the ability to
induce "row-by-row" update/deletion instead.
The implementation sucks, but is rather concise and most importantly
contained to the MySQL codepath only - it does not affect the rest of
the code flow in any way.
Peter Rabbitson [Mon, 19 Nov 2012 09:11:11 +0000]
Fix proper handling of composite resultset heads (e.g. as_subselect_rs)
Solves http://lists.scsys.co.uk/pipermail/dbix-class/2012-July/010650.html
Peter Rabbitson [Fri, 11 Jan 2013 18:00:20 +0000]
Move the *preliminary* multicol IN support to the sqlmaker
It really does not belong in ResultSet.pm, but we do not have an API
either. Take a first stab at a sketch, DQ will need to wrangle it to
completion.
Peter Rabbitson [Thu, 10 Jan 2013 21:35:51 +0000]
Flip quoting in all of t/71mysql.t (no test changes)
Peter Rabbitson [Mon, 7 Jan 2013 18:45:05 +0000]
Simplify dbh_do invocation, and only alias @_ when needed
Peter Rabbitson [Mon, 7 Jan 2013 18:43:40 +0000]
Scope::Upper somehow confuses pseudofork on older perls - investigation pending
View the patch with -w, lots of reindentation
Peter Rabbitson [Sat, 12 Jan 2013 17:35:36 +0000]
Reign in (a little bit) the sprawling CRLF insanity on Win32
In the process join the notabs/eol tests into one file, and tighten
the WS checks even more
Peter Rabbitson [Thu, 10 Jan 2013 18:32:19 +0000]
Ensure the testddl is regenerated at Makefile and distdir times
This will stop things constantly getting out of sync
Peter Rabbitson [Thu, 10 Jan 2013 18:08:31 +0000]
Regenerate SQLite testschema ddl with explicit quoting and generate FKs
We *do not* yet turn on FK checking in sqlite - many tests will need tweaking
Peter Rabbitson [Thu, 10 Jan 2013 17:15:52 +0000]
SQLT got a lot better lately - bump min version
Remove a large number of workarounds in the process
Peter Rabbitson [Mon, 7 Jan 2013 21:50:23 +0000]
Remove SQLA namespace pollution fixer - this is no longer the case since 1.73
Peter Rabbitson [Thu, 10 Jan 2013 14:03:05 +0000]
deployment_statements() is not storage-dependent - only sqlt_type() is
This fixes maint/gen_schema erroring out after
75d3bdb243
Peter Rabbitson [Mon, 7 Jan 2013 13:14:34 +0000]
Reduce amount of calls to $rsrc->columns_info where possible
Peter Rabbitson [Mon, 7 Jan 2013 13:09:29 +0000]
_resolve_bindattrs already expects colinfo - just pass it in where we forgot
Peter Rabbitson [Thu, 13 Dec 2012 06:40:13 +0000]
Fix some pessimizations spotted here and there (no functional changes)
Mainly remove a number of unused @_ unpackings, and remove the hideous
_resolved_attrs_copy pessimizer
Peter Rabbitson [Thu, 10 Jan 2013 13:13:21 +0000]
Remove apparent pessimization introduced in
6a588797
There is no conceivable reason why the attrs need to be recalculated on cursor
reset. All tests seem to pass as well. Removing it as the calculation is quite
expensive - if problems arise bisection will hopefully lead us here
Peter Rabbitson [Sun, 23 Dec 2012 11:45:16 +0000]
Optimize populate(), especially bind handling in complex populate cases
Instead of recalculating the data slice positions on every loop, we
do it only once during the "proto bind" generation. This is because
even though all bind values can and will change (even ones supplied
via \[ ... ]), their number will always remain constant.
Peter Rabbitson [Fri, 21 Dec 2012 11:41:54 +0000]
Simplify/cleanup parsing of search() arguments
Peter Rabbitson [Thu, 27 Dec 2012 05:43:53 +0000]
Ensure _dbi_attrs_for_bind/bind_attribute_by_data_type are called after connecting
This way a user does not have to worry about the particular DBI/DBD being
loaded before accessing its constants
Peter Rabbitson [Wed, 26 Dec 2012 19:50:57 +0000]
Remove support for source_bind_attributes() as promised in
0e773352a
Original deprecation was put in place almost 2 years ago
Peter Rabbitson [Thu, 10 Jan 2013 13:39:08 +0000]
Deprecate emulate_limit() - can not be sanely supported by DQ
Peter Rabbitson [Thu, 27 Dec 2012 09:43:08 +0000]
Reorganize travis test script, I *think* no functional changes
Peter Rabbitson [Sat, 5 Jan 2013 22:18:17 +0000]
List::Util got fixed and is again installable on 5.8
Peter Rabbitson [Wed, 26 Dec 2012 10:36:23 +0000]
Move Travis Data::Dumper installation earlier, before its dependents
Peter Rabbitson [Wed, 26 Dec 2012 10:34:01 +0000]
Install Carp.pm separately on Travis
Otherwise when the timing is right it trips up installation of the parallel job
Peter Rabbitson [Wed, 26 Dec 2012 09:50:33 +0000]
Reorganize MSSQL/DBD::Sybase TODOs on MAS+txn tests
Brendan Byrd [Thu, 22 Mar 2012 01:10:08 +0000]
Fix TODO tests to only mark exactly the failing tests as TODO
and run the passing tests as real tests.
Peter Rabbitson [Wed, 26 Dec 2012 09:06:54 +0000]
No reason to run this test at all until MC is rewritten
Peter Rabbitson [Wed, 26 Dec 2012 09:02:20 +0000]
Promote leaky rscond todo to a smoke-fail - try to establish a pattern
Peter Rabbitson [Wed, 19 Dec 2012 13:04:55 +0000]
Fix broken DBICTest::RunMode::is_smoker() (riba got pwned by precedence)
Peter Rabbitson [Wed, 19 Dec 2012 11:22:45 +0000]
Attempt to build a dist on travis if all tests pass
Peter Rabbitson [Mon, 17 Dec 2012 08:19:00 +0000]
Fixup possible crlf in generated files
Peter Rabbitson [Wed, 19 Dec 2012 10:36:33 +0000]
Tighten notab/eol checks even more
Peter Rabbitson [Tue, 18 Dec 2012 12:08:08 +0000]
Switch rm to rm -f - we do not care about failure
Peter Rabbitson [Mon, 17 Dec 2012 08:07:02 +0000]
Move generated README to maint/.Generated_Pod as well - simplifies cleanup
Peter Rabbitson [Mon, 17 Dec 2012 07:52:13 +0000]
Use plain old file concat for the dbicadmin pod-injection
Lose the oneliner for more sanity and better cross-platform support
Peter Rabbitson [Sun, 16 Dec 2012 11:53:20 +0000]
Create distinct lib/ subdir in maint/.Generated_Pod (no functional changes)
Peter Rabbitson [Sun, 16 Dec 2012 07:39:42 +0000]
Rewrite all Makefile oneliners in terms of EU::MM::oneliner
Alexander Hartmaier [Wed, 7 Nov 2012 16:17:55 +0000]
Improve the populate docs in ::Schema and ::ResultSet
Peter Rabbitson [Sun, 16 Dec 2012 21:07:06 +0000]
Expand notabs/eol testing to .pod and some files at the root
Peter Rabbitson [Mon, 17 Dec 2012 12:50:27 +0000]
Explicitly specify Scalar::Util dep, and work around RT#80646 on travis
The inability to install Scalar::Util did not abort the cpan runs, and
therefore revealed a nasty bug in first() that is present on all perl-bundled
List::Utils until 5.8.8
Peter Rabbitson [Mon, 17 Dec 2012 12:48:41 +0000]
Fix silly thinko in travis_prepare_env's extract_prereqs()
Peter Rabbitson [Fri, 14 Dec 2012 08:28:44 +0000]
New Pod::Inherit now works on 5.8 (still needs Pod::Tree, RT#81896)
Peter Rabbitson [Sat, 15 Dec 2012 08:29:18 +0000]
I was wrong about
2d12a809 - the crash is real
Switch remaining problematic tests to skip away in is_plain (enduser
installation) mode, keep failing for the time being for authors until
a cause is found.
Please *DO NOT* quietly skip inconvenient tests
Peter Rabbitson [Sat, 15 Dec 2012 06:55:23 +0000]
Run t/storage/global_destruction.t using SQLite as well
Peter Rabbitson [Sat, 15 Dec 2012 04:32:46 +0000]
Add JSON::DWIW to authordeps, so more tests run
Peter Rabbitson [Sat, 15 Dec 2012 04:32:46 +0000]
Revert skip from
a0361822 and fix tests to work correctly
Hand-assembling JSON is prone to error - the $dsn would end up containing
a backslash on Win32 which the simple catenation would not escape.
Peter Rabbitson [Fri, 14 Dec 2012 13:33:22 +0000]
Force xt/ tests to run on anything involving a create_distdir
Peter Rabbitson [Fri, 14 Dec 2012 09:10:14 +0000]
Since .generated_pod is no longer shipped in-dist, move it to maint/
Peter Rabbitson [Thu, 13 Dec 2012 10:37:37 +0000]
Make pod generation more palatable to the existing toolchain
While the installation toolchain seems to understand the concept of
PMLIBDIRS/PMLIBPARENTDIRS rather well, it turns out that both s.c.o.
and metacpan hav great troubles displaying the results. While there
is work underway to fix metacpan, the intermittency of the failures
prompted a rethink of how to handle all of this.
So instead we turn (ab)use of ExtUtils::MakeMaker to 11. The generation
scripts still dump their contents into .generated_pod/ as before.
However afterwards we hook the create_distdir EUMM target and split it
into several targets:
create_distdir : clonedir_generate_files clonedir_post_generate_files fresh_manifest create_distdir_copy_manifested clonedir_cleanup_generated_files
Then we use the pre-existing EUMM install facility to copy the generated
POD directly to lib/, create a manifest and a distdir, and then delete
everything we just copied from lib/, leaving the clone-dir as pristine
as it was before we started.
Peter Rabbitson [Thu, 13 Dec 2012 08:48:52 +0000]
Merge all pod generation into one inc snippet, cleanup the poddir beforehand
Peter Rabbitson [Thu, 13 Dec 2012 09:54:20 +0000]
Do not mask Makefile.PL errors in END block
Rafael Kitover [Tue, 27 Mar 2012 04:08:37 +0000]
Minor clarifications to POD
Brendan Byrd [Tue, 27 Mar 2012 01:31:45 +0000]
More documentation improvements in the spirit of
fb13a49f
Clarify new/new_result/search relations
Clarify return of update/delete
Some trivial readability fixes
Peter Rabbitson [Wed, 12 Dec 2012 15:50:34 +0000]
Boy that's a lot of emails ;)
Brendan Byrd [Mon, 10 Dec 2012 22:43:06 +0000]
Add linkback to ResultSource::resultset_attributes
Also clarify problems related to its use
Brendan Byrd [Tue, 27 Mar 2012 01:31:45 +0000]
Relationship::Base documentation fixes in the spirit of
fb13a49f
Peter Rabbitson [Fri, 30 Nov 2012 14:44:26 +0000]
Some dependency bumps
- CAG 0.10008 causes DBIC test fails
- D::GD before 0.09 is broken on threads in pure-perl mode
- Latest MRO::Compat will upgrade Class::C3 and Class::C3::XS automatically
- Older Module::Find will not go follow symlinks, upgrade to avoid deployment differences
- Older namespace::clean is too complex - use one where complexity lives in B::Hooks::EndOfScope
- Bump Try::Tiny API
Peter Rabbitson [Tue, 11 Dec 2012 11:47:42 +0000]
Fix incorrect handling of $? in travis preconf script
Peter Rabbitson [Tue, 11 Dec 2012 11:33:35 +0000]
Temporarily stop requiring podinherit on < 5.10.1, until we fix it