forked from mirrors/nixpkgs
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 {
|
||||
name = "DBIx-Class-0.082801";
|
||||
DBIxClass = buildPerlPackage rec {
|
||||
name = "DBIx-Class-0.082820";
|
||||
src = fetchurl {
|
||||
url = mirror://cpan/authors/id/R/RI/RIBASUSHI/DBIx-Class-0.082801.tar.gz;
|
||||
sha256 = "889d6f9139d8e73f5524dfa211019126042e84cb7a0ec30cd2ed7d315d73484b";
|
||||
url = "mirror://cpan/authors/id/R/RI/RIBASUSHI/${name}.tar.gz";
|
||||
sha256 = "7b6083a1273d474d785aa93581dc1da334bbe5d83c741574ee2e3942559daeb9";
|
||||
};
|
||||
buildInputs = [ DBDSQLite PackageStash TestDeep TestException TestWarn ];
|
||||
propagatedBuildInputs = [ ClassAccessorGrouped ClassC3Componentised ClassInspector ConfigAny ContextPreserve DBI DataDumperConcise DataPage DevelGlobalDestruction HashMerge MROCompat ModuleFind Moo PathClass SQLAbstract ScopeGuard SubName TryTiny namespaceclean ];
|
||||
doCheck = false;
|
||||
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 namespaceclean ];
|
||||
patches = [
|
||||
# Fix test error inside t/52leaks.t
|
||||
../development/perl-modules/dbix-class-fix-52leaks.patch
|
||||
];
|
||||
meta = {
|
||||
homepage = http://www.dbix-class.org/;
|
||||
description = "Extensible and flexible object <-> relational mapper";
|
||||
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
|
||||
maintainers = [ maintainers.rycee ];
|
||||
};
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in a new issue