9 years agoFix t/54taint.t failures on perl-in-hell-in-space
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

9 years agoAdd comprehensive 'report-prereqs'-like tooling
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.

9 years agoExtract LeakTracer symtable visitor into DBICTest::Util
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

9 years ago(travis) Make a separate is_ci runmode, separated from is_smoker
Peter Rabbitson [Thu, 5 Mar 2015 17:59:48 +0000]
(travis) Make a separate is_ci runmode, separated from is_smoker

9 years ago(travis) shunt intermittent failures stopping postgres
Peter Rabbitson [Thu, 5 Mar 2015 18:11:31 +0000]
(travis) shunt intermittent failures stopping postgres

9 years agoStop noise from a particular combination of DateTime and DateTime::TimeZone
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

9 years agoAt last a safer Moo (lots of kludges undone)
Peter Rabbitson [Thu, 26 Feb 2015 16:47:29 +0000]
At last a safer Moo (lots of kludges undone)

9 years agoRemove warning introduced in 75a1d824d
Peter Rabbitson [Mon, 2 Mar 2015 06:08:00 +0000]
Remove warning introduced in 75a1d824d

9 years ago(travis) Only consider the runmode a 'Smoker' when we CI ourselves
Peter Rabbitson [Mon, 2 Mar 2015 06:02:24 +0000]
(travis) Only consider the runmode a 'Smoker' when we CI ourselves

9 years ago(travis) Update apt cache when doing a large set of installs
Peter Rabbitson [Sat, 28 Feb 2015 15:57:39 +0000]
(travis) Update apt cache when doing a large set of installs

Started failing without it:
https://s3.amazonaws.com/archive.travis-ci.org/jobs/52536716/log.txt

9 years agoMove a number of tests to xt, restructure extra lists
Peter Rabbitson [Thu, 26 Feb 2015 18:46:47 +0000]
Move a number of tests to xt, restructure extra lists

Instead of the rigid t / xt separation, add more nuance and move some heavy
tests around, in order to improve regular user test times, without
sacrificing cpantesters coverage

Additionally makes it more obvious which tests are decidedly not being run
on user-side installs

Minimal changes: read diff under -C -C -M

9 years agoFactor out author count anouncement, making it seen on plain installs
Peter Rabbitson [Thu, 26 Feb 2015 18:22:22 +0000]
Factor out author count anouncement, making it seen on plain installs

9 years agoThis hasn't failed in over a year, enable for plain installs
Peter Rabbitson [Thu, 26 Feb 2015 16:18:30 +0000]
This hasn't failed in over a year, enable for plain installs

9 years agoRewrite hot-ish _dbi_attrs_for_bind codepath in a leaner way
Peter Rabbitson [Sun, 15 Feb 2015 10:08:01 +0000]
Rewrite hot-ish _dbi_attrs_for_bind codepath in a leaner way

Document various caveats better

9 years agoFix updating multiple CLOB/BLOB columns on Oracle
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.

9 years ago(travis) Run a couple tests in single-threaded mode
Peter Rabbitson [Tue, 10 Feb 2015 18:16:03 +0000]
(travis) Run a couple tests in single-threaded mode

Semi-dogfooding - the massive paralellism hides the pain of how long exactly
does it take for a common user to install DBIC

(FWIW *dependency* installer timeout had to be bumped from 9 to 15 *MINUTES*)

9 years ago(travis) Temporarily kill Firebird ODBC testing
Peter Rabbitson [Tue, 10 Feb 2015 18:12:15 +0000]
(travis) Temporarily kill Firebird ODBC testing

Sourceforge no longer facilitates downloads without a javascript enabled
browser (WAT?!), so the Odbc driver download fails. Disable the testing for
the time being, to be reinstated with the DB2 testing work

9 years agoSwitch CDBICompat and its tests to OptDeps
Peter Rabbitson [Tue, 10 Feb 2015 15:17:55 +0000]
Switch CDBICompat and its tests to OptDeps

This work is a direct descendant of ilmari's c8dc7d33, even though it does
not contain almost any of the original code. While the original approach was
a big improvement, this commit is taking advantage of all improvements that
took place in OptDep handling in earlier commits. The result (at the expense
of a much much larger changeset) is a skip time of < 0.5s for the entire cdbi
set

ilmari++ # this revamp would not have taken place without your first nudge

9 years agoRemove redundant skip checks in CDBICompat tests
Peter Rabbitson [Tue, 10 Feb 2015 13:24:27 +0000]
Remove redundant skip checks in CDBICompat tests

