malcolm in subversion

Change the name of the mergeinfo database to indexes.sqlite.

See thread starting at

* subversion/include/private/svn_fs_mergeinfo.h

(SVN_FS_MERGEINFO__DB_NAME): Change from 'mergeinfo.db' to 'indexes.sqlite'.

* subversion/libsvn_fs_fs/structure

(layout, formats): Update to refer to the new name.

Followup to r25869, returning (rather than ignoring) an exceptional error.

* subversion/libsvn_fs_fs/fs_fs.c

(get_and_increment_txn_key_body): If we are unable to update the

transaction-current file due to persistent ESTALE errors, return that

error to the caller rather than ignoring it.

* STATUS: Nominate r26018.

Followup to r26432: inline a short helper function into the only caller.

* subversion/libsvn_fs_fs/fs_fs.c

(svn_fs_fs__txn_mergeinfo): Remove, and merge content to...

(commit_body): ... here.

Remove the unused (uncallable) txn vtable entry 'get_mergeinfo', originally

introduced in r21528.

* subversion/libsvn_fs/fs-loader.h

(txn_vtable_t): Remove get_mergeinfo.

* subversion/libsvn_fs_base/revs-txns.c

(txn_vtable): Remove reference to svn_fs_base__txn_mergeinfo.

(svn_fs_base__txn_mergeinfo): Remove.

* subversion/libsvn_fs_fs/fs_fs.c

(txn_vtable): Remove reference to svn_fs_fs__txn_mergeinfo (which is used

elsewhere, and which will be fixed up in a following commit).

* subversion/include/svn_config.h

(SVN_CONFIG_DEFAULT_GLOBAL_IGNORES): Remove two redundant patterns. (Note

that, unlike many Unix shells, fnmatch will allow metacharacters to match

leading periods).

* STATUS: Nominate r26264.

Fix 'svn info $REPO_ROOT' for pre-1.2 svn:// servers.

(pre-1.2 svnserve doesn't provide a way to get information about the root).

If running non-recursively, return an error rather than doing nothing at all.

If running recursively, fix an uninitialised memory read that effectively

meant that recursion would terminate before doing anything useful.

Found by: Zing <>

* subversion/libsvn_client/info.c

(svn_client_info): Check whether the URL is the repository root URL as early

as possible, and return an error if we're not recursing. If we are

recursing, change where we jump to to avoid checking 'the_ent', which is

uninitialised at this point.

* STATUS: Nominate r26115.

Followup to r26249, fixing some incorrect documentation.

* subversion/libsvn_fs_fs/structure

(Transaction layout): Don't say that the transaction props file can be

missing, because it can't (except during initial transaction creation, but

that's an implementation detail).

* subversion/libsvn_fs_fs/fs_fs.c

(svn_fs_fs__change_txn_prop): Explain why we're testing for ENOENT here

when we don't test after other calls to get_txn_proplist().

FSFS: Improve the documentation of the filesystem's structure.

* subversion/libsvn_fs_fs/structure

(Layout): Mark directories, and document the existance of the mergeinfo

database. Fix grammar, and document the locking used for, the

transaction-current file.

(Filesystem formats): Document when the mergeinfo database and

transaction-current files are present.

(Transaction layout): Document the existence of the mergeinfo props, and

document when the various prop files exist.

* subversion/libsvn_subr/path.c

(svn_path_get_absolute): Don't canonicalise incoming paths, since this

function already requires canonical paths. Also stop roundtripping URL

paths from UTF-8 to APR encoding and back.

* subversion/include/svn_io.h

(svn_io_open_unique_file2): ensure the function's docstring is clear

about how it opens the file -- read/write and not just read.

Patch by: cacknin

Suggested by: glasser

Followup to r25384 - allow Serf to be found implicitly even when Neon is


* build/ac-macros/serf.m4

(SVN_LIB_SERF): Don't allow an enabled Neon to inhibit the search for Serf.

Provide clearer guidance around the (non) use of SVN_REVNUM_T_FMT.

* subversion/include/svn_types.h

(SVN_REVNUM_T_FMT): Clarify deprecation status, and explain what should be

used instead.

Fix the last remaining instance of SVN_REVNUM_T_FMT.

* contrib/client-side/svn-push/svn-push.c

(my_commit_callback): Use "%ld" rather than the deprecated SVN_REVNUM_T_FMT.

* STATUS: Vote for r23494.

* subversion/libsvn_ra_svn_client.c

(ra_svn_finish_report): Update call to use undeprecated function


* subversion/svn/main.c

(svn_cl__cmd_table): Grammar fix for the help text of 'svn delete'.

Prevent test predicates (such as svntest.is_ra_type_dav) from being used

before the command line has been parsed, highlighting easy-to-miss bugs

where the test predicate is mistakenly evaluated too early (such as in

a Skip() clause).

* subversion/tests/cmdline/svntest/

(): Consolidate option-derived global variables, add 'command_line_parsed'.

(_check_command_line_parsed): New. Raise an exception if the command

line hasn't yet been parsed.

(skip_test_when_no_authz_available, is_ra_type_dav, is_ra_type_svn,

is_fs_type_fsfs): Call _check_command_line_parsed().

(run_tests): Consolidate option parsing and set 'command_line_parsed'.

* www/security/CVE-2007-2448-advisory.txt

Fix typo, and public/private confusion.

Update CHANGES on 1.4.x with latest version from trunk.

* CHANGES (1.4.4): Bring up-to-date with all changes so far, and set a date.

Remove the 1.4.x-r24483 branch, merged in r25043.

Merge r24483 from trunk to the 1.4.x branch (via the 1.4.x-r24483 branch,

and including r24865). Stop mer'G'e notifications for locally modified files

unchanged by a merge.

Approved by: +1: pburba, dlr, cmpilato, +0: malcolm

* www/links.html: followup to r24918, fixing some incorrect links.

* www/links.html

Update "Practical Subversion" book link to reference the 2nd Edition.

* www/links.html

General housecleaning: update redirects, remove 404s, and so on.

Mostly prompted by r24916 and the W3C Link Checker.

* CHANGES (1.4.4): Bring up-to-date with all changes so far.

When creating svn-commit.tmp, treat the error 'read-only filesystem'

the same as 'access denied': switch to creating the temporary file in

the system temporary path instead.

* subversion/svn/util.c

(svn_cl__edit_externally): Add EROFS to the list of errors to check for.