Checkout Tools
  • last updated 6 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates

Changeset 875527 is being indexed.

Follow-up to r34959:

* tools/hook-scripts/mailer/mailer.py

(OutputBase.run): Try to use subprocess module.

Python 3 compatibility:

Don't assing values to True/False keywords.

* build/generator/gen_make.py:

* build/generator/gen_msvc_dsp.py:

* build/generator/gen_vcnet_vcproj.py:

* subversion/bindings/swig/python/svn/repos.py:

* subversion/tests/cmdline/svntest/__init__.py:

* tools/client-side/change-svn-wc-format.py:

* tools/dev/contribulyze.py:

* tools/hook-scripts/log-police.py:

* tools/hook-scripts/mailer/mailer.py: Don't assing values to True/False keywords.

  1. … 8 more files in changeset.
Python 3 compatibility:

Try to use urllib.parse.* and urllib.request.* instead of urllib.* and urllib2.*.

* subversion/tests/cmdline/svntest/main.py:

* tools/dev/contribulyze.py:

* tools/dev/mlpatch.py:

* tools/dist/post-to-tigris.py:

* tools/hook-scripts/mailer/mailer.py:

* tools/server-side/svn_server_log_parse.py:

* tools/server-side/test_svn_server_log_parse.py: Try to use urllib.parse.* and

urllib.request.* instead of urllib.* and urllib2.*.

  1. … 6 more files in changeset.
Python 3 compatibility:

Try to use subprocess module in 'tools' directory.

* tools/hook-scripts/mailer/mailer.py:

* tools/hook-scripts/verify-po.py: Try to use subprocess module.

* tools/backup/hot-backup.py.in: Fix a typo.

  1. … 2 more files in changeset.
Python 3 compatibility:

Import io.StringIO when using Python 3.

* build/generator/gen_win.py:

* subversion/bindings/ctypes-python/test/wc.py:

* subversion/bindings/swig/python/tests/delta.py:

* subversion/bindings/swig/python/tests/mergeinfo.py:

* subversion/bindings/swig/python/tests/ra.py:

* subversion/bindings/swig/python/tests/repository.py:

* subversion/bindings/swig/python/tests/trac/versioncontrol/tests/svn_fs.py:

* subversion/bindings/swig/python/tests/wc.py:

* subversion/tests/cmdline/svntest/tree.py:

* tools/hook-scripts/mailer/mailer.py: Import io.StringIO when using Python 3.

  1. … 9 more files in changeset.
* tools/backup/hot-backup.py.in:

* tools/dev/which-error.py:

* tools/hook-scripts/mailer/mailer.py:

* tools/hook-scripts/svn2feed.py:

* tools/hook-scripts/svnperms.py: Declare UTF-8 encoding.

  1. … 4 more files in changeset.
Python 3 compatibility:

Update calls to print() in 'tools' directory.

* tools/backup/hot-backup.py.in:

* tools/bdb/erase-all-text-data.py:

* tools/bdb/svn-bdb-view.py:

* tools/bdb/whatis-rep.py:

* tools/client-side/change-svn-wc-format.py:

* tools/client-side/server-version.py:

* tools/dev/check-license.py:

* tools/dev/contribulyze.py:

* tools/dev/datecheck.py:

* tools/dev/gen-javahl-errors.py:

* tools/dev/graph-dav-servers.py:

* tools/dev/iz/ff2csv.py:

* tools/dev/iz/find-fix.py:

* tools/dev/mlpatch.py:

* tools/dev/normalize-dump.py:

* tools/dev/po-merge.py:

* tools/dev/random-commits.py:

* tools/dev/scramble-tree.py:

* tools/dev/svn-merge-revs.py:

* tools/dev/verify-history.py:

* tools/dev/which-error.py:

* tools/dist/gen_nightly_ann.py:

* tools/dist/getsigs.py:

* tools/dist/post-to-tigris.py:

* tools/dist/write-announcement.py:

* tools/examples/blame.py:

* tools/examples/check-modified.py:

* tools/examples/dumpprops.py:

* tools/examples/getfile.py:

* tools/examples/get-location-segments.py:

* tools/examples/geturl.py:

* tools/examples/putfile.py:

* tools/examples/revplist.py:

* tools/examples/svnlook.py:

* tools/examples/svnshell.py:

