Checkout Tools
  • last updated 2 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
hot-backup.py: Modernize Python syntax.

* tools/backup/hot-backup.py.in: Drop syntaxes unsupported by ≥py3.0, while

retaining compatibility with ≥py2.6. (Both trunk and 1.9.x require ≥py2.7.)

hot-backup.py: Input validation.

* tools/backup/hot-backup.py.in: Error out on unknown values.

hot-backup.py: Housekeeping.

* tools/backup/hot-backup.py.in: Escape positional arguments and regexp injects.

Add new --verify option to hot-backup.py.

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

Added command line option "--verify". If flag is present, the

backup will be verified using 'svnadmin verify' in a new step

between step 3 (hotcopy) and 4 (compress).

Patch by: Leo Davis <ldavis{_AT_}fonix.com>

(Tweaked by me.)

Add support to hot-backup.py for >2GB zip files.

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

(archive_map, usage): Add 'zip64' archive type.

(step4): Maybe pass "allowZip64 = True" to the ZipFile().

Patch by: Donald Gordon <donald.gordon@xero.com>

Fix many of the links pointing to subversion.tigris.org or svn.collab.net.

Approved by: cmpilato

* BUGS,

* CHANGES,

* COMMITTERS,

* INSTALL,

* build/win32/make_gem.rb,

* configure.ac,

* contrib/client-side/emacs/psvn.el,

* notes/commit-access-templates/full-committer.tmpl,

* notes/commit-access-templates/partial-committer.tmpl,

* notes/fsfs,

* notes/l10n-problems,

* notes/merge-tracking/requirements.html,

* packages/python-windows/setup.py,

* packages/solaris/pkginfo.in,

* subversion/bindings/ctypes-python/setup.py,

* subversion/bindings/javahl/src/org/tigris/subversion/javahl/package.html,

* subversion/bindings/swig/python/__init__.py,

* subversion/bindings/swig/python/svn/__init__.py,

* subversion/bindings/swig/python/svn/client.py,

* subversion/bindings/swig/python/svn/core.py,

* subversion/bindings/swig/python/svn/delta.py,

* subversion/bindings/swig/python/svn/diff.py,

* subversion/bindings/swig/python/svn/fs.py,

* subversion/bindings/swig/python/svn/ra.py,

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

* subversion/bindings/swig/python/svn/wc.py,

* subversion/include/svn_props.h,

* subversion/libsvn_repos/repos.c,

* subversion/svn/svn.1,

* subversion/svnadmin/svnadmin.1,

* subversion/svndumpfilter/svndumpfilter.1,

* subversion/svnlook/svnlook.1,

* subversion/svnsync/svnsync.1,

* subversion/svnversion/svnversion.1,

* subversion/tests/cmdline/authz_tests.py,

* subversion/tests/cmdline/autoprop_tests.py,

* subversion/tests/cmdline/basic_tests.py,

* subversion/tests/cmdline/blame_tests.py,

* subversion/tests/cmdline/cat_tests.py,

* subversion/tests/cmdline/changelist_tests.py,

* subversion/tests/cmdline/checkout_tests.py,

* subversion/tests/cmdline/commit_tests.py,

* subversion/tests/cmdline/copy_tests.py,

* subversion/tests/cmdline/depth_tests.py,

* subversion/tests/cmdline/diff_tests.py,

* subversion/tests/cmdline/entries_tests.py,

* subversion/tests/cmdline/export_tests.py,

* subversion/tests/cmdline/externals_tests.py,

* subversion/tests/cmdline/getopt_tests.py,

* subversion/tests/cmdline/history_tests.py,

* subversion/tests/cmdline/import_tests.py,

* subversion/tests/cmdline/info_tests.py,

* subversion/tests/cmdline/lock_tests.py,

* subversion/tests/cmdline/log_tests.py,

* subversion/tests/cmdline/merge_authz_tests.py,

* subversion/tests/cmdline/merge_tests.py,

* subversion/tests/cmdline/mergeinfo_tests.py,

* subversion/tests/cmdline/obliterate_tests.py,

* subversion/tests/cmdline/patch_tests.py,

* subversion/tests/cmdline/prop_tests.py,

* subversion/tests/cmdline/resolve_tests.py,

* subversion/tests/cmdline/resolved_tests.py,

* subversion/tests/cmdline/revert_tests.py,

* subversion/tests/cmdline/schedule_tests.py,

* subversion/tests/cmdline/special_tests.py,

* subversion/tests/cmdline/stat_tests.py,

* subversion/tests/cmdline/svnadmin_tests.py,

