[Bps-public-commit] rt-onlinedocs branch, master, updated. 0.10-9-g707f371
Alex Vandiver
alexmv at bestpractical.com
Wed Oct 26 21:26:41 EDT 2011
The branch, master has been updated
via 707f371a500ecb252ac71f859783811618a0447b (commit)
via 946bea12eb1b87670bab91617ffb4fbb2928b513 (commit)
via 074714499c01501a77a6e458367a88008b6a7655 (commit)
via 8155d2bbb538dae561b762da008f83aa13fe9873 (commit)
from 558d77b6397c80a9658732149891f89422240e45 (commit)
Summary of changes:
.gitignore | 19 +--
MANIFEST | 6 +-
html/Callbacks/RT-OnlineDocs/Elements/Tabs/Default | 32 -----
.../RT-OnlineDocs/Elements/Tabs/Privileged | 11 ++
html/Developer/Perldoc/Body.html | 120 --------------------
html/Developer/Perldoc/Elements/Body | 70 ++++++++++++
html/Developer/Perldoc/Elements/TOC | 57 +++++++++
html/Developer/Perldoc/TOC.html | 88 --------------
html/Developer/Perldoc/index.html | 36 ++++--
lib/RT/OnlineDocs.pm | 25 ++++
10 files changed, 195 insertions(+), 269 deletions(-)
delete mode 100644 html/Callbacks/RT-OnlineDocs/Elements/Tabs/Default
create mode 100644 html/Callbacks/RT-OnlineDocs/Elements/Tabs/Privileged
delete mode 100644 html/Developer/Perldoc/Body.html
create mode 100644 html/Developer/Perldoc/Elements/Body
create mode 100644 html/Developer/Perldoc/Elements/TOC
delete mode 100644 html/Developer/Perldoc/TOC.html
- Log -----------------------------------------------------------------
commit 8155d2bbb538dae561b762da008f83aa13fe9873
Author: Alex Vandiver <alexmv at bestpractical.com>
Date: Wed Oct 26 21:12:42 2011 -0400
Disembowel and rewrite internals for 4.0 compatibility and modern Pod::Simple::HTML
diff --git a/html/Callbacks/RT-OnlineDocs/Elements/Tabs/Default b/html/Callbacks/RT-OnlineDocs/Elements/Tabs/Default
deleted file mode 100644
index b6f9bb2..0000000
--- a/html/Callbacks/RT-OnlineDocs/Elements/Tabs/Default
+++ /dev/null
@@ -1,32 +0,0 @@
-%# BEGIN LICENSE BLOCK
-%#
-%# Copyright (c) 2002-2003 Jesse Vincent <jesse at bestpractical.com>
-%#
-%# This program is free software; you can redistribute it and/or modify
-%# it under the terms of version 2 of the GNU General Public License
-%# as published by the Free Software Foundation.
-%#
-%# A copy of that license should have arrived with this
-%# software, but in any event can be snarfed from www.gnu.org.
-%#
-%# This program is distributed in the hope that it will be useful,
-%# but WITHOUT ANY WARRANTY; without even the implied warranty of
-%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-%# GNU General Public License for more details.
-%#
-%# END LICENSE BLOCK
-
-<%init>
-
-if ($session{'CurrentUser'}->UserObj->HasRight(
- Right => 'SuperUser',
- Object => $RT::System,
-)) {
-
- $toptabs->{'ZZ-RTFM'} = { title =>loc("API Docs"),
- path => "Developer/Perldoc/index.html" };
-}
-</%init>
-<%args>
-$toptabs =>undef
-</%args>
diff --git a/html/Callbacks/RT-OnlineDocs/Elements/Tabs/Privileged b/html/Callbacks/RT-OnlineDocs/Elements/Tabs/Privileged
new file mode 100644
index 0000000..e907272
--- /dev/null
+++ b/html/Callbacks/RT-OnlineDocs/Elements/Tabs/Privileged
@@ -0,0 +1,11 @@
+<%perl>
+return unless $session{'CurrentUser'}->UserObj->HasRight(
+ Right => 'SuperUser',
+ Object => $RT::System,
+);
+
+Menu()->child('tools')->child('config')->child('tools')->child( perldoc =>
+ title => loc("API Docs"),
+ path => "/Developer/Perldoc",
+);
+</%perl>
diff --git a/html/Developer/Perldoc/Body.html b/html/Developer/Perldoc/Body.html
deleted file mode 100644
index f956956..0000000
--- a/html/Developer/Perldoc/Body.html
+++ /dev/null
@@ -1,120 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
-"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
-<head>
-<title><% $n || 'RT' %> - RT Pod Online</title>
-<style type="text/css"><!--
-a { text-decoration: none }
-a:hover { text-decoration: underline }
-a:focus { background: #99ff99; border: 1px black dotted }
---></style>
-</head>
-<body>
-<h3><a href="<% $RT::WebURL %>" target="_top">Return to RT</a></h3>
-<%PERL>
-my $dirname = File::Basename::dirname($INC{'RT.pm'});
-my $localdirname = $dirname."/../local/lib/";
-my $plugindir = $dirname."/../local/plugins";
-$n =~ s/::/\//g;
-
-my $show;
-my $suffix;
-
-foreach my $ending (qw(pm pod)) {
- if ( -r "$dirname/$n.$ending" ) {
- $show = "$dirname/$n";
- $suffix = $ending;
- } elsif ( -r "$localdirname/$n.$ending" ) {
- $show = "$localdirname/$n";
- $suffix = $ending;
- } else {
- if(opendir(PLUGINS, $plugindir)) {
- while(defined(my $plugin = readdir(PLUGINS))) {
- next if($plugin =~ /^\./);
- if( -r $plugindir."/".$plugin."/lib/$n.$ending") {
- $show = $plugindir."/".$plugin."/lib/$n";
- $suffix = $ending;
- last;
- }
- }
- closedir(PLUGINS);
- }
- }
-
- last if $show;
-}
-
-unless ($show) {
- $show = "$dirname/RT";
- $suffix = 'pm';
-}
-
-if (-r "$show.$suffix") {
- local $/;
- my $got_name = 0;
-
- my $total_body = '';
-
- foreach my $postfix ('', '_Overlay', '_Vendor', '_Local') {
- my $fh;
- next unless -r "$show$postfix.$suffix";
- open $fh, "$show$postfix.$suffix" or next;
- my $body = <$fh>;
- if ($body =~ s/.*Create takes a hash of values and creates a row in the
-database:([^=]+)//s) {
- # okay, reduce it...
- $body = "=head1 SCHEMA\n\n$1\n=head1 ACCESSORS\n\n\n=cut\n$body";
- $body =~ s/=item/=head2/g;
- }
- elsif ($body =~ /^=item NewItem$/m and $n =~ /s$/) {
- my $pkg = $n;
- $pkg =~ s{/}{::}g;
- chop $pkg;
- $body = "=head1 NAME\n\n${pkg}s - Collection of $pkg
-objects\n\n=cut\n";
- $got_name++;
- }
- else {
- $body =~ s/^=head1 NAME[^=]+//m if $got_name;
- }
-
- $body =~ s/^=head1\b(?! ACCESSORS).*\s*(?==(head1|cut))//mg;
- $body =~ s/^=head1 (?:AUTHOR|SEE ALSO|SYNOPSIS)\s*[^=]+(^=cut)?//mg;
- $body =~ s/^=/\n=/mg;
- $body =~ s/^=begin testing\n/=begin testing\n\n/mg;
- close $fh;
-
- $total_body .= $body;
- }
- my $body;
- my $converter = Pod::Simple::HTML->new();
- $converter->output_string(\$body);
- $converter->parse_string_document($total_body);
- $body =~ s{.*?<body [^>]+>}{}s;
- $body =~ s{</body>\s*</html>\s*$}{};
- $n =~ s{/}{::}g;
- $m->print("<h1>$n</h1>");
- $body =~ s/(?<!\$)\b(RT::[a-zA-Z0-9:]+)\b/<a href="Body.html?n=$1">$1<\/a>/g;
- $body =~ s{(?<![\$:])(?<!RT::)\b((?!(\w+_)?RT::)\w+::\w+)\b}{<a
-href="http://search.cpan.org/search?query=$1&mode=module">$1</a>}g;
- $body =~ s!</li>\n\t<ul>!<ul>!;
- $body =~ s!</ul>!</ul></li>!;
- $body =~ s!<p></p>!!;
- $body =~ s!<a name=!<a id=!g;
- $body =~ s!__index__!index!g;
- $m->print($body);
-}
-</%PERL>
-</body></html>
-<%ARGS>
-$Target => '&method=Body'
-$n => ''
-</%ARGS>
-<%INIT>
-require File::Basename;
-require File::Find;
-require File::Temp;
-require File::Spec;
-require Pod::Simple::HTML;
-</%INIT>
diff --git a/html/Developer/Perldoc/Elements/Body b/html/Developer/Perldoc/Elements/Body
new file mode 100644
index 0000000..1e74f88
--- /dev/null
+++ b/html/Developer/Perldoc/Elements/Body
@@ -0,0 +1,85 @@
+<%PERL>
+my $dirname = "$RT::BasePath/lib";
+my $localdir = $RT::LocalLibPath;
+my $plugindir = $RT::LocalPluginPath;
+
+# We intentionally don't use the plugins API, as this also gets us
+# plugins that are not currently enabled
+my @plugins = ();
+if(opendir(PLUGINS, $plugindir)) {
+ while(defined(my $plugin = readdir(PLUGINS))) {
+ next if($plugin =~ /^\./);
+ push(@plugins, "$plugindir/$plugin/lib");
+ }
+ closedir(PLUGINS);
+}
+
+my $path = $package;
+$path =~ s!::!/!g;
+
+my $found;
+for my $ending (qw(pm pod)) {
+ for my $libpath ($dirname, $localdir, @plugins) {
+ next unless -r "$libpath/$path.$ending";
+ $found = "$libpath/$path.$ending";
+ last;
+ }
+ last if $found;
+}
+$found ||= $INC{"RT.pm"};
+
+my $fh;
+open $fh, $found or next;
+my $body = do { local $/; <$fh> };
+close $fh;
+
+# Trim empty sections
+$body =~ s/^=head1 .*\s*(?==(head1|cut))//mg;
+
+# Remove AUTHOR, SEE ALSO, and SYNOPSIS sections
+$body =~ s/^=head1 (?:AUTHOR|SEE ALSO|SYNOPSIS).*?^(=head|=cut)/$1/smg;
+
+# Both of the above leave in place the final =cut, which may be an error
+# if we are no longer in a POD section due to the missing =head1. There
+# are two halves to the fix: first, remove every =cut which has no POD
+# before it.
+1 while $body =~ s/\A((^([^=\n].*|)\n)*)^=cut.*/$1/m;
+
+# Second, remove every =cut which comes after a =cut
+$body =~ s/^=cut.*\n((^([^=\n].*|)\n)*)^=cut.*/$1/mg;
+
+# Fix up POD blocks which may be lacking empty lines before them
+$body =~ s/^=/\n=/mg;
+
+my $html = "";
+my $converter = Pod::Simple::HTML->new();
+$converter->output_string(\$html);
+$converter->html_header_before_title("<h1>");
+$converter->force_title($package);
+$converter->html_header_after_title("</h1>");
+$converter->html_footer("");
+$converter->perldoc_url_prefix("http://metacpan.org/module/");
+
+# When generating the TOC, we kept track of which modules are local.
+# Use the non-exposed (but written for external consumption (!?)) API
+# for mapping packages to URLs.
+$converter->{'podhtml_LOT'} = $m->notes("toc");
+
+$converter->parse_string_document($body);
+
+# Anything in the RT:: namespace should get linked to the appropriate doc
+my $self = RT->Config->Get('WebURL') . "Developer/Perldoc?n=";
+$html =~ s{(?<!\$)(?<!Perldoc\?n=)\b(RT(::[a-zA-Z0-9]+)+)(?!</a>)(?!::)\b}{<a href="$self$1">$1<\/a>}g;
+
+# Other Foo::Bar packages should get linked to metacpan
+$html =~ s{(?<![\$:])(?<!RT::)\b((?!(\w+_)?RT::)\w+::\w+)\b}{<a
+href="http://metacpan.org/module/$1">$1</a>}g;
+
+# Squish adjacent paragraphs together
+$html =~ s!<p></p>!!;
+
+$m->print($html);
+</%PERL>
+<%ARGS>
+$package
+</%ARGS>
diff --git a/html/Developer/Perldoc/Elements/TOC b/html/Developer/Perldoc/Elements/TOC
new file mode 100644
index 0000000..401fbdc
--- /dev/null
+++ b/html/Developer/Perldoc/Elements/TOC
@@ -0,0 +1,72 @@
+<%PERL>
+my $dirname = "$RT::BasePath/lib";
+my $localdir = $RT::LocalLibPath;
+my $plugindir = $RT::LocalPluginPath;
+
+# We intentionally don't use the plugins API, as this also gets us
+# plugins that are not currently enabled
+my @plugins = ();
+if(opendir(PLUGINS, $plugindir)) {
+ while(defined(my $plugin = readdir(PLUGINS))) {
+ next if($plugin =~ /^\./);
+ push(@plugins, "$plugindir/$plugin/lib");
+ }
+ closedir(PLUGINS);
+}
+
+my $self = RT->Config->Get('WebURL') . "Developer/Perldoc?n=";
+
+# Find relevant files
+my @found;
+my %toc;
+File::Find::find(
+ {
+ untaint => 1,
+ follow => ($^O ne 'MSWin32'),
+ wanted => sub {
+ return unless /(\w+)\.(?:pm|pod)$/;
+ return if $1 eq "perllocal";
+ return if $1 =~ /_(Local|Vendor|Overlay)/;
+ my $name = $File::Find::name;
+ $name =~ s!.*?/lib/!!;
+ $name =~ s!\.(?:pm|pod)$!!i;
+ $name =~ s!\W!::!g;
+ $toc{$name} = "$self$name";
+ push @found, $name;
+ },
+ },
+ $dirname, $localdir, @plugins
+);
+$m->notes(toc => \%toc);
+
+my ($prev, $indent) = ("", 0);
+foreach my $file (sort @found) {
+ my ($parent, $name) = ($1, $2) if $file =~ /(?:(.*)::)?(\w+)$/;
+ $parent = "" unless defined $parent;
+ if ($file =~ /^$prev\::(.*)/) {
+ my $foo = $1;
+ while ($foo =~ s/(\w+):://) {
+ $indent++;
+ $m->print(qq{<span style="margin-left: @{[$indent]}em">$1</span><br />\n});
+ }
+ $indent++;
+ } elsif ($prev !~ /^$parent\::/) {
+ while ($parent =~ s/(\w+)//) {
+ next if $prev =~ s/\b$1:://;
+ while ($prev =~ s/:://) {
+ $indent--;
+ }
+ $m->print(qq{<span style="margin-left: @{[$indent]}em">$1</span><br />\n});
+ $indent++;
+ }
+ } elsif ($prev =~ /^$parent\::(.*::)/) {
+ my $foo = $1;
+ while ($foo =~ s/:://) {
+ $indent--;
+ }
+ }
+ $m->print(
+ qq{<a style="margin-left: @{[$indent]}em" href="$self$file">$name</a><br />\n} );
+ $prev = $file;
+}
+</%PERL>
diff --git a/html/Developer/Perldoc/TOC.html b/html/Developer/Perldoc/TOC.html
deleted file mode 100644
index dbf5fd8..0000000
--- a/html/Developer/Perldoc/TOC.html
+++ /dev/null
@@ -1,88 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
-"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
-<head>
-<title><% $n || 'RT' %> - RT Developer Documentation Online</title>
-<style type="text/css"><!--
-a { text-decoration: none }
-a:hover { text-decoration: underline }
-a:focus { background: #99ff99; border: 1px black dotted }
---></style>
-</head>
-<body style="background: #dddddd">
-<%PERL>
-
-
-my $dirname = File::Basename::dirname($INC{'RT.pm'});
-my $localdir = $dirname."/../local/lib";
-my $plugindir = $dirname."/../local/plugins";
-my @plugins = ();
-if(opendir(PLUGINS, $plugindir)) {
- while(defined(my $plugin = readdir(PLUGINS))) {
- next if($plugin =~ /^\./);
- push(@plugins, $plugindir."/".$plugin."/lib");
- }
- closedir(PLUGINS);
-}
-my @found;
-File::Find::find(
- { untaint => 1,
- wanted => sub {
- return unless /(\w+)\.(?:pm|pod)$/;
- return if $1 =~ /(?:perllocal|_(?:Local|Vendor|Overlay))/;
- my $name = $File::Find::name;
- $name =~ s/.*lib\b.//;
- $name =~ s!\.(?:pm|pod)!!i;
- $name =~ s!\W!::!g;
- push @found, $name;
- },follow => ($^O ne 'MSWin32') },
- $dirname,$localdir, at plugins
-);
-my ($prev, $indent);
-foreach my $file (sort @found) {
- my ($parent, $name) = ($1, $2) if $file =~ /(?:(.*)::)?(\w+)$/;
- if ($file =~ /^$prev\::(.*)/) {
- my $foo = $1;
- while ($foo =~ s/(\w+):://) {
- $indent++;
- $m->print((' ' x $indent));
- $m->print("$1<br />");
- }
- $indent++;
- } elsif ($prev !~ /^$parent\::/) {
- while ($parent =~ s/(\w+)//) {
- next if $prev =~ s/\b$1:://;
- while ($prev =~ s/:://) {
- $indent--;
- }
- $m->print((' ' x $indent));
- $m->print("$1<br />");
- $indent++;
- }
- } elsif ($prev =~ /^$parent\::(.*::)/) {
- my $foo = $1;
- while ($foo =~ s/:://) {
- $indent--;
- }
- }
- $m->print( ( ' ' x $indent )
- . '<a target="podBody" href="Body.html?n=' . $file . '">' . $name
- . '</a><br />' ."\n" );
- $prev = $file;
-}
-
-</%PERL>
-</body></html>
-<%INIT>
-require File::Basename;
-require File::Find;
-require File::Temp;
-require File::Spec;
-require Pod::Simple::HTML;
-</%INIT>
-<%ARGS>
-$n => ''
-$method => ''
-$Target => '&method=Body'
-</%ARGS>
diff --git a/html/Developer/Perldoc/index.html b/html/Developer/Perldoc/index.html
index 30b1728..ff1bed8 100644
--- a/html/Developer/Perldoc/index.html
+++ b/html/Developer/Perldoc/index.html
@@ -1,5 +1,4 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
-"http://www.w3.org/TR/html4/">
+<!DOCTYPE html>
<html lang="en">
<head>
<title><% $n || 'RT' %> - RT Pod Online</title>
@@ -7,18 +6,29 @@
a { text-decoration: none }
a:hover { text-decoration: underline }
a:focus { background: #99ff99; border: 1px black dotted }
+
+#apidoc-content: { float: left; }
+#apidoc-toc { float: right; width: 250px; border-left: 1px solid black; padding-left: 3px; }
--></style>
</head>
-<FRAMESET COLS="*, 250">
- <FRAME src="Body.html" name="podBody">
- <FRAME src="TOC.html" name="podTOC">
- <NOFRAMES>
- <a style="display: none" href="#toc">Table of Contents</a>
-<& Body.html, Target => '' &>
- <h1><a id="toc">Table of Contents</a></h1>
-<& TOC.html, Target => '' &>
- </NOFRAMES>
-</FRAMESET>
+<body>
+<div id="apidoc-container">
+
+<div id="apidoc-toc">
+<h1><a id="toc">Table of Contents</a></h1>
+<h3><a href="<% RT->Config->Get('WebURL') %>">Return to RT</a></h3>
+<& Elements/TOC &>
+</div>
+
+<div id="apidoc-content">
+<& Elements/Body, package => $n &>
+</div>
+
+</div>
+</body>
+</html>
+% # Skip footer
+% $m->abort;
<%args>
-$n => undef
+$n => ''
</%args>
diff --git a/lib/RT/OnlineDocs.pm b/lib/RT/OnlineDocs.pm
index 40e40b5..d556b18 100644
--- a/lib/RT/OnlineDocs.pm
+++ b/lib/RT/OnlineDocs.pm
@@ -6,6 +6,12 @@ use warnings;
package RT::OnlineDocs;
+require File::Basename;
+require File::Find;
+require File::Temp;
+require File::Spec;
+require Pod::Simple::HTML;
+
our $VERSION = "0.10";
1;
commit 074714499c01501a77a6e458367a88008b6a7655
Author: Alex Vandiver <alexmv at bestpractical.com>
Date: Wed Oct 26 21:16:39 2011 -0400
Refactor common lib-finding out
diff --git a/html/Developer/Perldoc/Elements/Body b/html/Developer/Perldoc/Elements/Body
index 1e74f88..44ed35d 100644
--- a/html/Developer/Perldoc/Elements/Body
+++ b/html/Developer/Perldoc/Elements/Body
@@ -1,27 +1,12 @@
<%PERL>
-my $dirname = "$RT::BasePath/lib";
-my $localdir = $RT::LocalLibPath;
-my $plugindir = $RT::LocalPluginPath;
-
-# We intentionally don't use the plugins API, as this also gets us
-# plugins that are not currently enabled
-my @plugins = ();
-if(opendir(PLUGINS, $plugindir)) {
- while(defined(my $plugin = readdir(PLUGINS))) {
- next if($plugin =~ /^\./);
- push(@plugins, "$plugindir/$plugin/lib");
- }
- closedir(PLUGINS);
-}
-
my $path = $package;
$path =~ s!::!/!g;
my $found;
-for my $ending (qw(pm pod)) {
- for my $libpath ($dirname, $localdir, @plugins) {
- next unless -r "$libpath/$path.$ending";
- $found = "$libpath/$path.$ending";
+for my $ext (qw(pm pod)) {
+ for my $libpath (RT::OnlineDocs->lib_paths) {
+ next unless -r "$libpath/$path.$ext";
+ $found = "$libpath/$path.$ext";
last;
}
last if $found;
@@ -29,7 +14,7 @@ for my $ending (qw(pm pod)) {
$found ||= $INC{"RT.pm"};
my $fh;
-open $fh, $found or next;
+open $fh, $found or $m->abort(404);
my $body = do { local $/; <$fh> };
close $fh;
diff --git a/html/Developer/Perldoc/Elements/TOC b/html/Developer/Perldoc/Elements/TOC
index 401fbdc..ffd737f 100644
--- a/html/Developer/Perldoc/Elements/TOC
+++ b/html/Developer/Perldoc/Elements/TOC
@@ -1,19 +1,4 @@
<%PERL>
-my $dirname = "$RT::BasePath/lib";
-my $localdir = $RT::LocalLibPath;
-my $plugindir = $RT::LocalPluginPath;
-
-# We intentionally don't use the plugins API, as this also gets us
-# plugins that are not currently enabled
-my @plugins = ();
-if(opendir(PLUGINS, $plugindir)) {
- while(defined(my $plugin = readdir(PLUGINS))) {
- next if($plugin =~ /^\./);
- push(@plugins, "$plugindir/$plugin/lib");
- }
- closedir(PLUGINS);
-}
-
my $self = RT->Config->Get('WebURL') . "Developer/Perldoc?n=";
# Find relevant files
@@ -35,7 +20,7 @@ File::Find::find(
push @found, $name;
},
},
- $dirname, $localdir, @plugins
+ RT::OnlineDocs->lib_paths
);
$m->notes(toc => \%toc);
diff --git a/lib/RT/OnlineDocs.pm b/lib/RT/OnlineDocs.pm
index d556b18..431c14f 100644
--- a/lib/RT/OnlineDocs.pm
+++ b/lib/RT/OnlineDocs.pm
@@ -14,4 +14,23 @@ require Pod::Simple::HTML;
our $VERSION = "0.10";
+sub lib_paths {
+ my $dirname = "$RT::BasePath/lib";
+ my $localdir = $RT::LocalLibPath;
+ my $plugindir = $RT::LocalPluginPath;
+
+ # We intentionally don't use the plugins API, as this also gets us
+ # plugins that are not currently enabled
+ my @plugins = ();
+ if(opendir(PLUGINS, $plugindir)) {
+ while(defined(my $plugin = readdir(PLUGINS))) {
+ next if($plugin =~ /^\./);
+ push(@plugins, "$plugindir/$plugin/lib");
+ }
+ closedir(PLUGINS);
+ }
+
+ return ($dirname, $localdir, @plugins);
+}
+
1;
commit 946bea12eb1b87670bab91617ffb4fbb2928b513
Author: Alex Vandiver <alexmv at bestpractical.com>
Date: Wed Oct 26 21:25:51 2011 -0400
Updated gitignore -- don't ignore existing files, or our callback dir
diff --git a/.gitignore b/.gitignore
index e1e276b..ae1787c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,15 +1,8 @@
-blib*
-Makefile
-Makefile.old
-Build
-Build.bat
-_build*
-pm_to_blib*
-*.tar.gz
-.lwpcookies
-cover_db
-pod2htm*.tmp
-RT-OnlineDocs*
-README
+/blib
+/pm_to_blib
+/Makefile
+/Makefile.old
+/cover_db
+/RT-OnlineDocs*
*.bak
/MYMETA*
commit 707f371a500ecb252ac71f859783811618a0447b
Author: Alex Vandiver <alexmv at bestpractical.com>
Date: Wed Oct 26 21:26:39 2011 -0400
Updated MANIFEST for changed file locations
diff --git a/MANIFEST b/MANIFEST
index e8b7044..0a17271 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -1,9 +1,9 @@
ChangeLog
-html/Callbacks/RT-OnlineDocs/Elements/Tabs/Default
+html/Callbacks/RT-OnlineDocs/Elements/Tabs/Privileged
html/Developer/Perldoc/autohandler
-html/Developer/Perldoc/Body.html
+html/Developer/Perldoc/Elements/Body
+html/Developer/Perldoc/Elements/TOC
html/Developer/Perldoc/index.html
-html/Developer/Perldoc/TOC.html
inc/Module/AutoInstall.pm
inc/Module/Install.pm
inc/Module/Install/AutoInstall.pm
-----------------------------------------------------------------------
More information about the Bps-public-commit
mailing list