* tools/hook-scripts/mailer/tests/mailer-tweak.py:

* tools/hook-scripts/svn2feed.py:

* tools/po/l10n-report.py:

* tools/server-side/fsfs-reshard.py:

* tools/server-side/svn-backup-dumps.py: Call print() or file.write().

  1. … 39 more files in changeset.
Python 3 compatibility:

Use dict.keys(), dict.values() and dict.items() instead of dict.iterkeys(),

dict.itervalues() and dict.iteritems().

Use list(dict.keys()), list(dict.values()) and list(dict.items()) instead of

dict.keys(), dict.values() and dict.items(). Function calls with 'for', 'in' or

len() weren't updated.

* build/generator/ezt.py:

* build/generator/gen_base.py:

* build/generator/gen_vcnet_vcproj.py:

* build/generator/gen_win.py:

* build/win32/make_dist.py:

* gen-make.py:

* subversion/bindings/ctypes-python/csvn/types.py:

* subversion/bindings/ctypes-python/examples/log.py:

* subversion/bindings/ctypes-python/examples/trunkify.py:

* subversion/bindings/swig/python/tests/mergeinfo.py:

* subversion/bindings/swig/python/tests/ra.py:

* subversion/bindings/swig/python/tests/wc.py:

* subversion/tests/cmdline/externals_tests.py:

* subversion/tests/cmdline/svntest/actions.py:

* tools/bdb/svn-bdb-view.py:

* tools/dev/contribulyze.py:

* tools/dev/gen-javahl-errors.py:

* tools/dev/normalize-dump.py:

* tools/dev/trails.py:

* tools/dev/which-error.py:

* tools/examples/svnshell.py:

* tools/hook-scripts/mailer/mailer.py:

* tools/hook-scripts/svnperms.py: Use dict.keys(), dict.values() and

dict.items() instead of dict.iterkeys(), dict.itervalues() and

dict.iteritems(). Use list(dict.keys()), list(dict.values()) and

list(dict.items()) instead of dict.keys(), dict.values() and dict.items().

  1. … 22 more files in changeset.
Python 3 compatibility:

Use list comprehensions or list(filter()) instead of filter().

* build/generator/gen_win.py:

* build/run_tests.py:

* subversion/tests/cmdline/changelist_tests.py:

* subversion/tests/cmdline/svntest/actions.py:

* subversion/tests/cmdline/svntest/main.py:

* subversion/tests/cmdline/svntest/wc.py:

* tools/examples/svnshell.py:

* tools/hook-scripts/mailer/mailer.py:

* win-tests.py: Use list comprehensions or list(filter()) instead of filter().

  1. … 8 more files in changeset.
Python 3 compatibility:

Use list comprehensions or list(map()) instead of map().

* build/generator/gen_base.py:

* build/generator/gen_make.py:

* build/generator/gen_vcnet_vcproj.py:

* build/generator/gen_win.py:

* build/generator/swig/header_wrappers.py:

* build/run_tests.py:

* subversion/tests/cmdline/changelist_tests.py:

* subversion/tests/cmdline/checkout_tests.py:

* subversion/tests/cmdline/getopt_tests.py:

* subversion/tests/cmdline/merge_tests.py:

* subversion/tests/cmdline/svnadmin_tests.py:

* subversion/tests/cmdline/svntest/actions.py:

* subversion/tests/cmdline/svntest/main.py:

* subversion/tests/cmdline/svntest/verify.py:

* subversion/tests/cmdline/tree_conflict_tests.py:

* tools/bdb/skel.py:

* tools/dev/iz/find-fix.py:

* tools/dev/svn-merge-revs.py:

* tools/dist/write-announcement.py:

* tools/hook-scripts/mailer/mailer.py:

* win-tests.py: Use list comprehensions or list(map()) instead of map().

  1. … 20 more files in changeset.
Python 3 compatibility:

Use str.join() instead of string.join().

* build/generator/gen_base.py:

* build/generator/gen_make.py:

* build/generator/gen_vcnet_vcproj.py:

* build/generator/gen_win.py:

* build/generator/swig/header_wrappers.py:

* subversion/libsvn_subr/genctype.py:

* subversion/tests/cmdline/commit_tests.py:

* tools/dev/iz/find-fix.py:

* tools/examples/svnshell.py:

