sub url_path {
        my ($self, $path) = @_;
        if ($self->{url} =~ m#^https?://#) {
-               $path =~ s!([^~a-zA-Z0-9_./-])!uc sprintf("%%%02x",ord($1))!eg;
+               # characters are taken from subversion/libsvn_subr/path.c
+               $path =~ s#([^~a-zA-Z0-9_./!$&'()*+,-])#sprintf("%%%02X",ord($1))#eg;
        }
        $self->{url} . '/' . $self->repo_path($path);
 }
                        mode_a => $m->{mode_a}, mode_b => '000000',
                        sha1_a => $m->{sha1_a}, sha1_b => '0' x 40,
                        chg => 'D', file_b => $m->{file_b}
-               });
+               }, $deletions);
                $self->A({
                        mode_a => '000000', mode_b => $m->{mode_b},
                        sha1_a => '0' x 40, sha1_b => $m->{sha1_b},
                        chg => 'A', file_b => $m->{file_b}
-               });
+               }, $deletions);
                return;
        }
 
 1;
 __END__
 
+=head1 NAME
+
 Git::SVN::Editor - commit driver for "git svn set-tree" and dcommit
 
 =head1 SYNOPSIS