subversion

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

Changeset 1854599 is being indexed.

Fix some Doxygen mark-up.
Tweak API documentation, reviewing API changes since 1.11.

Fix missing 'deprecated' tags, Doxygen mark-up, etc.

* subversion/libsvn_client/delete.c

(path_driver_cb_func,

single_repos_delete):

Update to use the recently revved svn_delta_path_driver3().

* CHANGES: Fix some typos.
* branches/1.9.x/STATUS: Update the r1854072 group proposal.
* branches/1.10.x/STATUS,

branches/1.11.x/STATUS: Add r1854216 to the r1854072 group.

Follow up to r1854072: Reduce the number of file-open operations on Windows.

* subversion/libsvn_subr/io.c (svn_io_dir_remove_nonrecursive):

On Windows, only remove the read-only flag from the directory after

the initial deletion failed.

Patch by: kotkov

Vote for the r1853761 backport proposal.
* branches/1.9.x/STATUS,

branches/1.10.x/STATUS,

branches/1.11.x/STATUS: Propose r1854072 et al.

* CHANGES: Record the fix for issue #4806.

Follow up to r1854072: Fix a typo in Windows-specific code.

* subversion/libsvn_subr/io.c (io_set_readonly_flag): Fix function signature.

Fix issue #4806: Remove on-disk trees with read-only directories in them.

* subversion/libsvn_subr/io.c

(io_set_perms): New; helper function for io_set_*_perms.

(io_set_file_perms): Use io_set_perms.

(io_set_dir_perms): New; like io_set_file_perms, but for directories.

(io_set_readonly_flag): New; helper function for setting the read-only flag.

(svn_io_set_file_read_only,

svn_io_set_file_read_write): Use io_set_readonly_flag.

(svn_io_remove_dir2): On Unix, make the parent directory writable before

trying to remove its children.

(svn_io_dir_remove_nonrecursive): On Windows, remove a directory's

read-only flag before trying to remove the directory.

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

(create_dir_tree): New helper function.

(test_rmtree_all_writable,

test_rmtree_file_readonly,

test_rmtree_dir_readonly,

test_rmtree_all_readonly): New test cases.

(test_funcs): Activate the new test cases.

