perl-DBIx-Class: 0.082801 -> 0.082820
This commit is contained in:
parent
9da27816cc
commit
5bc1ddd78f
23
pkgs/development/perl-modules/dbix-class-fix-52leaks.patch
Normal file
23
pkgs/development/perl-modules/dbix-class-fix-52leaks.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
From e9d552de92cde6552f35cd45a3572df1e25609cc Mon Sep 17 00:00:00 2001
|
||||||
|
From: Peter Rabbitson <ribasushi@cpan.org>
|
||||||
|
Date: Tue, 19 May 2015 05:49:48 +0200
|
||||||
|
Subject: [PATCH] Make sure tests pass without a compiler present (another step
|
||||||
|
to RT#74706)
|
||||||
|
|
||||||
|
--- a/t/52leaks.t
|
||||||
|
+++ b/t/52leaks.t
|
||||||
|
@@ -446,6 +446,14 @@ for my $addr (keys %$weak_registry) {
|
||||||
|
delete $weak_registry->{$addr}
|
||||||
|
unless $cleared->{hash_merge_singleton}{$weak_registry->{$addr}{weakref}{behavior}}++;
|
||||||
|
}
|
||||||
|
+ elsif ($names =~ /^B::Hooks::EndOfScope::PP::_TieHintHashFieldHash/m) {
|
||||||
|
+ # there is one tied lexical which stays alive until GC time
|
||||||
|
+ # https://metacpan.org/source/ETHER/B-Hooks-EndOfScope-0.15/lib/B/Hooks/EndOfScope/PP/FieldHash.pm#L24
|
||||||
|
+ # simply ignore it here, instead of teaching the leaktracer to examine ties
|
||||||
|
+ # the latter is possible yet terrible: https://github.com/dbsrgits/dbix-class/blob/v0.082820/t/lib/DBICTest/Util/LeakTracer.pm#L113-L117
|
||||||
|
+ delete $weak_registry->{$addr}
|
||||||
|
+ unless $cleared->{bheos_pptiehinthashfieldhash}++;
|
||||||
|
+ }
|
||||||
|
elsif ($names =~ /^DateTime::TimeZone::UTC/m) {
|
||||||
|
# DT is going through a refactor it seems - let it leak zones for now
|
||||||
|
delete $weak_registry->{$addr};
|
@ -1,52 +0,0 @@
|
|||||||
diff --git a/t/multi_create/standard.t b/t/multi_create/standard.t
|
|
||||||
index 5a02947..6c1efd8 100644
|
|
||||||
--- a/t/multi_create/standard.t
|
|
||||||
+++ b/t/multi_create/standard.t
|
|
||||||
@@ -444,7 +444,11 @@ throws_ok ( sub {
|
|
||||||
#$t->cd($t->new_related('cd', { artist => undef } ) );
|
|
||||||
#$t->{_rel_in_storage} = 0;
|
|
||||||
$t->insert;
|
|
||||||
-}, qr/cd.artist may not be NULL/, "Exception propogated properly");
|
|
||||||
+}, qr/DBI Exception.+(?x:
|
|
||||||
+ \QNOT NULL constraint failed: cd.artist\E
|
|
||||||
+ |
|
|
||||||
+ \Qcd.artist may not be NULL\E
|
|
||||||
+)/s, "Exception propogated properly");
|
|
||||||
|
|
||||||
lives_ok ( sub {
|
|
||||||
$schema->resultset('CD')->create ({
|
|
||||||
diff --git a/t/relationship/update_or_create_multi.t b/t/relationship/update_or_create_multi.t
|
|
||||||
index 8710048..c7cce7a 100644
|
|
||||||
--- a/t/relationship/update_or_create_multi.t
|
|
||||||
+++ b/t/relationship/update_or_create_multi.t
|
|
||||||
@@ -69,7 +69,12 @@ throws_ok {
|
|
||||||
year => 2020,
|
|
||||||
title => 'the best thing since sliced bread',
|
|
||||||
})
|
|
||||||
-} qr/\Qcd.artist may not be NULL/, 'ambiguous find + create failed';
|
|
||||||
+} qr/DBI Exception.+(?x:
|
|
||||||
+ \QNOT NULL constraint failed: cd.artist\E
|
|
||||||
+ |
|
|
||||||
+ \Qcd.artist may not be NULL\E
|
|
||||||
+)/s, 'ambiguous find + create failed'
|
|
||||||
+;
|
|
||||||
|
|
||||||
# expect a create, after a failed search using *only* the
|
|
||||||
# *current* relationship and the unique column constraints
|
|
||||||
diff --git a/t/storage/error.t b/t/storage/error.t
|
|
||||||
index d5980eb..61d6782 100644
|
|
||||||
--- a/t/storage/error.t
|
|
||||||
+++ b/t/storage/error.t
|
|
||||||
@@ -15,7 +15,11 @@ warnings_are ( sub {
|
|
||||||
sub {
|
|
||||||
$schema->resultset('CD')->create({ title => 'vacation in antarctica' })
|
|
||||||
},
|
|
||||||
- qr/DBI Exception.+cd\.artist.+NULL/s
|
|
||||||
+ qr/DBI Exception.+(?x:
|
|
||||||
+ \QNOT NULL constraint failed: cd.artist\E
|
|
||||||
+ |
|
|
||||||
+ \Qcd.artist may not be NULL\E
|
|
||||||
+ )/s
|
|
||||||
); # as opposed to some other error
|
|
||||||
}, [], 'No warnings besides exception' );
|
|
||||||
|
|
@ -3108,19 +3108,23 @@ let self = _self // overrides; _self = with self; {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
DBIxClass = buildPerlPackage {
|
DBIxClass = buildPerlPackage rec {
|
||||||
name = "DBIx-Class-0.082801";
|
name = "DBIx-Class-0.082820";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = mirror://cpan/authors/id/R/RI/RIBASUSHI/DBIx-Class-0.082801.tar.gz;
|
url = "mirror://cpan/authors/id/R/RI/RIBASUSHI/${name}.tar.gz";
|
||||||
sha256 = "889d6f9139d8e73f5524dfa211019126042e84cb7a0ec30cd2ed7d315d73484b";
|
sha256 = "7b6083a1273d474d785aa93581dc1da334bbe5d83c741574ee2e3942559daeb9";
|
||||||
};
|
};
|
||||||
buildInputs = [ DBDSQLite PackageStash TestDeep TestException TestWarn ];
|
buildInputs = [ DBDSQLite PackageStash SQLTranslator TestDeep TestException TestWarn ];
|
||||||
propagatedBuildInputs = [ ClassAccessorGrouped ClassC3Componentised ClassInspector ConfigAny ContextPreserve DBI DataDumperConcise DataPage DevelGlobalDestruction HashMerge MROCompat ModuleFind Moo PathClass SQLAbstract ScopeGuard SubName TryTiny namespaceclean ];
|
propagatedBuildInputs = [ ClassAccessorGrouped ClassC3Componentised ClassInspector ConfigAny ContextPreserve DBI DataDumperConcise DataPage DevelGlobalDestruction HashMerge MROCompat ModuleFind Moo PathClass SQLAbstract ScopeGuard SubName namespaceclean ];
|
||||||
doCheck = false;
|
patches = [
|
||||||
|
# Fix test error inside t/52leaks.t
|
||||||
|
../development/perl-modules/dbix-class-fix-52leaks.patch
|
||||||
|
];
|
||||||
meta = {
|
meta = {
|
||||||
homepage = http://www.dbix-class.org/;
|
homepage = http://www.dbix-class.org/;
|
||||||
description = "Extensible and flexible object <-> relational mapper";
|
description = "Extensible and flexible object <-> relational mapper";
|
||||||
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
|
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
|
||||||
|
maintainers = [ maintainers.rycee ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user