Checkout Tools
  • last updated 10 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates

Changeset 1235773 is being indexed.

Add some clarifications to the Ev2 documentation, based on some IRC

discussions with danielsh.

* subversion/include/svn_editor.h:

(...): add a section on "Timing and State" to clarify how the

editing calls refer to the receiver's current state. provide a

couple examples.

Add a rotation API to Ev2, per the discussion started at:

http://s.apache.org/ev2-rotate

* subversion/include/svn_editor.h:

(...): update comments to discuss the rotate API

(svn_editor_cb_rotate_t): new callback type for rotations

(svn_editor_setcb_rotate): new callback setter

(svn_editor_cb_many_t): add a member callback for rotation

(svn_editor_rotate): new driving function for rotation

* subversion/libsvn_delta/editor.c:

(svn_editor_setcb_rotate, svn_editor_rotate): new

(svn_editor_setcb_many): copy the rotation callback

  1. … 1 more file in changeset.
* subversion/include/svn_editor.h:

Add some notes about the implementation plan.

* subversion/include/svn_editor.h: A few simple documentation updates.
* subversion/include/svn_editor.h: Typo fix, following r1197266.
* subversion/include/svn_editor.h:

Add a note about RFC 2119 compliance.

Use svn_kind_t in place of svn_node_kind_t in Ev2, and it's backward compat

code.

* subversion/include/svn_editor.h,

subversion/libsvn_delta/compat.c,

subversion/libsvn_delta/editor.c,

subversion/include/svn_delta.h:

s/svn_node_kind_/svn_kind_/

* subversion/libsvn_wc/update_editor.c

(fetch_kind_func): Update param type and simplify function.

  1. … 4 more files in changeset.
* subversion/include/svn_editor.h:

(Restrictons): more clarifications

Document more restrictions about driving Ev2 and clarify some other

comments.

* subversion/include/svn_editor.h:

(Restrictions): add docco about modifying nodes more than once

(svn_editor_move): fix my answer to stsp

(svn_editor_complete, svn_editor_abort): s/tree delta/edit/

Pass a file's new contents when it is first added. There is no reason to

require a separate set_text() call.

Adjust some assertions in the editor, based on the above.

* subversion/include/svn_editor.h:

(): adjust module docs to remove the need for set_text() after add_file().

(svn_editor_cb_add_file_t): add CHECKSUM and CONTENTS params.

(svn_editor_add_file): add CHECKSUM and CONTENTS params.

* subversion/libsvn_delta/compat.c:

(add_directory_cb): add CHECKSUM and CONTENTS params

* subversion/libsvn_delta/editor.c:

(svn_editor_t): remove the NEEDS_TEXT member

(svn_editor_create): do not initialize NEEDS_TEXT member

(svn_editor_add_directory): mark the directory as completed

(svn_editor_add_file): add CHECKSUM and CONTENTS params. pass them to

the callback. mark the file as completed, and skip the NEEDS_TEXT hash

setting.

(svn_editor_add_symlink): mark the symlink as completed

(svn_editor_add_absent): mark the absent node as completed

(svn_editor_set_text): no longer update the NEEDS_TEXT member

(svn_editor_move): ensure the source node has not been altered before.

do not mark the source as completed since a new node may be added.

also skip marking the destination since a set_props, set_text, or

set_target may arrive.

(svn_editor_complete, svn_editor_abort): make sure the editor has not

been marked as finish (avoid double calls)

  1. … 2 more files in changeset.
* subversion/include/svn_editor.h

(svn_editor_set_props): Update docstring in answer to a question, and remove

said question.

* subversion/include/svn_editor.h

(svn_editor_set_props): Add a couple of notes.

Some doxygen tweaks.

* subversion/include/svn_editor.h:

Explicitly link to existing datatypes and macros.

* subversion/include/svn_wc.h

(svn_wc_notify_t): Fix a busted link.

(svn_wc_info_t): Doc a few members.

  1. … 1 more file in changeset.
Move svn_editor.h to the public include directory, with the hopes of actually

implementing some of it by 1.8, and thereby fixing the build.

* subversion/include/svn_delta.h,

subversion/tests/libsvn_delta/editor-test.c,

subversion/libsvn_delta/editor.c:

Update references.

* subversion/include/private/svn_editor.h:

Move from here...

* subversion/include/svn_editor.h:

...to here.

  1. … 4 more files in changeset.
We don't want to publish the svn_editor API for 1.7. Move the header

into the private area.

* subversion/include/svn_editor.h:

