After 7 months of trying to get an "emergency" trivial Template Toolkit release made with no response from Andy since September and no other releases from him since May 2006, modules@perl.org has assigned me co-maint permission on TT on a temporary basis.
I've just uploaded Template Toolkit 2.16 to CPAN to get TT working again (and all dependencies such as Catalyst, Maypole, Jifty et al) until Andy reappears.
It fixes some trivial Makefile.PL and test script issues that were preventing TT working on Windows ). It is also built with a newer version of ExtUtils::MakeMaker, so it has a production-level META.yml now.
Specifically, it should now work again on Strawberry Perl (or any other Perl built with MinGW). There seems to be some debugging macros in it currently preventing it working on Microsoft compilers, but that would be going beyond the scope of an "emergency" release.
This release makes no changes to Template Toolkit code whatsoever. Only build-time changes are involved, and I've been careful to package it up the same way as well.
If you already have 2.15 installed, there is no need to upgrade on any platform under any circumstances, and at the moment I don't plan to make any more releases at this point.
So please continue to file bugs in RT. When Andy resurfaces, they will be fixed. The last contact we have he mentioned having a new release ready to go.
Given the importance of the module, and for the sake of completeness, this is the diff for the new release:
adam@pita:~/cpan/releases$ diff -r Template-Toolkit-2.15 Template-Toolkit-2.16
diff -r Template-Toolkit-2.15/Changes Template-Toolkit-2.16/Changes
25a26,47
> # Version 2.16 - 23rd Jan 2007
> #------------------------------------------------------------------------
>
> This release only contains some minor tweaks to Makefile.PL and
> tests to allow installation on Win32 in cases where installation was
> spuriously failing and thus blocking other modules.
>
> If you already have 2.15 no upgrade is needed under any circumstances.
>
> Build Changes
> -------------
>
> * Skip fileline.t on Win32, as it has some hard-coded path seperator
> assumptions. This will be fixed more comprehensily later.
>
> * Handle spurious errors in Makefile.PL when a dev version of
> ExtUtils::MakeMaker is installed.
>
> * Don't say "nmake" on Win32 when $Config{make} is 'dmake'.
> This corrects the message on Strawberry Perl.
>
> #------------------------------------------------------------------------
diff -r Template-Toolkit-2.15/lib/Template.pm Template-Toolkit-2.16/lib/Template.pm
41c41
< $VERSION = '2.15';
---
> $VERSION = '2.16';
diff -r Template-Toolkit-2.15/Makefile.PL Template-Toolkit-2.16/Makefile.PL
30c30
< $MAKE = 'nmake';
---
> $MAKE = $Config{make} eq 'dmake' ? 'dmake' : 'nmake';
264c264,268
< if ($ExtUtils::MakeMaker::VERSION >= 5.43) {
---
> # Handle dev versions in our check
> my $mmv = $ExtUtils::MakeMaker::VERSION;
> $mmv =~ s/\_.+//;
>
> if ( $mmv >= 5.43) {
diff -r Template-Toolkit-2.15/META.yml Template-Toolkit-2.16/META.yml
1,7c1,8
< # http://module-build.sourceforge.net/META-spec.html
< #XXXXXXX This is a prototype!!! It will change in the future!!! XXXXX#
< name: Template-Toolkit
< version: 2.15
< version_from: lib/Template.pm
< installdirs: site
< requires:
---
> --- #YAML:1.0
> name: Template-Toolkit
> version: 2.16
> abstract: comprehensive template processing system
> license: ~
> generated_by: ExtUtils::MakeMaker version 6.31
> distribution_type: module
> requires:
11,13c12,16
<
< distribution_type: module
< generated_by: ExtUtils::MakeMaker version 6.17
---
> meta-spec:
> url: http://module-build.sourceforge.net/META-spec-v1.2.html
> version: 1.2
> author:
> - Andy Wardley <abw@wardley.org>
diff -r Template-Toolkit-2.15/t/fileline.t Template-Toolkit-2.16/t/fileline.t
18a19,25
> BEGIN {
> if ( $^O eq 'MSWin32' ) {
> print "1..0 # Skip Temporarily skipping on Win32\n";
> exit(0);
> }
> }
>
23a31
>
I know this is far beyond your scope of emergency release, but I wonder about your diff. Why use
$MAKE = $Config{make} eq 'dmake' ? 'dmake' : 'nmake';
when you can just use
$MAKE = $Config{make};
$Config{make} is supposed to hold whatever is necessary to invoke whatever make program is there for the platform, so just trust it...
Re: Announce: Template-Toolkit-2.16.tar.gz
Alias on 2007-01-23T21:51:37
Because you want necesarily trust it all the time.
In particular, if you are setting up activestate is only tells you what it was built with, not what you are running it with. So there are cases where it will lie. So I'm fairly careful to correct the case I know is ok (dmake).Re: Announce: Template-Toolkit-2.16.tar.gz
Alias on 2007-01-24T03:14:40
> Because you want necesarily trust it all the time.
That should read "Because you can't necessarily trust it all the time".
Re: Announce: Template-Toolkit-2.16.tar.gz
Corion on 2007-01-24T08:49:12
"What you're running with" is what Config.pm says. If you want the Perl tool suite to "run" a different make tool, adjust your Config.pm to match it. Relying on weirdo magic to counteract Config.pm leads to untraceable insanity.
Re: Announce: Template-Toolkit-2.16.tar.gz
Alias on 2007-01-26T01:52:31
> Relying on weirdo magic to counteract Config.pm leads to untraceable insanity.
Of course, but I'll note that I didn't introduce the untraceable insanity.
I've REMOVED it for one specific case I know works, and I'm otherwise carefully trying to avoid blatantly refactoring someone else's code I'm just a caretaker for.