smolder-commits Mailing List for Smolder
Brought to you by:
michael_peters
You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
(199) |
Apr
(13) |
May
(1) |
Jun
(26) |
Jul
(64) |
Aug
(86) |
Sep
(54) |
Oct
(34) |
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
|
Feb
(27) |
Mar
|
Apr
|
May
(9) |
Jun
(24) |
Jul
(46) |
Aug
(44) |
Sep
(9) |
Oct
(1) |
Nov
|
Dec
(18) |
2008 |
Jan
(1) |
Feb
|
Mar
(19) |
Apr
(45) |
May
(3) |
Jun
(11) |
Jul
(37) |
Aug
(5) |
Sep
(3) |
Oct
|
Nov
|
Dec
|
2009 |
Jan
(5) |
Feb
(2) |
Mar
(93) |
Apr
(5) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <mic...@us...> - 2009-04-02 13:51:20
|
Revision: 937 http://smolder.svn.sourceforge.net/smolder/?rev=937&view=rev Author: michael_peters Date: 2009-04-02 13:51:19 +0000 (Thu, 02 Apr 2009) Log Message: ----------- bumping up version to 1.34 Modified Paths: -------------- trunk/lib/Smolder.pm Modified: trunk/lib/Smolder.pm =================================================================== --- trunk/lib/Smolder.pm 2009-04-02 13:50:49 UTC (rev 936) +++ trunk/lib/Smolder.pm 2009-04-02 13:51:19 UTC (rev 937) @@ -1,6 +1,6 @@ package Smolder; -our $VERSION = '1.33'; +our $VERSION = '1.34'; 1; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-04-02 13:50:50
|
Revision: 936 http://smolder.svn.sourceforge.net/smolder/?rev=936&view=rev Author: michael_peters Date: 2009-04-02 13:50:49 +0000 (Thu, 02 Apr 2009) Log Message: ----------- updating changelog Modified Paths: -------------- trunk/Changes Modified: trunk/Changes =================================================================== --- trunk/Changes 2009-04-02 13:46:30 UTC (rev 935) +++ trunk/Changes 2009-04-02 13:50:49 UTC (rev 936) @@ -8,6 +8,10 @@ + Run the smolder binary in blib/ instead of bin/ during tests - G. Szabo + Install shared data into /blib/lib/auto so it goes into the right shared dir even when using a different install_base - G. Szabo, M. Peters + + added --port, --host, --data_dir and --share_dir to bin/smolder to make it easier + to customize without needing a config file - M. Peters + + Smolder::Conf is not simpler (doesn't use Config::ApacheFormat) and tries to have + better defaults for everything so that a smolder.conf is not needed - M. Peters 1.33 (March 30, 2009) + Tell CPAN to not index out private modules where we still want to have POD - M. Peters This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-04-02 13:46:37
|
Revision: 935 http://smolder.svn.sourceforge.net/smolder/?rev=935&view=rev Author: michael_peters Date: 2009-04-02 13:46:30 +0000 (Thu, 02 Apr 2009) Log Message: ----------- ripping out the old config system and going with something simpler with sane defaults; now a smolder.conf file is not needed but will be loaded if asked for (either passing -c to bin/smolder or $ENV{SMOLDER_CONF} Modified Paths: -------------- trunk/Build.PL trunk/TODO trunk/bin/smolder trunk/lib/Smolder/Build.pm trunk/lib/Smolder/Conf.pm trunk/lib/Smolder/Control.pm trunk/lib/Smolder/DB/Project.pm trunk/lib/Smolder/DB/SmokeReport.pm trunk/lib/Smolder/DB.pm trunk/lib/Smolder/Email.pm trunk/lib/Smolder/Server.pm trunk/lib/Smolder/TAPHTMLMatrix.pm trunk/lib/Smolder/TestData.pm trunk/lib/Smolder/Upgrade/V1_1.pm trunk/lib/Smolder/Upgrade.pm trunk/t/conf.t Modified: trunk/Build.PL =================================================================== --- trunk/Build.PL 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/Build.PL 2009-04-02 13:46:30 UTC (rev 935) @@ -22,7 +22,6 @@ 'Class::DBI' => 3.0, 'Class::DBI::SQLite' => 0, 'Class::DBI::Plugin::RetrieveAll' => 1.04, - 'Config::ApacheFormat' => 0, 'Data::FormValidator' => 4.61, 'Data::FormValidator::Constraints::DateTime' => 1.09, 'Data::Random' => 0.05, @@ -58,9 +57,6 @@ configure_requires => { 'Module::Build' => 0, 'Module::Build::TAPArchive' => 0, - 'IPC::Run' => 0.82, - 'WWW::Mechanize' => 0, - 'LWP::UserAgent' => 0, }, build_requires => { 'Test::WWW::Mechanize' => 1.22, Modified: trunk/TODO =================================================================== --- trunk/TODO 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/TODO 2009-04-02 13:46:30 UTC (rev 935) @@ -1,13 +1,11 @@ TODO tasks for Smolder ++ Change ProjectFullReportsMax to be a per-project field + + Add support for dev releases to CPAN + get /static urls working for better caching by the browser -+ reasonable defaults for all config vars so that smolder.conf isn't needed - but can be used if you want. Also allow all config vars to be set using - command line options to smolder itself - + Plugins that support + adding and overriding templates and htdocs + adding sql tables Modified: trunk/bin/smolder =================================================================== --- trunk/bin/smolder 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/bin/smolder 2009-04-02 13:46:30 UTC (rev 935) @@ -3,6 +3,8 @@ use warnings; use Getopt::Long; use Pod::Usage; +use Smolder::Conf; +use File::Spec::Functions qw(catdir); =head1 NAME @@ -28,26 +30,54 @@ =item --conf (-c) -Specify a smolder.conf config file. Smolder looks in several -places for config files but if you want to put it someplace -else then you can. +Specify a smolder.conf config file. -=item --help (-h) +=item --port (-p) +Specify the port from which Smolder will server requests. Defaults to 8080 + +=item --host (-h) + +The hostname that Smolder will use when running. Defaults to localhost@localdomain + +=item --data_dir + +The data directory that Smolder will use. Defaults to $HOME/.smolder (or equivalent) + +=item --share_dir + +The shared directory that Smolder will use for read-only things like templates, css, images and sql files + +=item --help + Show the help screen. =back =cut -my ($conf, $daemon, $help); +my ($conf, $daemon, $help, $port, $host, $data_dir, $share_dir); GetOptions( - 'conf|c=s' => \$conf, - 'daemon|d' => \$daemon, - 'help|h' => \$help, + 'conf|c=s' => \$conf, + 'daemon|d' => \$daemon, + 'port|p=s' => \$port, + 'host|h=s' => \$host, + 'data_dir=s' => \$data_dir, + 'share_dir=s' => \$share_dir, + 'help' => \$help, ); pod2usage(1) if $help; -$ENV{SMOLDER_CONF} = $conf if $conf; +my %conf_values; +$conf_values{Port} = $port if $port; +$conf_values{HostName} = $host if $host; +$conf_values{DataDir} = $data_dir if $data_dir; +if ($share_dir) { + $conf_values{TemplateDir} = catdir($share_dir, 'templates'); + $conf_values{SQLDir} = catdir($share_dir, 'sql'); + $conf_values{HtdocsDir} = catdir($share_dir, 'htdocs'); +} +Smolder::Conf->init_from_file($conf) if $conf; +Smolder::Conf->init(%conf_values) if %conf_values; require Smolder::Server; Smolder::Server->new(daemon => $daemon)->start(); Modified: trunk/lib/Smolder/Build.pm =================================================================== --- trunk/lib/Smolder/Build.pm 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/lib/Smolder/Build.pm 2009-04-02 13:46:30 UTC (rev 935) @@ -7,20 +7,11 @@ use File::Spec::Functions qw(catdir catfile tmpdir curdir rel2abs abs2rel splitdir); use File::Find (); use File::Copy qw(copy); -use File::Path qw(make_path); +use File::Path qw(mkpath); +my $PORT = '112234'; my $HOSTNAME = 'localhost.localdomain'; -my $PORT = '112234'; -BEGIN { - eval { require IPC::Run }; - die "IPC::Run needed to run Smolder build: $@" if $@; - eval { require LWP::UserAgent }; - die "LWP::UserAgent neede to run Smolder build: $@" if $@; - eval { require WWW::Mechanize }; - die "WWW::Mechanize neede to run Smolder build: $@" if $@; -} - =head1 NAME Smolder::Build @@ -53,40 +44,56 @@ my ($self, $action) = @_; my $cwd = cwd(); - # create a temporary database - my $tmp_dir = File::Temp->newdir(template => 'smolder-XXXXXX'); - my $conf = - "Port $PORT\nHostname $HOSTNAME\n" - . "FromAddress smolder\@$HOSTNAME\nSecret ad01i11932lsk\n" + # create a temporary database and conf file + my $tmp_dir = File::Temp->newdir(template => 'smolder-XXXXXX'); + my $share_dir = $self->_share_blib_dir; + my $tmp_conf = File::Temp->new(template => 'smolder-XXXXXX', suffix => '.conf', dir => tmpdir); + my $log_dir = rel2abs(catdir(curdir, 'blib', 'logs')); + mkpath($log_dir) unless -d $log_dir; + + my $conf = "HostName '$HOSTNAME'\nPort '$PORT'\n" . "TemplateDir '" - . catdir($cwd, 'templates') . "'\n" + . catdir($share_dir, 'templates') . "'\n" . "HtdocsDir '" - . catdir($cwd, 'htdocs') . "'\n" + . catdir($share_dir, 'htdocs') . "'\n" . "SQLDir '" - . catdir($cwd, 'sql') . "'\n" + . catdir($share_dir, 'sql') . "'\n" . "DataDir '" - . $tmp_dir->dirname . "'\n"; - - my $tmp_conf = File::Temp->new(template => 'smolder-XXXXXX', suffix => '.conf', dir => tmpdir); + . $tmp_dir->dirname . "'\n" + . "LogFile '" . catdir($log_dir, 'smolder.log') . "'\n"; print $tmp_conf $conf; close $tmp_conf; - $ENV{SMOLDER_CONF} = $tmp_conf->filename; - $ENV{SMOLDER_TEST_HARNESS_ACTIVE} = 1; + $ENV{SMOLDER_CONF} = $tmp_conf->filename; # make sure we create a DB first. Smolder will do this when it starts, # but we still want to run some tests even if we fail to start smolder $self->depends_on('db'); + # our code needs to know it's running under the test harness + $ENV{SMOLDER_TEST_HARNESS_ACTIVE} = 1; + # start the smolder server my ($in, $out, $err); $ENV{PERL5LIB} = catdir($cwd, 'blib', 'lib'); - my $subprocess = IPC::Run::start([catfile($cwd, 'blib', 'script', 'smolder')], \$in, \$out, \$err); + my @cmd = ( + $^X, + catfile($cwd, 'blib', 'script', 'smolder'), + '--host' => $HOSTNAME, + '--port' => $PORT, + ); + eval { require IPC::Run }; + die "IPC::Run needed to run Smolder test: $@" if $@; + my $subprocess = IPC::Run::start(\@cmd, \$in, \$out, \$err); my $tries = 0; warn "Waiting for Smolder to start...\n"; while (!_is_smolder_running() && $tries < 7) { sleep(3); $tries++; } + if( !_is_smolder_running()) { + warn "Could not start Smolder server: $err\n"; + warn "Trying tests anyway.\n"; + } my $method = "SUPER::ACTION_$action"; eval { @@ -108,6 +115,8 @@ my $url = "http://$HOSTNAME:$PORT/app"; # Create a user agent object + eval { require LWP::UserAgent }; + die "LWP::UserAgent neede to run Smolder tests: $@" if $@; my $ua = LWP::UserAgent->new; $ua->timeout(4); my $res = $ua->get($url); @@ -137,6 +146,8 @@ $self->ACTION_test_archive(); # now send the results off to smolder + eval { require WWW::Mechanize }; + die "WWW::Mechanize neede to run Smolder smoke: $@" if $@; my $mech = WWW::Mechanize->new(); $mech->get("$p->{server}/app"); unless ($mech->status eq '200') { @@ -266,11 +277,9 @@ my $cwd = cwd(); my $start_dir = rel2abs(catdir(curdir, $type)); my $start_dir_length = scalar splitdir($start_dir); - my $dest_dir = rel2abs(catdir(curdir, 'blib', 'lib', 'auto', 'share', 'Smolder', $type)); + my $dest_dir = catdir($self->_share_blib_dir, $type); - unless (-d $dest_dir) { - make_path($dest_dir) or die "Could not create directory $dest_dir: $!"; - } + mkpath($dest_dir) or die "Could not create directory $dest_dir: $!" unless -d $dest_dir; File::Find::find( sub { @@ -280,9 +289,9 @@ my $name = $_; my @new_dirs = splitdir($File::Find::dir); @new_dirs = @new_dirs[$start_dir_length .. $#new_dirs]; - my $full_path; + my $full_path = $dest_dir; foreach my $new_dir (@new_dirs) { - $full_path = catdir($dest_dir, $new_dir); + $full_path = catdir($full_path, $new_dir); unless (-d $full_path) { mkdir($full_path) or die "Could not create directory $full_path: $!"; } @@ -298,4 +307,8 @@ ); } +sub _share_blib_dir { + return rel2abs(catdir(curdir, 'blib', 'lib', 'auto', 'share', 'dist', 'Smolder')); +} + 1; Modified: trunk/lib/Smolder/Conf.pm =================================================================== --- trunk/lib/Smolder/Conf.pm 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/lib/Smolder/Conf.pm 2009-04-02 13:46:30 UTC (rev 935) @@ -2,39 +2,38 @@ use strict; use warnings; use File::Spec::Functions qw(catfile catdir rel2abs curdir); -use File::ShareDir qw(module_dir); +use File::ShareDir qw(dist_dir); use File::HomeDir; use File::Basename qw(dirname); use Carp qw(croak); use Config::ApacheFormat; -use Cwd qw(fastcwd); -use IO::Scalar; use Smolder; -# all valid configuration directives must be listed here -our (@VALID_DIRECTIVES, @REQUIRED_DIRECTIVES); +sub _random_secret { + my $length = int(rand(5) + 10); + my $secret = ''; + my @chars = ('a'..'z', 'A'..'Z', 0..9); + $secret .= $chars[int(rand($#chars + 1))] for(0..$length); + return $secret; +} +my %VALUES; + BEGIN { - @VALID_DIRECTIVES = map { lc($_) } qw( - Port - FromAddress - HostName - LogFile - Secret - SMTPHost - ProjectFullReportsMax - TemplateDir - DataDir - HtdocsDir - SQLDir + my $share_dir = dist_dir('Smolder'); + %VALUES = ( + Port => 8080, + HostName => 'localhost.localdomain', + FromAddress => 'smolder@localhost.localdomain', + SMTPHost => 'localhost.localdomain', + ProjectFullReportsMax => 0, + LogFile => '', + TemplateDir => catdir($share_dir, 'templates'), + DataDir => catdir(File::HomeDir->my_data, '.smolder'), + HtdocsDir => catdir($share_dir, 'htdocs'), + SQLDir => catdir($share_dir, 'sql'), + Secret => _random_secret(), ); - - @REQUIRED_DIRECTIVES = qw( - Port - FromAddress - HostName - Secret - ); } =head1 NAME @@ -53,183 +52,105 @@ # or you can access them as methods in the Smolder::Conf module $port = Smolder::Conf->Port; -=head1 DESCRIPTION - -This module provides access to the configuration settings in -F<smolder.conf>. - -Full details on all configuration parameters is available in the -configuration document, which you can find at F<docs/configuration>. - -=cut - -# package variables -our $CONF; - -# look for the file in various places. Return the first one that exists -sub _conf_file_path { - if ($ENV{SMOLDER_CONF}) { - return $ENV{SMOLDER_CONF}; - } elsif ($ENV{SMOLDER_ROOT}) { - my $conf_file = catfile($ENV{SMOLDER_ROOT}, 'conf', 'smolder.conf'); - return $conf_file if -e $conf_file; - } - - my @paths = ( - rel2abs(curdir), - catdir('', 'usr', 'local', 'smolder', 'conf'), - catdir('', 'etc', 'smolder'), - catdir('', 'etc'), + # give Smolder::Conf some values to override the defaults + Smolder::Conf->init( + Secret => '1Adxd23023s', + Port => 80, + HostName => 'smolder.myorg.com', + LogFile => '/path/to/logs', ); - foreach my $path (@paths) { - my $conf_file = catfile($path, 'smolder.conf'); - return $conf_file if -e $conf_file; - } - # if we got here then something is wrong - croak(<<CROAK); + # pull the conf values from a file + Smolder::Conf->init_from_file('/path/to/conf/file'); -Unable to find smolder.conf! -We will look for it in the following order: +=head1 DESCRIPTION - \$CWD/smolder.conf - \$SMOLDER_ROOT/conf/smolder.conf - /usr/local/smolder/conf/smolder.conf - /etc/smolder/smolder.conf - /etc/smolder.conf - -Or can optionally be designated by using the SMOLDER_CONF environment variable. +This module provides access to the configuration settings in +F<smolder.conf>. Smolder tries to have reasonable defaults but they +can be overridden when needed. -CROAK -} - -# internal routine to load the conf file. Called by a BEGIN during -# startup, and used during testing. -sub _load { - - # find a default conf file - my $conf_file = _conf_file_path(); - - # load conf file into package global - eval { - our $CONF = Config::ApacheFormat->new(valid_directives => \@VALID_DIRECTIVES,); - $CONF->read($conf_file); - }; - croak("Unable to read config file '$conf_file'. Error was: $@") - if $@; - croak("Unable to read config file '$conf_file'.") - unless $CONF; -} - -# load the configuration file during startup -BEGIN { _load(); } - =head1 METHODS -=head2 get_config +=head2 init -Class method that returns the underlying L<Config::ApacheFormat> object. +Override the configuration defaults by providing named-value pairs: -=cut + Smolder::Conf->init( + Secret => '1Adxd23023s', + Port => 80, + HostName => 'smolder.myorg.com', + LogFile => '/path/to/logs', + ); -sub get_config { - return $CONF; -} - -=head2 get - - -Given a directive name, returns the value (which may be a list) of a configuration directive. -Directive names are case-insensitive. - - $value = Smolder::Conf->get("DirectiveName") - - @values = Smolder::Conf->get("DirectiveName") - =cut -sub get { - return $CONF->get($_[1]); +sub init { + my ($class, %args) = @_; + foreach my $key (keys %args) { + if( exists $VALUES{$key} ) { + $VALUES{$key} = $args{$key}; + } else { + croak "$key is not a valid Smolder config parameter!"; + } + } } -=head2 check +=head2 init_from_file -Sanity-check Smolder configuration. This will croak() with an error -message if something is wrong with the configuration file. +Override the configuration defaults by providing a file. Config files are simple +lists of name-values pairs. One pair per-line and each name/value is separated by +whitespace: -This is run when the Smolder::Conf loads unless the environment variable -"SMOLDER_CONF_NOCHECK" is set to a true value. + HostName smolder.test + DataDir /var/lib/smolder/ + Port 80 + FromAddress smolder@smolder.test + TemplateDir /var/share/smolder/templates + HtdocsDir /var/share/smolder/htdocs + SQLDir /var/share/smolder/sql =cut -sub check { - my $pkg = shift; +sub init_from_file { + my ($class, $file) = @_; + croak "Config file $file does not exist!" unless -e $file; + croak "Config file $file is not readable!" unless -r $file; - # check required directives - foreach my $dir (@REQUIRED_DIRECTIVES) { - _broked("Missing required $dir directive") - unless defined $CONF->get($dir); - } - - # if we have a log file, does it exist and can we write to it? - my $log_file = $CONF->get('LogFile'); - if ($log_file) { - if (-e $log_file && -f $log_file) { - broked("We can't write to log file $log_file") unless -r $log_file; - } else { - open(my $LOG, '>>', $log_file) or _broked("Could not create log file $log_file! $!"); - print $LOG ''; - close($LOG); + open(my $FH, '<', $file) or croak "Could not open file $file for reading: $!"; + my %values; + while(my $line = <$FH>) { + # only get lines that look like name-value pairs but not comments + if( $line !~ /\s*#/ && $line =~ /(\S+)\s+(\S+)/ ) { + # strip off any quotes + my ($key, $val) = ($1, $2); + $val =~ s/^'(.*)'$/$1/; + $val =~ s/^"(.*)"$/$1/; + $values{$key} = $val; } } + $class->init(%values); } -=head2 template_dir - -The directory path for the templates for this install of Smolder - -=cut - -sub template_dir { - my $class = shift; - return $class->get('TemplateDir') || catdir(module_dir('Smolder'), 'templates'); +BEGIN { + __PACKAGE__->init_from_file($ENV{SMOLDER_CONF}) if $ENV{SMOLDER_CONF}; } -=head2 htdocs_dir +=head2 get -The directory path for the htdocs for this install of Smolder +Given a directive name, returns the value (which may be a list) of a configuration directive. +Directive names are case-insensitive. -=cut + $value = Smolder::Conf->get('DirectiveName'); -sub htdocs_dir { - my $class = shift; - return $class->get('HtdocsDir') || catdir(module_dir('Smolder'), 'htdocs'); -} - -=head2 sql_dir - -The directory path for the raw SQL files for this install of Smolder - =cut -sub sql_dir { - my $class = shift; - return $class->get('SQLDir') || catdir(module_dir('Smolder'), 'sql'); -} - -=head2 data_dir - -The directory path for data directory for this install of Smolder - -=cut - -sub data_dir { - my $class = shift; - my $dir = $class->get('DataDir') || catdir(File::HomeDir->my_data, '.smolder'); - if (!-d $dir) { - mkdir($dir) or _broked("Can't create data directory $dir! $!"); +sub get { + my ($class, $key) = @_; + if( exists $VALUES{$key} ) { + return $VALUES{$key}; + } else { + croak "$key is not a valid Smolder config parameter!"; } - return $dir; } =head2 test_data_dir @@ -287,12 +208,4 @@ } } -sub _broked { - warn("Error found in smolder.conf: $_[0].\n"); - exit(1); -} - -# run the check ASAP, unless we're in upgrade mode -BEGIN { __PACKAGE__->check() unless ($ENV{SMOLDER_CONF_NOCHECK}) } - 1; Modified: trunk/lib/Smolder/Control.pm =================================================================== --- trunk/lib/Smolder/Control.pm 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/lib/Smolder/Control.pm 2009-04-02 13:46:30 UTC (rev 935) @@ -8,11 +8,10 @@ use CGI::Application::Plugin::JSON qw(:all); use Template::Plugin::Cycle; use CGI::Cookie; - #use CGI::Application::Plugin::DebugScreen; use Smolder; use Smolder::Util; -use Smolder::Conf qw(HostName LogFile); +use Smolder::Conf qw(HostName LogFile TemplateDir); use Smolder::DB::Developer; use Smolder::DB::Project; use File::Spec::Functions qw(catdir catfile tmpdir); @@ -325,7 +324,7 @@ my $TT_CONFIG = { TEMPLATE_OPTIONS => { COMPILE_DIR => tmpdir(), - INCLUDE_PATH => Smolder::Conf->template_dir, + INCLUDE_PATH => TemplateDir, COMPILE_EXT => '.ttc', WRAPPER => 'wrapper.tmpl', RECURSION => 1, Modified: trunk/lib/Smolder/DB/Project.pm =================================================================== --- trunk/lib/Smolder/DB/Project.pm 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/lib/Smolder/DB/Project.pm 2009-04-02 13:46:30 UTC (rev 935) @@ -3,7 +3,7 @@ use warnings; use base 'Smolder::DB'; use Smolder::DB::Developer; -use Smolder::Conf qw(ProjectFullReportsMax); +use Smolder::Conf qw(ProjectFullReportsMax DataDir); use File::Path; use File::Spec::Functions qw(catdir); use DateTime::Format::MySQL; @@ -41,7 +41,7 @@ __PACKAGE__->add_trigger( after_delete => sub { my $self = shift; - my $dir = catdir(Smolder::Conf->data_dir, 'smoke_reports', $self->id); + my $dir = catdir(DataDir, 'smoke_reports', $self->id); rmtree($dir) if (-d $dir); } ); Modified: trunk/lib/Smolder/DB/SmokeReport.pm =================================================================== --- trunk/lib/Smolder/DB/SmokeReport.pm 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/lib/Smolder/DB/SmokeReport.pm 2009-04-02 13:46:30 UTC (rev 935) @@ -2,7 +2,7 @@ use strict; use warnings; use base 'Smolder::DB'; -use Smolder::Conf; +use Smolder::Conf qw(DataDir); use Smolder::Email; use File::Spec::Functions qw(catdir catfile); use File::Path qw(mkpath rmtree); @@ -145,7 +145,7 @@ sub data_dir { my $self = shift; - my $dir = catdir(Smolder::Conf->data_dir, 'smoke_reports', $self->project->id, $self->id); + my $dir = catdir(DataDir, 'smoke_reports', $self->project->id, $self->id); # create it if it doesn't exist mkpath($dir) if (!-d $dir); Modified: trunk/lib/Smolder/DB.pm =================================================================== --- trunk/lib/Smolder/DB.pm 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/lib/Smolder/DB.pm 2009-04-02 13:46:30 UTC (rev 935) @@ -1,8 +1,8 @@ package Smolder::DB; use strict; use warnings; -use Smolder::Conf; use base 'Class::DBI::SQLite'; +use Smolder::Conf qw(SQLDir DataDir); use DBI; use Class::DBI::Plugin::RetrieveAll; use File::Spec::Functions qw(catfile); @@ -214,7 +214,7 @@ =cut sub db_file { - return catfile(Smolder::Conf->data_dir, "smolder.sqlite"); + return catfile(DataDir, "smolder.sqlite"); } =head2 run_sql_file @@ -367,11 +367,10 @@ open(FH, ">$file") or die "Could not open file '$file' for writing: $!"; close(FH) or die "Could not close file '$file': $!"; - my $sql_dir = Smolder::Conf->sql_dir; - my @files = glob("$sql_dir/*.sql"); - foreach my $file (@files) { - eval { $class->run_sql_file($file) }; - die "Couldn't load SQL file $file! $@" if $@; + my @files = glob(catfile(SQLDir, '*.sql')); + foreach my $f (@files) { + eval { $class->run_sql_file($f) }; + die "Couldn't load SQL file $f! $@" if $@; } # Set the db_version Modified: trunk/lib/Smolder/Email.pm =================================================================== --- trunk/lib/Smolder/Email.pm 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/lib/Smolder/Email.pm 2009-04-02 13:46:30 UTC (rev 935) @@ -1,5 +1,5 @@ package Smolder::Email; -use Smolder::Conf qw(HostName FromAddress SMTPHost Port); +use Smolder::Conf qw(HostName FromAddress SMTPHost Port TemplateDir); use File::Spec::Functions qw(catdir tmpdir); use Template; use MIME::Lite; @@ -22,7 +22,7 @@ our $TEMPLATE = Template->new( COMPILE_DIR => tmpdir(), - INCLUDE_PATH => Smolder::Conf->template_dir, + INCLUDE_PATH => TemplateDir, COMPILE_EXT => '.ttc', WRAPPER => 'Email/wrapper.tmpl', FILTERS => { Modified: trunk/lib/Smolder/Server.pm =================================================================== --- trunk/lib/Smolder/Server.pm 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/lib/Smolder/Server.pm 2009-04-02 13:46:30 UTC (rev 935) @@ -3,7 +3,7 @@ use warnings; use base 'CGI::Application::Server'; use File::Spec::Functions qw(catdir devnull); -use Smolder::Conf qw(Port HostName LogFile); +use Smolder::Conf qw(Port HostName LogFile HtdocsDir); use Smolder::DB; sub new { @@ -11,15 +11,14 @@ my $server = $class->SUPER::new(@_); $server->host(HostName); $server->port(Port); - my $htdocs = Smolder::Conf->htdocs_dir; $server->entry_points( { '/' => 'Smolder::Redirect', '/app' => 'Smolder::Dispatch', - '/js' => $htdocs, - '/style' => $htdocs, - '/images' => $htdocs, + '/js' => HtdocsDir, + '/style' => HtdocsDir, + '/images' => HtdocsDir, }, ); $server->{"__smolder_$_"} = $args{$_} foreach keys %args; Modified: trunk/lib/Smolder/TAPHTMLMatrix.pm =================================================================== --- trunk/lib/Smolder/TAPHTMLMatrix.pm 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/lib/Smolder/TAPHTMLMatrix.pm 2009-04-02 13:46:30 UTC (rev 935) @@ -6,14 +6,14 @@ use File::Path; use URI::file; use Template; -use Smolder::Conf; +use Smolder::Conf qw(TemplateDir); use Smolder::Control; use Template::Plugin::Cycle; our $TMPL = Template->new( COMPILE_DIR => tmpdir(), COMPILE_EXT => '.ttc', - INCLUDE_PATH => Smolder::Conf->template_dir, + INCLUDE_PATH => TemplateDir, FILTERS => { pass_fail_color => \&Smolder::Util::pass_fail_color, format_time => \&Smolder::Util::format_time, Modified: trunk/lib/Smolder/TestData.pm =================================================================== --- trunk/lib/Smolder/TestData.pm 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/lib/Smolder/TestData.pm 2009-04-02 13:46:30 UTC (rev 935) @@ -2,14 +2,12 @@ use strict; use warnings; use base 'Exporter'; -use Smolder::Conf qw(HostName Port URLPrefix); +use Smolder::Conf qw(HostName Port); use Smolder::DB; use File::Spec::Functions qw(catfile); use File::Copy qw(copy); use LWP::UserAgent; -our $config = Smolder::Conf->get_config(); - our @EXPORT_OK = qw( create_project delete_projects @@ -280,7 +278,7 @@ =cut sub base_url { - return 'http://' . HostName . ':' . Port . (URLPrefix || '') . '/app'; + return 'http://' . HostName . ':' . Port . '/app'; } =head2 db_field_value Modified: trunk/lib/Smolder/Upgrade/V1_1.pm =================================================================== --- trunk/lib/Smolder/Upgrade/V1_1.pm 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/lib/Smolder/Upgrade/V1_1.pm 2009-04-02 13:46:30 UTC (rev 935) @@ -4,7 +4,7 @@ use base 'Smolder::Upgrade'; use File::Path qw(rmtree); use File::Spec::Functions qw(catdir); -use Smolder::Conf; +use Smolder::Conf qw(DataDir); sub pre_db_upgrade { } @@ -21,10 +21,10 @@ } # remove the old HTML reports in the old format - rmtree(catdir(Smolder::Conf->data_dir, 'html_smoke_reports')); + rmtree(catdir(DataDir, 'html_smoke_reports')); # remove the old XML reports - my $report_dir = catdir(Smolder::Conf->data_dir, 'smoke_reports'); + my $report_dir = catdir(DataDir, 'smoke_reports'); rmtree($report_dir); mkdir($report_dir); } Modified: trunk/lib/Smolder/Upgrade.pm =================================================================== --- trunk/lib/Smolder/Upgrade.pm 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/lib/Smolder/Upgrade.pm 2009-04-02 13:46:30 UTC (rev 935) @@ -3,7 +3,7 @@ use strict; use File::Spec::Functions qw(catfile); use Smolder; -use Smolder::Conf; +use Smolder::Conf qw(SQLDir); use Smolder::DB; =head1 NAME @@ -126,7 +126,7 @@ # find and run the SQL file $version =~ /(\d+)\.(\d+)/; - my $file = catfile(Smolder::Conf->sql_dir, 'upgrades', "V$1_$2.sql"); + my $file = catfile(SQLDir, 'upgrades', "V$1_$2.sql"); if (-e $file) { warn " Upgrading DB with file '$file'.\n"; Smolder::DB->run_sql_file($file); Modified: trunk/t/conf.t =================================================================== --- trunk/t/conf.t 2009-04-02 01:26:25 UTC (rev 934) +++ trunk/t/conf.t 2009-04-02 13:46:30 UTC (rev 935) @@ -3,9 +3,12 @@ use Test::More; use Smolder::TestScript; -plan(tests => 4); +plan(tests => 5); use_ok('Smolder::Conf'); ok(Smolder::Conf->get('Port')); ok(Smolder::Conf->get('HostName')); -ok(!Smolder::Conf->get('SomeFakeDirective')); + +eval { Smolder::Conf->get('SomeFakeDirective') }; +ok($@); +like($@, qr/not a valid Smolder config/); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-04-02 01:26:26
|
Revision: 934 http://smolder.svn.sourceforge.net/smolder/?rev=934&view=rev Author: michael_peters Date: 2009-04-02 01:26:25 +0000 (Thu, 02 Apr 2009) Log Message: ----------- comment and tidying Modified Paths: -------------- trunk/lib/Smolder/Build.pm Modified: trunk/lib/Smolder/Build.pm =================================================================== --- trunk/lib/Smolder/Build.pm 2009-04-02 01:24:08 UTC (rev 933) +++ trunk/lib/Smolder/Build.pm 2009-04-02 01:26:25 UTC (rev 934) @@ -274,8 +274,8 @@ File::Find::find( sub { - return if /^\./; # skip special files - return if $File::Find::dir =~ /\.svn/; + return if /^\./; # skip special files + return if $File::Find::dir =~ /\.svn/; # skip svn droppings return if -d; my $name = $_; my @new_dirs = splitdir($File::Find::dir); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-04-02 01:24:18
|
Revision: 933 http://smolder.svn.sourceforge.net/smolder/?rev=933&view=rev Author: michael_peters Date: 2009-04-02 01:24:08 +0000 (Thu, 02 Apr 2009) Log Message: ----------- fix more build issues as reported by Gabor Modified Paths: -------------- trunk/Build.PL trunk/Changes trunk/bin/smolder trunk/lib/Smolder/Build.pm trunk/lib/Smolder/Server.pm Modified: trunk/Build.PL =================================================================== --- trunk/Build.PL 2009-03-31 18:39:24 UTC (rev 932) +++ trunk/Build.PL 2009-04-02 01:24:08 UTC (rev 933) @@ -5,8 +5,6 @@ use lib 'lib'; use Smolder::Build; -my $SHARE_DIR = catdir($Config{installsitelib}, 'auto', 'share', 'Smolder'); - my $builder = Smolder::Build->new( module_name => 'Smolder', license => 'perl', @@ -61,6 +59,8 @@ 'Module::Build' => 0, 'Module::Build::TAPArchive' => 0, 'IPC::Run' => 0.82, + 'WWW::Mechanize' => 0, + 'LWP::UserAgent' => 0, }, build_requires => { 'Test::WWW::Mechanize' => 1.22, @@ -74,11 +74,6 @@ 'Module::Build' => 0, 'Module::Build::TAPArchive' => 0, }, - install_path => { - templates => catdir($SHARE_DIR, 'templates'), - sql => catdir($SHARE_DIR, 'sql'), - htdocs => catdir($SHARE_DIR, 'htdocs'), - }, add_to_cleanup => ['data/*', 'logs/*', 'Smolder-*'], meta_add => { no_index => { Modified: trunk/Changes =================================================================== --- trunk/Changes 2009-03-31 18:39:24 UTC (rev 932) +++ trunk/Changes 2009-04-02 01:24:08 UTC (rev 933) @@ -1,5 +1,14 @@ Revision history for Smolder +1.34 + + IPC::Run, LWP::UserAgent and WWW::Mechanize should be listed as part of + configure_requires - G. Szabo, M. Peters + + Load IPC::Run, LWP::UserAgent and WWW::Mechanize conditionally in Build.PL + in case configure_requires is ignored - G. Szabo, M. Peters + + Run the smolder binary in blib/ instead of bin/ during tests - G. Szabo + + Install shared data into /blib/lib/auto so it goes into the right shared dir + even when using a different install_base - G. Szabo, M. Peters + 1.33 (March 30, 2009) + Tell CPAN to not index out private modules where we still want to have POD - M. Peters + Fix RT#44683 - M. Peters Modified: trunk/bin/smolder =================================================================== --- trunk/bin/smolder 2009-03-31 18:39:24 UTC (rev 932) +++ trunk/bin/smolder 2009-04-02 01:24:08 UTC (rev 933) @@ -50,4 +50,4 @@ $ENV{SMOLDER_CONF} = $conf if $conf; require Smolder::Server; -Smolder::Server->new(daemon => $daemon)->go(); +Smolder::Server->new(daemon => $daemon)->start(); Modified: trunk/lib/Smolder/Build.pm =================================================================== --- trunk/lib/Smolder/Build.pm 2009-03-31 18:39:24 UTC (rev 932) +++ trunk/lib/Smolder/Build.pm 2009-04-02 01:24:08 UTC (rev 933) @@ -5,10 +5,9 @@ use File::Temp; use Cwd qw(cwd); use File::Spec::Functions qw(catdir catfile tmpdir curdir rel2abs abs2rel splitdir); -use LWP::UserAgent; -use WWW::Mechanize; use File::Find (); use File::Copy qw(copy); +use File::Path qw(make_path); my $HOSTNAME = 'localhost.localdomain'; my $PORT = '112234'; @@ -16,6 +15,10 @@ BEGIN { eval { require IPC::Run }; die "IPC::Run needed to run Smolder build: $@" if $@; + eval { require LWP::UserAgent }; + die "LWP::UserAgent neede to run Smolder build: $@" if $@; + eval { require WWW::Mechanize }; + die "WWW::Mechanize neede to run Smolder build: $@" if $@; } =head1 NAME @@ -77,7 +80,7 @@ # start the smolder server my ($in, $out, $err); $ENV{PERL5LIB} = catdir($cwd, 'blib', 'lib'); - my $subprocess = IPC::Run::start([catfile($cwd, 'bin', 'smolder')], \$in, \$out, \$err); + my $subprocess = IPC::Run::start([catfile($cwd, 'blib', 'script', 'smolder')], \$in, \$out, \$err); my $tries = 0; warn "Waiting for Smolder to start...\n"; while (!_is_smolder_running() && $tries < 7) { @@ -263,10 +266,10 @@ my $cwd = cwd(); my $start_dir = rel2abs(catdir(curdir, $type)); my $start_dir_length = scalar splitdir($start_dir); - my $dest_dir = rel2abs(catdir(curdir, 'blib', $type)); + my $dest_dir = rel2abs(catdir(curdir, 'blib', 'lib', 'auto', 'share', 'Smolder', $type)); unless (-d $dest_dir) { - mkdir $dest_dir or die "Could not create directory $dest_dir: $!"; + make_path($dest_dir) or die "Could not create directory $dest_dir: $!"; } File::Find::find( Modified: trunk/lib/Smolder/Server.pm =================================================================== --- trunk/lib/Smolder/Server.pm 2009-03-31 18:39:24 UTC (rev 932) +++ trunk/lib/Smolder/Server.pm 2009-04-02 01:24:08 UTC (rev 933) @@ -32,7 +32,7 @@ print "$line\n$banner\n"; } -sub go { +sub start { my $self = shift; unless (-e Smolder::DB->db_file) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-31 18:39:26
|
Revision: 932 http://smolder.svn.sourceforge.net/smolder/?rev=932&view=rev Author: michael_peters Date: 2009-03-31 18:39:24 +0000 (Tue, 31 Mar 2009) Log Message: ----------- reverting some changes that were not ready to commit Modified Paths: -------------- trunk/lib/Smolder/Control/Developer/Projects.pm trunk/lib/Smolder/DB/SmokeReport.pm trunk/sql/smoke_report.sql trunk/templates/Developer/Projects/add_report.tmpl trunk/templates/Developer/Projects/smoke_report_details.tmpl trunk/templates/TAP/full_report.tmpl Property Changed: ---------------- trunk/ Property changes on: trunk ___________________________________________________________________ Modified: svn:ignore - smolder.conf data Build _build blib *.bak META.yml Smolder-* + smolder.conf data Build _build blib *.bak Smolder-* Modified: trunk/lib/Smolder/Control/Developer/Projects.pm =================================================================== --- trunk/lib/Smolder/Control/Developer/Projects.pm 2009-03-31 18:32:26 UTC (rev 931) +++ trunk/lib/Smolder/Control/Developer/Projects.pm 2009-03-31 18:39:24 UTC (rev 932) @@ -221,11 +221,10 @@ my $form = { required => [qw(report_file)], - optional => [qw(architecture platform comments tags revision)], + optional => [qw(architecture platform comments tags)], constraint_methods => { architecture => length_max(255), platform => length_max(255), - revision => length_max(255), comments => length_max(1000), report_file => file_mtype( qw( @@ -253,7 +252,6 @@ architecture => $valid->{architecture}, platform => $valid->{platform}, comments => $valid->{comments}, - revision => $valid->{revision}, ); }; Modified: trunk/lib/Smolder/DB/SmokeReport.pm =================================================================== --- trunk/lib/Smolder/DB/SmokeReport.pm 2009-03-31 18:32:26 UTC (rev 931) +++ trunk/lib/Smolder/DB/SmokeReport.pm 2009-03-31 18:39:24 UTC (rev 932) @@ -540,7 +540,7 @@ # if they weren't provided during the upload if ($meta->{extra_properties}) { foreach my $k (keys %{$meta->{extra_properties}}) { - foreach my $field qw(architecture platform comments revision) { + foreach my $field qw(architecture platform comments) { if (lc($k) eq $field && !$self->get($field)) { $self->set($field => delete $meta->{extra_properties}->{$k}); last; Modified: trunk/sql/smoke_report.sql =================================================================== --- trunk/sql/smoke_report.sql 2009-03-31 18:32:26 UTC (rev 931) +++ trunk/sql/smoke_report.sql 2009-03-31 18:39:24 UTC (rev 932) @@ -18,7 +18,6 @@ duration INTEGER DEFAULT 0, purged INTEGER DEFAULT 0, failed INTEGER DEFAULT 0, - revision TEXT DEFAULT '', CONSTRAINT 'fk_smoke_report_project' FOREIGN KEY ('project') REFERENCES 'project' ('id') ON DELETE CASCADE, CONSTRAINT 'fk_smoke_report_developer' FOREIGN KEY ('developer') REFERENCES 'developer' ('id') ON DELETE CASCADE ); Modified: trunk/templates/Developer/Projects/add_report.tmpl =================================================================== --- trunk/templates/Developer/Projects/add_report.tmpl 2009-03-31 18:32:26 UTC (rev 931) +++ trunk/templates/Developer/Projects/add_report.tmpl 2009-03-31 18:39:24 UTC (rev 932) @@ -20,9 +20,6 @@ [% IF c.dfv_msgs.err_architecture %] Smolder.show_message('warning', 'Architecture must be less than 255 characters.'); [% END %] - [% IF c.dfv_msgs.err_revision %] - Smolder.show_message('warning', 'Revision must be less than 255 characters.'); - [% END %] [% IF c.dfv_msgs.err_platform %] Smolder.show_message('warning', 'Platform must be less than 255 characters.'); [% END %] @@ -67,10 +64,6 @@ </td> </tr> <tr> - <td><label [% IF c.dfv_msgs.err_revision %]class="warn"[% END %]>Revision</label></td> - <td><input type="text" size="25" name="revision" id="revision" value="" /></td> -</tr> -<tr> <td><label class="required[% IF c.dfv_msgs.err_report_file || err_valid_file %] warn[% END %]">Smoke Report File</label></td> <td><input type="file" name="report_file" id="report_file" /></td> </tr> Modified: trunk/templates/Developer/Projects/smoke_report_details.tmpl =================================================================== --- trunk/templates/Developer/Projects/smoke_report_details.tmpl 2009-03-31 18:32:26 UTC (rev 931) +++ trunk/templates/Developer/Projects/smoke_report_details.tmpl 2009-03-31 18:39:24 UTC (rev 932) @@ -72,14 +72,6 @@ <th><span[% IF report.todo %] class="todo"[% END %]># TODO</span></th> <td><span[% IF report.todo %] class="todo"[% END %]>[% report.todo | format_number %]</span></td> </tr> - [% IF report.revision %] - <tr> - <th>Revision</th> - <td><em>[% report.revision | html %]</em></td> - <td> </td> - <td> </td> - </tr> - [% END %] [% IF report.tags.size %] <tr> <th>Tags</th> Modified: trunk/templates/TAP/full_report.tmpl =================================================================== --- trunk/templates/TAP/full_report.tmpl 2009-03-31 18:32:26 UTC (rev 931) +++ trunk/templates/TAP/full_report.tmpl 2009-03-31 18:39:24 UTC (rev 932) @@ -43,12 +43,6 @@ <td>[% report.architecture | html | html_line_break %]</td> </tr> [%- END -%] -[%- IF report.revision -%] -<tr class="[% odd_even %]"> - <th>Revision</th> - <td>[% report.revision | html %]</td> -</tr> -[%- END -%] [% FOREACH k IN extra_properties.keys.sort %] <tr class="[% odd_even %]"> <th>[% k | html %]</th> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-31 18:32:49
|
Revision: 931 http://smolder.svn.sourceforge.net/smolder/?rev=931&view=rev Author: michael_peters Date: 2009-03-31 18:32:26 +0000 (Tue, 31 Mar 2009) Log Message: ----------- adding META.yml to svn Added Paths: ----------- trunk/META.yml Added: trunk/META.yml =================================================================== --- trunk/META.yml (rev 0) +++ trunk/META.yml 2009-03-31 18:32:26 UTC (rev 931) @@ -0,0 +1,179 @@ +--- +name: Smolder +version: 1.33 +author: + - 'Michael Peters <mp...@pl...>' +abstract: Web-based Continuous Integration Smoke Server +license: perl +resources: + license: ~ +configure_requires: + IPC::Run: 0.82 + Module::Build: 0 + Module::Build::TAPArchive: 0 +requires: + CGI::Application: 4.21 + CGI::Application::Dispatch: 2.15 + CGI::Application::Plugin::JSON: 1.01 + CGI::Application::Plugin::LogDispatch: 1.02 + CGI::Application::Plugin::Stream: 2.1 + CGI::Application::Plugin::TT: 1.04 + CGI::Application::Plugin::ValidateRM: 2.3 + CGI::Application::Server: 0.06 + Class::DBI: 3 + Class::DBI::Plugin::RetrieveAll: 1.04 + Class::DBI::SQLite: 0 + Config::ApacheFormat: 0 + DBD::SQLite: 1.12 + Data::FormValidator: 4.61 + Data::FormValidator::Constraints::DateTime: 1.09 + Data::Random: 0.05 + DateTime: 0.4501 + DateTime::Format::MySQL: 0 + DateTime::Format::Strptime: 0 + Digest::MD5: 0 + Email::Valid: 0 + Exception::Class: 1.23 + File::HomeDir: 0.8 + File::MMagic: 0 + File::ShareDir: 1 + GD::Graph: 0 + GD::Graph3d: 0 + GD::Text: 0 + Getopt::Long: 0 + HTML::FillInForm: 2 + HTML::FormatText::WithLinks: 0 + HTML::TagCloud: 0.34 + IO::Scalar: 0 + IO::Zlib: 0 + JSON: 0 + MIME::Lite: 0 + Pod::Usage: 0 + TAP::Harness::Archive: 0.12 + Template::Plugin::Cycle: 0 + Template::Plugin::Number::Format: 0 + URI::Escape: 0 + URI::file: 0 + XML::Atom::SimpleFeed: 0 +build_requires: + File::Copy: 0 + File::Find: 0 + IPC::Run: 0.82 + LWP::UserAgent: 0 + Module::Build: 0 + Module::Build::TAPArchive: 0 + Test::Builder: 0.86 + Test::More: 0.86 + Test::WWW::Mechanize: 1.22 + WWW::Mechanize: 0 +provides: + Smolder: + file: lib/Smolder.pm + version: 1.33 + Smolder::AuthHandler: + file: lib/Smolder/AuthHandler.pm + Smolder::AuthInfo: + file: lib/Smolder/AuthInfo.pm + Smolder::Build: + file: lib/Smolder/Build.pm + Smolder::Conf: + file: lib/Smolder/Conf.pm + Smolder::Constraints: + file: lib/Smolder/Constraints.pm + Smolder::Control: + file: lib/Smolder/Control.pm + Smolder::Control::Admin: + file: lib/Smolder/Control/Admin.pm + Smolder::Control::Admin::Developers: + file: lib/Smolder/Control/Admin/Developers.pm + Smolder::Control::Admin::Projects: + file: lib/Smolder/Control/Admin/Projects.pm + Smolder::Control::Developer: + file: lib/Smolder/Control/Developer.pm + Smolder::Control::Developer::Graphs: + file: lib/Smolder/Control/Developer/Graphs.pm + Smolder::Control::Developer::Prefs: + file: lib/Smolder/Control/Developer/Prefs.pm + Smolder::Control::Developer::Projects: + file: lib/Smolder/Control/Developer/Projects.pm + Smolder::Control::Public: + file: lib/Smolder/Control/Public.pm + Smolder::Control::Public::Auth: + file: lib/Smolder/Control/Public/Auth.pm + Smolder::Control::Public::Graphs: + file: lib/Smolder/Control/Public/Graphs.pm + Smolder::Control::Public::Projects: + file: lib/Smolder/Control/Public/Projects.pm + Smolder::DB: + file: lib/Smolder/DB.pm + Smolder::DB::Developer: + file: lib/Smolder/DB/Developer.pm + Smolder::DB::Preference: + file: lib/Smolder/DB/Preference.pm + Smolder::DB::Project: + file: lib/Smolder/DB/Project.pm + Smolder::DB::ProjectDeveloper: + file: lib/Smolder/DB/ProjectDeveloper.pm + Smolder::DB::SmokeReport: + file: lib/Smolder/DB/SmokeReport.pm + Smolder::Dispatch: + file: lib/Smolder/Dispatch.pm + Smolder::Email: + file: lib/Smolder/Email.pm + Smolder::Manual: + file: lib/Smolder/Manual.pm + Smolder::Mech: + file: lib/Smolder/Mech.pm + Smolder::Redirect: + file: lib/Smolder/Redirect.pm + Smolder::Server: + file: lib/Smolder/Server.pm + Smolder::TAPHTMLMatrix: + file: lib/Smolder/TAPHTMLMatrix.pm + Smolder::TestData: + file: lib/Smolder/TestData.pm + Smolder::TestScript: + file: lib/Smolder/TestScript.pm + Smolder::Upgrade: + file: lib/Smolder/Upgrade.pm + Smolder::Upgrade::V0_1: + file: lib/Smolder/Upgrade/V0_1.pm + Smolder::Upgrade::V0_3: + file: lib/Smolder/Upgrade/V0_3.pm + Smolder::Upgrade::V1_1: + file: lib/Smolder/Upgrade/V1_1.pm + Smolder::Upgrade::V1_21: + file: lib/Smolder/Upgrade/V1_21.pm + Smolder::Upgrade::V1_24: + file: lib/Smolder/Upgrade/V1_24.pm + Smolder::Upgrade::V1_30: + file: lib/Smolder/Upgrade/V1_30.pm + Smolder::Util: + file: lib/Smolder/Util.pm +generated_by: Module::Build version 0.32 +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.2.html + version: 1.2 +no_index: + directory: + - Smolder/Control + - Smolder/DB + - Smolder/Upgrade + file: + - Smolder/AuthHandler.pm + - Smolder/AuthInfo.pm + - Smolder/Build.pm + - Smolder/Conf.pm + - Smolder/Constraints.pm + - Smolder/Control.pm + - Smolder/DB.pm + - Smolder/Dispatch.pm + - Smolder/Email.pm + - Smolder/Mech.pm + - Smolder/Redirect.pm + - Smolder/Server.pm + - Smolder/TAPHTMLMatrix.pm + - Smolder/TestData.pm + - Smolder/TestScript.pm + - Smolder/Upgrade.pm + - Smolder/Util.pm This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-31 18:21:53
|
Revision: 930 http://smolder.svn.sourceforge.net/smolder/?rev=930&view=rev Author: michael_peters Date: 2009-03-31 18:21:46 +0000 (Tue, 31 Mar 2009) Log Message: ----------- load IPC::Run conditionally in case configure_requires isnt respected Modified Paths: -------------- trunk/lib/Smolder/Build.pm Modified: trunk/lib/Smolder/Build.pm =================================================================== --- trunk/lib/Smolder/Build.pm 2009-03-31 18:18:16 UTC (rev 929) +++ trunk/lib/Smolder/Build.pm 2009-03-31 18:21:46 UTC (rev 930) @@ -5,7 +5,6 @@ use File::Temp; use Cwd qw(cwd); use File::Spec::Functions qw(catdir catfile tmpdir curdir rel2abs abs2rel splitdir); -use IPC::Run qw(start finish pump); use LWP::UserAgent; use WWW::Mechanize; use File::Find (); @@ -14,6 +13,11 @@ my $HOSTNAME = 'localhost.localdomain'; my $PORT = '112234'; +BEGIN { + eval { require IPC::Run }; + die "IPC::Run needed to run Smolder build: $@" if $@; +} + =head1 NAME Smolder::Build @@ -73,7 +77,7 @@ # start the smolder server my ($in, $out, $err); $ENV{PERL5LIB} = catdir($cwd, 'blib', 'lib'); - my $subprocess = start([catfile($cwd, 'bin', 'smolder')], \$in, \$out, \$err); + my $subprocess = IPC::Run::start([catfile($cwd, 'bin', 'smolder')], \$in, \$out, \$err); my $tries = 0; warn "Waiting for Smolder to start...\n"; while (!_is_smolder_running() && $tries < 7) { @@ -94,7 +98,6 @@ $self->$method(@_); }; - # finish() seems to hang, so just kill it $subprocess->kill_kill; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-31 18:18:20
|
Revision: 929 http://smolder.svn.sourceforge.net/smolder/?rev=929&view=rev Author: michael_peters Date: 2009-03-31 18:18:16 +0000 (Tue, 31 Mar 2009) Log Message: ----------- add IPC::Run as part of configure_requires Modified Paths: -------------- trunk/Build.PL trunk/lib/Smolder/Control/Developer/Projects.pm trunk/lib/Smolder/DB/SmokeReport.pm trunk/sql/smoke_report.sql trunk/templates/Developer/Projects/add_report.tmpl trunk/templates/Developer/Projects/smoke_report_details.tmpl trunk/templates/TAP/full_report.tmpl Modified: trunk/Build.PL =================================================================== --- trunk/Build.PL 2009-03-30 21:36:05 UTC (rev 928) +++ trunk/Build.PL 2009-03-31 18:18:16 UTC (rev 929) @@ -60,14 +60,15 @@ configure_requires => { 'Module::Build' => 0, 'Module::Build::TAPArchive' => 0, + 'IPC::Run' => 0.82, }, build_requires => { 'Test::WWW::Mechanize' => 1.22, 'Test::Builder' => 0.86, 'Test::More' => 0.86, 'LWP::UserAgent' => 0, + 'IPC::Run' => 0.82, 'WWW::Mechanize' => 0, - 'IPC::Run' => 0.82, 'File::Find' => 0, 'File::Copy' => 0, 'Module::Build' => 0, Modified: trunk/lib/Smolder/Control/Developer/Projects.pm =================================================================== --- trunk/lib/Smolder/Control/Developer/Projects.pm 2009-03-30 21:36:05 UTC (rev 928) +++ trunk/lib/Smolder/Control/Developer/Projects.pm 2009-03-31 18:18:16 UTC (rev 929) @@ -221,10 +221,11 @@ my $form = { required => [qw(report_file)], - optional => [qw(architecture platform comments tags)], + optional => [qw(architecture platform comments tags revision)], constraint_methods => { architecture => length_max(255), platform => length_max(255), + revision => length_max(255), comments => length_max(1000), report_file => file_mtype( qw( @@ -252,6 +253,7 @@ architecture => $valid->{architecture}, platform => $valid->{platform}, comments => $valid->{comments}, + revision => $valid->{revision}, ); }; Modified: trunk/lib/Smolder/DB/SmokeReport.pm =================================================================== --- trunk/lib/Smolder/DB/SmokeReport.pm 2009-03-30 21:36:05 UTC (rev 928) +++ trunk/lib/Smolder/DB/SmokeReport.pm 2009-03-31 18:18:16 UTC (rev 929) @@ -540,7 +540,7 @@ # if they weren't provided during the upload if ($meta->{extra_properties}) { foreach my $k (keys %{$meta->{extra_properties}}) { - foreach my $field qw(architecture platform comments) { + foreach my $field qw(architecture platform comments revision) { if (lc($k) eq $field && !$self->get($field)) { $self->set($field => delete $meta->{extra_properties}->{$k}); last; Modified: trunk/sql/smoke_report.sql =================================================================== --- trunk/sql/smoke_report.sql 2009-03-30 21:36:05 UTC (rev 928) +++ trunk/sql/smoke_report.sql 2009-03-31 18:18:16 UTC (rev 929) @@ -18,6 +18,7 @@ duration INTEGER DEFAULT 0, purged INTEGER DEFAULT 0, failed INTEGER DEFAULT 0, + revision TEXT DEFAULT '', CONSTRAINT 'fk_smoke_report_project' FOREIGN KEY ('project') REFERENCES 'project' ('id') ON DELETE CASCADE, CONSTRAINT 'fk_smoke_report_developer' FOREIGN KEY ('developer') REFERENCES 'developer' ('id') ON DELETE CASCADE ); Modified: trunk/templates/Developer/Projects/add_report.tmpl =================================================================== --- trunk/templates/Developer/Projects/add_report.tmpl 2009-03-30 21:36:05 UTC (rev 928) +++ trunk/templates/Developer/Projects/add_report.tmpl 2009-03-31 18:18:16 UTC (rev 929) @@ -20,6 +20,9 @@ [% IF c.dfv_msgs.err_architecture %] Smolder.show_message('warning', 'Architecture must be less than 255 characters.'); [% END %] + [% IF c.dfv_msgs.err_revision %] + Smolder.show_message('warning', 'Revision must be less than 255 characters.'); + [% END %] [% IF c.dfv_msgs.err_platform %] Smolder.show_message('warning', 'Platform must be less than 255 characters.'); [% END %] @@ -64,6 +67,10 @@ </td> </tr> <tr> + <td><label [% IF c.dfv_msgs.err_revision %]class="warn"[% END %]>Revision</label></td> + <td><input type="text" size="25" name="revision" id="revision" value="" /></td> +</tr> +<tr> <td><label class="required[% IF c.dfv_msgs.err_report_file || err_valid_file %] warn[% END %]">Smoke Report File</label></td> <td><input type="file" name="report_file" id="report_file" /></td> </tr> Modified: trunk/templates/Developer/Projects/smoke_report_details.tmpl =================================================================== --- trunk/templates/Developer/Projects/smoke_report_details.tmpl 2009-03-30 21:36:05 UTC (rev 928) +++ trunk/templates/Developer/Projects/smoke_report_details.tmpl 2009-03-31 18:18:16 UTC (rev 929) @@ -72,6 +72,14 @@ <th><span[% IF report.todo %] class="todo"[% END %]># TODO</span></th> <td><span[% IF report.todo %] class="todo"[% END %]>[% report.todo | format_number %]</span></td> </tr> + [% IF report.revision %] + <tr> + <th>Revision</th> + <td><em>[% report.revision | html %]</em></td> + <td> </td> + <td> </td> + </tr> + [% END %] [% IF report.tags.size %] <tr> <th>Tags</th> Modified: trunk/templates/TAP/full_report.tmpl =================================================================== --- trunk/templates/TAP/full_report.tmpl 2009-03-30 21:36:05 UTC (rev 928) +++ trunk/templates/TAP/full_report.tmpl 2009-03-31 18:18:16 UTC (rev 929) @@ -43,6 +43,12 @@ <td>[% report.architecture | html | html_line_break %]</td> </tr> [%- END -%] +[%- IF report.revision -%] +<tr class="[% odd_even %]"> + <th>Revision</th> + <td>[% report.revision | html %]</td> +</tr> +[%- END -%] [% FOREACH k IN extra_properties.keys.sort %] <tr class="[% odd_even %]"> <th>[% k | html %]</th> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 21:36:08
|
Revision: 928 http://smolder.svn.sourceforge.net/smolder/?rev=928&view=rev Author: michael_peters Date: 2009-03-30 21:36:05 +0000 (Mon, 30 Mar 2009) Log Message: ----------- updating changes Modified Paths: -------------- trunk/Changes Modified: trunk/Changes =================================================================== --- trunk/Changes 2009-03-30 21:32:06 UTC (rev 927) +++ trunk/Changes 2009-03-30 21:36:05 UTC (rev 928) @@ -1,7 +1,9 @@ Revision history for Smolder -1.33 () +1.33 (March 30, 2009) + Tell CPAN to not index out private modules where we still want to have POD - M. Peters + + Fix RT#44683 - M. Peters + + Require CGI::Application::Plugin::Stream 2.10 to fix download bug - M. Peters 1.32 (March 30, 2009) + Fix even more build, test, install issues This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 21:32:09
|
Revision: 927 http://smolder.svn.sourceforge.net/smolder/?rev=927&view=rev Author: michael_peters Date: 2009-03-30 21:32:06 +0000 (Mon, 30 Mar 2009) Log Message: ----------- adding more info about bugs, etc to main Smolder.pm POD Modified Paths: -------------- trunk/lib/Smolder.pm Modified: trunk/lib/Smolder.pm =================================================================== --- trunk/lib/Smolder.pm 2009-03-30 21:14:55 UTC (rev 926) +++ trunk/lib/Smolder.pm 2009-03-30 21:32:06 UTC (rev 927) @@ -21,3 +21,35 @@ If you have a better idea for what Smolder is and how I can describe it, I'm all ears :) Please see L<Smolder::Manual> for how to use it. + +=head2 SUPPORT + +=over + +=item * Bugs and Requests + +L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=Smolder> + +=item * AnnoCPAN: Annotated CPAN documentation + +L<http://annocpan.org/dist/Smolder> + +=item * CPAN Ratings + +L<http://cpanratings.perl.org/d/Smolder> + +=item * Search CPAN + +L<http://search.cpan.org/dist/Smolder/> + +=back + +=head1 COPYRIGHT & LICENSE + +Copyright 2009 Michael Peters, all rights reserved. + +This program is free software; you can redistribute it and/or modify it +under the same terms as Perl itself. + +=cut + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 21:14:59
|
Revision: 926 http://smolder.svn.sourceforge.net/smolder/?rev=926&view=rev Author: michael_peters Date: 2009-03-30 21:14:55 +0000 (Mon, 30 Mar 2009) Log Message: ----------- require the latest version of CGI::Application::Plugin::Stream since it fixes a bug that causes a test failure for us Modified Paths: -------------- trunk/Build.PL Modified: trunk/Build.PL =================================================================== --- trunk/Build.PL 2009-03-30 21:12:33 UTC (rev 925) +++ trunk/Build.PL 2009-03-30 21:14:55 UTC (rev 926) @@ -18,7 +18,7 @@ 'CGI::Application::Server' => 0.060, 'CGI::Application::Plugin::JSON' => 1.01, 'CGI::Application::Plugin::LogDispatch' => 1.02, - 'CGI::Application::Plugin::Stream' => 2.06, + 'CGI::Application::Plugin::Stream' => 2.10, 'CGI::Application::Plugin::TT' => 1.04, 'CGI::Application::Plugin::ValidateRM' => 2.3, 'Class::DBI' => 3.0, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 21:12:35
|
Revision: 925 http://smolder.svn.sourceforge.net/smolder/?rev=925&view=rev Author: michael_peters Date: 2009-03-30 21:12:33 +0000 (Mon, 30 Mar 2009) Log Message: ----------- adding more things to TODO Modified Paths: -------------- trunk/TODO Modified: trunk/TODO =================================================================== --- trunk/TODO 2009-03-30 21:05:35 UTC (rev 924) +++ trunk/TODO 2009-03-30 21:12:33 UTC (rev 925) @@ -13,11 +13,16 @@ + adding sql tables + adding code ++ Wider UI + + SCM revision # on the main summary page of a test run + Change graphs to be able to handle more data without looking crappy + Maybe something client side (JS, Canvas, Google graphs)? + + add percentage based graphs ++ Custom dashboard of boxes, picking tags & showing the status for the last report of that tag + + Handle skip-all better in the plan. + A skip-all plan will look like this: 1..0 # Skip Can't reach http://google.com This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 21:05:49
|
Revision: 924 http://smolder.svn.sourceforge.net/smolder/?rev=924&view=rev Author: michael_peters Date: 2009-03-30 21:05:35 +0000 (Mon, 30 Mar 2009) Log Message: ----------- changing it to SMOLDER_TEST_HARNESS_ACTIVE so its more inline with HARNESS_ACTIVE Modified Paths: -------------- trunk/lib/Smolder/Build.pm trunk/lib/Smolder/Email.pm Modified: trunk/lib/Smolder/Build.pm =================================================================== --- trunk/lib/Smolder/Build.pm 2009-03-30 20:45:12 UTC (rev 923) +++ trunk/lib/Smolder/Build.pm 2009-03-30 21:05:35 UTC (rev 924) @@ -63,8 +63,8 @@ my $tmp_conf = File::Temp->new(template => 'smolder-XXXXXX', suffix => '.conf', dir => tmpdir); print $tmp_conf $conf; close $tmp_conf; - $ENV{SMOLDER_CONF} = $tmp_conf->filename; - $ENV{SMOLDER_TEST_HARNESS_ARCHIVE} = 1; + $ENV{SMOLDER_CONF} = $tmp_conf->filename; + $ENV{SMOLDER_TEST_HARNESS_ACTIVE} = 1; # make sure we create a DB first. Smolder will do this when it starts, # but we still want to run some tests even if we fail to start smolder Modified: trunk/lib/Smolder/Email.pm =================================================================== --- trunk/lib/Smolder/Email.pm 2009-03-30 20:45:12 UTC (rev 923) +++ trunk/lib/Smolder/Email.pm 2009-03-30 21:05:35 UTC (rev 924) @@ -108,7 +108,7 @@ ); # set the SMTP host - unless ($ENV{SMOLDER_TEST_HARNESS_ARCHIVE}) { + unless ($ENV{SMOLDER_TEST_HARNESS_ACTIVE}) { MIME::Lite->send('smtp', SMTPHost(), Timeout => 60) if SMTPHost(); eval { $mime->send() }; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 20:45:14
|
Revision: 923 http://smolder.svn.sourceforge.net/smolder/?rev=923&view=rev Author: michael_peters Date: 2009-03-30 20:45:12 +0000 (Mon, 30 Mar 2009) Log Message: ----------- removing this since it was just for my debuggin Modified Paths: -------------- trunk/lib/Smolder/Build.pm Modified: trunk/lib/Smolder/Build.pm =================================================================== --- trunk/lib/Smolder/Build.pm 2009-03-30 20:43:41 UTC (rev 922) +++ trunk/lib/Smolder/Build.pm 2009-03-30 20:45:12 UTC (rev 923) @@ -60,8 +60,6 @@ . "DataDir '" . $tmp_dir->dirname . "'\n"; -$conf .= "\nLogFile /home/mpeters/development/smolder/logs/smolder.log\n"; - my $tmp_conf = File::Temp->new(template => 'smolder-XXXXXX', suffix => '.conf', dir => tmpdir); print $tmp_conf $conf; close $tmp_conf; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 20:43:55
|
Revision: 922 http://smolder.svn.sourceforge.net/smolder/?rev=922&view=rev Author: michael_peters Date: 2009-03-30 20:43:41 +0000 (Mon, 30 Mar 2009) Log Message: ----------- not sure how, but somehow this one lost its options Modified Paths: -------------- trunk/lib/Smolder/Server.pm Modified: trunk/lib/Smolder/Server.pm =================================================================== --- trunk/lib/Smolder/Server.pm 2009-03-30 15:13:14 UTC (rev 921) +++ trunk/lib/Smolder/Server.pm 2009-03-30 20:43:41 UTC (rev 922) @@ -7,7 +7,7 @@ use Smolder::DB; sub new { - my $class = shift; + my ($class, %args) = @_; my $server = $class->SUPER::new(@_); $server->host(HostName); $server->port(Port); @@ -17,14 +17,12 @@ { '/' => 'Smolder::Redirect', '/app' => 'Smolder::Dispatch', - - #'/static' => $htdocs", # need to get this working '/js' => $htdocs, '/style' => $htdocs, '/images' => $htdocs, }, ); - + $server->{"__smolder_$_"} = $args{$_} foreach keys %args; return $server; } @@ -72,9 +70,11 @@ exit(1); } - return $self->run(); - - # return $self->background(); + if( $self->{__smolder_daemon} ) { + return $self->background(); + } else { + return $self->run(); + } } 1; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 15:13:19
|
Revision: 921 http://smolder.svn.sourceforge.net/smolder/?rev=921&view=rev Author: michael_peters Date: 2009-03-30 15:13:14 +0000 (Mon, 30 Mar 2009) Log Message: ----------- bumping up in version # and gave it a better 1-line description Modified Paths: -------------- trunk/Changes trunk/lib/Smolder.pm Modified: trunk/Changes =================================================================== --- trunk/Changes 2009-03-30 15:08:18 UTC (rev 920) +++ trunk/Changes 2009-03-30 15:13:14 UTC (rev 921) @@ -1,5 +1,8 @@ Revision history for Smolder +1.33 () + + Tell CPAN to not index out private modules where we still want to have POD - M. Peters + 1.32 (March 30, 2009) + Fix even more build, test, install issues + Fix regression where public projects that didn't allow anonymous reports actually would. Modified: trunk/lib/Smolder.pm =================================================================== --- trunk/lib/Smolder.pm 2009-03-30 15:08:18 UTC (rev 920) +++ trunk/lib/Smolder.pm 2009-03-30 15:13:14 UTC (rev 921) @@ -1,7 +1,6 @@ package Smolder; -use File::Spec::Functions qw(catdir); -our $VERSION = '1.32'; +our $VERSION = '1.33'; 1; @@ -9,7 +8,7 @@ =head1 NAME -Smolder - Web-based smoke test aggregator +Smolder - Web-based Continuous Integration Smoke Server =head1 SYNOPSIS This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 15:08:28
|
Revision: 920 http://smolder.svn.sourceforge.net/smolder/?rev=920&view=rev Author: michael_peters Date: 2009-03-30 15:08:18 +0000 (Mon, 30 Mar 2009) Log Message: ----------- tell CPAN to not index all of our internal modules Modified Paths: -------------- trunk/Build.PL Modified: trunk/Build.PL =================================================================== --- trunk/Build.PL 2009-03-30 15:04:22 UTC (rev 919) +++ trunk/Build.PL 2009-03-30 15:08:18 UTC (rev 920) @@ -79,6 +79,34 @@ htdocs => catdir($SHARE_DIR, 'htdocs'), }, add_to_cleanup => ['data/*', 'logs/*', 'Smolder-*'], + meta_add => { + no_index => { + directory => [qw( + Smolder/Control + Smolder/DB + Smolder/Upgrade + )], + file => [qw( + Smolder/AuthHandler.pm + Smolder/AuthInfo.pm + Smolder/Build.pm + Smolder/Conf.pm + Smolder/Constraints.pm + Smolder/Control.pm + Smolder/DB.pm + Smolder/Dispatch.pm + Smolder/Email.pm + Smolder/Mech.pm + Smolder/Redirect.pm + Smolder/Server.pm + Smolder/TAPHTMLMatrix.pm + Smolder/TestData.pm + Smolder/TestScript.pm + Smolder/Upgrade.pm + Smolder/Util.pm + )], + }, + }, ); $builder->add_build_element('templates'); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 15:04:27
|
Revision: 919 http://smolder.svn.sourceforge.net/smolder/?rev=919&view=rev Author: michael_peters Date: 2009-03-30 15:04:22 +0000 (Mon, 30 Mar 2009) Log Message: ----------- removing the old unused data dir Removed Paths: ------------- trunk/lib/Smolder/Data/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 14:08:21
|
Revision: 918 http://smolder.svn.sourceforge.net/smolder/?rev=918&view=rev Author: michael_peters Date: 2009-03-30 14:08:16 +0000 (Mon, 30 Mar 2009) Log Message: ----------- make sure PERL5LIB is set before running the smolder server; also eval the test run so that when it dies we can still clean up our smolder server Modified Paths: -------------- trunk/lib/Smolder/Build.pm Modified: trunk/lib/Smolder/Build.pm =================================================================== --- trunk/lib/Smolder/Build.pm 2009-03-30 14:05:13 UTC (rev 917) +++ trunk/lib/Smolder/Build.pm 2009-03-30 14:08:16 UTC (rev 918) @@ -60,6 +60,8 @@ . "DataDir '" . $tmp_dir->dirname . "'\n"; +$conf .= "\nLogFile /home/mpeters/development/smolder/logs/smolder.log\n"; + my $tmp_conf = File::Temp->new(template => 'smolder-XXXXXX', suffix => '.conf', dir => tmpdir); print $tmp_conf $conf; close $tmp_conf; @@ -72,7 +74,8 @@ # start the smolder server my ($in, $out, $err); - my $subprocess = start(["$cwd/bin/smolder"], \$in, \$out, \$err); + $ENV{PERL5LIB} = catdir($cwd, 'blib', 'lib'); + my $subprocess = start([catfile($cwd, 'bin', 'smolder')], \$in, \$out, \$err); my $tries = 0; warn "Waiting for Smolder to start...\n"; while (!_is_smolder_running() && $tries < 7) { @@ -81,7 +84,7 @@ } my $method = "SUPER::ACTION_$action"; - { + eval { # make sure depends_on('code') doesn't get run since we've already taken care of it local *Module::Build::TAPArchive::depends_on = sub { @@ -91,7 +94,7 @@ } }; $self->$method(@_); - } + }; # finish() seems to hang, so just kill it $subprocess->kill_kill; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 14:05:18
|
Revision: 917 http://smolder.svn.sourceforge.net/smolder/?rev=917&view=rev Author: michael_peters Date: 2009-03-30 14:05:13 +0000 (Mon, 30 Mar 2009) Log Message: ----------- had my logic wrong on this one, so fix it to allow anon on public projects that allow it, but non where else Modified Paths: -------------- trunk/lib/Smolder/Control/Developer/Projects.pm Modified: trunk/lib/Smolder/Control/Developer/Projects.pm =================================================================== --- trunk/lib/Smolder/Control/Developer/Projects.pm 2009-03-30 12:06:22 UTC (rev 916) +++ trunk/lib/Smolder/Control/Developer/Projects.pm 2009-03-30 14:05:13 UTC (rev 917) @@ -159,9 +159,9 @@ # make sure ths developer is a member of this project, or it's a public project # that allows anonymous uploads if(!$project->has_developer($self->developer)) { - unless($self->public && $project->allow_anon) { + if( $project->public && !$project->allow_anon ) { return $self->error_message('Project does not allow anonymous reports'); - } else { + } elsif(!$project->public ) { return $self->error_message('Unauthorized for this project'); } } @@ -209,10 +209,16 @@ # we need to be logged in to use this... return $self->_goto_login if !$self->public && $self->developer->guest; - # make sure ths developer is a member of this project - unless ($project->public || $project->has_developer($self->developer)) { - return $self->error_message('Unauthorized for this project'); + # make sure ths developer is a member of this project, or it's a public project + # that allows anonymous uploads + if(!$project->has_developer($self->developer)) { + if( $project->public && !$project->allow_anon ) { + return $self->error_message('Project does not allow anonymous reports'); + } elsif(!$project->public ) { + return $self->error_message('Unauthorized for this project'); + } } + my $form = { required => [qw(report_file)], optional => [qw(architecture platform comments tags)], @@ -225,10 +231,8 @@ application/x-gzip application/x-gtar application/x-tar - application/zip application/x-zip multipart/x-gzip - multipart/x-zip ) ), tags => smoke_report_tags(), This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 12:06:31
|
Revision: 916 http://smolder.svn.sourceforge.net/smolder/?rev=916&view=rev Author: michael_peters Date: 2009-03-30 12:06:22 +0000 (Mon, 30 Mar 2009) Log Message: ----------- Fix regression where public projects that didnt allow anonymous reports actually would Modified Paths: -------------- trunk/Changes trunk/lib/Smolder/Control/Developer/Projects.pm trunk/lib/Smolder.pm Modified: trunk/Changes =================================================================== --- trunk/Changes 2009-03-30 12:01:34 UTC (rev 915) +++ trunk/Changes 2009-03-30 12:06:22 UTC (rev 916) @@ -1,5 +1,9 @@ Revision history for Smolder +1.32 (March 30, 2009) + + Fix even more build, test, install issues + + Fix regression where public projects that didn't allow anonymous reports actually would. + 1.31 (March 30, 2009) + Fixing some minor Build.PL issues Modified: trunk/lib/Smolder/Control/Developer/Projects.pm =================================================================== --- trunk/lib/Smolder/Control/Developer/Projects.pm 2009-03-30 12:01:34 UTC (rev 915) +++ trunk/lib/Smolder/Control/Developer/Projects.pm 2009-03-30 12:06:22 UTC (rev 916) @@ -156,9 +156,14 @@ return $self->error_message('Project does not exist') unless $project; - # make sure ths developer is a member of this project - unless ($project->public || $project->has_developer($self->developer)) { - return $self->error_message('Unauthorized for this project'); + # make sure ths developer is a member of this project, or it's a public project + # that allows anonymous uploads + if(!$project->has_developer($self->developer)) { + unless($self->public && $project->allow_anon) { + return $self->error_message('Project does not allow anonymous reports'); + } else { + return $self->error_message('Unauthorized for this project'); + } } $tt_params->{project} = $project; Modified: trunk/lib/Smolder.pm =================================================================== --- trunk/lib/Smolder.pm 2009-03-30 12:01:34 UTC (rev 915) +++ trunk/lib/Smolder.pm 2009-03-30 12:06:22 UTC (rev 916) @@ -1,7 +1,7 @@ package Smolder; use File::Spec::Functions qw(catdir); -our $VERSION = '1.31'; +our $VERSION = '1.32'; 1; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 12:01:43
|
Revision: 915 http://smolder.svn.sourceforge.net/smolder/?rev=915&view=rev Author: michael_peters Date: 2009-03-30 12:01:34 +0000 (Mon, 30 Mar 2009) Log Message: ----------- list another required module that I previously missed Modified Paths: -------------- trunk/Build.PL Modified: trunk/Build.PL =================================================================== --- trunk/Build.PL 2009-03-30 12:00:19 UTC (rev 914) +++ trunk/Build.PL 2009-03-30 12:01:34 UTC (rev 915) @@ -52,6 +52,7 @@ 'Pod::Usage' => 0, 'TAP::Harness::Archive' => 0.12, 'Template::Plugin::Cycle' => 0, + 'Template::Plugin::Number::Format' => 0, 'URI::Escape' => 0, 'URI::file' => 0, 'XML::Atom::SimpleFeed' => 0, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 12:00:28
|
Revision: 914 http://smolder.svn.sourceforge.net/smolder/?rev=914&view=rev Author: michael_peters Date: 2009-03-30 12:00:19 +0000 (Mon, 30 Mar 2009) Log Message: ----------- these are not needed Modified Paths: -------------- trunk/bin/smolder_smoke_signal Modified: trunk/bin/smolder_smoke_signal =================================================================== --- trunk/bin/smolder_smoke_signal 2009-03-30 11:59:25 UTC (rev 913) +++ trunk/bin/smolder_smoke_signal 2009-03-30 12:00:19 UTC (rev 914) @@ -1,11 +1,8 @@ #!/usr/bin/perl - use strict; use warnings; use Getopt::Long; use Pod::Usage; -use File::Spec::Functions qw(catdir catfile splitdir); -use File::Basename; BEGIN { eval { require WWW::Mechanize }; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mic...@us...> - 2009-03-30 11:59:30
|
Revision: 913 http://smolder.svn.sourceforge.net/smolder/?rev=913&view=rev Author: michael_peters Date: 2009-03-30 11:59:25 +0000 (Mon, 30 Mar 2009) Log Message: ----------- remove Makefile.PL Modified Paths: -------------- trunk/MANIFEST Modified: trunk/MANIFEST =================================================================== --- trunk/MANIFEST 2009-03-30 11:54:50 UTC (rev 912) +++ trunk/MANIFEST 2009-03-30 11:59:25 UTC (rev 913) @@ -181,5 +181,4 @@ templates/TAP/individual_test.tmpl templates/wrapper.tmpl TODO -Makefile.PL META.yml This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |