[libauthen-cas-client-perl] 01/01: New upstream version 0.08
Damyan Ivanov
dmn at moszumanska.debian.org
Sun Oct 22 20:35:42 UTC 2017
This is an automated email from the git hooks/post-receive script.
dmn pushed a commit to annotated tag upstream/0.08
in repository libauthen-cas-client-perl.
commit 9fca443bf322311477a79347b49b5316ada9c101
Author: Damyan Ivanov <dmn at debian.org>
Date: Sun Oct 22 19:44:34 2017 +0000
New upstream version 0.08
---
Changes | 8 ++
LICENSE | 21 +---
MANIFEST | 1 +
META.yml | 8 +-
Makefile.PL | 3 +-
README | 186 ++++++++++++++++++++++++++++++++++
README.md | 207 ++++++++++++++++++++++++++++++++++++++
inc/Module/AutoInstall.pm | 44 ++++----
inc/Module/Install.pm | 51 +++-------
inc/Module/Install/AutoInstall.pm | 2 +-
inc/Module/Install/Base.pm | 2 +-
inc/Module/Install/Can.pm | 13 ++-
inc/Module/Install/Fetch.pm | 2 +-
inc/Module/Install/Include.pm | 2 +-
inc/Module/Install/Makefile.pm | 4 +-
inc/Module/Install/Metadata.pm | 6 +-
inc/Module/Install/Win32.pm | 2 +-
inc/Module/Install/WriteAll.pm | 2 +-
lib/Authen/CAS/Client.pm | 25 +----
lib/Authen/CAS/Client/Response.pm | 25 +----
20 files changed, 479 insertions(+), 135 deletions(-)
diff --git a/Changes b/Changes
index 93fb177..876f0ba 100644
--- a/Changes
+++ b/Changes
@@ -1,3 +1,11 @@
+changes from 0.07 to 0.08
+=========================
+
+ * updated Makefile.PL to reflect changes in default @INC handling v5.25+.
+ * fleshed README with documentation
+ * added README.md for GitHub
+ * updated to 'Nil' license
+
changes from 0.06 to 0.07
=========================
diff --git a/LICENSE b/LICENSE
index a275c76..3fabd71 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,19 +1,2 @@
-Copyright (c) 2007-2014, jason hord
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
+This software is information.
+It is subject only to local laws of physics.
diff --git a/MANIFEST b/MANIFEST
index 93139d4..883e103 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -17,6 +17,7 @@ Makefile.PL
MANIFEST This list of files
META.yml
README
+README.md
t/00-load.t
t/01-urls.t
t/02-validate.t
diff --git a/META.yml b/META.yml
index ca8e91a..c5c0c53 100644
--- a/META.yml
+++ b/META.yml
@@ -10,8 +10,8 @@ configure_requires:
ExtUtils::MakeMaker: 6.59
distribution_type: module
dynamic_config: 1
-generated_by: 'Module::Install version 1.06'
-license: mit
+generated_by: 'Module::Install version 1.17'
+license: nil
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: 1.4
@@ -25,6 +25,4 @@ requires:
URI: 0
XML::LibXML: 0
perl: 5.6.1
-resources:
- license: http://opensource.org/licenses/mit-license.php
-version: 0.07
+version: '0.08'
diff --git a/Makefile.PL b/Makefile.PL
index 2109c95..3e2923d 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -1,10 +1,11 @@
use strict;
use warnings;
+use lib qw(.);
use inc::Module::Install;
name 'Authen-CAS-Client';
-license 'MIT';
+license 'Nil';
all_from 'lib/Authen/CAS/Client.pm';
requires 'LWP';
diff --git a/README b/README
index 2266557..9e26735 100644
--- a/README
+++ b/README
@@ -14,3 +14,189 @@ To install this module, use the following steps:
make
make test
make install
+
+
+NAME
+ Authen::CAS::Client - Provides an easy-to-use interface for
+ authentication using JA-SIG's Central Authentication Service
+
+SYNOPSIS
+ use Authen::CAS::Client;
+
+ my $cas = Authen::CAS::Client->new( 'https://example.com/cas' );
+
+
+ # generate an HTTP redirect to the CAS login URL
+ my $r = HTTP::Response->new( 302 );
+ $r->header( Location => $cas->login_url );
+
+
+ # generate an HTTP redirect to the CAS logout URL
+ my $r = HTTP::Response->new( 302 );
+ $r->header( Location => $cas->logout_url );
+
+
+ # validate a service ticket (CAS v1.0)
+ my $r = $cas->validate( $service, $ticket );
+ if( $r->is_success ) {
+ print "User authenticated as: ", $r->user, "\n";
+ }
+
+ # validate a service ticket (CAS v2.0)
+ my $r = $cas->service_validate( $service, $ticket );
+ if( $r->is_success ) {
+ print "User authenticated as: ", $r->user, "\n";
+ }
+
+
+ # validate a service/proxy ticket (CAS v2.0)
+ my $r = $cas->proxy_validate( $service, $ticket );
+ if( $r->is_success ) {
+ print "User authenticated as: ", $r->user, "\n";
+ print "Proxied through:\n";
+ print " $_\n"
+ for $r->proxies;
+ }
+
+
+ # validate a service ticket and request a proxy ticket (CAS v2.0)
+ my $r = $cas->service_validate( $server, $ticket, pgtUrl => $url );
+ if( $r->is_success ) {
+ print "User authenticated as: ", $r->user, "\n";
+
+ unless( defined $r->iou ) {
+ print "Service validation for proxying failed\n";
+ }
+ else {
+ print "Proxy granting ticket IOU: ", $r->iou, "\n";
+
+ ...
+ # map IOU to proxy granting ticket via request to pgtUrl
+ ...
+
+ $r = $cas->proxy( $pgt, $target_service );
+ if( $r->is_success ) {
+ print "Proxy ticket issued: ", $r->proxy_ticket, "\n";
+ }
+ }
+ }
+
+DESCRIPTION
+ The Authen::CAS::Client module provides a simple interface for
+ authenticating users using JA-SIG's CAS protocol. Both CAS v1.0 and v2.0
+ are supported.
+
+METHODS
+ new $url [, %args]
+ "new()" creates an instance of an "Authen::CAS::Client" object. $url
+ refers to the CAS server's base URL. %args may contain the following
+ optional parameter:
+
+ fatal => $boolean
+ If this argument is true, the CAS client will "die()" when an error
+ occurs and $@ will contain the error message. Otherwise an
+ "Authen::CAS::Client::Response::Error" object will be returned. See
+ Authen::CAS::Client::Response for more detail on response objects.
+
+ login_url $service [, %args]
+ "login_url()" returns the CAS server's login URL which can be used to
+ redirect users to start the authentication process. $service is the
+ service identifier that will be used during validation requests. %args
+ may contain the following optional parameters:
+
+ renew => $boolean
+ This causes the CAS server to force a user to re-authenticate even if an
+ SSO session is already present for that user.
+
+ gateway => $boolean
+ This causes the CAS server to only rely on SSO sessions for
+ authentication. If an SSO session is not available for the current user,
+ validation will result in a failure.
+
+ logout_url [%args]
+ "logout_url()" returns the CAS server's logout URL which can be used to
+ redirect users to end authenticated sessions. %args may contain the
+ following optional parameter:
+
+ url => $url
+ If present, the CAS server will present the user with a link to the
+ given URL once the user has logged out.
+
+ validate $service, $ticket [, %args]
+ "validate()" attempts to validate a service ticket using the CAS v1.0
+ protocol. $service is the service identifier that was passed to the CAS
+ server during the login process. $ticket is the service ticket that was
+ received after a successful authentication attempt. Returns an
+ appropriate Authen::CAS::Client::Response object. %args may contain the
+ following optional parameter:
+
+ renew => $boolean
+ This will cause the CAS server to respond with a failure if
+ authentication validation was done via a CAS SSO session.
+
+ service_validate $service, $ticket [, %args]
+ "service_validate()" attempts to validate a service ticket using the CAS
+ v2.0 protocol. This is similar to "validate()", but allows for greater
+ flexibility when there is a need for proxying authentication to back-end
+ services. The $service and $ticket parameters are the same as above.
+ Returns an appropriate Authen::CAS::Client::Response object. %args may
+ contain the following optional parameters:
+
+ renew => $boolean
+ This will cause the CAS server to respond with a failure if
+ authentication validation was done via a CAS SSO session.
+
+ pgtUrl => $url
+ This tells the CAS server that a proxy ticket needs to be issued for
+ proxying authentication to a back-end service. $url corresponds to a
+ callback URL that the CAS server will use to verify the service's
+ identity. Per the CAS specification, this URL must be HTTPS. If this
+ verification fails, normal validation will occur, but a proxy granting
+ ticket IOU will not be issued.
+
+ Also note that this call will block until the CAS server completes its
+ service verification attempt. The returned proxy granting ticket IOU can
+ then be used to retrieve the proxy granting ticket that was passed as a
+ parameter to the given URL.
+
+ proxy_validate $service, $ticket [, %args]
+ "proxy_validate()" is almost identical in operation to
+ "service_validate()" except that both service tickets and proxy tickets
+ can be used for validation and a list of proxies will be provided if
+ proxied authentication has been used. The $service and $ticket
+ parameters are the same as above. Returns an appropriate
+ Authen::CAS::Client::Response object. %args may contain the following
+ optional parameters:
+
+ renew => $boolean
+ This is the same as described above.
+
+ pgtUrl => $url
+ This is the same as described above.
+
+ proxy $pgt, $target
+ "proxy()" is used to retrieve a proxy ticket that can be passed to a
+ back-end service for proxied authentication. $pgt is the proxy granting
+ ticket that was passed as a parameter to the "pgtUrl" specified in
+ either "service_validate()" or "proxy_validate()". $target is the
+ service identifier for the back-end system that will be using the
+ returned proxy ticket for validation. Returns an appropriate
+ Authen::CAS::Client::Response object.
+
+BUGS
+ None are known at this time, but if you find one, please feel free to
+ submit a report to the author.
+
+AUTHOR
+ jason hord <pravus at cpan.org>
+
+SEE ALSO
+ Authen::CAS::Client::Response
+
+ More information about CAS can be found at JA-SIG's CAS homepage:
+ <http://www.ja-sig.org/products/cas/>
+
+LICENSE
+ This software is information. It is subject only to local laws of
+ physics.
+
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..dbdedf8
--- /dev/null
+++ b/README.md
@@ -0,0 +1,207 @@
+# NAME
+
+Authen::CAS::Client - Provides an easy-to-use interface for authentication using JA-SIG's Central Authentication Service
+
+# SYNOPSIS
+
+```perl
+use Authen::CAS::Client;
+
+my $cas = Authen::CAS::Client->new( 'https://example.com/cas' );
+
+
+# generate an HTTP redirect to the CAS login URL
+my $r = HTTP::Response->new( 302 );
+$r->header( Location => $cas->login_url );
+
+
+# generate an HTTP redirect to the CAS logout URL
+my $r = HTTP::Response->new( 302 );
+$r->header( Location => $cas->logout_url );
+
+
+# validate a service ticket (CAS v1.0)
+my $r = $cas->validate( $service, $ticket );
+if( $r->is_success ) {
+ print "User authenticated as: ", $r->user, "\n";
+}
+
+# validate a service ticket (CAS v2.0)
+my $r = $cas->service_validate( $service, $ticket );
+if( $r->is_success ) {
+ print "User authenticated as: ", $r->user, "\n";
+}
+
+
+# validate a service/proxy ticket (CAS v2.0)
+my $r = $cas->proxy_validate( $service, $ticket );
+if( $r->is_success ) {
+ print "User authenticated as: ", $r->user, "\n";
+ print "Proxied through:\n";
+ print " $_\n"
+ for $r->proxies;
+}
+
+
+# validate a service ticket and request a proxy ticket (CAS v2.0)
+my $r = $cas->service_validate( $server, $ticket, pgtUrl => $url );
+if( $r->is_success ) {
+ print "User authenticated as: ", $r->user, "\n";
+
+ unless( defined $r->iou ) {
+ print "Service validation for proxying failed\n";
+ }
+ else {
+ print "Proxy granting ticket IOU: ", $r->iou, "\n";
+
+ ...
+ # map IOU to proxy granting ticket via request to pgtUrl
+ ...
+
+ $r = $cas->proxy( $pgt, $target_service );
+ if( $r->is_success ) {
+ print "Proxy ticket issued: ", $r->proxy_ticket, "\n";
+ }
+ }
+}
+```
+
+# DESCRIPTION
+
+The Authen::CAS::Client module provides a simple interface for
+authenticating users using JA-SIG's CAS protocol. Both CAS v1.0
+and v2.0 are supported.
+
+# METHODS
+
+## new $url \[, %args\]
+
+`new()` creates an instance of an `Authen::CAS::Client` object. `$url`
+refers to the CAS server's base URL. `%args` may contain the
+following optional parameter:
+
+### fatal => $boolean
+
+If this argument is true, the CAS client will `die()` when an error
+occurs and `$@` will contain the error message. Otherwise an
+`Authen::CAS::Client::Response::Error` object will be returned. See
+[Authen::CAS::Client::Response](https://metacpan.org/pod/Authen::CAS::Client::Response) for more detail on response objects.
+
+## login\_url $service \[, %args\]
+
+`login_url()` returns the CAS server's login URL which can be used to
+redirect users to start the authentication process. `$service` is the
+service identifier that will be used during validation requests.
+`%args` may contain the following optional parameters:
+
+### renew => $boolean
+
+This causes the CAS server to force a user to re-authenticate even if
+an SSO session is already present for that user.
+
+### gateway => $boolean
+
+This causes the CAS server to only rely on SSO sessions for authentication.
+If an SSO session is not available for the current user, validation
+will result in a failure.
+
+## logout\_url \[%args\]
+
+`logout_url()` returns the CAS server's logout URL which can be used to
+redirect users to end authenticated sessions. `%args` may contain
+the following optional parameter:
+
+### url => $url
+
+If present, the CAS server will present the user with a link to the given
+URL once the user has logged out.
+
+## validate $service, $ticket \[, %args\]
+
+`validate()` attempts to validate a service ticket using the CAS v1.0
+protocol. `$service` is the service identifier that was passed to the
+CAS server during the login process. `$ticket` is the service ticket
+that was received after a successful authentication attempt. Returns an
+appropriate [Authen::CAS::Client::Response](https://metacpan.org/pod/Authen::CAS::Client::Response) object. `%args` may
+contain the following optional parameter:
+
+### renew => $boolean
+
+This will cause the CAS server to respond with a failure if authentication
+validation was done via a CAS SSO session.
+
+## service\_validate $service, $ticket \[, %args\]
+
+`service_validate()` attempts to validate a service ticket using the
+CAS v2.0 protocol. This is similar to `validate()`, but allows for
+greater flexibility when there is a need for proxying authentication
+to back-end services. The `$service` and `$ticket` parameters are
+the same as above. Returns an appropriate [Authen::CAS::Client::Response](https://metacpan.org/pod/Authen::CAS::Client::Response)
+object. `%args` may contain the following optional parameters:
+
+### renew => $boolean
+
+This will cause the CAS server to respond with a failure if authentication
+validation was done via a CAS SSO session.
+
+### pgtUrl => $url
+
+This tells the CAS server that a proxy ticket needs to be issued for
+proxying authentication to a back-end service. `$url` corresponds to
+a callback URL that the CAS server will use to verify the service's
+identity. Per the CAS specification, this URL must be HTTPS. If this
+verification fails, normal validation will occur, but a proxy granting
+ticket IOU will not be issued.
+
+Also note that this call will block until the CAS server completes its
+service verification attempt. The returned proxy granting ticket IOU
+can then be used to retrieve the proxy granting ticket that was passed
+as a parameter to the given URL.
+
+## proxy\_validate $service, $ticket \[, %args\]
+
+`proxy_validate()` is almost identical in operation to `service_validate()`
+except that both service tickets and proxy tickets can be used for
+validation and a list of proxies will be provided if proxied authentication
+has been used. The `$service` and `$ticket` parameters are the same as
+above. Returns an appropriate [Authen::CAS::Client::Response](https://metacpan.org/pod/Authen::CAS::Client::Response) object.
+`%args` may contain the following optional parameters:
+
+### renew => $boolean
+
+This is the same as described above.
+
+### pgtUrl => $url
+
+This is the same as described above.
+
+## proxy $pgt, $target
+
+`proxy()` is used to retrieve a proxy ticket that can be passed to
+a back-end service for proxied authentication. `$pgt` is the proxy
+granting ticket that was passed as a parameter to the `pgtUrl`
+specified in either `service_validate()` or `proxy_validate()`.
+`$target` is the service identifier for the back-end system that will
+be using the returned proxy ticket for validation. Returns an appropriate
+[Authen::CAS::Client::Response](https://metacpan.org/pod/Authen::CAS::Client::Response) object.
+
+# BUGS
+
+None are known at this time, but if you find one, please feel free to
+submit a report to the author.
+
+# AUTHOR
+
+jason hord <pravus at cpan.org>
+
+# SEE ALSO
+
+- [Authen::CAS::Client::Response](https://metacpan.org/pod/Authen::CAS::Client::Response)
+
+More information about CAS can be found at JA-SIG's CAS homepage:
+[http://www.ja-sig.org/products/cas/](http://www.ja-sig.org/products/cas/)
+
+# LICENSE
+
+This software is information.
+It is subject only to local laws of physics.
diff --git a/inc/Module/AutoInstall.pm b/inc/Module/AutoInstall.pm
index aa7aa92..11184d4 100644
--- a/inc/Module/AutoInstall.pm
+++ b/inc/Module/AutoInstall.pm
@@ -8,7 +8,7 @@ use ExtUtils::MakeMaker ();
use vars qw{$VERSION};
BEGIN {
- $VERSION = '1.06';
+ $VERSION = '1.17';
}
# special map on pre-defined feature sets
@@ -115,7 +115,7 @@ sub import {
print "*** $class version " . $class->VERSION . "\n";
print "*** Checking for Perl dependencies...\n";
- my $cwd = Cwd::cwd();
+ my $cwd = Cwd::getcwd();
$Config = [];
@@ -166,7 +166,7 @@ sub import {
$modules = [ %{$modules} ] if UNIVERSAL::isa( $modules, 'HASH' );
unshift @$modules, -default => &{ shift(@$modules) }
- if ( ref( $modules->[0] ) eq 'CODE' ); # XXX: bugward combatability
+ if ( ref( $modules->[0] ) eq 'CODE' ); # XXX: bugward compatibility
while ( my ( $mod, $arg ) = splice( @$modules, 0, 2 ) ) {
if ( $mod =~ m/^-(\w+)$/ ) {
@@ -345,22 +345,26 @@ sub install {
my $i; # used below to strip leading '-' from config keys
my @config = ( map { s/^-// if ++$i; $_ } @{ +shift } );
- my ( @modules, @installed );
- while ( my ( $pkg, $ver ) = splice( @_, 0, 2 ) ) {
+ my ( @modules, @installed, @modules_to_upgrade );
+ while (my ($pkg, $ver) = splice(@_, 0, 2)) {
- # grep out those already installed
- if ( _version_cmp( _version_of($pkg), $ver ) >= 0 ) {
- push @installed, $pkg;
- }
- else {
- push @modules, $pkg, $ver;
- }
- }
+ # grep out those already installed
+ if (_version_cmp(_version_of($pkg), $ver) >= 0) {
+ push @installed, $pkg;
+ if ($UpgradeDeps) {
+ push @modules_to_upgrade, $pkg, $ver;
+ }
+ }
+ else {
+ push @modules, $pkg, $ver;
+ }
+ }
- if ($UpgradeDeps) {
- push @modules, @installed;
- @installed = ();
- }
+ if ($UpgradeDeps) {
+ push @modules, @modules_to_upgrade;
+ @installed = ();
+ @modules_to_upgrade = ();
+ }
return @installed unless @modules; # nothing to do
return @installed if _check_lock(); # defer to the CPAN shell
@@ -533,7 +537,7 @@ sub _install_cpan {
while ( my ( $opt, $arg ) = splice( @config, 0, 2 ) ) {
( $args{$opt} = $arg, next )
if $opt =~ /^(?:force|notest)$/; # pseudo-option
- $CPAN::Config->{$opt} = $arg;
+ $CPAN::Config->{$opt} = $opt eq 'urllist' ? [$arg] : $arg;
}
if ($args{notest} && (not CPAN::Shell->can('notest'))) {
@@ -611,7 +615,7 @@ sub _under_cpan {
require Cwd;
require File::Spec;
- my $cwd = File::Spec->canonpath( Cwd::cwd() );
+ my $cwd = File::Spec->canonpath( Cwd::getcwd() );
my $cpan = File::Spec->canonpath( $CPAN::Config->{cpan_home} );
return ( index( $cwd, $cpan ) > -1 );
@@ -927,4 +931,4 @@ END_MAKE
__END__
-#line 1193
+#line 1197
diff --git a/inc/Module/Install.pm b/inc/Module/Install.pm
index 4ecf46b..dbe10ca 100644
--- a/inc/Module/Install.pm
+++ b/inc/Module/Install.pm
@@ -17,7 +17,7 @@ package Module::Install;
# 3. The ./inc/ version of Module::Install loads
# }
-use 5.005;
+use 5.006;
use strict 'vars';
use Cwd ();
use File::Find ();
@@ -31,7 +31,7 @@ BEGIN {
# This is not enforced yet, but will be some time in the next few
# releases once we can make sure it won't clash with custom
# Module::Install extensions.
- $VERSION = '1.06';
+ $VERSION = '1.17';
# Storage for the pseudo-singleton
$MAIN = undef;
@@ -156,10 +156,10 @@ END_DIE
sub autoload {
my $self = shift;
my $who = $self->_caller;
- my $cwd = Cwd::cwd();
+ my $cwd = Cwd::getcwd();
my $sym = "${who}::AUTOLOAD";
$sym->{$cwd} = sub {
- my $pwd = Cwd::cwd();
+ my $pwd = Cwd::getcwd();
if ( my $code = $sym->{$pwd} ) {
# Delegate back to parent dirs
goto &$code unless $cwd eq $pwd;
@@ -239,11 +239,13 @@ sub new {
# ignore the prefix on extension modules built from top level.
my $base_path = Cwd::abs_path($FindBin::Bin);
- unless ( Cwd::abs_path(Cwd::cwd()) eq $base_path ) {
+ unless ( Cwd::abs_path(Cwd::getcwd()) eq $base_path ) {
delete $args{prefix};
}
return $args{_self} if $args{_self};
+ $base_path = VMS::Filespec::unixify($base_path) if $^O eq 'VMS';
+
$args{dispatch} ||= 'Admin';
$args{prefix} ||= 'inc';
$args{author} ||= ($^O eq 'VMS' ? '_author' : '.author');
@@ -322,7 +324,7 @@ sub find_extensions {
my ($self, $path) = @_;
my @found;
- File::Find::find( sub {
+ File::Find::find( {no_chdir => 1, wanted => sub {
my $file = $File::Find::name;
return unless $file =~ m!^\Q$path\E/(.+)\.pm\Z!is;
my $subpath = $1;
@@ -336,9 +338,9 @@ sub find_extensions {
# correctly. Otherwise, root through the file to locate the case-preserved
# version of the package name.
if ( $subpath eq lc($subpath) || $subpath eq uc($subpath) ) {
- my $content = Module::Install::_read($subpath . '.pm');
+ my $content = Module::Install::_read($File::Find::name);
my $in_pod = 0;
- foreach ( split //, $content ) {
+ foreach ( split /\n/, $content ) {
$in_pod = 1 if /^=\w/;
$in_pod = 0 if /^=cut/;
next if ($in_pod || /^=cut/); # skip pod text
@@ -351,7 +353,7 @@ sub find_extensions {
}
push @found, [ $file, $pkg ];
- }, $path ) if -d $path;
+ }}, $path ) if -d $path;
@found;
}
@@ -373,24 +375,14 @@ sub _caller {
return $call;
}
-# Done in evals to avoid confusing Perl::MinimumVersion
-eval( $] >= 5.006 ? <<'END_NEW' : <<'END_OLD' ); die $@ if $@;
sub _read {
local *FH;
open( FH, '<', $_[0] ) or die "open($_[0]): $!";
+ binmode FH;
my $string = do { local $/; <FH> };
close FH or die "close($_[0]): $!";
return $string;
}
-END_NEW
-sub _read {
- local *FH;
- open( FH, "< $_[0]" ) or die "open($_[0]): $!";
- my $string = do { local $/; <FH> };
- close FH or die "close($_[0]): $!";
- return $string;
-}
-END_OLD
sub _readperl {
my $string = Module::Install::_read($_[0]);
@@ -411,30 +403,19 @@ sub _readpod {
return $string;
}
-# Done in evals to avoid confusing Perl::MinimumVersion
-eval( $] >= 5.006 ? <<'END_NEW' : <<'END_OLD' ); die $@ if $@;
sub _write {
local *FH;
open( FH, '>', $_[0] ) or die "open($_[0]): $!";
+ binmode FH;
foreach ( 1 .. $#_ ) {
print FH $_[$_] or die "print($_[0]): $!";
}
close FH or die "close($_[0]): $!";
}
-END_NEW
-sub _write {
- local *FH;
- open( FH, "> $_[0]" ) or die "open($_[0]): $!";
- foreach ( 1 .. $#_ ) {
- print FH $_[$_] or die "print($_[0]): $!";
- }
- close FH or die "close($_[0]): $!";
-}
-END_OLD
# _version is for processing module versions (eg, 1.03_05) not
# Perl versions (eg, 5.8.1).
-sub _version ($) {
+sub _version {
my $s = shift || 0;
my $d =()= $s =~ /(\.)/g;
if ( $d >= 2 ) {
@@ -450,12 +431,12 @@ sub _version ($) {
return $l + 0;
}
-sub _cmp ($$) {
+sub _cmp {
_version($_[1]) <=> _version($_[2]);
}
# Cloned from Params::Util::_CLASS
-sub _CLASS ($) {
+sub _CLASS {
(
defined $_[0]
and
diff --git a/inc/Module/Install/AutoInstall.pm b/inc/Module/Install/AutoInstall.pm
index 6efe4fe..03d1e70 100644
--- a/inc/Module/Install/AutoInstall.pm
+++ b/inc/Module/Install/AutoInstall.pm
@@ -6,7 +6,7 @@ use Module::Install::Base ();
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
- $VERSION = '1.06';
+ $VERSION = '1.17';
@ISA = 'Module::Install::Base';
$ISCORE = 1;
}
diff --git a/inc/Module/Install/Base.pm b/inc/Module/Install/Base.pm
index 802844a..3d89918 100644
--- a/inc/Module/Install/Base.pm
+++ b/inc/Module/Install/Base.pm
@@ -4,7 +4,7 @@ package Module::Install::Base;
use strict 'vars';
use vars qw{$VERSION};
BEGIN {
- $VERSION = '1.06';
+ $VERSION = '1.17';
}
# Suspend handler for "redefined" warnings
diff --git a/inc/Module/Install/Can.pm b/inc/Module/Install/Can.pm
index 22167b8..fc699b3 100644
--- a/inc/Module/Install/Can.pm
+++ b/inc/Module/Install/Can.pm
@@ -8,7 +8,7 @@ use Module::Install::Base ();
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
- $VERSION = '1.06';
+ $VERSION = '1.17';
@ISA = 'Module::Install::Base';
$ISCORE = 1;
}
@@ -121,6 +121,15 @@ END_C
# Can we locate a (the) C compiler
sub can_cc {
my $self = shift;
+
+ if ($^O eq 'VMS') {
+ require ExtUtils::CBuilder;
+ my $builder = ExtUtils::CBuilder->new(
+ quiet => 1,
+ );
+ return $builder->have_compiler;
+ }
+
my @chunks = split(/ /, $Config::Config{cc}) or return;
# $Config{cc} may contain args; try to find out the program part
@@ -151,4 +160,4 @@ if ( $^O eq 'cygwin' ) {
__END__
-#line 236
+#line 245
diff --git a/inc/Module/Install/Fetch.pm b/inc/Module/Install/Fetch.pm
index bee0c4f..3ee0aa1 100644
--- a/inc/Module/Install/Fetch.pm
+++ b/inc/Module/Install/Fetch.pm
@@ -6,7 +6,7 @@ use Module::Install::Base ();
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
- $VERSION = '1.06';
+ $VERSION = '1.17';
@ISA = 'Module::Install::Base';
$ISCORE = 1;
}
diff --git a/inc/Module/Install/Include.pm b/inc/Module/Install/Include.pm
index 8310e4c..e8a73b8 100644
--- a/inc/Module/Install/Include.pm
+++ b/inc/Module/Install/Include.pm
@@ -6,7 +6,7 @@ use Module::Install::Base ();
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
- $VERSION = '1.06';
+ $VERSION = '1.17';
@ISA = 'Module::Install::Base';
$ISCORE = 1;
}
diff --git a/inc/Module/Install/Makefile.pm b/inc/Module/Install/Makefile.pm
index 7052f36..bc81e06 100644
--- a/inc/Module/Install/Makefile.pm
+++ b/inc/Module/Install/Makefile.pm
@@ -8,7 +8,7 @@ use Fcntl qw/:flock :seek/;
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
- $VERSION = '1.06';
+ $VERSION = '1.17';
@ISA = 'Module::Install::Base';
$ISCORE = 1;
}
@@ -133,7 +133,7 @@ sub makemaker_args {
return $args;
}
-# For mm args that take multiple space-seperated args,
+# For mm args that take multiple space-separated args,
# append an argument to the current list.
sub makemaker_append {
my $self = shift;
diff --git a/inc/Module/Install/Metadata.pm b/inc/Module/Install/Metadata.pm
index 58430f3..29934cf 100644
--- a/inc/Module/Install/Metadata.pm
+++ b/inc/Module/Install/Metadata.pm
@@ -6,7 +6,7 @@ use Module::Install::Base ();
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
- $VERSION = '1.06';
+ $VERSION = '1.17';
@ISA = 'Module::Install::Base';
$ISCORE = 1;
}
@@ -347,7 +347,7 @@ sub name_from {
^ \s*
package \s*
([\w:]+)
- \s* ;
+ [\s|;]*
/ixms
) {
my ($name, $module_name) = ($1, $1);
@@ -705,7 +705,7 @@ sub _write_mymeta_data {
my @yaml = Parse::CPAN::Meta::LoadFile('META.yml');
my $meta = $yaml[0];
- # Overwrite the non-configure dependency hashs
+ # Overwrite the non-configure dependency hashes
delete $meta->{requires};
delete $meta->{build_requires};
delete $meta->{recommends};
diff --git a/inc/Module/Install/Win32.pm b/inc/Module/Install/Win32.pm
index eeaa3fe..dba25f9 100644
--- a/inc/Module/Install/Win32.pm
+++ b/inc/Module/Install/Win32.pm
@@ -6,7 +6,7 @@ use Module::Install::Base ();
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
- $VERSION = '1.06';
+ $VERSION = '1.17';
@ISA = 'Module::Install::Base';
$ISCORE = 1;
}
diff --git a/inc/Module/Install/WriteAll.pm b/inc/Module/Install/WriteAll.pm
index 85d8018..d553bd7 100644
--- a/inc/Module/Install/WriteAll.pm
+++ b/inc/Module/Install/WriteAll.pm
@@ -6,7 +6,7 @@ use Module::Install::Base ();
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
- $VERSION = '1.06';
+ $VERSION = '1.17';
@ISA = qw{Module::Install::Base};
$ISCORE = 1;
}
diff --git a/lib/Authen/CAS/Client.pm b/lib/Authen/CAS/Client.pm
index 5a4e91d..7c2beaf 100644
--- a/lib/Authen/CAS/Client.pm
+++ b/lib/Authen/CAS/Client.pm
@@ -11,7 +11,7 @@ use URI;
use URI::QueryParam;
use XML::LibXML;
-our $VERSION = '0.07';
+our $VERSION = '0.08';
#======================================================================
@@ -494,26 +494,9 @@ jason hord E<lt>pravus at cpan.orgE<gt>
More information about CAS can be found at JA-SIG's CAS homepage:
L<http://www.ja-sig.org/products/cas/>
-=head1 COPYRIGHT
+=head1 LICENSE
-Copyright (c) 2007-2014, jason hord
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
+This software is information.
+It is subject only to local laws of physics.
=cut
diff --git a/lib/Authen/CAS/Client/Response.pm b/lib/Authen/CAS/Client/Response.pm
index 8415178..d86b7ec 100644
--- a/lib/Authen/CAS/Client/Response.pm
+++ b/lib/Authen/CAS/Client/Response.pm
@@ -297,26 +297,9 @@ jason hord E<lt>pravus at cpan.orgE<gt>
=back
-=head1 COPYRIGHT
-
-Copyright (c) 2007-2014, jason hord
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
+=head1 LICENSE
+
+This software is information.
+It is subject only to local laws of physics.
=cut
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libauthen-cas-client-perl.git
More information about the Pkg-perl-cvs-commits
mailing list