[Bps-public-commit] rt-extension-assets-import-csv branch, master, updated. 1.4-7-gae93b1b
Shawn Moore
shawn at bestpractical.com
Wed Mar 22 12:21:46 EDT 2017
The branch, master has been updated
via ae93b1b4416a78d8ae8b40702e9776899197d5d0 (commit)
from 3da34b773b5a3bad82d860e55481d3421d41bdd5 (commit)
Summary of changes:
Changes | 3 ++
MANIFEST | 1 -
META.yml | 4 +-
Makefile.PL | 1 -
inc/Module/Install/RTx.pm | 29 +++++++++++--
inc/Module/Install/ReadmeFromPod.pm | 76 ++++++++++++++++++++++++++++-------
lib/RT/Extension/Assets/Import/CSV.pm | 2 +-
7 files changed, 92 insertions(+), 24 deletions(-)
- Log -----------------------------------------------------------------
commit ae93b1b4416a78d8ae8b40702e9776899197d5d0
Author: Shawn M Moore <shawn at bestpractical.com>
Date: Wed Mar 22 16:21:29 2017 +0000
2.2 releng
diff --git a/Changes b/Changes
index 391112d..72c1267 100644
--- a/Changes
+++ b/Changes
@@ -1,3 +1,6 @@
+2.2 2017-03-22
+ - Fix table and sequence names for Pg and Oracle
+
2.1 2016-02-11
- Packaging fixes
diff --git a/MANIFEST b/MANIFEST
index f6772ef..6e86212 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -14,7 +14,6 @@ inc/Module/Install/RTx/Runtime.pm
inc/Module/Install/Substitute.pm
inc/Module/Install/Win32.pm
inc/Module/Install/WriteAll.pm
-inc/unicore/Name.pm
inc/YAML/Tiny.pm
lib/RT/Extension/Assets/Import/CSV.pm
Makefile.PL
diff --git a/META.yml b/META.yml
index 47e77f4..b62d5f5 100644
--- a/META.yml
+++ b/META.yml
@@ -22,6 +22,6 @@ requires:
perl: 5.10.1
resources:
license: http://opensource.org/licenses/gpl-license.php
-version: '2.1'
-x_module_install_rtx_version: '0.37'
+version: '2.2'
+x_module_install_rtx_version: '0.38'
x_requires_rt: 4.4.0
diff --git a/Makefile.PL b/Makefile.PL
index cc2242a..503d837 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -18,5 +18,4 @@ substitute( {
requires_rt '4.4.0';
requires 'Text::CSV_XS';
-sign;
WriteAll;
diff --git a/inc/Module/Install/RTx.pm b/inc/Module/Install/RTx.pm
index 97acf77..80538d3 100644
--- a/inc/Module/Install/RTx.pm
+++ b/inc/Module/Install/RTx.pm
@@ -8,7 +8,7 @@ no warnings 'once';
use Module::Install::Base;
use base 'Module::Install::Base';
-our $VERSION = '0.37';
+our $VERSION = '0.38';
use FindBin;
use File::Glob ();
@@ -37,6 +37,13 @@ sub RTx {
}
$self->add_metadata("x_module_install_rtx_version", $VERSION );
+ my $installdirs = $ENV{INSTALLDIRS};
+ for ( @ARGV ) {
+ if ( /INSTALLDIRS=(.*)/ ) {
+ $installdirs = $1;
+ }
+ }
+
# Try to find RT.pm
my @prefixes = qw( /opt /usr/local /home /usr /sw /usr/share/request-tracker4);
$ENV{RTHOME} =~ s{/RT\.pm$}{} if defined $ENV{RTHOME};
@@ -71,7 +78,13 @@ sub RTx {
# Installation locations
my %path;
- $path{$_} = $RT::LocalPluginPath . "/$name/$_"
+ my $plugin_path;
+ if ( $installdirs && $installdirs eq 'vendor' ) {
+ $plugin_path = $RT::PluginPath;
+ } else {
+ $plugin_path = $RT::LocalPluginPath;
+ }
+ $path{$_} = $plugin_path . "/$name/$_"
foreach @DIRS;
# Copy RT 4.2.0 static files into NoAuth; insufficient for
@@ -85,7 +98,7 @@ sub RTx {
my %index = map { $_ => 1 } @INDEX_DIRS;
$self->no_index( directory => $_ ) foreach grep !$index{$_}, @DIRS;
- my $args = join ', ', map "q($_)", map { ($_, $path{$_}) }
+ my $args = join ', ', map "q($_)", map { ($_, "\$(DESTDIR)$path{$_}") }
sort keys %path;
printf "%-10s => %s\n", $_, $path{$_} for sort keys %path;
@@ -131,6 +144,7 @@ install ::
if ( $path{lib} ) {
$self->makemaker_args( INSTALLSITELIB => $path{'lib'} );
$self->makemaker_args( INSTALLARCHLIB => $path{'lib'} );
+ $self->makemaker_args( INSTALLVENDORLIB => $path{'lib'} )
} else {
$self->makemaker_args( PM => { "" => "" }, );
}
@@ -139,6 +153,13 @@ install ::
$self->makemaker_args( INSTALLSITEMAN3DIR => "$RT::LocalPath/man/man3" );
$self->makemaker_args( INSTALLSITEARCH => "$RT::LocalPath/man" );
+ # INSTALLDIRS=vendor should install manpages into /usr/share/man.
+ # That is the default path in most distributions. Need input from
+ # Redhat, Centos etc.
+ $self->makemaker_args( INSTALLVENDORMAN1DIR => "/usr/share/man/man1" );
+ $self->makemaker_args( INSTALLVENDORMAN3DIR => "/usr/share/man/man3" );
+ $self->makemaker_args( INSTALLVENDORARCH => "/usr/share/man" );
+
if (%has_etc) {
print "For first-time installation, type 'make initdb'.\n";
my $initdb = '';
@@ -258,4 +279,4 @@ sub _load_rt_handle {
__END__
-#line 390
+#line 428
diff --git a/inc/Module/Install/ReadmeFromPod.pm b/inc/Module/Install/ReadmeFromPod.pm
index b5e03c3..3634ee0 100644
--- a/inc/Module/Install/ReadmeFromPod.pm
+++ b/inc/Module/Install/ReadmeFromPod.pm
@@ -7,12 +7,41 @@ use warnings;
use base qw(Module::Install::Base);
use vars qw($VERSION);
-$VERSION = '0.22';
+$VERSION = '0.26';
+
+{
+
+ # these aren't defined until after _require_admin is run, so
+ # define them so prototypes are available during compilation.
+ sub io;
+ sub capture(&;@);
+
+#line 28
+
+ my $done = 0;
+
+ sub _require_admin {
+
+ # do this once to avoid redefinition warnings from IO::All
+ return if $done;
+
+ require IO::All;
+ IO::All->import( '-binary' );
+
+ require Capture::Tiny;
+ Capture::Tiny->import ( 'capture' );
+
+ return;
+ }
+
+}
sub readme_from {
my $self = shift;
return unless $self->is_admin;
+ _require_admin;
+
# Input file
my $in_file = shift || $self->_all_from
or die "Can't determine file to make readme_from";
@@ -50,6 +79,8 @@ sub readme_from {
$out_file = $self->_readme_htm($in_file, $out_file, $options);
} elsif ($format eq 'man') {
$out_file = $self->_readme_man($in_file, $out_file, $options);
+ } elsif ($format eq 'md') {
+ $out_file = $self->_readme_md($in_file, $out_file, $options);
} elsif ($format eq 'pdf') {
$out_file = $self->_readme_pdf($in_file, $out_file, $options);
}
@@ -67,10 +98,10 @@ sub _readme_txt {
$out_file ||= 'README';
require Pod::Text;
my $parser = Pod::Text->new( @$options );
- open my $out_fh, '>', $out_file or die "Could not write file $out_file:\n$!\n";
+ my $io = io->file($out_file)->open(">");
+ my $out_fh = $io->io_handle;
$parser->output_fh( *$out_fh );
$parser->parse_file( $in_file );
- close $out_fh;
return $out_file;
}
@@ -79,11 +110,14 @@ sub _readme_htm {
my ($self, $in_file, $out_file, $options) = @_;
$out_file ||= 'README.htm';
require Pod::Html;
- Pod::Html::pod2html(
- "--infile=$in_file",
- "--outfile=$out_file",
- @$options,
- );
+ my ($o) = capture {
+ Pod::Html::pod2html(
+ "--infile=$in_file",
+ "--outfile=-",
+ @$options,
+ );
+ };
+ io->file($out_file)->print($o);
# Remove temporary files if needed
for my $file ('pod2htmd.tmp', 'pod2htmi.tmp') {
if (-e $file) {
@@ -99,7 +133,10 @@ sub _readme_man {
$out_file ||= 'README.1';
require Pod::Man;
my $parser = Pod::Man->new( @$options );
- $parser->parse_from_file($in_file, $out_file);
+ my $io = io->file($out_file)->open(">");
+ my $out_fh = $io->io_handle;
+ $parser->output_fh( *$out_fh );
+ $parser->parse_file( $in_file );
return $out_file;
}
@@ -111,11 +148,20 @@ sub _readme_pdf {
or die "Could not generate $out_file because pod2pdf could not be found\n";
my $parser = App::pod2pdf->new( @$options );
$parser->parse_from_file($in_file);
- open my $out_fh, '>', $out_file or die "Could not write file $out_file:\n$!\n";
- select $out_fh;
- $parser->output;
- select STDOUT;
- close $out_fh;
+ my ($o) = capture { $parser->output };
+ io->file($out_file)->print($o);
+ return $out_file;
+}
+
+sub _readme_md {
+ my ($self, $in_file, $out_file, $options) = @_;
+ $out_file ||= 'README.md';
+ require Pod::Markdown;
+ my $parser = Pod::Markdown->new( @$options );
+ my $io = io->file($out_file)->open(">");
+ my $out_fh = $io->io_handle;
+ $parser->output_fh( *$out_fh );
+ $parser->parse_file( $in_file );
return $out_file;
}
@@ -134,5 +180,5 @@ sub _all_from {
__END__
-#line 254
+#line 316
diff --git a/lib/RT/Extension/Assets/Import/CSV.pm b/lib/RT/Extension/Assets/Import/CSV.pm
index eb36a27..d23cea1 100644
--- a/lib/RT/Extension/Assets/Import/CSV.pm
+++ b/lib/RT/Extension/Assets/Import/CSV.pm
@@ -4,7 +4,7 @@ use warnings;
package RT::Extension::Assets::Import::CSV;
use Text::CSV_XS;
-our $VERSION = '2.1';
+our $VERSION = '2.2';
sub _column {
ref($_[0]) ? (ref($_[0]) eq "CODE" ?
-----------------------------------------------------------------------
More information about the Bps-public-commit
mailing list