subversion

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

Changeset 875086 is being indexed.

* www/security.html: Update the security reports address.

The new tigris.org discussion forums (which are also the mailing

lists) do not support the particular combination of write-friendliness

and read-guardedness needed to receive security reports.

Fix a class of C and python test failures with packing enabled.

One failure identified in this case was due to ffd->min_unpacked_rev getting

out-of-sync with db/min-unpacked-rev due to commits while an fs object was

open. The fix is by re-reading db/min-unpacked-rev when opening the

(unpacked) rev file fails.

This commit applies the new logic only in open_pack_or_rev_file(); later it

should be extended to other callers of svn_fs_fs__path_rev_absolute() as

well.

* subversion/libsvn_fs_fs/fs_fs.c

(update_min_unpacked_rev): New.

(svn_fs_fs__open): Use update_min_unpacked_rev().

(open_pack_or_rev_file):

If opening the rev file fails, check if it had just been packed, and

retry in that case.

(pack_shard):

Update comment.

On the 'python-3-compatibility' branch:

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.

Add sharding and packing support to 'make check'.

* Makefile.in

(check): Support $FSFS_SHARDING and $FSFS_PACKING.

* win-tests.py

Add --fsfs-sharding and --fsfs-packing, and pass fsfs_sharding and

fsfs_packing to TestHarness.

* build/run_tests.py

(main):

Add --fsfs-sharding and --fsfs-packing, and pass fsfs_sharding and

fsfs_packing to TestHarness.

(TestHarness.__init__):

Add fsfs_sharding and fsfs_packing parameters and pass them to the tests.

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

(fsfs_sharding, fsfs_packing): New global variables.

(get_fsfs_format_file_path): New helper.

(create_repos):

Use fsfs_sharding to create the format file and fsfs_packing to install

a post-commit hook that runs 'svnadmin pack'.

(usage): Add --fsfs-sharding and --fsfs-packing.

(run_tests):

Parse --fsfs-sharding and --fsfs-packing.

* subversion/libsvn_fs_fs/fs_fs.c

(get_and_increment_txn_key_body): Simplify error handling just a bit.

Reduce function visibility.

* subversion/libsvn_fs_fs/fs_fs.c

(move_into_place): Renamed from svn_fs_fs__move_into_place(), and moved

within the file.

(svn_fs_fs__set_revision_proplist, get_and_increment_txn_key_body,

write_current, commit_body, svn_fs_fs__set_uuid, pack_shard):

Update callers.

Use the correct path for duplicating permissions when creating lock files.

* subversion/libsvn_fs_fs/fs_fs.c

(path_rev): Renamed from svn_fs_fs__path_rev().

(svn_fs_fs__path_rev_absolute): Renamed from path_rev_absolute().

(open_path_or_rev_file, svn_fs_fs__set_revision_proplist, commit_body,

write_revision_zero): Update callers.

* subversion/libsvn_fs_fs/fs_fs.h

(svn_fs_fs__path_rev): Remove.

(svn_fs_fs__path_rev_absolute): Add.

* subversion/libsvn_fs_fs/lock.c

(write_digest_file): The actual fix: use the packed file if needed for

duplicating permissions.

Followup to r35004: Refactor some pack path conditionals into a helper

function.

* subversion/libsvn_fs_fs/fs_fs.c

(is_packed_rev): Move in the file.

(path_rev_absolute): New.

(open_pack_or_rev_file, svn_fs_fs__set_revision_proplist, commit_body):

Use the new function.

Fix a FSFS packing bug where an incorrect path was used to duplicate

permissions. (There will be a followup commit to refactor some common

code which this duplicates.)

* subversion/libsvn_fs_fs/fs_fs.c

(commit_body): Use the pack file path instead of the revision file, if

that revision is packed.

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

(create_python_hook_script): Use the 'windows' variable to determine

compatibility.

On the 'svnpatch-diff' branch:

Merge r34929:35001 from trunk.

  1. … 47 more files in changeset.
On the 'python-3-compatibility' branch:

Python 3 compatibility:

Update except statements.

* build/getversion.py:

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

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

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

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

* tools/dev/contribulyze.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/which-error.py:

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

* tools/hook-scripts/svn2feed.py:

* tools/hook-scripts/svnperms.py:

* tools/po/l10n-report.py:

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

* tools/server-side/svn-backup-dumps.py:

* tools/server-side/test_svn_server_log_parse.py: Use 'except exception as e'

instead of 'except exception, e'.

    • ?
    /branches/python-3-compatibility/tools/dev/iz/ff2csv.py
    • ?
    /branches/python-3-compatibility/build/getversion.py
  1. … 3 more files in changeset.