* tools/hook-scripts/mailer/mailer.py:

* tools/hook-scripts/mailer/tests/mailer-t1.sh: Use str.join() instead of

string.join().

  1. … 9 more files in changeset.
Python 3 compatibility:

Use str.split() instead of string.split().

* build/generator/ezt.py:

* build/generator/gen_base.py:

* build/generator/gen_win.py:

* build/generator/swig/header_wrappers.py:

* build/generator/util/executable.py:

* tools/dev/iz/find-fix.py:

* tools/examples/svnshell.py:

* tools/hook-scripts/mailer/mailer.py:

* win-tests.py: Use str.split() instead of string.split().

  1. … 8 more files in changeset.
Python 3 compatibility:

Use str.rfind() instead of string.rfind().

* build/generator/gen_base.py:

* tools/dev/verify-history.py:

* tools/examples/svnshell.py:

* tools/hook-scripts/mailer/mailer.py: Use str.rfind() instead of

string.rfind().

  1. … 3 more files in changeset.
Python 3 compatibility:

Try to import configparser module.

(ConfigParser was renamed to configparser.)

* build/generator/gen_base.py:

* build/generator/gen_make.py:

* build/generator/swig/__init__.py:

* build/win32/make_dist.py:

* gen-make.py:

* tools/hook-scripts/mailer/mailer.py:

* win-tests.py: Try to import configparser module.

  1. … 6 more files in changeset.
Python 3 compatibility:

Don't use 'has_key'.

* build/generator/ezt.py:

* build/generator/gen_base.py:

* build/generator/gen_win.py:

* gen-make.py:

* subversion/bindings/swig/python/svn/repos.py:

* subversion/bindings/swig/python/tests/client.py:

* subversion/bindings/swig/python/tests/ra.py:

* subversion/tests/cmdline/changelist_tests.py:

* subversion/tests/cmdline/info_tests.py:

* subversion/tests/cmdline/svntest/actions.py:

* subversion/tests/cmdline/svntest/entry.py:

* subversion/tests/cmdline/svntest/main.py:

* tools/backup/hot-backup.py.in:

* tools/bdb/erase-all-text-data.py:

* tools/bdb/svn-bdb-view.py:

* tools/client-side/change-svn-wc-format.py:

* tools/dev/contribulyze.py:

* tools/dev/normalize-dump.py:

* tools/dev/verify-history.py:

* tools/examples/blame.py:

* tools/hook-scripts/mailer/mailer.py:

* tools/hook-scripts/svnperms.py: Use 'in' instead of 'has_key'.

  1. … 21 more files in changeset.
* tools/hook-scripts/mailer/mailer.py

(OutputBase): Fix typo in docstring. Obvious fix.

* build/buildcheck.sh:

* build/PrintPath:

* build/getversion.py:

* build/install-sh:

* subversion/tests/cmdline/svnadmin_tests.py:

* subversion/tests/cmdline/log_tests.py:

* subversion/tests/cmdline/trans_tests.py:

* subversion/tests/cmdline/svnlook_tests.py:

* subversion/tests/cmdline/switch_tests.py:

* subversion/tests/cmdline/externals_tests.py:

* subversion/tests/cmdline/diff_tests.py:

* subversion/tests/cmdline/copy_tests.py:

* subversion/tests/cmdline/stat_tests.py:

* subversion/tests/cmdline/svnversion_tests.py:

* subversion/tests/cmdline/prop_tests.py:

* subversion/tests/cmdline/basic_tests.py:

* subversion/tests/cmdline/update_tests.py:

* subversion/tests/cmdline/utf8_tests.py:

* subversion/tests/cmdline/commit_tests.py:

* subversion/tests/cmdline/schedule_tests.py:

* subversion/tests/cmdline/merge_tests.py:

* subversion/tests/cmdline/getopt_tests.py:

* contrib/client-side/svn_all_diffs.pl:

* contrib/client-side/search-svnlog.pl:

* contrib/client-side/svn_load_dirs/svn_load_dirs.pl.in:

* contrib/cgi/mirror_dir_through_svn.cgi:

* tools/client-side/showchange.pl:

* tools/dist/dist.sh:

* tools/hook-scripts/commit-access-control.pl.in:

* tools/hook-scripts/svnperms.py:

