[Rt-commit] rt branch, 4.4-trunk, created. rt-4.4.3-158-gfdb4bd7cb

Jim Brandt jbrandt at bestpractical.com
Thu Jan 3 15:45:59 EST 2019

The branch, 4.4-trunk has been created
        at  fdb4bd7cb07aa143b6f897dcc1f121cef62b0d04 (commit)

- Log -----------------------------------------------------------------
commit 03a78a5dfc1493719ccfdffc3ebb8f8fe5e2ea92
Author: sunnavy <sunnavy at bestpractical.com>
Date:   Mon May 7 20:20:48 2018 +0800

    Don't endlessly try to terminate apache processes in tests
    It's more important to not hang the tests

diff --git a/lib/RT/Test.pm b/lib/RT/Test.pm
index de713d2fe..3334fb580 100644
--- a/lib/RT/Test.pm
+++ b/lib/RT/Test.pm
@@ -1695,7 +1695,15 @@ sub stop_server {
     kill 'TERM', @SERVERS;
     foreach my $pid (@SERVERS) {
         if ($ENV{RT_TEST_WEB_HANDLER} =~ /^apache/) {
-            sleep 1 while kill 0, $pid;
+            my $count = 0;
+            while ( kill 0, $pid ) {
+                sleep 1;
+                last if $count++ >= 100;
+            }
+            # Give it a final shot and leave it.
+            # It's more important to not hang the tests
+            kill 'KILL', $pid if kill 0, $pid;
         } else {
             waitpid $pid, 0;

commit ac01a9b3e1853a62586f71b1b9b1c71670814a1c
Author: Jim Brandt <jbrandt at bestpractical.com>
Date:   Mon Dec 31 15:47:00 2018 -0500

    Add and display a Synopsis for the user shredder plugin
    Provide more context on using the user shredder plugin by
    adding a Synopsis section and displaying it in the web UI.

diff --git a/lib/RT/Shredder/POD.pm b/lib/RT/Shredder/POD.pm
index 3a67aef96..32c8e65a7 100644
--- a/lib/RT/Shredder/POD.pm
+++ b/lib/RT/Shredder/POD.pm
@@ -57,7 +57,7 @@ sub plugin_html
     my ($file, $out_fh) = @_;
     my $parser = RT::Shredder::POD::HTML->new;
-    $parser->select('ARGUMENTS', 'USAGE');
+    $parser->select('SYNOPSIS', 'ARGUMENTS', 'USAGE');
     $parser->parse_from_file( $file, $out_fh );
diff --git a/lib/RT/Shredder/Plugin/Users.pm b/lib/RT/Shredder/Plugin/Users.pm
index 43bf624ba..58c852d37 100644
--- a/lib/RT/Shredder/Plugin/Users.pm
+++ b/lib/RT/Shredder/Plugin/Users.pm
@@ -56,6 +56,38 @@ use base qw(RT::Shredder::Plugin::Base::Search);
 RT::Shredder::Plugin::Users - search plugin for wiping users.
+=head1 SYNOPSIS
+This shredder plugin removes user records from the RT system. Since users
+can be connected to many other objects in RT, these connections must be
+resolved in some way before removing a user record. RT will not
+automatically shred linked objects (i.e., tickets, transactions,
+attachments, etc.) when attempting to shred a user.
+RT provides the following options for handling linked objects.
+=head2 Replace User
+This option locates all records currently referenced by the user you with
+to shred and replaces the reference with a reference to the user record you
+provide. This can be another real user or a placeholder user. Once these
+references are updated, the original user can be shredded.
+You can use this option with the replace_relations argument.
+=head2 Delete Objects First
+If you wish to completely remove all records associated with a user, you
+can perform searches and remove objects using other shredder plugins
+first.  For example, if the user is a requestor on one or more tickets,
+first use the Tickets shredder plugin and search for
+"Requestor.EmailAddress = 'user1 at example.com'".  Once all associated
+objects are removed, you may then use the users plugin to shred the user
+If you receive an error when trying to shred a user, it's possible it is still
+reference by other objects in RT.
 =head2 status - string

commit 2e29d6f97b3286a6800e900cc254581f99060c95
Author: Jim Brandt <jbrandt at bestpractical.com>
Date:   Mon Dec 31 15:49:07 2018 -0500

    Adjust spacing for shredder style

diff --git a/share/static/css/base/shredder.css b/share/static/css/base/shredder.css
index dc57f2441..3af89e4ed 100644
--- a/share/static/css/base/shredder.css
+++ b/share/static/css/base/shredder.css
@@ -6,10 +6,12 @@
 .rt-general-header2 {
   font-style: italic;
   font-size: 1.1em;
+  padding-left: 3em;
 .rt-general-paragraph {
-  padding-left: 2em;
+  padding-left: 6em;
+  padding-right: 6em;
 .shredder-form {

commit f3bc3f3977e17e05237e8062f7dd7cb590b0dfab
Author: Jim Brandt <jbrandt at bestpractical.com>
Date:   Mon Dec 31 17:04:13 2018 -0500

    Clarify failed resolver error message

diff --git a/lib/RT/Shredder/Exceptions.pm b/lib/RT/Shredder/Exceptions.pm
index 8329623a0..a84f486f7 100644
--- a/lib/RT/Shredder/Exceptions.pm
+++ b/lib/RT/Shredder/Exceptions.pm
@@ -85,10 +85,11 @@ message from RT log files and send a bug report.
     NoResolver => <<END,
-Object has dependency that could be resolved, but resolver
-wasn't defined. You have to re-read the documentation of the
-plugin you're using. For example the 'Users' plugin has
-option 'replace_relations' argument.
+Shredder has found a dependency that it cannot automatically
+resolve, so the requested object was not removed. Some plugins
+do not automatically shred dependent objects for safety, but you
+may be able to shred the dependent objects directly using other plugins.
+The documentation for this plugin may have more information.

commit 8a93cd9f5c23d47c4e825593cd7f5143c144f9a7
Merge: 3697592d7 f3bc3f397
Author: sunnavy <sunnavy at bestpractical.com>
Date:   Thu Jan 3 05:50:33 2019 +0800

    Merge branch '4.4/user-shred-docs' into 4.4-trunk

commit fdb4bd7cb07aa143b6f897dcc1f121cef62b0d04
Merge: 8a93cd9f5 03a78a5df
Author: Jim Brandt <jbrandt at bestpractical.com>
Date:   Thu Jan 3 13:56:32 2019 -0500

    Merge branch '4.4/avoid-hanging-apache-tests' into 4.4-trunk


More information about the rt-commit mailing list