--- libclass-trait-perl-0.22.orig/debian/rules +++ libclass-trait-perl-0.22/debian/rules @@ -0,0 +1,84 @@ +#!/usr/bin/make -f +# This debian/rules file is provided as a template for normal perl +# packages. It was created by Marc Brockschmidt for +# the Debian Perl Group (http://pkg-perl.alioth.debian.org/) but may +# be used freely wherever it is useful. +# +# It was later modified by Jason Kohles +# http://www.jasonkohles.com/ to support Module::Build installed modules + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# If set to a true value then MakeMaker's prompt function will +# always return the default without waiting for user input. +export PERL_MM_USE_DEFAULT=1 + +PACKAGE=$(shell dh_listpackages) + +ifndef PERL +PERL = /usr/bin/perl +endif + +TMP =$(CURDIR)/debian/$(PACKAGE) + +# to get the patch application targets +include /usr/share/dpatch/dpatch.make + + +build: build-stamp +build-stamp: patch + dh_testdir + + # Add commands to compile the package here + $(PERL) Build.PL installdirs=vendor + OPTIMIZE="-Wall -O2 -g" $(PERL) Build + + touch build-stamp + +clean: unpatch + dh_testdir + dh_testroot + + # Add commands to clean up after the build process here + -$(PERL) Build distclean + + dh_clean build-stamp install-stamp + +install: build install-stamp +install-stamp: + dh_testdir + dh_testroot + dh_clean -k + + $(PERL) Build test + $(PERL) Build install destdir=$(TMP) + + touch install-stamp + +binary-arch: +# We have nothing to do by default. + +binary-indep: build install + dh_testdir + dh_testroot +# dh_installcron +# dh_installmenu +# dh_installexamples + dh_installdocs README + dh_installchangelogs Changes + dh_perl + dh_link + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_gencontrol + dh_md5sums + dh_builddeb + +source diff: + @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary --- libclass-trait-perl-0.22.orig/debian/changelog +++ libclass-trait-perl-0.22/debian/changelog @@ -0,0 +1,44 @@ +libclass-trait-perl (0.22-3ubuntu1) jaunty; urgency=low + + * Merge from Debian unstable. Remaining Ubuntu change: + - Added COPYING in orig.tar.gz for inclusion in Ubuntu + * Dropped previous Build-Depends-Indep change + * Added libclass-accessor-perl to B-D-I to fix (another) FTBFS + + -- Adrien Cunin Thu, 27 Nov 2008 17:15:51 +0100 + +libclass-trait-perl (0.22-3) unstable; urgency=low + + * lifted standards version + * dpatch added to build-depends + * applied Michael Schwern's patch fixing the conflict with + perldebugger and profiler (closes: #425339) + + -- Alexander Zangerl Mon, 17 Nov 2008 10:30:17 +1000 + +libclass-trait-perl (0.22-2ubuntu2) feisty; urgency=low + + * Dropped libtest-simple-perl (>= 0.62) from Build-Depends-Indep, fixes + FTBFS on the buildds + + -- Adrien Cunin Fri, 30 Mar 2007 21:07:46 +0200 + +libclass-trait-perl (0.22-2ubuntu1) feisty; urgency=low + + * Added COPYING in orig.tar.gz for inclusion in Ubuntu + * Set Maintainer to Ubuntu MOTU Developers + + -- Adrien Cunin Sun, 25 Mar 2007 22:57:11 +0200 + +libclass-trait-perl (0.22-2) unstable; urgency=low + + * fixed incomplete copyright info. + + -- Alexander Zangerl Mon, 20 Nov 2006 09:46:53 +1000 + +libclass-trait-perl (0.22-1) unstable; urgency=low + + * Initial Release. + + -- Alexander Zangerl Tue, 14 Nov 2006 12:54:08 +1000 + --- libclass-trait-perl-0.22.orig/debian/watch +++ libclass-trait-perl-0.22/debian/watch @@ -0,0 +1,2 @@ +version=3 +http://cpan.org/authors/id/O/OV/OVID/Class-Trait-(.*)\.tar\.gz debian --- libclass-trait-perl-0.22.orig/debian/control +++ libclass-trait-perl-0.22/debian/control @@ -0,0 +1,23 @@ +Source: libclass-trait-perl +Section: perl +Priority: optional +Build-Depends: debhelper (>= 4.0.2), dpatch +Build-Depends-Indep: perl (>= 5.8.0-7), libtest-differences-perl (>= 0.47), libmodule-build-perl, libtest-simple-perl (>= 0.62), libclass-accessor-perl +Maintainer: Ubuntu MOTU Developers +XSBC-Original-Maintainer: Alexander Zangerl +Standards-Version: 3.8.0 + +Package: libclass-trait-perl +Architecture: all +Depends: ${perl:Depends} +Description: An implementation of Traits in Perl + Traits are a simple composition mechanism for structuring + object-oriented programs. A Trait is essentially a parameterized set of + methods, which serves as a building block for classes and is the primitive + unit of code reuse. Unlike mixins and multiple inheritance, Traits do not + use inheritance as the composition operator. Instead, Trait composition + is based on a set of operators that are complementary to single + inheritance and result in better composition properties. + . + Traits are a core part of Perl 6 (called Roles there), and this module + implements traits for Perl 5. --- libclass-trait-perl-0.22.orig/debian/copyright +++ libclass-trait-perl-0.22/debian/copyright @@ -0,0 +1,19 @@ +This package was debianized by Alexander Zangerl on +Mon Nov 20 09:43:56 2006. + +The upstream author is: Stevan Little, , +after an initial development phase started by Curtis "Ovid" Poe +. + +Copyright: + +Copyright (C) 2004, 2005 Infinity Interactive, Inc. +http://www.iinteractive.com +This library is free software; you can redistribute it and/or modify +it under the same terms as Perl itself. + +This means that you may use - at your choice - either the Perl Artistic License +or the GNU GPL version 1 or higher. + +On Debian systems the GPL and similar licenses can be found in +/usr/share/common-licenses/. --- libclass-trait-perl-0.22.orig/debian/compat +++ libclass-trait-perl-0.22/debian/compat @@ -0,0 +1 @@ +4 --- libclass-trait-perl-0.22.orig/debian/patches/00list +++ libclass-trait-perl-0.22/debian/patches/00list @@ -0,0 +1 @@ +01debugger \ No newline at end of file --- libclass-trait-perl-0.22.orig/debian/patches/01debugger.dpatch +++ libclass-trait-perl-0.22/debian/patches/01debugger.dpatch @@ -0,0 +1,233 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 01debugger.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: fix for #425339 + +@DPATCH@ +diff -urNad libclass-trait-perl-0.22~/Build.PL libclass-trait-perl-0.22/Build.PL +--- libclass-trait-perl-0.22~/Build.PL 2006-10-26 08:30:32.000000000 +1000 ++++ libclass-trait-perl-0.22/Build.PL 2008-11-17 10:33:42.923521994 +1000 +@@ -8,9 +8,10 @@ + dist_author => 'Curtis "Ovid" Poe ', + dist_version_from => 'lib/Class/Trait.pm', + requires => { +- 'Test::Differences' => 0.47, +- 'Test::Simple' => 0.62, +- 'File::Spec' => 0, ++ 'Test::Differences' => 0.47, ++ 'Test::Simple' => 0.62, ++ 'File::Spec' => 0, ++ 'Class::Accessor::Fast' => 0, + }, + add_to_cleanup => ['Class-Trait-*'], + create_makefile_pl => 'traditional', +diff -urNad libclass-trait-perl-0.22~/lib/Class/Trait/Config.pm libclass-trait-perl-0.22/lib/Class/Trait/Config.pm +--- libclass-trait-perl-0.22~/lib/Class/Trait/Config.pm 2006-10-26 08:30:32.000000000 +1000 ++++ libclass-trait-perl-0.22/lib/Class/Trait/Config.pm 2008-11-17 10:33:42.923521994 +1000 +@@ -3,7 +3,9 @@ + use strict; + use warnings; + +-our $VERSION = '0.04'; ++use base qw(Class::Accessor::Fast); ++ ++our $VERSION = '0.04_01'; + + # we are going for a very struct-like class here to try and keep the + # syntactical noise down. +@@ -23,30 +25,9 @@ + }, $class; + } + +-# just use basic l-valued methods for clarity and speed. +-sub name : lvalue { +- $_[0]->{name}; +-} +- +-sub sub_traits : lvalue { +- $_[0]->{sub_traits}; +-} +- +-sub requirements : lvalue { +- $_[0]->{requirements}; +-} +- +-sub methods : lvalue { +- $_[0]->{methods}; +-} +- +-sub overloads : lvalue { +- $_[0]->{overloads}; +-} +- +-sub conflicts : lvalue { +- $_[0]->{conflicts}; +-} ++__PACKAGE__->mk_accessors(qw( ++ name sub_traits requirements methods overloads conflicts ++)); + + # a basic clone function for moving in and out of the cache. + sub clone { +@@ -95,34 +76,31 @@ + + =item B + +-An C subroutine for accessing the C string field of the +-Class::Trait::Config object. ++An accessor to the C string field of the Class::Trait::Config object. + + =item B + +-An C subroutine for accessing the C array reference field +-of the Class::Trait::Config object. ++An accessor to the C array reference field of the Class::Trait::Config object. + + =item B + +-An C subroutine for accessing the C hash reference field ++An accessor to the C hash reference field + of the Class::Trait::Config object. Note, the requirements field is a hash + reference to speed requirement lookup, the values of the hash are simply + booleans. + + =item B + +-An C subroutine for accessing the C hash reference field of +-the Class::Trait::Config object. ++An accessor to the C hash reference field of the Class::Trait::Config object. + + =item B + +-An C subroutine for accessing the C hash reference field of ++An accessor to the C hash reference field of + the Class::Trait::Config object. + + =item B + +-An C subroutine for accessing the C hash reference field of ++An accessor to the C hash reference field of + the Class::Trait::Config object. Note, the conflicts field is a hash reference + to speed conflict lookup, the values of the hash are simply booleans. + +diff -urNad libclass-trait-perl-0.22~/lib/Class/Trait.pm libclass-trait-perl-0.22/lib/Class/Trait.pm +--- libclass-trait-perl-0.22~/lib/Class/Trait.pm 2006-10-26 08:30:32.000000000 +1000 ++++ libclass-trait-perl-0.22/lib/Class/Trait.pm 2008-11-17 10:33:42.923521994 +1000 +@@ -684,7 +684,7 @@ + + # initialize our trait configuration + my $trait_config = Class::Trait::Config->new(); +- $trait_config->name = $trait; ++ $trait_config->name($trait); + + _get_trait_requirements($trait_config); + _get_trait_methods($trait_config); +@@ -704,7 +704,7 @@ + if (DEBUG) { + $debug_indent--; + debug "< dumping trait ($trait) with subtraits (" +- . ( join ", " => @{ $trait_config->{sub_traits} } ) . ") : " ++ . ( join ", " => @{ $trait_config->sub_traits } ) . ") : " + . Data::Dumper::Dumper($trait_config); + } + } +@@ -737,8 +737,8 @@ + + # create a new trait config to represent the combined traits + my $trait_config = Class::Trait::Config->new(); +- $trait_config->name = $overriding_trait->name; +- $trait_config->sub_traits = [ ++ $trait_config->name($overriding_trait->name); ++ $trait_config->sub_traits([ + + # if we have a composite trait we dont want to include the name here + # as it is actually defined better in the sub_traits field, but if we +@@ -746,19 +746,22 @@ + + ( ( COMPOSITE() eq $trait->name ) ? () : $trait->name ), + @{ $trait->sub_traits } +- ]; ++ ]); + + # let the overriding trait override the methods in the regular trait +- $trait_config->methods +- = { %{ $trait->methods }, %{ $overriding_trait->methods } }; ++ $trait_config->methods( ++ { %{ $trait->methods }, %{ $overriding_trait->methods } } ++ ); + + # the same for overloads +- $trait_config->overloads +- = { %{ $trait->overloads }, %{ $overriding_trait->overloads } }; ++ $trait_config->overloads( ++ { %{ $trait->overloads }, %{ $overriding_trait->overloads } } ++ ); + + # now combine the requirements as well +- $trait_config->requirements +- = { %{ $trait->requirements }, %{ $overriding_trait->requirements } }; ++ $trait_config->requirements( ++ { %{ $trait->requirements }, %{ $overriding_trait->requirements } } ++ ); + + if (DEBUG) { + debug "? checking for requirement fufillment"; +@@ -838,7 +841,7 @@ + # get any requirements in the trait and turn it into a hash so we can + # track stuff easier + +- $trait_config->requirements = { map { $_ => 1 } @{"${trait}::REQUIRES"} } ++ $trait_config->requirements({ map { $_ => 1 } @{"${trait}::REQUIRES"} }) + if defined @{"${trait}::"}{REQUIRES}; + } + +@@ -867,7 +870,7 @@ + } + $implementation_for{$_} = $method; + } +- $trait_config->methods = \%implementation_for; ++ $trait_config->methods(\%implementation_for); + } + + sub _get_trait_overloads { +@@ -884,7 +887,7 @@ + debug "< getting overloads for ${trait}" if DEBUG; + + # get the overload parameter hash +- $trait_config->overloads = { %{"${trait}::OVERLOADS"} } ++ $trait_config->overloads({ %{"${trait}::OVERLOADS"} }) + if defined %{"${trait}::OVERLOADS"}; + } + +@@ -1012,7 +1015,7 @@ + my $trait_config = Class::Trait::Config->new(); + + # we are making a composite trait, so lets call it as such +- $trait_config->name = COMPOSITE; ++ $trait_config->name(COMPOSITE); + + $debug_indent++ if DEBUG; + +diff -urNad libclass-trait-perl-0.22~/t/050_Trait_Config_test.t libclass-trait-perl-0.22/t/050_Trait_Config_test.t +--- libclass-trait-perl-0.22~/t/050_Trait_Config_test.t 2006-10-26 08:30:32.000000000 +1000 ++++ libclass-trait-perl-0.22/t/050_Trait_Config_test.t 2008-11-17 10:33:42.923521994 +1000 +@@ -55,12 +55,12 @@ + + # add in those same variables + +-$trait_config->name = $name; +-$trait_config->sub_traits = $sub_traits; +-$trait_config->requirements = $requirements; +-$trait_config->methods = $methods; +-$trait_config->overloads = $overloads; +-$trait_config->conflicts = $conflicts; ++$trait_config->name($name); ++$trait_config->sub_traits($sub_traits); ++$trait_config->requirements($requirements); ++$trait_config->methods($methods); ++$trait_config->overloads($overloads); ++$trait_config->conflicts($conflicts); + + # now test that they were successfully inserted +