* subversion/tests/cmdline/svndumpfilter_tests.py,

* subversion/tests/cmdline/svneditor.py,

* subversion/tests/cmdline/svnlook_tests.py,

* subversion/tests/cmdline/svnsync_tests.py,

* subversion/tests/cmdline/svnversion_tests.py,

* subversion/tests/cmdline/switch_tests.py,

* subversion/tests/cmdline/trans_tests.py,

* subversion/tests/cmdline/tree_conflict_tests.py,

* subversion/tests/cmdline/update_tests.py,

* subversion/tests/cmdline/upgrade_tests.py,

* subversion/tests/cmdline/utf8_tests.py,

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

* tools/dev/contribulyze.py,

* tools/dist/gen_nightly_ann.py,

* tools/dist/write-announcement.py,

* tools/po/po-update.sh

Fix broken links.

  1. … 82 more files in changeset.
Test out my new and fancy ASF commit priviledges by changing the copyright

wording in our license headers to reflect ownership by the ASF.

* NOTICE:

Change terminology to ASF, and update a link.

* subversion/libsvn_subr/opt.c

(svn_opt__print_version_info): Note that the product as a whole is

copyrighted by the ASF, and update the project website.

* everywhere:

Change license text to reflect ASF ownership.

  1. … 891 more files in changeset.
Relicense Subversion under the Apache License, Version 2.0.

* NOTICE: New.

* LICENSE: New.

* COPYING,

subversion/LICENSE: Remove.

* subversion/libsvn_subr/opt.c

(svn_opt__print_version_info): Note that the product as a whole is

copyrighted by the SVN Corp, and that it contains contributions from

many people, as referenced in NOTICE.

* subversion/bindings/swig/python/LICENSE_FOR_PYTHON_BINDINGS:

Relicense the SVN parts under Apache 2.0.

* everywhere:

Change copyright notices in file headers to reflect the Apache 2.0 license.

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

Fix creation of zip archives. This script tried to recurse the zip

file itself rather than the directory to be zipped.

Patch by: Paul Gleske <pkg@gleske.org>

Python 3 compatibility:

Use os.walk() instead of os.path.walk().

* subversion/tests/cmdline/changelist_tests.py:

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

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

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

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

* tools/dev/check-license.py:

* tools/dev/scramble-tree.py:

* win-tests.py: Use os.walk() instead of os.path.walk().

  1. … 7 more files in changeset.
Delete code used only by Python <2.4.

* build/generator/util/executable.py:

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

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

* subversion/tests/cmdline/update_tests.py:

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

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

* tools/hook-scripts/verify-po.py: Delete code used only by Python <2.4.

  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.
* 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:

Follow-up to r34361:

* tools/backup/hot-backup.py.in: Use list comprehensions instead of filter().

Python 3 compatibility:

Use str.strip(), str.lstrip() and str.rstrip() instead of string.strip(),

string.lstrip() and string.rstrip().

* build/generator/gen_vcnet_vcproj.py:

* build/generator/gen_win.py:

* build/generator/util/executable.py:

* subversion/tests/cmdline/commit_tests.py:

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

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

* tools/dev/normalize-dump.py: Use str.strip(), str.lstrip() and str.rstrip()

instead of string.strip(), string.lstrip() and string.rstrip().

  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.
Follow up to r27379 with a usage message fix:

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

(usage): Rephrase, partly to avoid bumping the 80-column limit.

Allow to set in environment the numer of backups kept around by hot-backup.py

and add --num-backups option which can be used to overwrite value obtained from

environment.

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

(num_backups): Document that initialization is just a default. Try to

initialize using SVN_HOTBACKUP_BACKUPS_NUMBER environment variable.

(usage): Document new option.

(option parsing section): Parse it.

Patch by: kfogel

me

Approved by: kfogel

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

Change the svn:executable to our standard '*' value.

Set and use the svn:keywords property.

Enable hot-backup.py to work on Windows using Python 2.4 or greater

when any of the svnadmin, svnlook or repository paths contain spaces.

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

Try to import subprocess and set have_subprocess to 1 or 0.

Use subprocess.Popen() instead of os.popen3() or os.spawnl() when

subprocess is available.

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

(svnadmin),

(svnlook):

Make these raw strings so if somebody uses this script on Windows

and pastes in a path like

C:\Program Files\Subversion\bin\svnlook.exe

then the \b won't be converted into a \x08.

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

Update the description of the script to indicate that it backs up

any Subversion repository, not just those with a Berkeley DB

