summaryrefslogtreecommitdiff
path: root/dev-perl/Template-Toolkit
diff options
context:
space:
mode:
Diffstat (limited to 'dev-perl/Template-Toolkit')
-rw-r--r--dev-perl/Template-Toolkit/Manifest5
-rw-r--r--dev-perl/Template-Toolkit/Template-Toolkit-2.270.0-r1.ebuild49
-rw-r--r--dev-perl/Template-Toolkit/files/Template-Toolkit-2.27-cgipm.patch66
-rw-r--r--dev-perl/Template-Toolkit/files/Template-Toolkit-2.27-no-dot-inc.patch54
-rw-r--r--dev-perl/Template-Toolkit/metadata.xml63
5 files changed, 237 insertions, 0 deletions
diff --git a/dev-perl/Template-Toolkit/Manifest b/dev-perl/Template-Toolkit/Manifest
new file mode 100644
index 000000000000..806e9a78bab5
--- /dev/null
+++ b/dev-perl/Template-Toolkit/Manifest
@@ -0,0 +1,5 @@
+AUX Template-Toolkit-2.27-cgipm.patch 1819 BLAKE2B 06c8fa20721a0d68576b5c8883eb2f0c85af72e84bbdd7bc2deb721576d8ee453dbb0b3ea9e9d770604fb916538b9067f3e3311b176558309160c705068aa305 SHA512 d7927a35a3d287ad2a515cedb01f9f80fa9d23293b694fb03b59b18b159f4c4584b9ce8870d8d4b9c56d9f1c28c624e918332d668c0c375167b44f783229a9e4
+AUX Template-Toolkit-2.27-no-dot-inc.patch 1987 BLAKE2B feaae674dd01ef2d7ae7c1a660c838b69d3b1fcc07b735a66dbab2bb6d27c7ea1916c3bb2855b7f8d566f3516874925ca2a23f20cf2f9258aa1a7bcec8d46f1b SHA512 e7ce9167bc2ecc648efb0e021f1481c63093cb9a8f42492c081200938e075dc272eeaef903e1cd14b4f81407037d8d5dce43f7f04d113dd01c4f24516ce93b19
+DIST Template-Toolkit-2.27.tar.gz 511172 BLAKE2B 62ffce1fe5679799afff6b3865882c91e70efeb2ec14474f3b49bdf35bd64f7ce4439d5c58ddd73bad26589816d2f24f4691a02c69405fb6b6b604d28edee4e2 SHA512 17f03a01a3d6ab0ef2247c77da15c46d9bbce3e0158172162da6abe47f53c5e7ca041a7c31506bb3a37f31c476ba747f5111c5b1b1d69614a4ce3352927fd4e6
+EBUILD Template-Toolkit-2.270.0-r1.ebuild 1043 BLAKE2B 2cfd47bb00be4a268018c63a209358dfa0692187a16739c52a5c9c017ed8d4f42306b44f5fca57736f6fa875861477c66b9ee6237c8df2595ca0264324cb2521 SHA512 d130bc14cd93c6e815eec7a42222ac6079bcb72207fa305e45297baa20033164eb5c50d68ce933db77c9e87b222091a7376f4e84601bec62e3df306692306b52
+MISC metadata.xml 3834 BLAKE2B 0d0cd7506fc2864b9e26a1d580c53931016006ed82e6a788a474f80b490e780da32e07855778bad14ff4b8c444d8e79f6a42a71013bed0db95d0ba8a14f395b7 SHA512 34d9afc89acd0a65724c1af1f5720b15665fcaf06e25db62210bf8fe7dc7c6e83009c0ba6c346821d320de5587cc678c921d0982d3ca317633a6c049ffeee1e7
diff --git a/dev-perl/Template-Toolkit/Template-Toolkit-2.270.0-r1.ebuild b/dev-perl/Template-Toolkit/Template-Toolkit-2.270.0-r1.ebuild
new file mode 100644
index 000000000000..b368290f838b
--- /dev/null
+++ b/dev-perl/Template-Toolkit/Template-Toolkit-2.270.0-r1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DIST_AUTHOR=ABW
+DIST_VERSION=2.27
+inherit perl-module
+
+DESCRIPTION="The Template Toolkit"
+
+SLOT="0"
+KEYWORDS="amd64 ~arm ppc ppc64 x86 ~ppc-aix ~x86-fbsd ~x86-solaris"
+IUSE="xml gd mysql postgres latex vim-syntax test"
+
+RDEPEND="dev-perl/Text-Autoformat
+ mysql? ( dev-perl/DBD-mysql )
+ postgres? ( dev-perl/DBD-Pg )
+ >=dev-perl/AppConfig-1.56"
+DEPEND="${RDEPEND}
+ test? ( dev-perl/CGI )
+"
+PDEPEND="dev-perl/Text-Autoformat
+ vim-syntax? ( app-vim/tt2-syntax )
+ xml? ( dev-perl/Template-XML )
+ gd? ( dev-perl/Template-GD )
+ mysql? ( dev-perl/Template-DBI )
+ latex? ( dev-perl/Template-Plugin-Latex )
+ postgres? ( dev-perl/Template-DBI )"
+
+myconf=(
+ TT_XS_ENABLE=y
+ TT_XS_DEFAULT=y
+ TT_QUIET=y
+ TT_ACCEPT=y
+)
+
+PERL_RM_FILES=(
+ t/zz-plugin-leak.t
+ t/zz-pmv.t
+ t/zz-pod-coverage.t
+ t/zz-pod-kwalitee.t
+ t/zz-stash-xs-leak.t
+ t/zz-url2.t
+)
+PATCHES=(
+ "${FILESDIR}/${PN}-2.27-no-dot-inc.patch"
+ "${FILESDIR}/${PN}-2.27-cgipm.patch"
+)
diff --git a/dev-perl/Template-Toolkit/files/Template-Toolkit-2.27-cgipm.patch b/dev-perl/Template-Toolkit/files/Template-Toolkit-2.27-cgipm.patch
new file mode 100644
index 000000000000..422cc851838f
--- /dev/null
+++ b/dev-perl/Template-Toolkit/files/Template-Toolkit-2.27-cgipm.patch
@@ -0,0 +1,66 @@
+From e723aeecf60ece32f6a1381f5c026ae08cae9913 Mon Sep 17 00:00:00 2001
+From: Kent Fredric <kentnl@gentoo.org>
+Date: Sat, 13 Jan 2018 13:48:31 +1300
+Subject: Fix tests warning w/ CGI.pm
+
+This currently seems like an intractable problem with the syntax of
+Template::Toolkit forcing list context by default on called functions.
+
+The only real way around this is to either:
+
+A) always use Template::Plugin::Scalar to enforce scalar context
+B) abuse cgi.multi_param to simply silence the warning and being an
+ adult about the fact "yes, this returns a list, make sure you do the
+ right thing with that"
+
+Bug: https://rt.cpan.org/Ticket/Display.html?id=100503
+---
+ t/cgi.t | 16 ++++++++++------
+ 1 file changed, 10 insertions(+), 6 deletions(-)
+
+diff --git a/t/cgi.t b/t/cgi.t
+index 023ab5ab..6086e145 100644
+--- a/t/cgi.t
++++ b/t/cgi.t
+@@ -49,28 +49,32 @@ sub barf {
+
+ __END__
+ -- test --
++[% USE scalar -%]
+ [% USE cgi = CGI('id=abw&name=Andy+Wardley'); global.cgi = cgi -%]
+-name: [% global.cgi.param('name') %]
++name: [% global.cgi.scalar.param('name') %]
+ -- expect --
+ name: Andy Wardley
+
+ -- test --
+-name: [% global.cgi.param('name') %]
++[% USE scalar -%]
++name: [% global.cgi.scalar.param('name') %]
+
+ -- expect --
+ name: Andy Wardley
+
+ -- test --
+-[% FOREACH key = global.cgi.param.sort -%]
+- * [% key %] : [% global.cgi.param(key) %]
++[% USE scalar -%]
++[% FOREACH key = global.cgi.multi_param.sort -%]
++ * [% key %] : [% global.cgi.scalar.param(key) %]
+ [% END %]
+ -- expect --
+ * id : abw
+ * name : Andy Wardley
+
+ -- test --
+-[% FOREACH key = global.cgi.param().sort -%]
+- * [% key %] : [% global.cgi.param(key) %]
++[% USE scalar -%]
++[% FOREACH key = global.cgi.multi_param().sort -%]
++ * [% key %] : [% global.cgi.scalar.param(key) %]
+ [% END %]
+ -- expect --
+ * id : abw
+--
+2.15.1
+
diff --git a/dev-perl/Template-Toolkit/files/Template-Toolkit-2.27-no-dot-inc.patch b/dev-perl/Template-Toolkit/files/Template-Toolkit-2.27-no-dot-inc.patch
new file mode 100644
index 000000000000..97decd75cb14
--- /dev/null
+++ b/dev-perl/Template-Toolkit/files/Template-Toolkit-2.27-no-dot-inc.patch
@@ -0,0 +1,54 @@
+From 65e7f0e980e64dd0525eda058330cea06379c332 Mon Sep 17 00:00:00 2001
+From: Kent Fredric <kentnl@gentoo.org>
+Date: Sat, 13 Jan 2018 13:05:52 +1300
+Subject: Fix relative path handling in templates on Perl 5.26+
+
+NB: It doesn't seem like the value of "$compiled" is very useful in the
+failure case, as the expectation is that'd have been a falsey value at
+best, or a literal "undef" at worst, yeilding additional warnings.
+
+Bug: https://rt.cpan.org/Ticket/Display.html?id=121171
+Bug: https://bugs.gentoo.org/615704
+---
+ lib/Template/Provider.pm | 20 ++++++++++++++++++--
+ 1 file changed, 18 insertions(+), 2 deletions(-)
+
+diff --git a/lib/Template/Provider.pm b/lib/Template/Provider.pm
+index 6ecb2453..61c3469c 100644
+--- a/lib/Template/Provider.pm
++++ b/lib/Template/Provider.pm
+@@ -562,13 +562,29 @@ sub _compiled_filename {
+
+ sub _load_compiled {
+ my ($self, $file) = @_;
++
++ # Implicitly Relative paths are not supported
++ # by "require" and invoke @INC traversal, where relative
++ # paths only traditionally worked prior to Perl 5.26
++ # due to the presence of '.' in @INC
++ #
++ # Given load_compiled never wants to traverse @INC, forcing
++ # an absolute path for the loaded file and the INC key is
++ # sensible.
++ #
++ # NB: %INC Keys are always identical to their respective
++ # "require" invocations regardless of OS, and the only time
++ # one needs to care about slash direction is when dealing
++ # with Module::Name -> Module/Name.pm translation.
++ my $fpath = File::Spec->rel2abs( $file );
++
+ my $compiled;
+
+ # load compiled template via require(); we zap any
+ # %INC entry to ensure it is reloaded (we don't
+ # want 1 returned by require() to say it's in memory)
+- delete $INC{ $file };
+- eval { $compiled = require $file; };
++ delete $INC{ $fpath };
++ eval { $compiled = require $fpath; };
+ return $@
+ ? $self->error("compiled template $compiled: $@")
+ : $compiled;
+--
+2.15.1
+
diff --git a/dev-perl/Template-Toolkit/metadata.xml b/dev-perl/Template-Toolkit/metadata.xml
new file mode 100644
index 000000000000..2a00f590df1c
--- /dev/null
+++ b/dev-perl/Template-Toolkit/metadata.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>perl@gentoo.org</email>
+ <name>Gentoo Perl Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="cpan">Template-Toolkit</remote-id>
+ <remote-id type="cpan-module">Template</remote-id>
+ <remote-id type="cpan-module">Template::Base</remote-id>
+ <remote-id type="cpan-module">Template::Config</remote-id>
+ <remote-id type="cpan-module">Template::Constants</remote-id>
+ <remote-id type="cpan-module">Template::Context</remote-id>
+ <remote-id type="cpan-module">Template::Directive</remote-id>
+ <remote-id type="cpan-module">Template::Document</remote-id>
+ <remote-id type="cpan-module">Template::Exception</remote-id>
+ <remote-id type="cpan-module">Template::Filters</remote-id>
+ <remote-id type="cpan-module">Template::Grammar</remote-id>
+ <remote-id type="cpan-module">Template::Iterator</remote-id>
+ <remote-id type="cpan-module">Template::Monad::Assert</remote-id>
+ <remote-id type="cpan-module">Template::Monad::Scalar</remote-id>
+ <remote-id type="cpan-module">Template::Namespace::Constants</remote-id>
+ <remote-id type="cpan-module">Template::Parser</remote-id>
+ <remote-id type="cpan-module">Template::Perl</remote-id>
+ <remote-id type="cpan-module">Template::Plugin</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Assert</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::CGI</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Datafile</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Date</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Date::Calc</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Date::Manip</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Directory</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Dumper</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::File</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Filter</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Format</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::HTML</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Image</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Iterator</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Math</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Pod</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Procedural</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Scalar</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::String</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Table</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::URL</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::View</remote-id>
+ <remote-id type="cpan-module">Template::Plugin::Wrap</remote-id>
+ <remote-id type="cpan-module">Template::Plugins</remote-id>
+ <remote-id type="cpan-module">Template::Provider</remote-id>
+ <remote-id type="cpan-module">Template::Service</remote-id>
+ <remote-id type="cpan-module">Template::Stash</remote-id>
+ <remote-id type="cpan-module">Template::Stash::Context</remote-id>
+ <remote-id type="cpan-module">Template::Stash::XS</remote-id>
+ <remote-id type="cpan-module">Template::Test</remote-id>
+ <remote-id type="cpan-module">Template::TieString</remote-id>
+ <remote-id type="cpan-module">Template::Toolkit</remote-id>
+ <remote-id type="cpan-module">Template::VMethods</remote-id>
+ <remote-id type="cpan-module">Template::View</remote-id>
+ <remote-id type="cpan-module">bytes</remote-id>
+ </upstream>
+</pkgmetadata>