diff options
-rw-r--r-- | pkgs/development/perl-modules/dbix-class-fix-52leaks.patch | 23 | ||||
-rw-r--r-- | pkgs/development/perl-modules/dbix-class-fix-tests.patch | 52 | ||||
-rw-r--r-- | pkgs/top-level/perl-packages.nix | 84 |
3 files changed, 79 insertions, 80 deletions
diff --git a/pkgs/development/perl-modules/dbix-class-fix-52leaks.patch b/pkgs/development/perl-modules/dbix-class-fix-52leaks.patch new file mode 100644 index 000000000000..84af4a5acf1c --- /dev/null +++ b/pkgs/development/perl-modules/dbix-class-fix-52leaks.patch @@ -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}; diff --git a/pkgs/development/perl-modules/dbix-class-fix-tests.patch b/pkgs/development/perl-modules/dbix-class-fix-tests.patch deleted file mode 100644 index 476a159f621f..000000000000 --- a/pkgs/development/perl-modules/dbix-class-fix-tests.patch +++ /dev/null @@ -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' ); - diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index 9047365268aa..e0fe24b002ef 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -1270,6 +1270,21 @@ let self = _self // overrides; _self = with self; { }; }; + CatalystViewCSV = buildPerlPackage rec { + name = "Catalyst-View-CSV-1.7"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MC/MCB/${name}.tar.gz"; + sha256 = "e41326b6099891f244b432921ed10096ac619f32b8c4f8b41633313bd54662db"; + }; + buildInputs = [ CatalystActionRenderView CatalystModelDBICSchema CatalystPluginConfigLoader CatalystRuntime CatalystXComponentTraits ConfigGeneral DBDSQLite DBIxClass Moose TestException ]; + propagatedBuildInputs = [ CatalystRuntime TextCSV URI ]; + meta = { + description = "CSV view class"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.rycee ]; + }; + }; + CatalystViewDownload = buildPerlPackage rec { name = "Catalyst-View-Download-0.09"; src = fetchurl { @@ -3108,19 +3123,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 ]; }; }; @@ -7214,17 +7233,18 @@ let self = _self // overrides; _self = with self; { }; }; - Moo = buildPerlPackage { - name = "Moo-1.006000"; + Moo = buildPerlPackage rec { + name = "Moo-2.000002"; src = fetchurl { - url = mirror://cpan/authors/id/H/HA/HAARG/Moo-1.006000.tar.gz; - sha256 = "0gjh6dyz825cwjibq2wlpx14drjqx4pxxh931p4x3jd2617hax17"; + url = "mirror://cpan/authors/id/H/HA/HAARG/${name}.tar.gz"; + sha256 = "fb4bfa751f0dd06bd70f2e06e811f85a640501f263c228a8efafbf6b26691fd4"; }; buildInputs = [ TestFatal ]; - propagatedBuildInputs = [ ClassMethodModifiers DevelGlobalDestruction ImportInto ModuleRuntime RoleTiny strictures ]; + propagatedBuildInputs = [ ClassMethodModifiers DevelGlobalDestruction ModuleRuntime RoleTiny ]; meta = { description = "Minimalist Object Orientation (with Moose compatibility)"; license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.rycee ]; }; }; @@ -9470,16 +9490,17 @@ let self = _self // overrides; _self = with self; { }; }; - RoleTiny = buildPerlPackage { - name = "Role-Tiny-1.003003"; + RoleTiny = buildPerlPackage rec { + name = "Role-Tiny-2.000001"; src = fetchurl { - url = mirror://cpan/authors/id/H/HA/HAARG/Role-Tiny-1.003003.tar.gz; - sha256 = "1k823g4wnya18yx2v1xrfl73qqavqpzvaydyg1r7gdzcdvdwl4mp"; + url = "mirror://cpan/authors/id/H/HA/HAARG/${name}.tar.gz"; + sha256 = "31883410a7c85d6dc7501c718b1f83edba013a7b9bbccf0338a1033c391f296d"; }; buildInputs = [ TestFatal ]; meta = { - description = "Roles, like a nouvelle cuisine portion size slice of Moose"; + description = "Roles. Like a nouvelle cuisine portion size slice of Moose"; license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.rycee ]; }; }; @@ -9676,17 +9697,18 @@ let self = _self // overrides; _self = with self; { buildInputs = [ pkgs.which ]; }; - SoftwareLicense = buildPerlPackage { - name = "Software-License-0.103005"; + SoftwareLicense = buildPerlPackage rec { + name = "Software-License-0.103010"; src = fetchurl { - url = mirror://cpan/authors/id/R/RJ/RJBS/Software-License-0.103005.tar.gz; - sha256 = "050a14e0b3fb15763fd267fdd8ccc7ec8c459d8cc830b0bdc39ce09f5910f88c"; + url = "mirror://cpan/authors/id/R/RJ/RJBS/${name}.tar.gz"; + sha256 = "929fbace96f69a0977a0380000820c93fc1af4e973a422c73e6cd254405fa47c"; }; - propagatedBuildInputs = [ DataSection SubInstall TextTemplate ]; + propagatedBuildInputs = [ DataSection TextTemplate TryTiny ]; meta = { - homepage = https://github.com/rjbs/software-license; + homepage = https://github.com/rjbs/Software-License; description = "Packages that provide templated software licenses"; license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.rycee ]; }; }; @@ -9717,17 +9739,18 @@ let self = _self // overrides; _self = with self; { propagatedBuildInputs = [ IOStringy OLEStorageLight ]; }; - SQLAbstract = buildPerlPackage { - name = "SQL-Abstract-1.80"; + SQLAbstract = buildPerlPackage rec { + name = "SQL-Abstract-1.81"; src = fetchurl { - url = mirror://cpan/authors/id/R/RI/RIBASUSHI/SQL-Abstract-1.80.tar.gz; - sha256 = "de4d0507fca0c6340c17867abca0632017bd56594443e67ea6ace826ba9a07a2"; + url = "mirror://cpan/authors/id/R/RI/RIBASUSHI/${name}.tar.gz"; + sha256 = "5f4d5618ce2424d62bbfdb5228b382e8be0e0ccedbb273d6d850e25d07e64f9f"; }; buildInputs = [ TestDeep TestException TestWarn ]; propagatedBuildInputs = [ HashMerge MROCompat Moo ]; meta = { description = "Generate SQL from Perl data structures"; license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.rycee ]; }; }; @@ -11525,7 +11548,12 @@ let self = _self // overrides; _self = with self; { name = "Text-CSV-1.33"; src = fetchurl { url = "mirror://cpan/authors/id/M/MA/MAKAMAKA/${name}.tar.gz"; - sha256 = "05a1nayxv04n0hx7y3m8327ijm34k9nhngrbxl18zmgzpawqynww"; + sha256 = "9c5b8fb9baffd58f02ed2b3f0b6d9a6454198f18a80e7f3a049680ddbdb24115"; + }; + meta = { + description = "Comma-separated values manipulator (using XS or PurePerl)"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.rycee ]; }; }; |