gnu: Add namespace-autoclean.

* gnu/packages/perl.scm (perl-namespace-autoclean): New variable.
This commit is contained in:
Eric Bavier 2015-03-12 12:04:48 -05:00
parent eb81114cd2
commit ceb3b13830

View File

@ -1535,6 +1535,36 @@ (define-public perl-mro-compat
Perl (back to 5.6.0).")
(license (package-license perl))))
(define-public perl-namespace-autoclean
(package
(name "perl-namespace-autoclean")
(version "0.24")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
"namespace-autoclean-" version ".tar.gz"))
(sha256
(base32
"0msggbg2zbixxjq1fda19h0yygavxndfzc4j4pq11nfghmawjsb0"))))
(build-system perl-build-system)
(native-inputs
`(("perl-test-requires" ,perl-test-requires)))
(propagated-inputs
`(("perl-b-hooks-endofscope" ,perl-b-hooks-endofscope)
("perl-namespace-clean" ,perl-namespace-clean)
("perl-sub-identify" ,perl-sub-identify)))
(home-page "http://search.cpan.org/dist/namespace-autoclean")
(synopsis "Keep imports out of your namespace")
(description "The namespace::autoclean pragma will remove all imported
symbols at the end of the current package's compile cycle. Functions called
in the package itself will still be bound by their name, but they won't show
up as methods on your class or instances. It is very similar to
namespace::clean, except it will clean all imported functions, no matter if
you imported them before or after you used the pragma. It will also not touch
anything that looks like a method.")
(license (package-license perl))))
(define-public perl-namespace-clean
(package
(name "perl-namespace-clean")