f56e59cd added the extra module, but nothing in the tests actually loads it
under Film (there likely was a switch during dev, but it was never committed).
Just rip it out entirely.

9 years agoRemove useless INIT blocks from CDBI tests - no changes
Peter Rabbitson [Sun, 25 Jan 2015 10:35:23 +0000]
Remove useless INIT blocks from CDBI tests - no changes

A use() is compile-time even when it is in an INIT block, hence removing the
INITs is safe. Do not do it for require() invocations, as it is not clear if
the tests rely on the specific order or not (more sleeping dogs left to lie)

Read under -w

9 years agoIntroduce ad hoc requirements and add skip_without method to optdeps
Peter Rabbitson [Tue, 10 Feb 2015 12:45:32 +0000]
Introduce ad hoc requirements and add skip_without method to optdeps

On rare occasions tests need a specific module version, but nothing else in
the dist needs this. Additionally only parts of a test may rely on this extra
requirement, making the "all or nothing" approach of -skip_all_without not
very attractive.

Hence introducing ability to supply arbitrary module specifications in lieu of
group names. Each specification is checked against a special group 'test_adhoc'
which ensures that optional deps are not "forgotten" within the suite (causing
a test to never run in practice).

9 years agoFinally implement compound OptDep group augmentation
Peter Rabbitson [Tue, 10 Feb 2015 08:38:51 +0000]
Finally implement compound OptDep group augmentation

A group can specify not only what it requires (with includes), but can also
request a specific set of modules IFF another group is required within the
same call. This allows to do e.g. IC::DT+RDBMS dependencies in a sane manner.

Delete test_dt* groups from our optdeps (they were never documented, and a
cpangrep does not show any use) - instead we replace them with an elaborate
network of augments.

9 years agoRewrite internals of the optdep include mechanism (introduced in e163f484b)
Peter Rabbitson [Fri, 6 Feb 2015 11:37:29 +0000]
Rewrite internals of the optdep include mechanism (introduced in e163f484b)

No functional changes, "simply" moves the include-parsing logic and the env
checks to an earlier point, in order to get a complete list of all groups
mentioned (facilitating the augment functionality in the next commit)

9 years agoIntroduce (empty for now) intermediate optdep groups related to IC::DT
Peter Rabbitson [Sun, 8 Feb 2015 11:33:28 +0000]
Introduce (empty for now) intermediate optdep groups related to IC::DT

They will be filled in during the next commits, done separately to reduce
diff-noise

9 years agoRelax the optdep naming criteria, introduce _-prefixed intermediate groups
Peter Rabbitson [Fri, 6 Feb 2015 18:37:54 +0000]
Relax the optdep naming criteria, introduce _-prefixed intermediate groups

9 years agoMove the SQLite test dependency specification to optdeps
Peter Rabbitson [Mon, 9 Feb 2015 23:05:01 +0000]
Move the SQLite test dependency specification to optdeps

Even though this is a hard test_requires (for now), move things to a proper
specification within OptDeps like all other RDBMS (will make icdt specs
much easier).

The OptDep module is very lightweight anyway, and loading it on all installs
will be a good exercise before spinning it off.

9 years agoStabilize and further test complex optdep include scenarious
Peter Rabbitson [Fri, 6 Feb 2015 10:39:44 +0000]
Stabilize and further test complex optdep include scenarious

9 years agoClarify optdep API signatures to be explicitly single-argument
Peter Rabbitson [Fri, 6 Feb 2015 10:06:01 +0000]
Clarify optdep API signatures to be explicitly single-argument

9 years agoRemove DateTime requirement from tests that do not rely on it
Peter Rabbitson [Sat, 7 Feb 2015 16:02:02 +0000]
Remove DateTime requirement from tests that do not rely on it

The deterministic_value test checks how stringification behaves wrt inherited
values from a resultset. Rename test while we are at it.

The plus_select.t checks behavior of InflateColumn combined with get_columns.

In both cases the column in question (year) is declared as VarChar and is not
connected with IC::DT in any way

Read under -C -C -M -w

9 years agoMove some ICDT dependent (sub)tests around (no functional changes)
Peter Rabbitson [Sat, 7 Feb 2015 15:02:26 +0000]
Move some ICDT dependent (sub)tests around (no functional changes)

Read diff/blame with -C -C -M -w

