Skip to content

Commit

Permalink
Bring back _TempExtlib (d0435d7), this time for Sub::Quote
Browse files Browse the repository at this point in the history
And this is the part that brings back the to-be-removed portion (unlike the
previous 399b945 which is here to stay)

See next commit for why we need this, to be removed once Moo $next ships
  • Loading branch information
ribasushi committed May 24, 2016
1 parent 399b945 commit b46b853
Show file tree
Hide file tree
Showing 4 changed files with 75 additions and 0 deletions.
37 changes: 37 additions & 0 deletions Makefile.PL
Expand Up @@ -21,6 +21,40 @@ BEGIN {
$Module::Install::AUTHOR = 0 if (grep { $ENV{"PERL5_${_}_IS_RUNNING"} } (qw/CPANM CPANPLUS CPAN/) );
}

##
## TEMPORARY (and non-portable)
## Get trial Moo
##
BEGIN {
my $target_libdir = 'lib/DBIx/Class/_TempExtlib';

if ( ($Module::Install::AUTHOR or $ENV{TRAVIS}) and ! $ENV{MAKELEVEL} ) {

`rm -rf $target_libdir`;
`mkdir $target_libdir`;
for (
[ 'Sub::Quote' => master => 'https://github.com/moose/Moo.git' ],
) {
my $tdir = "/tmp/dbictemplib/$_->[0]/";

`rm -rf $tdir`;

`GIT_SSH=maint/careless_ssh.bash git clone --bare --quiet --branch=$_->[1] --depth=1 $_->[2] $tdir`;
printf "\nIncluding %s git rev %s\n",
$_->[0],
scalar `GIT_DIR=$tdir git rev-parse $_->[1]`,
;
`git archive --format=tar --remote=file://$tdir $_->[1] lib/ | tar --strip-components=1 -xC $target_libdir`;

#`rm -rf $tdir`;
}

unshift @INC, $target_libdir;

no_index directory => $target_libdir;
}
}

name 'DBIx-Class';
version_from 'lib/DBIx/Class.pm';
perl_version '5.008001';
Expand Down Expand Up @@ -60,6 +94,9 @@ my $runtime_requires = {
'SQL::Abstract' => '1.81',
'Try::Tiny' => '0.07',

# Temp to satisfy TemptExtlib
'Role::Tiny' => '2.000002',

# Technically this is not a core dependency - it is only required
# by the MySQL codepath. However this particular version is bundled
# since 5.10.0 and is a pure-perl module anyway - let it slide
Expand Down
4 changes: 4 additions & 0 deletions lib/DBIx/Class/Optional/Dependencies.pm
Expand Up @@ -7,6 +7,10 @@ BEGIN {
require warnings and warnings->import;
require strict and strict->import;
}

# Temporary to satisfy TempExtlib under tests
require DBIx::Class::StartupCheck
if $0 =~ /\.t$/;
}

sub croak {
Expand Down
33 changes: 33 additions & 0 deletions lib/DBIx/Class/StartupCheck.pm
@@ -1,5 +1,38 @@
package DBIx::Class::StartupCheck;

# Temporary - tempextlib
use warnings;
use strict;
use namespace::clean;
BEGIN {
# There can be only one of these, make sure we get the bundled part and
# *not* something off the site lib
for (qw(
Sub::Quote
)) {
(my $incfn = "$_.pm") =~ s|::|/|g;

if ($INC{$incfn}) {
die "\n\t*TEMPORARY* TRIAL RELEASE REQUIREMENTS VIOLATED\n\n"
. "Unable to continue - a part of the bundled templib contents "
. "was already loaded (likely an older version from CPAN). "
. "Make sure that @{[ __PACKAGE__ ]} is loaded before $_\n"
. "\n\tThis *WILL NOT* be necessary for the official DBIC release\n\n"
;
}
}

require File::Spec;
our ($HERE) = File::Spec->rel2abs(
File::Spec->catdir( (File::Spec->splitpath(__FILE__))[1], '_TempExtlib' )
) =~ /^(.*)$/; # screw you, taint mode

die "TempExtlib $HERE does not seem to exist - perhaps you need to run `perl Makefile.PL` in the DBIC checkout?\n"
unless -d $HERE;

unshift @INC, $HERE;
}

1;

__END__
Expand Down
1 change: 1 addition & 0 deletions xt/extra/lean_startup.t
Expand Up @@ -141,6 +141,7 @@ BEGIN {
Sub::Name
Sub::Defer
Sub::Quote
File::Spec
Scalar::Util
Storable
Expand Down

0 comments on commit b46b853

Please sign in to comment.