Hello community, here is the log from the commit of package clusterssh for openSUSE:Factory checked in at 2020-05-19 14:46:29 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/clusterssh (Old) and /work/SRC/openSUSE:Factory/.clusterssh.new.2738 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "clusterssh" Tue May 19 14:46:29 2020 rev:12 rq:806812 version:4.15 Changes: -------- --- /work/SRC/openSUSE:Factory/clusterssh/clusterssh.changes 2019-08-24 18:48:52.509742998 +0200 +++ /work/SRC/openSUSE:Factory/.clusterssh.new.2738/clusterssh.changes 2020-05-19 14:46:31.763819731 +0200 @@ -1,0 +2,10 @@ +Mon May 18 08:08:13 UTC 2020 - Michael Ströder <[email protected]> + +- Update to new upstream release v4.15 + * Include all utilies within each man page + * Add in 'command_pre' and 'command_post' configuration options + * Fix 'Add Host' menu error finding 'resolved_names' + * Ensure lib path is added to range tests to find the libraries + * Mark permission test as TODO as it appears to be inconsistent + +------------------------------------------------------------------- Old: ---- v4.14.tar.gz New: ---- v4.15.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ clusterssh.spec ++++++ --- /var/tmp/diff_new_pack.1x2xmv/_old 2020-05-19 14:46:33.523823492 +0200 +++ /var/tmp/diff_new_pack.1x2xmv/_new 2020-05-19 14:46:33.547823543 +0200 @@ -17,8 +17,8 @@ Name: clusterssh -%define dullver 4.14 -Version: 4.14 +%define dullver 4.15 +Version: 4.15 Release: 0 Summary: Multiplex SSH sessions onto many hosts using multiple terminals License: GPL-1.0-or-later OR Artistic-1.0 ++++++ v4.14.tar.gz -> v4.15.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/clusterssh-4.14/Changes new/clusterssh-4.15/Changes --- old/clusterssh-4.14/Changes 2019-08-21 22:15:44.000000000 +0200 +++ new/clusterssh-4.15/Changes 2020-05-18 09:22:32.000000000 +0200 @@ -1,5 +1,12 @@ Revision history for {{$dist->name}} +4.15 2020-05-18 Duncan Ferguson <[email protected]> +- Include all utilies within each man page +- Add in 'command_pre' and 'command_post' configuration options +- Fix 'Add Host' menu error finding 'resolved_names' +- Ensure lib path is added to range tests to find the libraries +- Mark permission test as TODO as it appears to be inconsistent + 4.14 2019-08-21 Duncan Ferguson <[email protected]> - Include README within the repository, not just created tar.gz files - Add 'autoquit' setting to 'File' menu (Github issue #114) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/clusterssh-4.14/README new/clusterssh-4.15/README --- old/clusterssh-4.14/README 2019-08-21 22:15:44.000000000 +0200 +++ new/clusterssh-4.15/README 2020-05-18 09:22:32.000000000 +0200 @@ -2,7 +2,7 @@ cssh - Cluster administration tool VERSION - This documentation is for version: 4.14 + This documentation is for version: 4.15 SYNOPSIS cssh [-a '<command>'] [-K <seconds>] [-q] [-c '<filename>'] [-x <cols>] @@ -12,6 +12,14 @@ [-t '<STRING>'] [-g] [-T '<title>'] [-u] [-?] [-A] [-l '<username>'] [-v] +RELATED + Also see the individual man pages for each of these utilities + + ccon - Use 'console' as the communication method + crsh - Use 'rsh' as the communication method + csftp - Use 'sftp' as the communication method + ctel - Use 'telnet' as the communication method + DESCRIPTION The command opens an administration console and an xterm to all specified hosts. Any text typed into the administration console is @@ -338,6 +346,21 @@ Enable or disable alternative algorithm for calculating terminal positioning. + command_pre = + command_post = + Add extra commands around the communication method. For example: + + command_pre= . $HOME/virtualenvs/default/bin/active ; + command_post= | ct + + would allow for using Python virtual envronments and then piping + all shell output through "chromaterm" for syntax highlighting. + Note: you must use appropriate command separators/terminators to + keep the meaning of the command pipline (such as ";" and "|" + between commands). + + These are not put through macro parsing. + comms = ssh Sets the default communication method (initially taken from the name of the program, but can be overridden here). diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/clusterssh-4.14/lib/App/ClusterSSH/Config.pm new/clusterssh-4.15/lib/App/ClusterSSH/Config.pm --- old/clusterssh-4.14/lib/App/ClusterSSH/Config.pm 2019-08-21 22:15:44.000000000 +0200 +++ new/clusterssh-4.15/lib/App/ClusterSSH/Config.pm 2020-05-18 09:22:32.000000000 +0200 @@ -98,6 +98,8 @@ history_height => 10, command => q{}, + command_pre => q{}, + command_post => q{}, hide_menu => 0, max_host_menu_items => 30, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/clusterssh-4.14/lib/App/ClusterSSH/Getopt.pm new/clusterssh-4.15/lib/App/ClusterSSH/Getopt.pm --- old/clusterssh-4.14/lib/App/ClusterSSH/Getopt.pm 2019-08-21 22:15:44.000000000 +0200 +++ new/clusterssh-4.15/lib/App/ClusterSSH/Getopt.pm 2020-05-18 09:22:32.000000000 +0200 @@ -446,6 +446,28 @@ } print $/, $/; + output '=head1 ', $self->loc('RELATED'); + output $self->loc( + q{Also see the individual man pages for each of these utilities} ); + + my %utils = ( + ctel => 'telnet', + cssh => 'ssh', + crsh => 'rsh', + csftp => 'sftp', + ccon => 'console', + ); + + output '=over'; + + for my $util (sort grep { !/$Script/ } keys %utils) { + output "=item $util - ".$self->loc( + q{Use '[_1]' as the communication method}, $utils{$util} + ); + } + + output '=back'; + output '=head1 ', $self->loc('DESCRIPTION'); output $self->loc( q{The command opens an administration console and an xterm to all specified hosts. Any text typed into the administration console is replicated to all windows. All windows may also be typed into directly. @@ -678,6 +700,17 @@ 'Enable or disable alternative algorithm for calculating terminal positioning.', ); + output '=item command_pre ='; + output '=item command_post ='; + output $self->loc( + q{Add extra commands around the communication method. For example: + +command_pre= . $HOME/virtualenvs/default/bin/active ; +command_post= | ct + +would allow for using Python virtual envronments and then piping all shell output through C<chromaterm> for syntax highlighting. Note: you must use appropriate command separators/terminators to keep the meaning of the command pipline (such as C<;> and C<|> between commands). + +These are not put through macro parsing.}); output '=item comms = ' . $self->parent->config->{comms}; output $self->loc( 'Sets the default communication method (initially taken from the name of the program, but can be overridden here).' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/clusterssh-4.14/lib/App/ClusterSSH/Helper.pm new/clusterssh-4.15/lib/App/ClusterSSH/Helper.pm --- old/clusterssh-4.14/lib/App/ClusterSSH/Helper.pm 2019-08-21 22:15:44.000000000 +0200 +++ new/clusterssh-4.15/lib/App/ClusterSSH/Helper.pm 2020-05-18 09:22:32.000000000 +0200 @@ -52,6 +52,8 @@ } } + my $command_pre = $config->{command_pre} || q{}; + my $command_post = $config->{command_post} || q{}; my $comms = $config->{ $config->{comms} }; my $comms_args = $config->{ $config->{comms} . '_args' }; my $config_command = $config->{command}; @@ -69,7 +71,7 @@ my \$user=shift; my \$port=shift; my \$mstr=shift; - my \$command="$comms $comms_args "; + my \$command="$command_pre $comms $comms_args"; open(PIPE, ">", \$pipe) or die("Failed to open pipe: \$!\\n"); print PIPE "\$\$:\$ENV{WINDOWID}" or die("Failed to write to pipe: $!\\n"); @@ -105,6 +107,7 @@ if("$config_command") { \$command .= " \\\"$config_command\\\""; } + \$command .= "$command_post"; \$command .= " ; $postcommand"; # provide some info for debugging purposes warn("Running: \$command\\n"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/clusterssh-4.14/lib/App/ClusterSSH/Window/Tk.pm new/clusterssh-4.15/lib/App/ClusterSSH/Window/Tk.pm --- old/clusterssh-4.14/lib/App/ClusterSSH/Window/Tk.pm 2019-08-21 22:15:44.000000000 +0200 +++ new/clusterssh-4.15/lib/App/ClusterSSH/Window/Tk.pm 2020-05-18 09:22:32.000000000 +0200 @@ -314,6 +314,8 @@ my ($self) = @_; $self->debug( 2, "Setting approx half of all hosts to inactive" ); + return if !%servers; + my (@keys) = keys(%servers); $#keys /= 2; foreach my $svr (@keys) { @@ -346,7 +348,7 @@ if ( $menus{host_entry} ) { $self->debug( 2, "host=", $menus{host_entry} ); my @names - = $self->resolve_names( split( /\s+/, $menus{host_entry} ) ); + = $self->parent->resolve_names( split( /\s+/, $menus{host_entry} ) ); $self->debug( 0, 'Opening to: ', join( ' ', @names ) ) if (@names); $self->open_client_windows(@names); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/clusterssh-4.14/lib/App/ClusterSSH.pm new/clusterssh-4.15/lib/App/ClusterSSH.pm --- old/clusterssh-4.14/lib/App/ClusterSSH.pm 2019-08-21 22:15:44.000000000 +0200 +++ new/clusterssh-4.15/lib/App/ClusterSSH.pm 2020-05-18 09:22:32.000000000 +0200 @@ -5,7 +5,7 @@ # ABSTRACT: Cluster administration tool # ABSTRACT: Cluster administration tool -use version; our $VERSION = version->new('4.14'); +use version; our $VERSION = version->new('4.15'); =head1 SYNOPSIS diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/clusterssh-4.14/t/15config.t new/clusterssh-4.15/t/15config.t --- old/clusterssh-4.14/t/15config.t 2019-08-21 22:15:44.000000000 +0200 +++ new/clusterssh-4.15/t/15config.t 2020-05-18 09:22:32.000000000 +0200 @@ -102,6 +102,8 @@ history_height => 10, command => q{}, + command_pre => q{}, + command_post => q{}, title => q{15CONFIG.T}, comms => q{ssh}, hide_menu => 0, @@ -564,6 +566,8 @@ auto_quit=yes auto_wm_decoration_offsets=no cols=-1 +command_post= +command_pre= console=console console_args= console_position= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/clusterssh-4.14/t/30cluster.t new/clusterssh-4.15/t/30cluster.t --- old/clusterssh-4.14/t/30cluster.t 2019-08-21 22:15:44.000000000 +0200 +++ new/clusterssh-4.15/t/30cluster.t 2020-05-18 09:22:32.000000000 +0200 @@ -84,21 +84,23 @@ # no point running this test as root since root cannot be blocked # from accessing the file -if ( $EUID != 0 ) { - my $no_read = $Bin . '/30cluster.cannot_read'; - chmod 0000, $no_read; - trap { - $cluster1->read_cluster_file($no_read); - }; - chmod 0644, $no_read; - isa_ok( $trap->die, 'App::ClusterSSH::Exception::LoadFile' ); - is( $trap->die, - "Unable to read file $no_read: Permission denied", - 'Error on reading an existing file ok' - ); -} -else { - pass('Cannot test for lack of read access when run as root'); +TODO: { + if ( $EUID != 0 ) { + my $no_read = $Bin . '/30cluster.cannot_read'; + chmod 0000, $no_read; + trap { + $cluster1->read_cluster_file($no_read); + }; + chmod 0644, $no_read; + isa_ok( $trap->die, 'App::ClusterSSH::Exception::LoadFile' ); + is( $trap->die, + "Unable to read file $no_read: Permission denied", + 'Error on reading an existing file ok' + ); + } + else { + pass('Cannot test for lack of read access when run as root'); + } } $expected{tag1} = ['host1']; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/clusterssh-4.14/t/range.t new/clusterssh-4.15/t/range.t --- old/clusterssh-4.14/t/range.t 2019-08-21 22:15:44.000000000 +0200 +++ new/clusterssh-4.15/t/range.t 2020-05-18 09:22:32.000000000 +0200 @@ -2,6 +2,9 @@ use strict; use warnings; +use FindBin qw($Bin); +use lib "$Bin/../lib"; + use Test::More; use Test::Trap; use Data::Dump;