9 years agoFix overspecified msaccess test optdep (should not include icdt)
Peter Rabbitson [Sun, 8 Feb 2015 10:11:00 +0000]
Fix overspecified msaccess test optdep (should not include icdt)

The test_rdbms_msaccess_* groups are only referenced in two tests. The basic
one does not exercise (doesn't even load) any of the ICDT handling components

The ICDT test already explicitly requires test_dt, so no changes are needed
within the actual tests

The erroneous requirement was introduced in 726c8f65 and never revised since

9 years agoRemove obsolete startup check (introduced in 5e724964, superseded by a5a7bb73)
Peter Rabbitson [Tue, 10 Feb 2015 13:05:40 +0000]
Remove obsolete startup check (introduced in 5e724964, superseded by a5a7bb73)

9 years agoAdd import-time-skip support to OptDeps, switch most tests over to that
Peter Rabbitson [Fri, 17 Oct 2014 09:35:46 +0000]
Add import-time-skip support to OptDeps, switch most tests over to that

This is the meat of this refactor, inspired by multiple parties complaining
(with good reason) about the sluggishness of our skip_all()s, and by groundwork
in both c8dc7d333 and 2c2bc4e5 (both never applied - the former is superseded
by a more direct approach and the latter being too intrusive with too little
benefit after the refactor)

Only tests with unambiguous skips were switched over - later commits will
address multi-rdbms loops in a different manner.

The loss of skip-time warnings "this test creates tables blah and blah" was
deliberate, and due to several reasons

*) They are displayed at the wrong time
*) They are not well sycnrhonized with what the actual test does
*) Some time this year all table names will switch to dbictest_-prefixing

All in all the thinking is that nothing of value is lost, and the changeset
is greatly simplified as a result.

The loading before strict/warning in tests is actually significant. It appears
that in "all deps fail" cases the speedup of not loading strictures is quite
significant (demonstrated below difference on WiP CDBICompat streamlining):

strictures first:
Files=43, Tests=0,  1 wallclock secs ( 0.14 usr  0.08 sys +  0.35 cusr  0.15 csys =  0.72 CPU)

optdeps first:
Files=43, Tests=0,  1 wallclock secs ( 0.13 usr  0.06 sys +  0.14 cusr  0.11 csys =  0.44 CPU)

9 years agoAdd import-time action stub to OptDeps, switch distbuild checks to it
Peter Rabbitson [Sun, 18 Jan 2015 13:33:28 +0000]
Add import-time action stub to OptDeps, switch distbuild checks to it

More in the following commit

9 years agoIntroduce basic optdeps group inclusion mechanism, simplify many declarations
Peter Rabbitson [Tue, 20 Jan 2015 16:09:44 +0000]
Introduce basic optdeps group inclusion mechanism, simplify many declarations

No logical changes: verified before and after the commit via:

perl -MData::Dumper::Concise -Ilib -MDBIx::Class::Optional::Dependencies -e '
  my $d = DBIx::Class::Optional::Dependencies->req_group_list;
  delete $d->{$_} for grep /rdbms_generic/, keys %$d;
  delete $_->{effective_modreqs_differ} for values %$d;
  print Dumper $d
' | sha1sum

Read under -w

9 years agoMake OptDeps aware of envvars as first-class requirements (test_* groups only)
Peter Rabbitson [Sun, 26 Oct 2014 12:23:28 +0000]
Make OptDeps aware of envvars as first-class requirements (test_* groups only)

9 years agoDeprecate req_errorlist_for, proxy to to modreq_errorlist_for
Peter Rabbitson [Thu, 8 Jan 2015 18:33:57 +0000]
Deprecate req_errorlist_for, proxy to to modreq_errorlist_for

Leaving the old method in place indefinitely - may be used in the wild

9 years agoRewrite optdeps to accept a list of groups
Peter Rabbitson [Fri, 17 Oct 2014 09:27:27 +0000]
Rewrite optdeps to accept a list of groups

Requires a one-time break of req_group_list()
Also tighten up the optdep spec and handle conflicting versions saner

As a side effect fix 34d2deae to be truly copy-paste-able (no , separator)

Changes to ::Opt::Deps and xt/optional_deps.t best viewed under -w

9 years agoOptDeps doc-mangling, no functional changes
Peter Rabbitson [Sat, 17 Jan 2015 13:23:44 +0000]
OptDeps doc-mangling, no functional changes

Switch synopsis away from M::I (it still scares people, boggle)
Document volatility of req_group_list
Better language in places
Coarser granularity of heredocs (easier to read)

