Peter Rabbitson [Mon, 9 Mar 2015 10:25:42 +0000]
Remove erroneous undefer introduced in
8d73fcd4 (confuses old perls in END)
While it is important to check this during namespace cleansing checks, it
actually makes no difference whatsoever during leaktests - things will either
be closed over and thus seen, or they won't be
(cherry pick of
90a80304)
Kevin L. Kane [Tue, 18 Nov 2014 13:02:33 +0000]
Fix updating multiple CLOB/BLOB columns on Oracle
The genric _dbi_attrs_for_bind caches the attribute hashrefs by data
type, so we can't modify them directly with column-specific data.
Instead, copy it and add the ora_field attribute to the copy.
(cherry pick of
74113bd1)
Peter Rabbitson [Thu, 12 Mar 2015 09:27:36 +0000]
Workaround for double-call of destructors (based on
3d56e026 and e1d9e578)
Silently fixing this up is nothing short of irresponsible, hence the
elaborate detection and alert mechanism
Instead of just marking all my DESTROYs with the function, also add it to a
base class, thus capturing *everything* there is to find. Yes it will be a
tad slower. And yes it will have a massive benefit to any DBIC user happening
to be caught in an unfriendly app-space
(cherry-pick of
d63c9e64)
Peter Rabbitson [Thu, 8 Jan 2015 00:42:52 +0000]
Fix Postgres test hang with DBD::Pg 3.5.0+ (work around RT#100648)
It is not 100% clear to me why this is happening, as the change discussed[1]
was not supposed to change behaviour outside of a transaction.
The test in question essentially does a blocking request with a timeout. The
way the default DBIC machinery works is to issue a ping() after the timeout
induced exception, in order to opossibly retry the operation IFF the link
went stale ($dbh thinks everything is in order, the RDBMS believes otherwise).
After the changes in 3.5.0 this ping() now hangs, even though the access
pattern did not change (there are no transactions involved on the handle in
question). Either way, the fix is simple: just shim-away the ping for the
duration of the test.
In general this should be resolved on a higher level by disabling retries for
the duration of the test (or maybe even disabling retries by default in the
distant feature - see RT#47005)
[1] https://rt.cpan.org/Ticket/Display.html?id=100648#txn-1438093
(cherry pick of
731c2d8b)
Peter Rabbitson [Thu, 5 Mar 2015 15:07:13 +0000]
Stop noise from a particular combination of DateTime and DateTime::TimeZone
While things went quiet for a while after
556c4fe6, it seems that another
refactor made things go awry again. I can't actually reproduce this on any
of my machines, including Travis. Besides this isn't anything to worry much
about anyway - just kill the test
(cherry pick of
3619783b)
Peter Rabbitson [Thu, 22 Jan 2015 15:19:57 +0000]
Keep T::B IO open in t/52leaks.t END - other ENDs pending (esp. since
961d79db)
Read under -w
(cherry pick of
7617dcc4)
Peter Rabbitson [Thu, 5 Mar 2015 19:14:12 +0000]
Fix t/54taint.t failures on perl-in-hell-in-space
Given its a core bug, and the test is not critical, just skip the whole thing
(cherry pick of
a5741f5c)
Peter Rabbitson [Wed, 4 Mar 2015 01:30:48 +0000]
Add comprehensive 'report-prereqs'-like tooling
Unlike what is currently available in various Dzil plugins, this is more of
a descendent of Test::DiagINC - it tries to load as much as possible and
subsequently reports on whatever can be found in the symtable.
There is no (and never will be any) attempt made to validate if all modules
listed in the various METAs are in fact available (this is what the rest of
the test suite is for).
Module versions are broken up into groups depending on their place in @INC,
without leaking the contents of @INC itself.
(slightly modified cherry pick of
cebc0cc8)
Peter Rabbitson [Tue, 3 Mar 2015 17:07:48 +0000]
Extract LeakTracer symtable visitor into DBICTest::Util
Minor rewrapping and renaming of variables as we copy it
No functional changes at all, verified to produce same number of visits
(cherry pick of
c9abd679)
Peter Rabbitson [Thu, 22 Jan 2015 22:27:22 +0000]
Fix intermittent failures in the LeakTracer on 5.18+, remove all workarounds
ARGH! In the end the issue turned out to be stupid-simple: when PadWalker is
called it always returns us a hashref. This hashref is traversed, with its
own address recorded as seen. Once processed, the hashref itself is GCed,
leaving a stale entry in $seen_refs.
Up until 5.18 this was not a problem, likely due to no address reuse. However
after 5.18 PadWalker is very happy to return different hashrefs under the same
address over and over again. The $seen_refs entry leads to a skip, and the
actual contents of the pad are never examined - we've seen this hash already.
ARGH!
The decisive change is the single line around PadWalker - everything else is
cleanup of workarounds for this problem.
(cherry pick of
1a77219a)
Peter Rabbitson [Thu, 26 Feb 2015 18:22:22 +0000]
Factor out author count anouncement, making it seen on plain installs
(cherry pick of
245e3f5d)
Dagfinn Ilmari Mannsåker [Tue, 6 Jan 2015 19:24:05 +0000]
Preserve space after <nick>: in the AUTHORS section of DBIx/Class.pod
(cherry pick of
712904d0)
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 lean_startup.t on some smokers
(cherry pick of
d7d45bdc)
Peter Rabbitson [Thu, 26 Feb 2015 16:47:29 +0000]
At last a safer Moo (lots of kludges undone)
(cherry pick of
0020e364)
Peter Rabbitson [Thu, 26 Feb 2015 22:25:39 +0000]
Get the leaktest to work with Test::More-(hopefully-not)-to-be
(cherry pick of
cd771d5c)
Peter Rabbitson [Sat, 25 Oct 2014 12:34:28 +0000]
(internal) Introduce an extra utility function, essentially a ( >= , < ) test
(cherry pick of
d634850b)
Peter Rabbitson [Sat, 25 Oct 2014 13:56:17 +0000]
Release v0.082810
Peter Rabbitson [Sat, 25 Oct 2014 12:00:10 +0000]
Bump SQLA dependency (pull in fix for RT#99503)
(partial cherry pick of
c58303cdc)
Peter Rabbitson [Sat, 25 Oct 2014 12:49:02 +0000]
Blacklist certain trial versions of DBD::SQLite in testing
(slightly modified cherry pick of
83e81c2d)
Peter Rabbitson [Fri, 24 Oct 2014 23:35:14 +0000]
Fix endless loop on BareSourcelessResultClass->throw_exception(...)
There is a better fix for this in the pipes, but this will do for now
(cherry pick of
4f52479b)
Peter Rabbitson [Fri, 24 Oct 2014 22:41:04 +0000]
Bump Moo dependency
(cherry pick of
abc3b8e9c)
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'
(cherry pick of
9f7d5590)
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)
(cherry pick of
2fdeef65)
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--
(cherry pick of
21b3c791)
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
(cherry pick of
77cc50d1)
Peter Rabbitson [Sun, 5 Oct 2014 23:56:49 +0000]
Release v0.082801
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)
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 >:(
Peter Rabbitson [Thu, 4 Sep 2014 15:53:32 +0000]
Changelog for RT#98161
Breakage introduced in
8d005ad9, fixed for good by a combination of 5268b1da
135ac69d and 95da0f23
Peter Rabbitson [Thu, 4 Sep 2014 12:28:25 +0000]
Better describe the _resolve_relationship_condition API
Peter Rabbitson [Thu, 4 Sep 2014 10:50:11 +0000]
Add one more spot of unroll