* tools/hook-scripts/mailer/mailer.py:

* tools/hook-scripts/mailer/tests/mailer-init.sh:

* tools/hook-scripts/mailer/tests/mailer-t1.sh:

* tools/hook-scripts/mailer/tests/mailer-tweak.py:

* tools/hook-scripts/commit-email.pl.in:

* tools/dev/stress.pl:

* tools/dev/gnuify-changelog.pl:

* tools/dev/prebuild-cleanup.sh:

* tools/examples/dumpprops.py:

* tools/examples/check-modified.py:

* tools/examples/svnlook.py:

* tools/examples/svnshell.py:

* tools/examples/geturl.py:

* tools/examples/putfile.py:

* tools/examples/revplist.py:

* tools/examples/getfile.py:

* tools/examples/blame.py:

* doc/tools/bin/run-fop.sh:

* autogen.sh:

* gen-make.py:

Set svn:executable property to "*".

  1. … 46 more files in changeset.
Revert property change diff feature code (r21695, r21684). I spoke

against this approach on the list back in September of 2006 (WHOA!),

and just now realized that it was still present in our trunk code.

As I indicated in discussion with Matthias Weinert <wein@mccw.de> (see

archives here: http://svn.haxx.se/dev/archive-2006-09/0978.shtml), I

like the idea of doing a better job of showing property changes, but

the approach taken was, in my opinion, far too complex for the typical

user's needs, and visually overwhelming.

NOTE: I tried this reversion once already and made a message things.

In r26779, I undid my mess and restored these files to their

state as of r26776. So, sadly, this is actually my *second*

attempt at cleanly reverting the propchange diff code.

NOTE: The mailer.py tests are currently failing, but this was the

case prior to this change, too. I suspect the merge tracking

feature changes in core Subversion have thrown things off a bit.

* tools/hook-scripts/mailer/mailer.py,

* tools/hook-scripts/mailer/tests/mailer-t1.output,

* tools/hook-scripts/mailer/tests/mailer.conf,

* tools/hook-scripts/mailer/mailer.conf.example

Remove property diff feature and supporting code.

* tools/hook-scripts/mailer/mailer.py

* tools/hook-scripts/mailer/tests/mailer-t1.output

* tools/hook-scripts/mailer/tests/mailer.conf

* tools/hook-scripts/mailer/mailer.conf.example

Restore all these to the way they looked in r26776.

* tools/hook-scripts/mailer/mailer.py

Lose some commit conflict marker cruft.

[This change was later reverted, cleaned up, and recommitted; see r26780.]

Revert property change diff feature code (r21695, r21684). I spoke

against this approach on the list back in September of 2006 (WHOA!),

and just now realized that it was still present in our trunk code.

As I indicated in discussion with Matthias Weinert <wein@mccw.de> (see

archives here: http://svn.haxx.se/dev/archive-2006-09/0978.shtml), I

like the idea of doing a better job of showing property changes, but

the approach taken was, in my opinion, far too complex for the typical

user's needs, and visually overwhelming.

* tools/hook-scripts/mailer/mailer.py,

* tools/hook-scripts/mailer/tests/mailer-t1.output,

* tools/hook-scripts/mailer/tests/mailer.conf,

* tools/hook-scripts/mailer/mailer.conf.example

Remove property diff feature and supporting code.

Whitespace/formatting changes only.
More tweaks to mailer.py's various means of helping folks not use it

with the wrong version of Subversion's bindings.

* tools/hook-scripts/mailer/mailer.py

(): Tweak the comment at the top of this file to point folks to the

_MIN_SVN_VERSION variable when seeking which version of the

Subversion Python bindings are required by this script.

(_MIN_SVN_VERSION): Was _MIN_VERSION.

* tools/hook-scripts/mailer/mailer.py

(_MIN_VERSION): Ahem. The minimum version is 1.5.0, as I so

carefully pointed out on the mailing list, and so carefully failed

to enforce in my actual commit.

* tools/hook-scripts/mailer/mailer.py

Add version checking code and a nice error message for folks that

don't have the Subversion Python bindings installed.

Some minor corrections regarding property handling in mailer.py's

commit messages.

* tools/hook-scripts/mailer/mailer.conf.example

Change default values of the property handling parameters

show_props, ignore_props, generate_propdiffs and ignore_propdiffs

to show no property changes summary, to show diffs for all property

changes and to not ignore any property names (and correct a typo).

* tools/hook-scripts/mailer/mailer.py

(DiffGenerator.__getitem__),

(PropDiffGenerator._get_diff):

Change format of the date of /dev/null

in diffs (which stands for empty/new files and properties).

(TextCommitRenderer._render_props):

Move adding of trailing '/' to directory paths out of a if clause

to ensure that it is applied for every property.

(TextCommitRenderer._render_propdiffs):

Use count variables instead of length of list to check if there are

properties to generate diffs for.

* tools/hook-scripts/mailer/tests/mailer.conf

Set show_props to an empty value for one group and correct a typo.

* tools/hook-scripts/mailer/tests/mailer-t1.output

Reflect changes in /dev/null date format in diffs and new show_props

value for on group in test output.

Add property handling to mailer.py's commit messages.

It is now possible to also report changes of properties (including

diffs) with a commit message. Therefore several new classes were

added to mailer.py. To configure the reporting of property changes

four new parameters are added to mailer.conf. Without adding these

parameters to an existing configuration file no property changes

will be reported.

New configuration parameters:

show_props configure which property changes to report

(valid options are any combination of

'add_path add copy_path modify delete_path

delete')

ignore_props configure which property names shall be ignored

in the list of changed properties

generate_propdiffs configure for which property changes diffs

shall be created

(valid options are any combination of

'add_path add copy_path modify delete_path

delete')

ignore_propdiffs configure which property names shall be ignored

when creating diffs for changed properties

* tools/hook-scripts/mailer/mailer.py

New classes:

PropSelections

PropDiffSelections

PropDiffGenerator.

New functions:

TextCommitRenderer._get_prop_list

TextCommitRenderer._render_props

TextCommitRenderer.__render_props

TextCommitRenderer._render_propdiffs

TextCommitRenderer.__render_propdiffs.

Several appropriate changes to other classes and functions.

* tools/hook-scripts/mailer/mailer.conf.example

New parameters show_props, ignore_props, generate_propdiffs and

ignore_propdiffs.

* tools/hook-scripts/mailer/tests/mailer.conf

New parameters show_props, ignore_props, generate_propdiffs and

ignore_propdiffs.

* tools/hook-scripts/mailer/tests/mailer-t1.output

Now containing property changes.

Enhance labels of diffs in mailer.py to contain more information and to

be of better use for patch programs:

- always show the according revision number in brackets after the date

- if available show date and time of the file

(e. g. for source of modified file)

- add more and specific hints about the file included in brackets after

the date (e. g. show special texts for copied files)

- use /dev/null and 00:00:00 1970 for empty files so that patch programs

recognize that the file is new/deleted

* tools/hook-scripts/mailer/mailer.py

(DiffGenerator.__getitem__):

Get date of base revision (if available) and enhance diff labels with

more information (as listed above).

(Repository.get_rev_prop):

Add optional second parameter to specify a revision for which the

revision property shall be fetched (default: current revision).

* tools/hook-scripts/mailer/tests/mailer-t1.output

Adjust to new diff labels.

Improve output of mailer.py by removing carriage returns to avoid

duplicated line breaks and displaying 'Binary file (source and/or

target)' instead of 'Binary files' if a diff of two files contains

binary ones.

* tools/hook-scripts/mailer/mailer.py

(DiffContent.__getitem__):

Remove carriage returns (0x0D) from the line to avoid duplicated

line breaks.

(TextCommitRenderer._render_diffs):

- Immediately return if no diff is provided.

- If a diff contains binary files we don't know for sure if both are

binary or not, so display 'Binary file (source and/or target)'

instead of 'Binary files'.

* tools/hook-scripts/mailer/tests/mailer-t1.output

Now saying 'Binary file (source and/or target). No diff available.'

for diffs of two files where at least one file is binary.

Cosmetic changes to mailer.py (and the conf file in the test directory).

* tools/hook-scripts/mailer/mailer.py

(Commit.__init__),

(DiffURLSelections._get_url):

Shorten lines which are too long.

(TextCommitRenderer._render_diffs):

Correct typo in comment for this function.

* tools/hook-scripts/mailer/tests/mailer.conf

Remove duplicate blank from comment for generate_diffs.