Matt S Trout [Fri, 15 Nov 2013 11:34:10 +0000]
move reverse_relationship_info "is join a hashref" check into __strip_relcond
Matt S Trout [Fri, 15 Nov 2013 10:07:47 +0000]
support expr {} in join cond
Matt S Trout [Fri, 15 Nov 2013 08:46:39 +0000]
allow DQ expr {} blocks as first arg to search
Peter Rabbitson [Tue, 5 Nov 2013 08:51:56 +0000]
Merge branch 'master' into dq2eb
Peter Rabbitson [Tue, 5 Nov 2013 08:26:23 +0000]
This is an expensive author-only test, move to xt/
Also get xt tests first in line (won't matter much with -s)
Peter Rabbitson [Tue, 5 Nov 2013 08:17:52 +0000]
Make sure DBICTest is always loaded first (purely bookkeep)
Peter Rabbitson [Tue, 5 Nov 2013 00:44:23 +0000]
Work around TB1.5 hanging with 5.19 - use unreleased github patch
Peter Rabbitson [Tue, 5 Nov 2013 00:29:05 +0000]
Revert
2c300e45 - new backwards compatible SQLT got released
Work is being done to reintroduce the feature with a softer push:
https://github.com/dbsrgits/sql-translator/pull/26#issuecomment-
27644756
Peter Rabbitson [Mon, 15 Feb 2010 18:45:05 +0000]
Clarify what happens on distinct + get_column($aggregate_alias)
Peter Rabbitson [Thu, 29 Aug 2013 06:14:05 +0000]
Centralize and sanify generation of synthetic group_by criteria
This should solve multiple deficiencies when a limited prefetch is ordered
by non-local columns (especially pre-multiplied ones). Also intelligently
solves many problems combining distinct with various non-selecting external
order criteria.
Most current behaviors should remain unaffected except for cases of
blatantly incorrect query generation (fingercross)
Matt Phillips [Mon, 4 Nov 2013 21:53:47 +0000]
fix typo in FATAL ERROR message.
Peter Rabbitson [Mon, 4 Nov 2013 09:03:54 +0000]
Move database-independent mysql SQLMaker test
Matt S Trout [Mon, 4 Nov 2013 03:05:42 +0000]
set nulls => "none" in order nodes under GenericSubquery
Matt S Trout [Mon, 4 Nov 2013 00:43:13 +0000]
fixup INNER use for mysql 3
Matt S Trout [Sun, 3 Nov 2013 23:34:35 +0000]
identifier parsing to make mysql subselect wrapping work within literals
Matt S Trout [Fri, 1 Nov 2013 15:18:02 +0000]
remove dead code from _extract_order_criteria
Matt S Trout [Fri, 1 Nov 2013 15:16:59 +0000]
_extract_order_criteria can now handle ident only or full criteria
Matt S Trout [Fri, 1 Nov 2013 10:33:00 +0000]
t/prefetch/o2m_o2m_order_by_with_limit.t: literal identifier now gets quoted
Matt S Trout [Fri, 1 Nov 2013 09:37:23 +0000]
move select arg handling to _select_to_dq to enable creating $rs->_as_select_dq
Matt S Trout [Fri, 1 Nov 2013 02:58:45 +0000]
_extract_order_criteria should return column names, not full criteria
Matt S Trout [Fri, 1 Nov 2013 01:42:56 +0000]
use more DQ in DBIHacks to avoid literals everywhere
Matt S Trout [Fri, 1 Nov 2013 01:23:17 +0000]
t/sqlmaker/limit_dialects/generic_subq.t: unselected column given gensym alias
Matt S Trout [Sat, 26 Oct 2013 19:14:09 +0000]
render order by elements without quoting to get identifier names in _extract_order_criteria
Peter Rabbitson [Mon, 14 Oct 2013 10:21:11 +0000]
THROW AWAY this commit on rebase - dirty bootstrap
Peter Rabbitson [Wed, 30 Oct 2013 15:33:48 +0000]
Simplify DBIHacks signatures
The cross-polination of $attrs and various subparts is becoming a nightmare
to maintain. Straighten up most ::DBIHacks to pass stuff around as a single
$attrs bag (no functional changes, this is a temp-stage cleanup)
The idea is to prepare for an rsattrs object (later on all we will need to
do is replace the hash-grabs with methods, but this requires much more
thought and design, small steps)
Affected signatures in :DBIHacks:
_prune_unused_joins()
_resolve_aliastypes_from_select_args()
_adjust_select_args_for_complex_prefetch()
_extract_fixed_condition_columns()
Not touching to facilitate easier DQ merge (TODO in a sense):
_order_by_is_stable()
_main_source_order_by_portion_is_stable()
Peter Rabbitson [Thu, 31 Oct 2013 09:55:01 +0000]
Temporarily freeze travis SQLT on 0.11016, until the SQLT debacle is resolved
https://github.com/dbsrgits/sql-translator/pull/26#issuecomment-
27472588
Peter Rabbitson [Thu, 31 Oct 2013 10:28:49 +0000]
Test more JSON::Any backends, and reorder the selection in terms of desirability
DWIW is the most lax JSON parser and thus is always preferred for CLI work
Peter Rabbitson [Wed, 30 Oct 2013 08:16:39 +0000]
Work around JSON::Any not being future-proof
https://rt.cpan.org/Ticket/Display.html?id=89853
https://github.com/perigrin/json-any/pull/2
Dagfinn Ilmari Mannsåker [Tue, 29 Oct 2013 17:24:34 +0000]
Consistently use "eq ''" when checking for exception refness
Dagfinn Ilmari Mannsåker [Tue, 29 Oct 2013 17:00:53 +0000]
Explicitly stringify when checking for existing exception
This fixes errors with exception objects with incomplete
overloading (like Log::Report::Dispatcher::Try).
Peter Rabbitson [Fri, 25 Oct 2013 05:10:47 +0000]
Fix
a47f273b change to be in line with the Row->Result rename of fb13a49f
Karen Etheridge [Thu, 24 Oct 2013 21:11:12 +0000]
fix some pod links
Peter Rabbitson [Fri, 18 Oct 2013 16:00:31 +0000]
Better render of $POSTMORTEM
Peter Rabbitson [Fri, 18 Oct 2013 14:47:29 +0000]
Add a MAKEFLAGS parallel execution config on travis
Peter Rabbitson [Fri, 18 Oct 2013 13:15:06 +0000]
Get TAP::Harness to time tests travis-wide
Peter Rabbitson [Mon, 14 Oct 2013 12:12:06 +0000]
Remove anything preinstalled on the travis perls when CLEANTEST is true
This will give us yet another test point
Peter Rabbitson [Wed, 16 Oct 2013 03:56:39 +0000]
Smoother concurrent test-flow
The noop trick initializes the STDOUT, so that the TAP::Harness
issued IO::Select->can_read calls (which are blocking wtf wtf wtf)
keep spinning and scheduling jobs
This results in an overall much smoother job-queue drainage, since
the Harness blocks less
(ideally this needs to be addressed in T::H, but a quick patchjob
broke everything so tabling it for now)
Peter Rabbitson [Wed, 16 Oct 2013 04:08:09 +0000]
Build more recent perls concurrently
Peter Rabbitson [Mon, 14 Oct 2013 07:46:37 +0000]
Check that 64 bit in-SQLite math works regardless of ivsize
Expand on top of
04ab4eb1 and 579d1966, work inspired by charsbar's
https://github.com/charsbar/dbd-sqlite-authortests
Tested by passing the following on an old and recent DBI and a mix of ivsizes
for p in 5.8.1 5.8.2 5.8.3 5.8.5 5.18.0 5.18.1; do
perlbrew switch $p
for v in 1.29 1.31 1.33 1.35 1.37 1.39 1.40 ; do
PERL_CPANM_OPT= cpanm -qn DBD::SQLite@$v && echo -n "$p " && perl -V:ivsize && prove -l t/752sqlite.t || break
done
done
@mattp- now *that's* attention to detail :)
Peter Rabbitson [Sat, 12 Oct 2013 12:40:30 +0000]
Fix exceedingly sloppy SQLite warning workaround from
04ab4eb1
The previous version managed not only to *not* silence any warning but also
break the test checking for lack of said warnings. In addition the silencing
regex was unacceptably broad, possibly missing some important misbinds.
riba pull your shit together man
a.k.a. this is what happens when there are no code reviewers :(((
Peter Rabbitson [Mon, 14 Oct 2013 06:47:17 +0000]
Forgotten remnant of
655d80dd (void by f207111d)
Peter Rabbitson [Mon, 14 Oct 2013 08:07:28 +0000]
Really work around https://github.com/travis-ci/travis-ci/issues/1477
Just upgrade cpanm by hand with --dev
Peter Rabbitson [Mon, 14 Oct 2013 09:13:04 +0000]
Add more autogenerated test exceptions, in fact do a carpetbomb
This is necessary at least for a while until the war on the user passes
Peter Rabbitson [Mon, 14 Oct 2013 12:09:45 +0000]
Streamline postmortem analysis, and fix non-essential-test report being lost
It got eaten by lack of STDERR output after fixage from
a4c52abc, GAH!
Matt S Trout [Sat, 12 Oct 2013 19:45:55 +0000]
improve order by error message
Matt S Trout [Sat, 12 Oct 2013 18:54:35 +0000]
FetchFirst does not inject an order because me.title is unique
Matt S Trout [Sat, 12 Oct 2013 16:18:27 +0000]
t/sqlmaker/limit_dialects/toplimit.t - add missing me.id - fairly sure this was a bug
Matt S Trout [Sat, 12 Oct 2013 16:12:28 +0000]
complete murdering emulate_limit
Matt S Trout [Sat, 12 Oct 2013 16:01:39 +0000]
t/sqlmaker/quotes/quotes_newstyle.t - ORDER BY parsing means we quote, but not misquote
Matt S Trout [Sat, 12 Oct 2013 16:00:52 +0000]
t/sqlmaker/quotes/quotes.t - ORDER BY parsing means we quote, but not misquote
Matt S Trout [Sat, 12 Oct 2013 15:59:18 +0000]
clean up OracleJoins
Matt S Trout [Sat, 12 Oct 2013 15:19:11 +0000]
oraclejoins fix
Matt S Trout [Sat, 12 Oct 2013 15:14:56 +0000]
t/sqlmaker/oracle.t - parens and quoting fixes
Matt S Trout [Sat, 12 Oct 2013 15:05:00 +0000]
t/sqlmaker/limit_dialects/toplimit.t - ORDER BY title -> me.title
Matt S Trout [Sat, 12 Oct 2013 15:03:38 +0000]
t/sqlmaker/limit_dialects/rownum.t - ROWNUM -> ROWNUM AS
Matt S Trout [Sat, 12 Oct 2013 14:54:52 +0000]
t/sqlmaker/limit_dialects/rno.t - ORDER BY on column of "main" table
Matt S Trout [Sat, 12 Oct 2013 14:39:02 +0000]
t/sqlmaker/limit_dialects/fetch_first.t - minor SQL tweaks
Peter Rabbitson [Fri, 11 Oct 2013 10:12:53 +0000]
Add a 9m soft / 9.5m hard timeout option to bin/cpan runs
This makes sure we do not abort a travis run without meaningful output
Peter Rabbitson [Fri, 11 Oct 2013 06:52:25 +0000]
Reenable 5.10 travis smokes
https://rt.cpan.org/Ticket/Display.html?id=88903 got solved \o/
Peter Rabbitson [Thu, 10 Oct 2013 10:10:27 +0000]
Correct attribution of nonessential skipped tests origin
Peter Rabbitson [Fri, 11 Oct 2013 07:44:50 +0000]
MULTICREATE_DEBUG + TRACE_PROFILE=console_monochrome results in >4MB log
Karen Etheridge [Thu, 10 Oct 2013 19:23:29 +0000]
Pod/comment fixes
Peter Rabbitson [Mon, 29 Jul 2013 01:47:13 +0000]
Make the dbh error handler installer `Perl -d` friendly
GC in perl is a mess sometimes - a literal sub { ... } within a try { ... } goes
wonky, but the equivalent coderef stored in a scalar is fine >.<
Peter Rabbitson [Mon, 29 Jul 2013 04:45:50 +0000]
Move classdata handling to DBICTest::Util::LeakTracer
Peter Rabbitson [Fri, 11 Oct 2013 11:03:05 +0000]
Silence nonessential test warning (last outstanding \o/)
Matt S Trout [Wed, 9 Oct 2013 18:36:13 +0000]
correctly carry DESC on simple orderings for complex prefetch
Matt S Trout [Wed, 9 Oct 2013 18:13:23 +0000]
make multicolumn IN work for update/delete
Matt S Trout [Wed, 9 Oct 2013 17:46:13 +0000]
switch _adjust_select_args_for_complex_prefetch order by handling to part-DQ
Matt S Trout [Wed, 9 Oct 2013 15:52:39 +0000]
switch having code in _count_subq_rs to DQ SQLA, update regexp
Matt S Trout [Wed, 9 Oct 2013 15:15:59 +0000]
make _resolve_aliastypes_from_select_args handle an undef select
Matt S Trout [Wed, 9 Oct 2013 15:15:44 +0000]
clear renderer objects before dicking around with them as well as after
Peter Rabbitson [Tue, 8 Oct 2013 22:51:25 +0000]
Many improvements of bigint handling across various DBD::SQLite versions
This started as a patch by ilmari to bind all integers as SQL_BIGINT
as opposed to SQL_INTEGER. While this change itself worked fine, further
testing revealed we never actually bound 'bigint' column types in the
first place. When this was rectified all hell broke loose.
The current situation per DBD::SQLite version
1.29 ~ 1.33: everything works fine, for large values DBD::SQLite loses
precision on perl binaries with ivsize == 4 (just like integer
math within perl itself)
1.35: Nothing works *regardless* of ivsize. Binding a >32 bit value
as either SQL_INTEGER or as SQL_BIGINT is impossible (an
exception is thrown from within DBD::SQLite). DBIC simply strips
the bindtype altogether and issues an "UPGRADE!" warning.
1.37 ~ 1.40: Everything works, except for the annoying fact that DBD::SQLite
issues a spurious 'datatype mismatch' warning when one tries
to bind a >32 bit value with ivsize == 4. RT#76395
Warning is silenced for the time being within the guts of DBIC.
On the SQL_INTEGER => SQL_BIGINT change: according to
http://www.sqlite.org/datatype3.html#storageclasses all numeric types are
dynamically allocated up to 8 bytes per individual value. Thus it should be
safe and non-wasteful to bind everything as SQL_BIGINT and have SQLite deal
with storage/comparisons however it deems correct.
Peter Rabbitson [Tue, 8 Oct 2013 22:47:15 +0000]
Add explicit notes wrt DBI/DBD::SQLite dep versions
Peter Rabbitson [Tue, 8 Oct 2013 22:28:46 +0000]
Make $SIG{__WARN__} overrides more Carp::Always friendly
Dagfinn Ilmari Mannsåker [Tue, 8 Oct 2013 12:02:23 +0000]
Warn about non-integer values for all integer bind types, not just SQL_INTEGER
Dagfinn Ilmari Mannsåker [Tue, 8 Oct 2013 12:02:23 +0000]
Use explicit variable on loop
Peter Rabbitson [Sat, 5 Oct 2013 08:14:38 +0000]
Fix and guard against erroneous use of list context in internal DBIC code
This situation is dangerous in case the end-user employs something like
DBIx::Class::Helper::ResultSet::IgnoreWantarray
Besides the trivial fix in ::Row::copy, this commit introduces the
DBIC_ASSERT_NO_INTERNAL_WANTARRAY=1 mechanism (which will be
automatically picked up and engaged by our CI due to
eed5492f). As a
bonus the check is usable on DBIC dependencies as well.
Matt S Trout [Mon, 7 Oct 2013 14:00:45 +0000]
t/53lean_startup.t - permit Module::Runtime, Data::Query::Constants, Data::Query::ExprHelpers
Matt S Trout [Mon, 7 Oct 2013 13:58:34 +0000]
t/76joins.t - join_type inner now produces just JOIN
Matt S Trout [Mon, 7 Oct 2013 13:47:25 +0000]
ident dequalification in _rs_update_delete using DQ
Matt S Trout [Mon, 7 Oct 2013 12:43:21 +0000]
RowCountOrGenericSubQ can FOAD, as per ribasushi
Matt S Trout [Mon, 7 Oct 2013 12:25:13 +0000]
fix stupid mistake in _extract_order_criteria
Matt S Trout [Mon, 7 Oct 2013 11:40:53 +0000]
switch _resolve_aliastypes_from_select_args to calling slightly saner methods
Matt S Trout [Mon, 7 Oct 2013 11:40:24 +0000]
remove vestigial dwarn
Matt S Trout [Mon, 7 Oct 2013 10:03:10 +0000]
only generate a cond for update/delete if we actually have one
Matt S Trout [Mon, 7 Oct 2013 09:56:19 +0000]
import sqlmaker work from the dq branch
Peter Rabbitson [Wed, 2 Oct 2013 23:15:30 +0000]
Fail early properly even in the presence of -jN
Without the reordering of prints and without the mysterious sleep() call it
seems that prove just loses the STDERR text entirely
Karen Etheridge [Wed, 2 Oct 2013 21:38:49 +0000]
fix pod formatting of this code snippet
Dagfinn Ilmari Mannsåker [Tue, 1 Oct 2013 19:41:55 +0000]
Stop using the deprecated Class::MOP::load_class()
Use MooseX::Types::LoadableClass instead, requiring the version that
fixes the constraints to not throw an exception on syntactically
invalid names, so that we can coerce a prefix onto ::Foo.
Arthur Axel 'fREW' Schmidt [Thu, 25 Jul 2013 15:03:58 +0000]
Further tradeoffs on relationship sanity checking (augments
9e7525a2)
It turns out what we did earlier is not enough - what is truly needed is
shutting off *all* checks on non-belongs_to rels. Otherwise industrious devs
will inevitable tie themselves into a circual loading order knot.
The problem (as in
9e7525a2) is not so much that we need to bend over
backwards to support circular loads, but that these problems could very
well be masked by stable hash ordering of perl < 5.18. In other words this
commit serves to prevent perfectly working code from suffering intermittent
and hard-to-debug issues when someone upgrades their perl in 2018.
Peter Rabbitson [Tue, 1 Oct 2013 06:03:05 +0000]
Fail early if full test is run in a stale checkout
Peter Rabbitson [Wed, 2 Oct 2013 06:42:48 +0000]
Proper fix for t/storage/replicated.t (augments
617474ab7e)
Instead of blindly changing the use_ok to use figured out and moved together
the pieces responsible for the dance in the 1st place
Dagfinn Ilmari Mannsåker [Tue, 1 Oct 2013 19:12:14 +0000]
Fix t/storage/replicated.t class loading problem
Do all the skip_all in BEGIN {}, and just 'use' the modules instead of
use_ok().
Dagfinn Ilmari Mannsåker [Tue, 1 Oct 2013 19:04:22 +0000]
Throw clearer exception on ->new_related() with a non-existent relationship
Peter Rabbitson [Tue, 24 Sep 2013 13:59:48 +0000]
Smoker-wide parallel testing of installed deps
Peter Rabbitson [Mon, 23 Sep 2013 19:36:03 +0000]
Better diagnostics of skipped non-essential tests
Peter Rabbitson [Mon, 23 Sep 2013 11:16:39 +0000]
Engage nuclear option of travis testing
For the record - I am not happy about having to make this commit. However the
reality is that for every basic toolchain module I fix, another two are broken
by dzil-addicted (though well meaning) folks. Since this essentially paralyzes
any useful work, resort to simply ignoring some of the meaningless tests that
are autopopulated by ill-designed dzil author bundles.
This allows to revert
655d80dd, 72cd4007, and generally streamline the set of
workarounds
A preemptive note for anyone who is concerned that I am wasting precious tuits
on a dubious goal. Please realize that one of the corner stones of my personal
desire to participate in OSS comes from disdain of forced obsolescence (i.e.
one shall upgrade each and every year because the author feels like it). If I
can not guarantee my software performs correctly on old but usable versions of
our beloved VM - a massive portion of the very reason I "keep playing" goes
away entirely. With that gone the world beyond OSS suddenly becomes
exceedingly more appealing, at least much more appealing as opposed to pushing
features into a library unusable by most real-world production environments.
Additionally whether I or anyone else has encountered users benefitting from
my efforts is not relevant - the DarkPan universe is vast.
In other words instead of seeing these activities as a mindless fetish, see
them for what they are: one of the main reasons I am a CPAN contributor to
begin with.
--ribasushi
Peter Rabbitson [Tue, 17 Sep 2013 08:42:58 +0000]
Delist Example and add QuickStart to the DocMap
Pending my review of PR#35
Scott R. Godin [Thu, 4 Apr 2013 19:41:17 +0000]
Update DocMap - include missing local Manual pages (PR#22)
some of the local Manual pages are not mentioned in the DocMap which should be,
as people will use the DocMap as a stepping point, and may thus overlook them
Peter Rabbitson [Tue, 17 Sep 2013 07:57:51 +0000]
A fixed DBD::Firebird went to CPAN as well