Read changes under -w

9 years agoMinor streamline of optdeps usage (no functional changes)
Peter Rabbitson [Sun, 18 Jan 2015 22:22:39 +0000]
Minor streamline of optdeps usage (no functional changes)

9 years agoStandardize the struct-cloning interface throughout the codebase
Peter Rabbitson [Sun, 25 Jan 2015 09:59:55 +0000]
Standardize the struct-cloning interface throughout the codebase

9 years agoNeither of these can fail now that we dep on 5.8.1 (missed in 55087b99)
Peter Rabbitson [Sat, 24 Jan 2015 19:53:22 +0000]
Neither of these can fail now that we dep on 5.8.1 (missed in 55087b99)

9 years agoDelete useless test
Peter Rabbitson [Sat, 24 Jan 2015 17:23:23 +0000]
Delete useless test

9 years agoFix intermittent failures in the LeakTracer on 5.18+, remove all workarounds
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.

9 years agoKeep T::B IO open in t/52leaks.t END - other ENDs pending (esp. since 961d79db)
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

9 years agoFix Postgres test hang with DBD::Pg 3.5.0+ (work around RT#100648)
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

9 years ago(travis) Remove trial SQLA workaround (no longer on CPAN) - retry another time
Peter Rabbitson [Sun, 11 Jan 2015 09:39:48 +0000]
(travis) Remove trial SQLA workaround (no longer on CPAN) - retry another time

Read diff under -w

9 years ago(travis) Revert 17b09b77 - Test::Deep 0.115 now available
Peter Rabbitson [Sun, 11 Jan 2015 09:45:08 +0000]
(travis) Revert 17b09b77 - Test::Deep 0.115 now available

https://github.com/rjbs/Test-Deep/issues/22

9 years agoPreserve space after <nick>: in the AUTHORS section of DBIx/Class.pod
Dagfinn Ilmari Mannsåker [Tue, 6 Jan 2015 19:24:05 +0000]
Preserve space after <nick>: in the AUTHORS section of DBIx/Class.pod

9 years agoEmit Optional::Dependencies error messages in a way simplifying c/p for cpanm
Peter Rabbitson [Sat, 3 Jan 2015 16:30:14 +0000]
Emit Optional::Dependencies error messages in a way simplifying c/p for cpanm

The contrived no-space-containing output is sadly necessary - cpanm only
considers an optspec if the module name is directly followed by ~

rabbit@Ahasver:~$ cpanm "SQL::Translator~ >= 0.11018"
SQL::Translator is up to date. (0.11020)
rabbit@Ahasver:~$ cpanm "SQL::Translator~ >=0.11018"
SQL::Translator is up to date. (0.11020)
rabbit@Ahasver:~$ cpanm "SQL::Translator ~ >= 0.11018"
--> Working on SQL::Translator
^C

9 years agoMore robust 'nothing loaded' test for optdeps (read under -w)
Peter Rabbitson [Sat, 3 Jan 2015 12:16:25 +0000]
More robust 'nothing loaded' test for optdeps (read under -w)

9 years agoReshuffle optdeps code making next commits more readable (no func. changes)
Peter Rabbitson [Fri, 2 Jan 2015 13:43:35 +0000]
Reshuffle optdeps code making next commits more readable (no func. changes)

Need to switch the entire POD generator to something else before going solo

9 years ago(travis) randomize the dependency install order to catch even more fish
Peter Rabbitson [Fri, 2 Jan 2015 15:56:26 +0000]
(travis) randomize the dependency install order to catch even more fish

9 years ago(travis) remove two more workarounds for issues that have since been resolved
Peter Rabbitson [Fri, 2 Jan 2015 12:23:00 +0000]
(travis) remove two more workarounds for issues that have since been resolved

https://rt.cpan.org/Ticket/Display.html?id=99747
https://github.com/travis-ci/travis-ci/issues/1477

9 years ago(travis) stop trying to dynamically determine the CPAN mirror
Peter Rabbitson [Mon, 29 Dec 2014 14:59:01 +0000]
(travis) stop trying to dynamically determine the CPAN mirror

Even if Travis brings their mirror back, we are not going to be able to
use it - we need backpan at this point

9 years ago(travis) minimize mysqld's memory footprint
Peter Rabbitson [Mon, 29 Dec 2014 11:49:49 +0000]
(travis) minimize mysqld's memory footprint

This implements a part of "solution 2)" described in ac4e80df. Historically
the OOM issues so far have always been somehow related to mysqld

Unfortunately this alone does not seem sufficient to raise the thread count
back up, that will need more minimizations

9 years ago(travis) Invoke apt_install only once and do not change the source list
Peter Rabbitson [Sun, 28 Dec 2014 12:46:27 +0000]
(travis) Invoke apt_install only once and do not change the source list

This shaves off a surprising amount of time

9 years ago(travis) Document app-nopaste workaround better
Peter Rabbitson [Sun, 28 Dec 2014 12:42:01 +0000]
(travis) Document app-nopaste workaround better

9 years ago(travis) Stop trying to get the Oracle apt source - use the debs directly
Peter Rabbitson [Sun, 28 Dec 2014 08:52:24 +0000]
(travis) Stop trying to get the Oracle apt source - use the debs directly

9 years agoClean up PostgreSQL array types recipe (amalgamation of 10e72c6e and 09380b06)
Dagfinn Ilmari Mannsåker [Thu, 11 Dec 2014 11:24:38 +0000]
Clean up PostgreSQL array types recipe (amalgamation of 10e72c6e and 09380b06)

- Prefer { -value => [ … ] } syntax over \[ '= ?', [colname => [ … ]] ]
- Reference SQLA -value docs instead of array_datatypes
- Add trailing comma in hashes
- Remove pointless 'day' key from update example

9 years agoUse more widely supported quoting in DBICTest::Year2000CDs view
Dagfinn Ilmari Mannsåker [Wed, 10 Dec 2014 17:37:37 +0000]
Use more widely supported quoting in DBICTest::Year2000CDs view

This lets DBICTEST_SQLT_DEPLOY=1 work with more non-SQLite DBICTEST_DSNs

The "number as quoted string" is necessary because some databases
(e.g. PostgreSQL) do not do implicit casting between integers and strings

9 years ago(travis) Add 5.8.1 dev-testing to avoid crap like RT#99747
Peter Rabbitson [Wed, 28 Aug 2013 12:01:00 +0000]
(travis) Add 5.8.1 dev-testing to avoid crap like RT#99747

9 years ago(travis) Workaround for https://github.com/rjbs/Test-Deep/issues/22
Peter Rabbitson [Sun, 21 Dec 2014 14:12:15 +0000]
(travis) Workaround for https://github.com/rjbs/Test-Deep/issues/22

9 years ago(travis) RT#88494 got fixed a while ago
Peter Rabbitson [Sun, 21 Dec 2014 14:09:12 +0000]
(travis) RT#88494 got fixed a while ago

10 years agoCleanup code in _dbh_columns_info_for, add stresstest var to smoke it
Peter Rabbitson [Fri, 7 Nov 2014 13:01:45 +0000]
Cleanup code in _dbh_columns_info_for, add stresstest var to smoke it

10 years agoMake sure emacs doesn't try to indent with tabs
Dagfinn Ilmari Mannsåker [Tue, 21 Oct 2014 21:48:15 +0000]
Make sure emacs doesn't try to indent with tabs

10 years ago(travis) Attempt to smoke all newly available deps on DEVREL runs
Peter Rabbitson [Thu, 6 Nov 2014 17:20:37 +0000]
(travis) Attempt to smoke all newly available deps on DEVREL runs

Read diff under -w

10 years ago(travis) Better separation of DEVREL_DEPS from POISON_ENV
Peter Rabbitson [Thu, 6 Nov 2014 17:19:08 +0000]
(travis) Better separation of DEVREL_DEPS from POISON_ENV

10 years agoCorrectly document the 'where' attribute
Peter Rabbitson [Wed, 5 Nov 2014 10:49:37 +0000]
Correctly document the 'where' attribute

The documentation was correct when it was written 8 years ago in 4209f49a,
but then promptly broken 2 months later by 78060df8 (ironically one of the
corner stones of omnipotent chaining)

Fix documentation and add an extra test endorsing the current additive
behavior.

10 years ago(travis) Forgotten bit while reverting f207111d6 (goes with 0d383895)
Peter Rabbitson [Fri, 31 Oct 2014 11:17:49 +0000]
(travis) Forgotten bit while reverting f207111d6 (goes with 0d383895)

10 years ago(travis) Revisit the CI test matrix, and multiple run-script improvements
Peter Rabbitson [Wed, 29 Oct 2014 09:39:25 +0000]
(travis) Revisit the CI test matrix, and multiple run-script improvements

- Add 5.8.4 testperl and also make the travis 5.8 run first: will
  give a much faster reponse time if something 5.8 related fails

- Make sure the perl sitelib sanitizer doesn't fire on legacy perls:
  on anything older than 5.12 we are essentialy nuking the baselib.
  The aftermath is that nobody will go to space that day.

- Stop considering DBIC_*_DEBUG part of the POISON-set
  These are more of a tracer - specify them explicitly instead

10 years agoBlacklist certain trial versions of DBD::SQLite in testing
Peter Rabbitson [Sat, 25 Oct 2014 12:49:02 +0000]
Blacklist certain trial versions of DBD::SQLite in testing

10 years ago(internal) Introduce an extra utility function, essentially a ( >= , < ) test
Peter Rabbitson [Sat, 25 Oct 2014 12:34:28 +0000]
(internal) Introduce an extra utility function, essentially a ( >= ,  < ) test

10 years agoMake sure the fix for RT#99503 (SQLA a5f91febe) keeps working
Peter Rabbitson [Sat, 25 Oct 2014 12:00:10 +0000]
Make sure the fix for RT#99503 (SQLA a5f91febe) keeps working

10 years agoFix endless loop on BareSourcelessResultClass->throw_exception(...)
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

10 years agoMinor cleanup
Peter Rabbitson [Fri, 24 Oct 2014 23:24:21 +0000]
Minor cleanup

10 years agoBump Moo dependency
Peter Rabbitson [Fri, 24 Oct 2014 22:41:04 +0000]
Bump Moo dependency

10 years agoFix idiocy that snuck in bdbd2ae8a - I only want fatal undefs
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'

10 years agoFix incorrect collapser source being generated due to unicode collapse points
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)