Create the 'python-3-compatibility' branch.

Update copyright years.

* build/win32/svn.rc:

* COPYING:

* packages/windows-innosetup/Pre.rtf:

* packages/windows-innosetup/svn.iss:

* subversion/bindings/swig/python/LICENSE_FOR_PYTHON_BINDINGS:

* subversion/libsvn_subr/opt.c:

* subversion/LICENSE:

* tools/dev/check-license.py:

* www/license-1.html:

* www/license-for-python-bindings.html: Update copyright years.

On the 'svnpatch-diff' branch:

Use svn_wc_add3() instead of deprecated svn_wc_add2().

* subversion/libsvn_client/patch.c

(merge_file_added, merge_dir_added): Use svn_wc_add3() instead of deprecated

svn_wc_add2().

On the 'svnpatch-diff' branch:

Use svn_client_args_to_target_array() instead of deprecated

svn_opt_args_to_target_array2().

* subversion/svn/patch-cmd.c

(svn_cl__patch): Use svn_client_args_to_target_array() instead of deprecated

svn_opt_args_to_target_array2().

On the 'svnpatch-diff' branch:

Use svn_io_file_checksum2() instead of deprecated svn_io_file_checksum().

Use svn_checksum_to_cstring_display() instead of deprecated

svn_md5_digest_to_cstring_display().

* subversion/libsvn_wc/diff.c

(close_file): Use svn_io_file_checksum2() instead of deprecated

svn_io_file_checksum(). Use svn_checksum_to_cstring_display() instead of

deprecated svn_md5_digest_to_cstring_display().

* subversion/tests/libsvn_subr/auth-test.c

(test_platform_specific_auth_providers): Fix test expectations.

Try to use `pkg-config neon` instead of `neon-config`.

* build/ac-macros/neon.m4

(SVN_LIB_NEON, SVN_NEON_CONFIG): Try to use `pkg-config neon`.

* configure.ac: Search for pkg-config before searching for Neon.

Fix 'svnadmin recover' of packed FSFS repositories.

* subversion/libsvn_fs_fs/fs_fs.c

(recover_get_largest_revision):

Use open_pack_or_rev_file() instead of svn_fs_fs__path_rev() to look

for the rev files.

(open_pack_or_rev_file):

Document the specific error returned for non-existing revision/pack files.

* TODO-1.6:

Add a parenthetical to each of the blocker items state who is currently

working on it. Also, remove issue #3343 from the optional list, if it

becomes a blocking item for release, we can revisit it.

French translation update.

* subversion/po/fr.po: use unbreakable spaces where appropriate.

French translation update for r34989.

* subversion/po/fr.po: po-update, 3 fuzzy and 2 new translations.

* subversion/po/ko.po:

Korean translation updated. (no fuzzy, 93 untranslated)

* Makefile.in

(check-clean): Delete subversion/tests/libsvn_fs_fs/test-repo-* directories.

* subversion/tests/libsvn_subr/hashdump-test.c

(test2):

* subversion/tests/libsvn_subr/string-test.c

(test12): Delete temporary files after using them.

* TODO-1.6: Add cmdline prompt in gnome_keyring handler as 1.6 blocker
Update BASH completion.

* tools/client-side/bash_completion

(_svn): Support '--config-option' option and 'svn propget --verbose'.

(_svnadmin): Support 'svnadmin pack'.

Fix an off-by-one error in 'svnadmin pack' which left a shard unpacked in

some circumstances. Not a terribly bad correctness bug, but still nice

to do, nonetheless.

Found by: danielsh

* subversion/tests/libsvn_fs_fs/fs-pack-test.c

(test_funcs): Mark the test as pass.

* subversion/libsvn_fs_fs/fs_fs.c

(svn_fs_fs__pack): Add one to the youngest revision to get the *number*

of revisions in the filesystem.

Add another packing test.

* subversion/tests/libsvn_fs_fs/fs-pack-test.c

(pack_even_filesystem): New test which checks packing in the scenario

where all current shards are full.

(test_funcs): Add new test as XFail.

A bit of refactoring in FSFS, no functional change.

* subversion/libsvn_fs_fs/fs_fs.c

(is_packed_rev): Abstract out a bit of magic for determining if a rev is

packed or not. This is a function and not a macro to make it easier

to grow, should we need more complex logic later.

(open_pack_or_rev_file, open_and_seek_revision, get_root_changes_offset,

get_root_changes_offset, svn_fs_fs__set_revision_proplist): Use the

new helper function.