(): moved to ...

* subversion/include/private/svn_editor.h:

(): ... here

* subversion/libsvn_delta/editor.c:

(): adjust svn_editor.h include to account for the move

  1. … 2 more files in changeset.
* subversion/include/svn_fs.h,

* subversion/include/svn_diff.h,

* subversion/include/svn_dav.h,

* subversion/include/svn_mergeinfo.h,

* subversion/include/svn_editor.h,

* subversion/include/svn_repos.h,

* subversion/include/svn_delta.h,

* subversion/include/svn_subst.h,

* subversion/include/svn_types.h,

* subversion/include/svn_config.h,

* subversion/include/svn_io.h,

* subversion/include/svn_wc.h,

* subversion/include/svn_cmdline.h,

* subversion/include/svn_client.h,

* subversion/include/svn_ra.h

Fix typos in comments.

  1. … 14 more files in changeset.
Once and for all, name all our anonymous struct/enum typedefs.

Follows up on r1040058, and with thanks to Danny Trebbien.

* everywhere:

Change 'typedef struct {} foo_t;' to 'typedef struct foo_t {} foo_t;'.

* subversion/libsvn_ra_serf/fake_sspi.h

(PSecurityFunctionTable, SecurityFunctionTable):

Manually effect the same change in the single pointer-to-struct typedef.

  1. … 95 more files in changeset.
In this revision a mass spelling correction OCCURRED.

* subversion/bindings/javahl/native/JNIUtil.h (JNIUtil),

subversion/include/svn_editor.h (svn_editor_t),

subversion/libsvn_subr/eol.c (svn_eol__detect_file_eol),

subversion/tests/cmdline/merge_tests.py (natural_history_filtering):

s/occured/occurred/ in comments.

* subversion/svn/export-cmd.c (svn_cl__export),

subversion/svn/switch-cmd.c (svn_cl__switch),

subversion/svn/update-cmd.c (svn_cl__update):

s/occured/occurred/ in an error message.

  1. … 6 more files in changeset.
* subversion/include/svn_editor.h: Ask a question.

* subversion/include/svn_editor.h:

(): answer stsp's question

* subversion/include/svn_editor.h: Ask a question about this API.

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.
Some more doxygen improvements.

* subversion/include/svn_editor.h,

subversion/include/svn_delta.h:

Explicitly link various doxygen entities.

  1. … 1 more file in changeset.
Scrub trailing whitespace throughout (see r35894).

  1. … 146 more files in changeset.
We no longer want to talk about a "tree delta" as a first-order concept.

Experience shows there is coupling between driver/receiver, such that a

tree delta is not an independent entity. The v2 interface is a

prototypical pattern for describing a set of changes to edit a *known*

target tree into a desired state. There will always be an underlying

coupling, but the editor interface helps to establish a calling pattern

and semantics which can be carried across these various pairings.

* subversion/include/svn_editor.h:

(...): in the docstrings, remove the "producer", "consumer", and the

"tree delta" concepts. Only talk about series of operations between a

driver and a receiver. Add some more history to place this interface.

* subversion/include/svn_editor.h: Comments -- additions, minor fixes and more

todos in editor v2's API docs. Checked doxygen syntax.

* subversion/include/svn_editor.h: Kick off editor-v2's documentation.

Copy-paste the intro from svn_delta_editor.h. Add comment groups and

start individual comments for structs and functions.

### Note, this is yet incomplete and unreviewed. More to follow.

editor v2: Also add REPLACES_REV arguments to "copy" and "move" callbacks,

as discussed in:

http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2382628

* subversion/include/svn_editor.h,

* subversion/libsvn_delta/editor.c

(svn_editor_copy, svn_editor_move): Add parameter REPLACES_REV.

### Documentation pending

  1. … 1 more file in changeset.
Enable an atomic replace in editor v2.

If you want to know why a revnum is chosen as replace indicator, read

notes/editor-v2.txt as of r38396 (later note).

* subversion/include/svn_editor.h

(svn_editor_add_directory_t, svn_editor_add_directory,

svn_editor_add_file_t, svn_editor_add_file,

svn_editor_add_symlink_t, svn_editor_add_symlink,

svn_editor_add_absent_t, svn_editor_add_absent):

Add parameter REPLACES_REV.

* subversion/libsvn_delta/editor.c

(svn_editor_add_directory,

svn_editor_add_file,

svn_editor_add_symlink,

svn_editor_add_absent):

Add parameter REPLACES_REV and pass to callbacks.

  1. … 1 more file 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.