10 years agoThese are already pre-required by the OptDeps check
Peter Rabbitson [Fri, 24 Oct 2014 18:00:03 +0000]
These are already pre-required by the OptDeps check

10 years agoThese loads are no longer necessary after d7d45bdc65
Peter Rabbitson [Fri, 24 Oct 2014 17:56:15 +0000]
These loads are no longer necessary after d7d45bdc65

10 years agoHRI is part of a pretty hot codepath, just load it all the time
Peter Rabbitson [Fri, 24 Oct 2014 17:55:15 +0000]
HRI is part of a pretty hot codepath, just load it all the time

10 years agoReplace a couple useless string evals with their equivalent
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

10 years ago(travis) Better diagnostics on *why* a build failed, reduce parellelism
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

10 years ago(travis) Reshuffle CI workflow, prepare for better instrumentation of failures
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

10 years ago(travis) Feeble attempt at reverting f207111d
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

10 years ago(travis) Install older DBD::SQLite on perl < 5.8.4, I fucked up on testing
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--

10 years agoSwitch all double-optdeps calls to a single invocation in lib/
Peter Rabbitson [Fri, 17 Oct 2014 10:04:58 +0000]
Switch all double-optdeps calls to a single invocation in lib/

10 years agoSwitch optdeps to a croak import
Peter Rabbitson [Fri, 17 Oct 2014 09:12:16 +0000]
Switch optdeps to a croak import