backend and will also clean up old Berkeley DB log files.

Update the copyright year to 2007 since there was a coding change

done in 2007.

Add imports missed but needed for hot-backup.py.in changes in r24289.

Patch by: Jens Peters <jpeters7677@gmx.de>

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

Add missing imports.

Replace os.rmtree with the safe_rmtree implementation from the test

suite so that we can remove read-only files on Windows.

Suggested by: Chris Foote <cfoote@v21.me.uk>

Jens Peters <jpeters7677@gmx.de>

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

(chmod_tree): New method for setting permissions on a tree.

(safe_rmtree): New method for dropping possibly read-only directory trees.

Let's actually report errors encountered when determining the youngest

revision in the repository which is the target for backup. This also

handles cases like a bad path for our 'svnlook' binary.

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

(get_youngest_revision): New function to get the youngest revision.

(Step 1): Leverage get_youngest_revision(). Now with error handling!

Suggested by: Pascal d'Hermilly <pascal@tipisoft.dk>

Add option to archive the backup using gz, bz2 or zip to

hot-backup.py.

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

Update copyright year, and add imports.

(archive_map): New dictionary mapping archive types to file

extentions.

(usage): New. Print out a usage message.

Redo command line processing using getopt and add --archive-type

option to specify the archive type.

(comparator): If archiving, add the archive extenstion to the regexp

to find archives as well.

Step 2, also find archives.

Step 3, print the error message to stderr.

Step 4, archive backup.

Step 5, look for archives to remove as well.

Patch by: Chris Foote <cfoote@v21.me.uk>

(Tweaked by me.)

Review by: me

Update copyright notices for 2004, resolving issue #1651.

(See also revision 8019, which fixed a couple of missed spots.)

  1. … 361 more files in changeset.
Fix issue #1587: hot-backup.py doesn't work due to faulty spawn command.

Patch by: Michael Price

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

Pass command name as the first parameter.

Issue #1571: svnadmin hotcopy

Patch by: Vladimir Berezniker <vmpn@hitechman.com>

* subversion/include/svn_io.h

* subversion/libsvn_subr/io.c

(svn_io_file_create): Factored out function for file creation.

(svn_io__file_clear_and_close): Moved from

subversion/libsvn_repos/repos.c (clear_and_close).

(svn_io_file_lock): Factored out function for file locking.

(svn_io_dir_file_copy): Implemented function for copying a file between

two directories.

* subversion/include/svn_fs.h

(svn_fs_hotcopy_berkeley): Added prototype for Berkeley hot copy function.

* subversion/include/svn_repos.h

(svn_repos_hotcopy): Added prototype for subversion repository hot copy

function.

(svn_repos_db_logs_lockfile): Added prototype.

* subversion/libsvn_fs/fs.c:

(svn_fs__clean_logs): Implemented function that deletes only copied

unused Berkeley DB logs.

(svn_fs_hotcopy_berkeley): Implemented hot copy functionality in accordance

with Berkeley DB documentation.

* subversion/libsvn_repos/repos.h

(SVN_REPOS__DB_LOGS_LOCKFILE): Added new definition for BDB logs files lock

file.

* subversion/libsvn_repos/repos.c

(create_db_lock): Factored out function for creation of db lock file.

(create_locks): Cleanup. Deleted redundant path parameter.

(create_hooks): Cleanup. Deleted redundant path parameter. Updated code to

use (svn_io_file_create).

(hotcopy_ctx_t): New structure for use by (hotcopy_structure).

(hotcopy_structure): Adapted, deleted, (copy_structure) for copying

repository structure with exception of /db and /locks directories.

(svn_repos_db_logs_lockfile): Implemented function to return path to db

logs lock file.

(create_db_logs_lock): Implemented function for creation of db logs lock

file.

(lock_db_logs_file): Function for locking db logs lock file.

(svn_repos_hotcopy): Implemented function to make a hot copy of a

repository.

(get_repos): Cleanup. Updated code to use (svn_io_file_lock).

(clear_and_close): Moved to

subversion/libsvn_subr/io.c (svn_io__file_clear_and_close).

(create_repos_structure): Cleanup. Updated code to use (svn_io_file_create).

* subversion/svnadmin/main.c

Added new flag "--clean-logs" to specify that unused copied logs are to be

deleted after the hot copy is complete.

(parse_local_repos_path): Factored out function for parsing and validating

local repository path.

(subcommand_hotcopy): Implemented new hotcopy subcommand.

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

Updated hot backup script to utilize the new hot copy functionality.

  1. … 8 more files in changeset.