* publish/contributing.html (educate): Mention all contact methods, not just mailing lists.
* publish/faq.html (#more-information): Improve mailing list & IRC info.
On branch swig-py3: Unify error message between py2 and py3

* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c

(read_handler_pyio): Remove IS_PY3 conditional by unifying error message

On branch swig-py3: Allow str return to svn_client_get_commit_log3_t callback

* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c:

(svn_swig_py_get_commit_log_func): Allow result as unicode object

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

(SubversionClientTestCase.make_log_message_func): New helper function

(SubversionClientTestCase.test_get_commit_log3_callback_accept_unicode):

New test case

(SubversionClientTestCase.test_get_commit_log3_callback_unicode_error):

New test case

* subversion/libsvn_client/shelf.c: Fix non-debug builds: remove SVN_DBG.
Remove the 'shelving-v3' branch, now it's reintegrated.
Reintegrate the 'shelving-v3' branch.
On the 'shelving-v3' branch: Catch up with trunk@1853898.
    • ?
    /branches/shelving-v3/subversion/libsvn_wc/wc-queries.sql
Change the shelf storage directory name from 'v2' to 'v3'.

Also remove the knowledge of the existence of a shelves directory from the

WC API, and instead just have knowledge of the 'experimental' features dir

at this level.

* subversion/include/private/svn_wc_private.h,

subversion/libsvn_wc/wcroot_anchor.c

(svn_wc__get_experimental_dir): Replacement for 'svn_wc__get_shelves_dir'.

* subversion/libsvn_client/shelf.c

(get_shelves_dir): New.

(shelf_construct,

svn_client__shelf_list): Use it.

* subversion/include/private/svn_client_mtcc.h

(svn_client__mtcc_commit): Improve documentation.

* STATUS: Nominate r1853761.
* STATUS: Nominate r1853761.
* STATUS: Nominate r1853761.
On the 'shelving-v3' branch: copy WC base using 'checkout' instead of 'cp -r'.

For now, this completely ignores the mixed-rev, switched-URL,

mixed-depth WC state, and performs a simple checkout from the repo.

Eventually it will need to recreate the exact base state, and will need to

read data from the user's WC instead of the repo for fast local operation.

* subversion/libsvn_client/shelf.c

(shelf_copy_base): Create shelf base WC by a simple checkout.

Fix an "unused static function" warning in non-maintainer mode builds.

* subversion/libsvn_subr/error.c

(err_abort): Define this function only if SVN_DEBUG is defined, so

an unused function warning is fixed.

Patch by: wuzhouhui

(log message tweaked by me)

On branch swig-py3: Follow-up to r1853592: Don't pass '-DPY3' argument to swig

PY3 macro introduced on r1849784 for swig context no longer used.

* build/ac-macros/swig.m4: Revert r1849784

On branch swig-py3: accept both of bytes/str for input char * arguments

* Replace typemap(in) for char * using 'parse' modifier with one using

function allows both of bytes/str in py2/py3 in libsvn_swig_py library

* Fix functions to convert Python objects into char pointer to accept

both of bytes/str object in py2/py3

* Fix to accept None as representation of NULL value on conversion

prop dict into apr_hash_t * and apr_array_header_t * of svn_props_t *

[In subversion/bindings/swig]

* core.i (%typemap(in) (const char *data, apr_size_t *len): Allow str

as well as bytes for data argment of svn_stream_write()

* include/svn_global.swg

(remove)(%typemap(in) char *, char const *, char * const,

char const * const): Move this typemap into include/svn_strings as

typemap (in) IN_STRING

* include/svn_string.swg (new)(%typemap(in) IN_STRING): replacement of

%typemap(in) char *, char const *, char * const, char const * const.

actual processing code is moved new svn_swig_py_string_to_cstring()

function in python/libsvn_swig_py/swigutil_py.c

* include/svn_types.swg (%typemap(in) const char *MAY_BE_NULL):

Move processing code into new svn_swig_py_string_to_cstring() function

in python/libsvn_swig_py/swigutil_py.c

* python/libsvn_swig_py/swigutil_py.c

(svn_swig_py_string_to_cstring): New function to convert Python

bytes or str into const char *, with better TypeError exception message

(svn_swig_py_string_type_exception): New function to construct

TypeError exception for new make_string_from_ob_maybe_null() function

(make_string_from_ob, make_svn_string_from_ob):

- Allow str as well as bytes for ob

- Don't raise TypeError exception because all callers don't expect it

(make_string_from_ob_maybe_null, make_svn_string_from_ob_maybe_null):

New function same as make_string_from_ob() and make_svn_string_fromob()

but allows None input represents NULL value and raise TypeError

if input value don't have appropriate type

(svn_swig_py_stringhash_from_dict, svn_swig_py_mergeinfo_from_dict,

svn_swig_py_proparray_from_dict, svn_swig_py_prophash_from_dict,

svn_swig_py_path_rev_hash_from_dict,

svn_swig_py_struct_ptr_hash_from_dict): separate check of key conversion

result and value conversion result

(svn_swig_py_proparray_from_dict, svn_swig_py_prophash_from_dict):

allow NULL for prop values

(svn_swig_py_unwrap_string):

- Allow str as well as bytes for source argument

(svn_swig_py_make_file):

- Allow str as well as bytes for py_file argument as file path

(svn_swig_py_auth_gnome_keyring_unlock_prompt_func):

- Use new function make_string_from_ob_maybe_null() instead of

make_string_from_ob() to check TypeError

- Report Python exception caused by Python callback function as

callback exception error

* python/libsvn_swig_py/swigutil_py.h

Expose new public function make_string_from_ob_maybe_null(), which is

used by typemap(in) char IN_STRING, typemap(in) const char *MAY_BY_NULL

* python/tests/client.py

(SubversionClientTestCase.log_entry_receiver_whole): New helper

callback function for new SubversionClientTestCase.test_log5_revprops

(SubversionClientTestCase.test_log5_revprops): new test for

typemap(in) apr_array_t *STRINGLIST and its helper function

svn_swig_py_unwrap_string()

* python/tests/core.py

(SubversionCoreTestCase.test_stream_write_exception):

- As unicode input is now valid, use int value as invalid input

- Add case to be expected to cause UnicodeEncodeError

(SubversionCoreTestCase.test_stream_write_str):(Only for Python 3)

New test case for svn_stream_write() to pass str object as data argument

(SubversionCoreTestCase.test_stream_write_bytes):

Renamed from SubversionCoreTestCase.test_stream_write

* python/tests/run_all.py: Register new test module typemap

* python/tests/typemap.py: New unittest module for typemaps

(SubversionTypemapTestCase): New unittest subclass for unit test about

typemaps

(SubversionTypemapTestCase.test_char_ptr_in): New test case

(SubversionTypemapTestCase.test_char_ptr_in_unicode_exception):

New test case

(SubversionTypemapTestCase.test_char_ptr_may_be_null): New test case

(SubversionTypemapTestCase.test_char_ptr_may_be_null_unicode_exception):

New test case

(SubversionTypemapTestCase.test_make_string_from_ob): New test case

(SubversionTypemapTestCase.test_prophash_from_dict_null_value):

New test case

(SubversionTypemapTestCase.test_make-string_ob_unicode_exception):

New test case

(SubversionTypemapTestCase.test_make_svn_string_ob_unicode_exception):

New test case

(suite): New function to drive SubversionTypemapTestCase

Follow-up to r1853580: Fix test fallout.

* subversion/tests/libsvn_wc/wc-queries-test.c

(slow_statements): Add STMT_SELECT_COPIES_OF_REPOS_RELPATH here.