10 years agoFurther delay empty weakregistry assertions
Dagfinn Ilmari Mannsåker [Tue, 23 Sep 2014 18:33:37 +0000]
Further delay empty weakregistry assertions

(extracted from 2c2bc4e5)

10 years agoStop lazy-requiring B and Storable in internal functions
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

10 years agoNewer Test::More lazy-loads more stuff (overload.pm in this case)
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

10 years agoBump blead version
Peter Rabbitson [Fri, 26 Sep 2014 02:25:00 +0000]
Bump blead version

10 years agoExtra tests to ensure that the cond collapser will not mask SQLA deprecations
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

10 years agoBump deps to pull in bugfixes
Peter Rabbitson [Sun, 5 Oct 2014 21:16:48 +0000]
Bump deps to pull in bugfixes

10 years agoAdjust things for the is_literal_value and -ident SQLA 1.80 fixes
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

10 years agoThe functionality introduced in 7ad80222 requires a certain CDBI
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

10 years ago(travis) Augment bc418819 - in addition check vm kernel memory health
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

10 years ago(travis) Re-consolidate sysinfo handling (reverts part of 83da25f0)
Peter Rabbitson [Sun, 28 Sep 2014 10:08:49 +0000]
(travis) Re-consolidate sysinfo handling (reverts part of 83da25f0)

10 years ago(travis) Consolidate where/how we load the common functions (the multiple
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)