Peter Rabbitson [Fri, 24 Oct 2014 23:24:21 +0000]
Minor cleanup
Peter Rabbitson [Fri, 24 Oct 2014 22:41:04 +0000]
Bump Moo dependency
Peter Rabbitson [Fri, 24 Oct 2014 21:53:52 +0000]
Fix idiocy that snuck in
bdbd2ae8a - I only want fatal undefs
Not sure what I was thinking. In either case - remove the unsafe code, and
annotate the remaining uses of FATAL => 'all'
Peter Rabbitson [Fri, 24 Oct 2014 21:38:17 +0000]
Fix incorrect collapser source being generated due to unicode collapse points
I am not sure how nobody but abraxxa ran into this - the missing escapes have
been used by a ton of people for over a year. In any case the issue is real,
and fixed by trivial {}-escaping.
Add an extra stresstest envvar to make sure this does not regress in the
future (the envvar will be picked up and set by POISON_ENV on travis)
Peter Rabbitson [Fri, 24 Oct 2014 18:00:03 +0000]
These are already pre-required by the OptDeps check
Peter Rabbitson [Fri, 24 Oct 2014 17:56:15 +0000]
These loads are no longer necessary after
d7d45bdc65
Peter Rabbitson [Fri, 24 Oct 2014 17:55:15 +0000]
HRI is part of a pretty hot codepath, just load it all the time
Peter Rabbitson [Fri, 24 Oct 2014 12:06:54 +0000]
Replace a couple useless string evals with their equivalent
Dliberately *not* using Module::Runtime, future improvements will
replace ->ensure_class_loaded with something less volatile
Peter Rabbitson [Sun, 5 Oct 2014 14:51:47 +0000]
(travis) Better diagnostics on *why* a build failed, reduce parellelism
This commit resulted in https://github.com/travis-ci/travis-ci/issues/2904
To mitigate run everything under 10 (not 32, not even 16) threads, hope
things will be allright. Although the real fix would be to 1) get the above
mentioned issue on travis fixed and 2) tuning the rdbms daemons to eat less
memory (both of these options are problematic).
The diags are *indispensable* when travis wakes up the OOMKiller
As a bonus add getstatus to all subshells for even better idea wtf just went
wrong
Peter Rabbitson [Thu, 23 Oct 2014 10:02:47 +0000]
(travis) Reshuffle CI workflow, prepare for better instrumentation of failures
No functional changes at this point, the goal was to have no exports in
30_before_script.bash and 40_script.bash, allowing me to run everything
after 20_install.bash in a subshell
Peter Rabbitson [Thu, 23 Oct 2014 09:44:49 +0000]
(travis) Feeble attempt at reverting
f207111d
The toolchain gang became *a little* more reasonable in the past year, let's
see how far we get without this particular set of workarounds
Peter Rabbitson [Thu, 23 Oct 2014 07:43:59 +0000]
(travis) Install older DBD::SQLite on perl < 5.8.4, I fucked up on testing
Related RT: https://rt.cpan.org/Ticket/Display.html?id=99747
ribasushi--
Peter Rabbitson [Wed, 22 Oct 2014 23:46:05 +0000]
Re-apply
1af6b9688 incorrectly removed by f8135512c
The `git shortlog` is additive, hence AUTHORS may never shrink. I *knew* that
ribasushi--
Peter Rabbitson [Wed, 22 Oct 2014 13:13:43 +0000]
Revert prematurely merged default insert support for Oracle (see below)
Note: the incorrect implementation is not the fault of the original submitter
(who can not be expected to know the vagaries of the execution path) nor is
the fault of the original reviewer (who can not be expected to remember said
vagaries for a storage they do not even use). I do not have recommendations
on how to avoid this situation in the future.
It is correct that the particular problem can not be solved on the level of
SQLMaker::Oracle like it was solved for MySQL. However the current fix applies
the default-on-empty way too early in the call stack - there is a lot of stuff
happening between where we would ideally be applying the workaround and the
current application site. With an Oracle storage the call-stack is roughly the
following:
( ... non-storage code )
-> ::Storage::DBI::insert
X -> ::Storage::DBI::_prefetch_autovalues
X -> (loop over) ::Storage::DBI::Oracle::Generic::_sequence_fetch
X -> determine if autoincs are accounted for
? -> assemble INSERT RETURNING container
-> ::Storage::DBI::_execute
-> ::Storage::DBI::Oracle::Generic::_prep_for_execute
-> ::Storage::DBI::_prep_for_execute
-> ::Storage::DBI::_gen_sql_bind
-> ::SQLMaker::Oracle::insert(...)
Setting up the "missing" default so early definitely affects the points marked
with X and possibly affects the code marked with ?. The issues that would come
out of this range from obvious failure modes to "this will be easily broken by
a future reshuffle" gut feeling.
The patch therefore needs reworking adding the extra pieces of logic either in
a new _gen_sql_bind hook, or at the very least in the already existing
conditional at the start of ::Storage::DBI::Oracle::Generic::_prep_for_execute
(though a hook of _gen_sql_bind is preferable).
Additionally the test needs to be expanded to exercise the case of pre-existing
test cases that trigger _prefetch_autovalue (the tests involving the source
SequenceTest in t/73oracle.t)
And lastly an explicit exception should be added to SQLMaker::Oracle::insert
to catch future changes to any code higher up, so that a refactor will not
silently end up calling SQLMaker::Oracle::insert with an empty insert-list,
throwing everything back to square one.
This commit reverts the following two patches, with the intention to merge a
fixed-up version shortly:
-
236b59c8
-
1af6b968
Dagfinn Ilmari Mannsåker [Tue, 21 Oct 2014 10:10:00 +0000]
Weaken $self to avoid leaks with nested closures on 5.8
Peter Rabbitson [Fri, 26 Sep 2014 02:20:51 +0000]
Cherry picks from current/for_cpan_index (flux due to not-yet-clear-policy)
This is an amalgamation of:
-
f6fff270
-
293dccfc (corrected version of b63585bd)
-
77cc50d1
Peter Rabbitson [Fri, 17 Oct 2014 10:04:58 +0000]
Switch all double-optdeps calls to a single invocation in lib/
Peter Rabbitson [Fri, 17 Oct 2014 09:12:16 +0000]
Switch optdeps to a croak import
Dagfinn Ilmari Mannsåker [Tue, 23 Sep 2014 18:33:37 +0000]
Further delay empty weakregistry assertions
(extracted from
2c2bc4e5)
Peter Rabbitson [Sun, 12 Oct 2014 10:23:10 +0000]
Stop lazy-requiring B and Storable in internal functions
Almost every non-toy program will end up lazy-loading these anyway, so move
their require to compile time. This also helps with load-patterns changing
in SQLA and Moo, and failing t/53lean_startup.t on some smokers
Peter Rabbitson [Mon, 20 Oct 2014 13:23:25 +0000]
Newer Test::More lazy-loads more stuff (overload.pm in this case)
Make the 'undefer' dummy test do more work
Peter Rabbitson [Fri, 26 Sep 2014 02:25:00 +0000]
Bump blead version
Dagfinn Ilmari Mannsåker [Sat, 18 Oct 2014 17:31:43 +0000]
Silence with_deferred_fk_checks() warning on PostgreSQL 9.4
SET CONSTRAINTS can only be used in transaction blocks, and 9.4 warns
about this, so make sure we issue 'SET CONSTRAINTS ALL IMMEDIATE' before
committing the transaction.
Also fix it for Informix, which uses the same syntax and has the same
restriction.
Karen Etheridge [Wed, 8 Oct 2014 19:42:49 +0000]
cross-reference alias with current_source_alias
Peter Rabbitson [Fri, 26 Sep 2014 02:25:41 +0000]
Extra tests to ensure that the cond collapser will not mask SQLA deprecations
No functional changes except for a minor SQL reordering adjustment
Peter Rabbitson [Sun, 5 Oct 2014 21:16:48 +0000]
Bump deps to pull in bugfixes
Peter Rabbitson [Fri, 26 Sep 2014 02:20:51 +0000]
Adjust things for the is_literal_value and -ident SQLA 1.80 fixes
(SQLA commits
52ce7dca and ddd6fbb6f)
The Oracle workaround is absolutely horrific and needs to be redone from
scratch. For the time being the tests seem to pass, so punt for later... sigh
Peter Rabbitson [Fri, 26 Sep 2014 02:22:41 +0000]
The functionality introduced in
7ad80222 requires a certain CDBI
Skip it on older versions (wow - people *do* run these in the wild)
https://metacpan.org/source/TMTM/Class-DBI-v3.0.5/Changes#L6
Peter Rabbitson [Fri, 26 Sep 2014 10:28:25 +0000]
(travis) Augment
bc418819 - in addition check vm kernel memory health
Sometimes a vm comes up with most of the memory locked up in... god knows what
This seems to be a stable compromise which brings *all* jobs to completion
Peter Rabbitson [Sun, 28 Sep 2014 10:08:49 +0000]
(travis) Re-consolidate sysinfo handling (reverts part of
83da25f0)
Peter Rabbitson [Sun, 28 Sep 2014 10:08:49 +0000]
(travis) Consolidate where/how we load the common functions (the multiple
sourcing of the same file is silly)
Dagfinn Ilmari Mannsåker [Tue, 30 Sep 2014 10:30:33 +0000]
Add Lasse Makholm to AUTHORS file
Dagfinn Ilmari Mannsåker [Tue, 23 Sep 2014 18:33:37 +0000]
Only load DBICTest::Schema when needed in tests
Make sure to not vivify $DBIx::Class::VERSION, since before perl 5.16,
this causes ->ensure_class_loaded to think the class is loaded.
Dagfinn Ilmari Mannsåker [Tue, 23 Sep 2014 16:03:59 +0000]
Use Optional::Dependencies for CDBICompat and its tests
This allows the test to check for them before loading DBICTest and
DBIC, thus speeding up the test skips a lot (down from 14s to 1s for
'prove -l t/cdbi' on my Linux box, and down from 1026s to 871s for the
whole test suite on a Windows VM).
Lasse Makholm [Mon, 29 Sep 2014 16:37:32 +0000]
Unbreak $rs->create() with empty hashref on Oracle
Oracle does not support the INSERT INTO ... DEFAULT VALUES syntax used by
SQLMaker by default. Furthermore, Oracle has no way of inserting a row
without specifying any columns, so the only reasonably fix seems to be to
pick a column and supply the DEFAULT keyword as value for it.
This approach seems to work without problems, even for things like
sequence+trigger-as-auto-increment.
Peter Rabbitson [Fri, 26 Sep 2014 02:25:00 +0000]
Bump blead version
Peter Rabbitson [Thu, 25 Sep 2014 14:41:56 +0000]
Release v0.082800
Peter Rabbitson [Thu, 25 Sep 2014 14:37:41 +0000]
Some cleanups of Changes and adding 'Known issues'
Peter Rabbitson [Thu, 25 Sep 2014 14:37:16 +0000]
This was reinstated in
dc297536f
Peter Rabbitson [Thu, 25 Sep 2014 13:54:44 +0000]
Kill leaktest on smokers with 1.3xx Test::More alphas
This is done so that downstram dependencies of DBIC can be smoked as well,
the actual leaktest fix will come later when T::B stabilizes enough to go
into beta
Peter Rabbitson [Thu, 25 Sep 2014 12:07:46 +0000]
SQLA 1.79 shipped - revert tempextlib hack from
d0435d75
Peter Rabbitson [Thu, 25 Sep 2014 11:45:06 +0000]
Edit leaktracer diag texts to be ilmary-compliant :)
Peter Rabbitson [Thu, 25 Sep 2014 11:34:47 +0000]
Boldly take the author nicknames bold
Peter Rabbitson [Thu, 25 Sep 2014 03:27:34 +0000]
Even though perl_5 should be valid in 1.4, CPANTS barfs
Work around https://github.com/Perl-Toolchain-Gang/CPAN-Meta/issues/68
Peter Rabbitson [Thu, 25 Sep 2014 02:42:38 +0000]
Forgotten manifest adjust after
a2bd379666
Peter Rabbitson [Thu, 25 Sep 2014 02:41:29 +0000]
(travis) Cut the amount of threads we use in half
Hopefully this will stave off the out of memory issues
https://github.com/travis-ci/travis-ci/issues/2715
https://github.com/travis-ci/travis-ci/issues/2101
Peter Rabbitson [Wed, 24 Sep 2014 19:42:18 +0000]
Add catherder heading as per mst's insistence
Dagfinn Ilmari Mannsåker [Wed, 24 Sep 2014 15:52:28 +0000]
Fix literal SQL and bind values example in "columns" documentation
Peter Rabbitson [Wed, 24 Sep 2014 15:12:34 +0000]
Accomodate broken Test::More trials a bit better
Peter Rabbitson [Wed, 24 Sep 2014 14:16:30 +0000]
Fix failures in xt/authors: git2 preserves case from mailmapping
Karen Etheridge [Mon, 28 Jul 2014 19:02:23 +0000]
Document including literal SQL and values in a resultset with "columns"
Peter Rabbitson [Wed, 24 Sep 2014 06:53:51 +0000]
After
5268b1da populate remained the sole user of Data::Compare
Might as well throw it out - the check that takes place is rather rare and
a freeze-and-compare approach is likely more efficient anyway
Peter Rabbitson [Wed, 24 Sep 2014 04:28:06 +0000]
(travis) Attempt to grab more info on parallel_installdeps_notest failures
Peter Rabbitson [Fri, 14 Dec 2012 08:28:44 +0000]
New Pod::Inherit does not need Pod::Tree
Peter Rabbitson [Tue, 23 Sep 2014 07:04:32 +0000]
Clarify licensing, ensure footers are consistent throughout the project
Note - this *DOES NOT CHANGE* the licensing of the project in any way, it
is still dual-licensed like perl5, just as it was before this commit. All
additions are for clarifying purposes only.
The way licensing is presented is an amalgamation of information and
prior art found at the following sources:
- http://www.perlfoundation.org/cpan_licensing_guidelines
- https://metacpan.org/source/ETHER/Moose-2.1212/LICENSE
- `git log --color -w -p v5.20.0 ^perl-5.000^ -- Artistic`
Peter Rabbitson [Mon, 22 Sep 2014 10:35:38 +0000]
Deal with authorship properly, in a future-sustainable fashion
This module is arguably one of the most successful collaborative projects on
CPAN. Make it known to the world by introducing a clear canonical source of
authorship metadata.
I have been holding off jumping on the "contributors from git" bandwagon
because of multiple issues
- Not every contribution results in a direct, attributtable commit
- We already had an extensive contributor list, much larger than the shortlog
- Loss of ircnicks (a fine tradition started in
266bdcc3)
So this commit does the proverbial bullet-biting and introduces *proper*
handling of all the ins and outs, including author-mode (CI as well) tests
for proper attribution. As a side-effect we break a lot of the footer links,
to be fixed in next commit.
Btw as I write this `195 contributors made this library what it is today`...
Mind. Blown.
Peter Rabbitson [Sun, 21 Sep 2014 03:59:38 +0000]
Re-attribute a substantial chunk of docs, due to lost original author
The mysterious <g> is seen on the channel between Aug 24 and Sep 3 of 2008
talking to castaway and various other hackers, supplying a number of doc
patches and then vanishes. Due to the need of correct authorship imposed
by the next commit, reattribute the docs to castaway instead
This is the only such instance - all other authors have been accounted for.
Deemed acceptable as the name is entirely and utterly lost in the ether :(
Peter Rabbitson [Mon, 22 Sep 2014 18:35:15 +0000]
Initial AUTHORS stub (the last one where `git blame -C -C AUTHORS` worked)
Due to how git currently works one will need to `git log -S"line"` in the
future in order to find when a contributor entry was really made. Preserving
this particular arrangement historically, before more reordering and additions
come in the next commit.
Peter Rabbitson [Wed, 24 Sep 2014 03:15:54 +0000]
The revert
8494142c incorrectly killed 4d93345c, reinstating
The loading of IO::Handle is still needed as demonstrated by failing
SQLA optional tests. Bleh!
Peter Rabbitson [Wed, 24 Sep 2014 00:22:48 +0000]
Viciously deal with more strictures fallout
The 'what can possibly go wrong' blew up with RT#99083, there is definitely
more where this came from. Try to maintain safety by going to even greater
lengths ensuring we do not load any of it ourselves
Peter Rabbitson [Tue, 23 Sep 2014 23:29:46 +0000]
(travis) Bump tested perls a bit
Peter Rabbitson [Tue, 23 Sep 2014 23:25:53 +0000]
(travis) reload the already running RDBMS, as a precaution
Also get a newer libmysqlclient, just in case...
Peter Rabbitson [Mon, 22 Sep 2014 08:49:38 +0000]
Reorganize dist-time meta handling (no semantic changes)
Peter Rabbitson [Sun, 21 Sep 2014 18:00:27 +0000]
A massive amount of link fixes (just links, almost no rewording)
kryde++ for the insanely useful tool App::PodLinkCheck. It is a bit heavy
and way too noisy for automated use, but with some handholding it is
scarily effective (as can be seen by the sheer size of this commit)
Peter Rabbitson [Sun, 21 Sep 2014 01:23:38 +0000]
Proper end-of-file for DBIx/Class.pm
Matt S Trout [Mon, 7 Oct 2013 11:40:53 +0000]
Add forgotten bit preventing scan of where-binds (originally part of
1b8f2dd9)
Dagfinn Ilmari Mannsåker [Sat, 20 Sep 2014 12:24:00 +0000]
Add basic .dir-locals.el
Peter Rabbitson [Fri, 19 Sep 2014 17:43:57 +0000]
(travis) Attempt to revert
86370cc74, SC is too slow on uptake. Grumble
Peter Rabbitson [Fri, 19 Sep 2014 08:32:10 +0000]
Properly handle empty group_by/order_by
Peter Rabbitson [Thu, 18 Sep 2014 13:43:30 +0000]
Improve SQLT::Parser warning messages (build further upon
e089c417)
Peter Rabbitson [Wed, 17 Sep 2014 17:36:45 +0000]
Properly implement very sloppy and lazy hack from
bad0b73b
We are abusing local() here - might as well abuse it correctly.
This way we do not add a permanent shitty name to the relinfo structure and
nobody needs to fix their tests. Winning!
Peter Rabbitson [Wed, 17 Sep 2014 16:58:29 +0000]
Revert
e9f71ab2 - it ends up breaking a declared API
I should have thought of this earlier - a debug object is not necessarily
isa(IO::Handle) (the documentation never mentioned this). And indeed: the
tests of DBIx::Class::QueryLog do exactly this - they use an object with
just a print() method and absolutely nothing else.
So instead of disabling the sticky autoflush (which really is only a visible
change on STDERR dup) document this behavior and move on.
Peter Rabbitson [Tue, 16 Sep 2014 16:24:25 +0000]
Fix broken temporary backcompat shim for naughty _resolve_condition callers
The
9b96f3d41 refactor undid all the backcompat shims that were introduced
in
c0f445097. Reinstate the insanity until after 28...
Peter Rabbitson [Tue, 16 Sep 2014 08:04:59 +0000]
Multilevel find_or_(multi)create got inadvertently broken
Relax the check of what we feed to the relcond resolver
Peter Rabbitson [Tue, 16 Sep 2014 06:01:11 +0000]
Yet another loose end on the cond collapser
Fingercross this is the last one... this transform is turning out ot be a
bad bad bad idea :(((
Peter Rabbitson [Mon, 15 Sep 2014 13:32:28 +0000]
Ensure the tempextlib is available at distbuild time
Missed one spot to load ::_Util during
bbcc1fe8
Peter Rabbitson [Mon, 15 Sep 2014 06:22:24 +0000]
Put in place deprecation forgotten for several years
More info and rationale in the commit msg of
c200d949
Peter Rabbitson [Mon, 15 Sep 2014 06:11:55 +0000]
Split DBIC from SQLMaker test (deprecated in next commit)
Peter Rabbitson [Sun, 14 Sep 2014 18:59:58 +0000]
Ensure the custom rel cond resolver does not trigger forgotten compat shim
During the rush to get custom rels out the door (this is why rushing
fucking sucks),
a697fa31 introduced a shortsighted workaround into
::SQLMaker::_from_chunk_to_sql(). This code slipped consequent review
and made its way into the codebase... 4 FUCKING YEARS AGO!!! >:(
Since it is not known how much stuff relies on the insanity being there
(moreover we have tests that rely on it) leave things as is for the time
being. The only change is making the cond resolver *completely* oblivious to
the "single-element hash" workaround (albeit via a silly hack).
In the process exposed that ora-joins module is entirely incapable
of understanding non-equality conds... fml
See next commits for added warnings, etc.
Peter Rabbitson [Sun, 14 Sep 2014 18:41:55 +0000]
A more robust column equality extractor
It is a mistake to reach into $ret->{condition} - it may very well be a
non-hash structure. Also replace the silly regexping with the (already
regexed out) results of the info resolver
Peter Rabbitson [Mon, 15 Sep 2014 09:39:12 +0000]
Ensure undef_on_null_fk does not affect non-introspectable custom conds
Peter Rabbitson [Mon, 15 Sep 2014 08:40:39 +0000]
Yet another missed sanity check in the relcond resolver
rel/col duality is just hateful
Peter Rabbitson [Sun, 14 Sep 2014 18:55:55 +0000]
Make sure the me-relname-flip does not affect any error text
Peter Rabbitson [Mon, 15 Sep 2014 09:55:53 +0000]
Fix copy() assuming all columns are native
Peter Rabbitson [Sun, 14 Sep 2014 18:00:40 +0000]
Adjust for SQLA's API change
966200cc8
Peter Rabbitson [Mon, 15 Sep 2014 11:42:00 +0000]
(travis) Accommodate a slow mirror grrrrr
Peter Rabbitson [Mon, 15 Sep 2014 11:58:48 +0000]
(travis) Stop auto-upgrading everything on non-clean installs
It adds little value currently and makes version-specific installs difficult
(see next commit)
Tommy Butler [Wed, 10 Sep 2014 08:51:27 +0000]
Fix syntax error in ::Manual::Joining example
fixed syntax error on line 245 (missing closing curly bracket)
Closes: #60
Peter Rabbitson [Tue, 9 Sep 2014 23:38:43 +0000]
Fix incorrect cond construction in _minimal_valueset_satisfying_constraint
The function in question introduced in
d681f1bb (which builds upon work in
8e40a627) correctly uses _extract_fixed_condition_columns, but then fails to
account for all literals having their leading { '=' => ... } being stripped,
nor does it consider UNRESOLVABLE_CONDITION as a valid return value.
Tests and fixes to get this rolling, thanks go to Lianna Eeftinck for testing
and reporting \o/
Peter Rabbitson [Tue, 9 Sep 2014 23:48:35 +0000]
Ensure ::Schema::Versioned connects only once by reusing the main connection
Peter Rabbitson [Mon, 8 Sep 2014 11:06:59 +0000]
Stop using Sys::SigAction in pg tests
Peter Rabbitson [Mon, 8 Sep 2014 09:14:29 +0000]
Fix for gut-reaching travesty as reported by gbjk
Peter Rabbitson [Sun, 7 Sep 2014 11:20:18 +0000]
No longer use rel_info($rel)->{class} in the cond resolver
It turns out there are a lot of codebases there containing garbage in the
rel definition. Punt for after 0.082800 to lean up that mess.
Also be less strict on checking the foreign_values contents - downgrade
mismatches to a warning (but still hard-require ::Row ancestry)
Peter Rabbitson [Sun, 7 Sep 2014 11:11:30 +0000]
Simplify self_result_object argument check in cond resolver
Peter Rabbitson [Sun, 7 Sep 2014 11:04:04 +0000]
Minor relcond resolver refactor, no func. changes
Peter Rabbitson [Fri, 5 Sep 2014 09:14:36 +0000]
Skip malformed relationships in SQLT parser instead of vague warnings
Peter Rabbitson [Fri, 5 Sep 2014 09:05:46 +0000]
Move and simplify a chunk of parser code
No functional changes
Peter Rabbitson [Fri, 5 Sep 2014 08:33:40 +0000]
Make sure IO::Handle is loaded - missing stubs on older perls
Also adjust the documentation in the wake of the
e9f71ab2a change
Peter Rabbitson [Thu, 4 Sep 2014 22:59:01 +0000]
Make sure the resolve_cond shim attempts to lint the right thing
This only matters in compat mode, so sod testing
Peter Rabbitson [Fri, 5 Sep 2014 09:16:09 +0000]
(travis) Sorry metacpan, your mirror is simply shit >:(