[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

[PATCH] Fix Doxygen comments -- @since and @deprecated should be at the end

From: Marcel Gosselin <marcel.gosselin_at_polymtl.ca>
Date: 2005-06-01 08:23:29 CEST

Following http://svn.haxx.se/dev/archive-2005-05/1383.shtml I decided to
go for an easy patch to the Doxygen documentation.
Here it is, enabling brief comments to appear miraculously in the
genrated doc.

Marcel Gosselin

-------
Fix Doxygen comments by placing @since and @deprecated lines at the
end. Doxygen will now be able to use the first line/sentence as the
brief description.

* subversion\include\svn_diff.h
* subversion\include\svn_fs.h
* subversion\include\svn_sorts.h
* subversion\include\svn_version.h
* subversion\include\svn_repos.h
* subversion\include\svn_delta.h
* subversion\include\svn_path.h
* subversion\include\svn_subst.h
* subversion\include\svn_xml.h
* subversion\include\svn_props.h
* subversion\include\svn_types.h
* subversion\include\svn_string.h
* subversion\include\svn_io.h
* subversion\include\svn_wc.h
* subversion\include\svn_client.h
* subversion\include\svn_hash.h
* subversion\include\svn_error.h
* subversion\include\svn_utf.h
* subversion\include\svn_opt.h
* subversion\include\svn_ra.h
---------

Index: subversion/include/svn_diff.h
===================================================================
--- subversion/include/svn_diff.h (revision 14905)
+++ subversion/include/svn_diff.h (working copy)
@@ -59,9 +59,9 @@
 
 
 /**
+ * Get libsvn_diff version information.
+ *
  * @since New in 1.1.
- *
- * Get libsvn_diff version information.
  */
 const svn_version_t *svn_diff_version (void);
 
Index: subversion/include/svn_fs.h
===================================================================
--- subversion/include/svn_fs.h (revision 14905)
+++ subversion/include/svn_fs.h (working copy)
@@ -38,9 +38,9 @@
 
 
 /**
+ * Get libsvn_fs version information.
+ *
  * @since New in 1.1.
- *
- * Get libsvn_fs version information.
  */
 const svn_version_t *svn_fs_version (void);
 
@@ -67,8 +67,7 @@
 /** @} */
 
 
-/** @since New in 1.2.
- *
+/**
  * Callers should invoke this function to initialize global state in
  * the FS library before creating FS objects. If this function is
  * invoked, no FS objects may be created in another thread at the same
@@ -84,6 +83,8 @@
  * If this function is called multiple times before the pool passed to
  * the first call is destroyed or cleared, the later calls will have
  * no effect.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_fs_initialize (apr_pool_t *pool);
 
@@ -114,8 +115,6 @@
 
 
 /**
- * @since New in 1.1.
- *
  * Create a new, empty Subversion filesystem, stored in the directory
  * @a path, and return a pointer to it in @a *fs_p. @a path must not
  * currently exist, but its parent must exist. If @a fs_config is not
@@ -138,13 +137,13 @@
  * Otherwise, the BDB filesystem type is assumed. Once the filesystem
  * is created, its type will be recorded so that other functions will
  * know how to operate on it.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_fs_create (svn_fs_t **fs_p, const char *path,
                             apr_hash_t *fs_config, apr_pool_t *pool);
 
-/**
- * @since New in 1.1.
- *
+/**
  * Open a Subversion filesystem located in the directory @a path, and
  * return a pointer to it in @a *fs_p. If @a fs_config is not @c
  * NULL, the options it contains modify the behavior of the
@@ -162,33 +161,36 @@
  *
  * NOTE: you probably don't want to use this directly. Take a look at
  * svn_repos_open() instead.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_fs_open (svn_fs_t **fs_p, const char *path,
                           apr_hash_t *config, apr_pool_t *pool);
 
-/**
- * @since New in 1.1.
- *
+/**
  * Return the path to @a fs's repository, allocated in @a pool.
  * Note: this is just what was passed to svn_fs_create() or
  * svn_fs_open() -- might be absolute, might not.
+ *
+ * @since New in 1.1.
  */
 const char *svn_fs_path (svn_fs_t *fs, apr_pool_t *pool);
 
 /**
+ * Delete the filesystem at @a path.
+ *
  * @since New in 1.1.
- *
- * Delete the filesystem at @a path. */
+ */
 svn_error_t *svn_fs_delete_fs (const char *path, apr_pool_t *pool);
 
-/**
- * @since New in 1.1.
- *
+/**
  * Copy a possibly live Subversion filesystem from @a src_path to
  * @a dest_path. If @a clean is @c TRUE, perform cleanup on the
  * source filesystem as part of the copy operation; currently, this
  * means deleting copied, unused logfiles for a Berkeley DB source
  * filesystem.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_fs_hotcopy (const char *src_path, const char *dest_path,
                              svn_boolean_t clean, apr_pool_t *pool);
@@ -412,11 +414,11 @@
 
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * NOTE: This function is not guaranteed to work with all filesystem
  * types. There is currently no un-deprecated equivalent; contact the
  * Subversion developers if you have a need for it.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_fs_id_t *svn_fs_parse_id (const char *data,
                               apr_size_t len,
@@ -530,8 +532,7 @@
 #define SVN_FS_TXN_CHECK_LOCKS 0x00002
 /** @} */
 
-/** @since New in 1.2
- *
+/**
  * Begin a new transaction on the filesystem @a fs, based on existing
  * revision @a rev. Set @a *txn_p to a pointer to the new transaction.
  * When committed, this transaction will create a new revision.
@@ -546,6 +547,8 @@
  * don't want to call this directly. Instead, call
  * svn_repos_fs_begin_txn_for_commit(), which honors the
  * repository's hook configurations.
+ *
+ * @since New in 1.2
  */
 svn_error_t *svn_fs_begin_txn2 (svn_fs_txn_t **txn_p,
                                 svn_fs_t *fs,
@@ -554,10 +557,10 @@
                                 apr_pool_t *pool);
 
 
-/** @deprecated Provided for backward compatibility with svn 1.1 API.
- *
+/**
  * Same as svn_fs_begin_txn2(), but with @a flags set to 0.
  *
+ * @deprecated Provided for backward compatibility with svn 1.1 API.
  */
 svn_error_t *svn_fs_begin_txn (svn_fs_txn_t **txn_p,
                                svn_fs_t *fs,
@@ -1643,10 +1646,11 @@
 
 /** @} */
 
-/** @since New in 1.2.
- *
+/**
  * Append a textual list of all available FS modules to the stringbuf
  * @a output.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_fs_print_modules (svn_stringbuf_t *output,
                                    apr_pool_t *pool);
Index: subversion/include/svn_sorts.h
===================================================================
--- subversion/include/svn_sorts.h (revision 14905)
+++ subversion/include/svn_sorts.h (working copy)
@@ -90,13 +90,13 @@
 
 
 /**
- * @since New in 1.1.
- *
  * Compare two @c const char * paths, returning an integer greater
  * than, equal to, or less than 0, using the same comparison rules as
  * are used by svn_path_compare_paths().
  *
  * This function is compatible for use with qsort().
+ *
+ * @since New in 1.1.
  */
 int svn_sort_compare_paths (const void *a, const void *b);
 
Index: subversion/include/svn_version.h
===================================================================
--- subversion/include/svn_version.h (revision 14905)
+++ subversion/include/svn_version.h (working copy)
@@ -59,12 +59,12 @@
  */
 #define SVN_VER_MINOR 3
 
-/**
- * @since New in 1.1.
- *
+/**
  * Patch number.
  *
  * Modify for every released patch.
+ *
+ * @since New in 1.1.
  */
 #define SVN_VER_PATCH 0
 
@@ -136,11 +136,11 @@
 /* Version queries and compatibility checks */
 
 /**
- * @since New in 1.1.
- *
  * Version information. Each library contains a function called
  * svn_<i>libname</i>_version() that returns a pointer to a statically
  * allocated object of this type.
+ *
+ * @since New in 1.1.
  */
 typedef struct svn_version_t
 {
@@ -156,9 +156,9 @@
 } svn_version_t;
 
 /**
+ * Define a static svn_version_t object.
+ *
  * @since New in 1.1.
- *
- * Define a static svn_version_t object.
  */
 #define SVN_VERSION_DEFINE(name) \
   static const svn_version_t name = \
@@ -170,17 +170,15 @@
     } \
 
 /**
+ * Generate the implementation of a version query function.
+ *
  * @since New in 1.1.
- *
- * Generate the implementation of a version query function.
  */
 #define SVN_VERSION_BODY \
   SVN_VERSION_DEFINE (versioninfo); \
   return &versioninfo
 
 /**
- * @since New in 1.1.
- *
  * Check library version compatibility. Return #TRUE if the client's
  * version, given in @a my_version, is compatible with the library
  * version, provided in @a lib_version.
@@ -189,24 +187,26 @@
  * guarantees, but requires an exact match when linking to an
  * unreleased library. A development client is always compatible with
  * a previous released library.
+ *
+ * @since New in 1.1.
  */
 svn_boolean_t svn_ver_compatible (const svn_version_t *my_version,
                                   const svn_version_t *lib_version);
 
 /**
+ * Check if @a my_version and @a lib_version encode the same version number.
+ *
  * @since New in 1.2.
- *
- * Check if @a my_version and @a lib_version encode the same version number.
  */
 svn_boolean_t svn_ver_equal (const svn_version_t *my_version,
                              const svn_version_t *lib_version);
 
 
 /**
- * @since New in 1.1.
- *
  * An entry in the compatibility checklist.
  * @see svn_ver_check_list()
+ *
+ * @since New in 1.1.
  */
 typedef struct svn_version_checklist_t
 {
@@ -218,13 +218,13 @@
 
 
 /**
- * @since New in 1.1.
- *
  * Perform a series of version compatibility checks. Checks if @a
  * my_version is compatible with each entry in @a checklist. @a
  * checklist must end with an entry whose label is @c NULL.
  *
  * @see svn_ver_compatible()
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_ver_check_list (const svn_version_t *my_version,
                                  const svn_version_checklist_t *checklist);
@@ -232,9 +232,9 @@
 
 /* libsvn_subr doesn't have an svn_subr header, so put the prototype here. */
 /**
+ * Get libsvn_subr version information.
+ *
  * @since New in 1.1.
- *
- * Get libsvn_subr version information.
  */
 const svn_version_t *svn_subr_version (void);
 
Index: subversion/include/svn_repos.h
===================================================================
--- subversion/include/svn_repos.h (revision 14905)
+++ subversion/include/svn_repos.h (working copy)
@@ -39,9 +39,9 @@
 /* ---------------------------------------------------------------*/
 
 /**
+ * Get libsvn_repos version information.
+ *
  * @since New in 1.1.
- *
- * Get libsvn_repos version information.
  */
 const svn_version_t *svn_repos_version (void);
 
@@ -74,8 +74,6 @@
                                                 apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * A callback function type for use in svn_repos_get_file_revs().
  * @a baton is provided by the caller, @a path is the pathname of the file
  * in revision @a rev and @a rev_props are the revision properties.
@@ -87,7 +85,10 @@
  * delta for this and the previous revision.
  * @a pool may be used for temporary allocations, but you can't rely
  * on objects allocated to live outside of this particular call and the
- * immediately following calls to @a *delta_handler if any. */
+ * immediately following calls to @a *delta_handler if any.
+ *
+ * @since New in 1.1.
+ */
 typedef svn_error_t *(*svn_repos_file_rev_handler_t)
        (void *baton,
         const char *path,
@@ -171,8 +172,6 @@
                                  apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Run database recovery procedures on the repository at @a path,
  * returning the database to a consistent state. Use @a pool for all
  * allocation.
@@ -180,12 +179,12 @@
  * Acquires an @a exclusive lock on the repository, recovers the
  * database, and releases the lock. If an exclusive lock can't be
  * acquired, returns error.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *svn_repos_recover (const char *path, apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * Run database recovery procedures on the repository at @a path,
  * returning the database to a consistent state. Use @a pool for all
  * allocation.
@@ -200,6 +199,8 @@
  * If @a start_callback is not NULL, it will be called with @a
  * start_callback_baton as argument before the recovery starts, but
  * after the exclusive lock has been acquired.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_repos_recover2 (const char *path,
                                  svn_boolean_t nonblocking,
@@ -355,8 +356,7 @@
                         void *authz_read_baton,
                         apr_pool_t *pool);
 
-/** @since New in 1.2.
- *
+/**
  * Given a @a report_baton constructed by svn_repos_begin_report(), this
  * routine will build @a revision:@a path into the current transaction.
  * This routine is called multiple times to create a transaction that
@@ -374,6 +374,8 @@
  * be set to that token. Else, @a lock_token should be NULL.
  *
  * All temporary allocations are done in @a pool.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_repos_set_path2 (void *report_baton,
                                   const char *path,
@@ -382,9 +384,10 @@
                                   const char *lock_token,
                                   apr_pool_t *pool);
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
+/**
+ * Similar to svn_repos_set_path2(), but with @a lock_token set to @c NULL.
  *
- * Similar to svn_repos_set_path2(), but with @a lock_token set to @c NULL.
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 svn_error_t *svn_repos_set_path (void *report_baton,
                                  const char *path,
@@ -393,8 +396,6 @@
                                  apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Given a @a report_baton constructed by svn_repos_begin_report(),
  * this routine will build @a revision:@a link_path into the current
  * transaction at @a path. Note that while @a path is relative to the
@@ -409,6 +410,8 @@
  * should be set to that token. Else, @a lock_token should be NULL.
  *
  * All temporary allocations are done in @a pool.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_repos_link_path2 (void *report_baton,
                                    const char *path,
@@ -418,9 +421,10 @@
                                    const char *lock_token,
                                    apr_pool_t *pool);
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
+/**
+ * Similar to svn_repos_link_path2(), but with @a lock_token set to @c NULL.
  *
- * Similar to svn_repos_link_path2(), but with @a lock_token set to @c NULL.
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 svn_error_t *svn_repos_link_path (void *report_baton,
                                   const char *path,
@@ -564,8 +568,6 @@
 /* Making commits. */
 
 /**
- * @since New in 1.2.
- *
  * Return an @a editor and @a edit_baton to commit changes to @a session->fs,
  * beginning at location 'rev:@a base_path', where "rev" is the argument
  * given to open_root().
@@ -595,6 +597,8 @@
  * abort the commit transaction unless @a txn was supplied (not @c
  * NULL). Callers who supply their own transactions are responsible
  * for cleaning them up (either by committing them, or aborting them).
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_repos_get_commit_editor2 (const svn_delta_editor_t **editor,
                                            void **edit_baton,
@@ -610,10 +614,10 @@
 
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to svn_repos_get_commit_editor2(), but with @a txn always
  * set to @c NULL.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *svn_repos_get_commit_editor (const svn_delta_editor_t **editor,
                                           void **edit_baton,
@@ -663,12 +667,12 @@
 
 
 /**
- * @since New in 1.2.
- *
  * Set @a *dirent to an @c svn_dirent_t associated with @a path in @a
  * root. If @a path does not exist in @a root, set @a *dirent to
  * NULL. Use @a pool for memory allocation.
-*/
+ *
+ * @since New in 1.2.
+ */
 svn_error_t *
 svn_repos_stat (svn_dirent_t **dirent,
                 svn_fs_root_t *root,
@@ -689,8 +693,6 @@
                                                   apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * Call @a history_func (with @a history_baton) for each interesting
  * history location in the lifetime of @a path in @a fs, from the
  * youngest of @a end and @ start to the oldest. Only cross
@@ -704,6 +706,8 @@
  * history_func. If a pair is deemed unreadable, then do not send
  * them; instead, immediately stop traversing history and return
  * SVN_NO_ERROR.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *
 svn_repos_history2 (svn_fs_t *fs,
@@ -718,10 +722,10 @@
                     apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_repos_history2(), but with @a authz_read_func
  * and @a authz_read_baton always set to NULL.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *
 svn_repos_history (svn_fs_t *fs,
@@ -735,8 +739,6 @@
 
 
 /**
- * @since New in 1.1.
- *
  * Set @a *locations to be a mapping of the revisions to the paths of
  * the file @a fs_path present at the repository in revision
  * @a peg_revision, where the revisions are taken out of the array
@@ -753,6 +755,8 @@
  * SVN_NO_ERROR.
  *
  * @a pool is used for all allocations.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *
 svn_repos_trace_node_locations (svn_fs_t *fs,
@@ -780,8 +784,6 @@
 
 
 /**
- * @since New in 1.2.
- *
  * Invoke @a receiver with @a receiver_baton on each log message from
  * @a start to @a end in @a repos's filesystem. @a start may be greater
  * or less than @a end; this just controls whether the log messages are
@@ -823,6 +825,8 @@
  * See also the documentation for @c svn_log_message_receiver_t.
  *
  * Use @a pool for temporary allocations.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_repos_get_logs3 (svn_repos_t *repos,
@@ -840,8 +844,9 @@
 
 
 /**
+ * Same as svn_repos_get_logs3(), but with @a limit always set to 0.
+ *
  * @deprecated Provided for backward compatibility with the 1.1 API.
- * Same as svn_repos_get_logs3(), but with @a limit always set to 0.
  */
 svn_error_t *
 svn_repos_get_logs2 (svn_repos_t *repos,
@@ -856,11 +861,11 @@
                      void *receiver_baton,
                      apr_pool_t *pool);
 
-/**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
+/**
  * Same as svn_repos_get_logs2(), but with @a authz_read_func and
  * @a authz_read_baton always set to NULL.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *
 svn_repos_get_logs (svn_repos_t *repos,
@@ -880,8 +885,6 @@
 /* Retreiving multiple revisions of a file. */
 
 /**
- * @since New in 1.1.
- *
  * Retrieve a subset of the interesting revisions of a file @a path in
  * @a repos as seen in revision @a end. Invoke @a handler with
  * @a handler_baton as its first argument for each such revision.
@@ -906,7 +909,10 @@
  *
  * In a series of calls, the file contents for the first interesting revision
  * will be provided as a text delta against the empty file. In the following
- * calls, the delta will be against the contents for the previous call. */
+ * calls, the delta will be against the contents for the previous call.
+ *
+ * @since New in 1.1.
+ */
 svn_error_t *svn_repos_get_file_revs (svn_repos_t *repos,
                                       const char *path,
                                       svn_revnum_t start,
@@ -1039,9 +1045,7 @@
 
 /** @} */
 
-/**
- * @since New in 1.1.
- *
+/**
  * Like svn_fs_change_rev_prop(), but invoke the @a repos's pre- and
  * post-revprop-change hooks around the change. Use @a pool for
  * temporary allocations.
@@ -1055,6 +1059,8 @@
  * authz_read_baton) to validate the changed-paths associated with @a
  * rev. If the revision contains any unreadable changed paths, then
  * return SVN_ERR_AUTHZ_UNREADABLE.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_repos_fs_change_rev_prop2 (svn_repos_t *repos,
                                             svn_revnum_t rev,
@@ -1067,10 +1073,10 @@
                                             apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_repos_fs_change_rev_prop2(), but with the
  * @a authz_read_func parameter always NULL.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *svn_repos_fs_change_rev_prop (svn_repos_t *repos,
                                            svn_revnum_t rev,
@@ -1082,8 +1088,6 @@
 
 
 /**
- * @since New in 1.1.
- *
  * Set @a *value_p to the value of the property named @a propname on
  * revision @a rev in the filesystem opened in @a repos. If @a rev
  * has no property by that name, set @a *value_p to zero. Allocate
@@ -1095,6 +1099,8 @@
  * to zero unconditionally. If only some of the changed-paths are
  * unreadable, then allow 'svn:author' and 'svn:date' propvalues to be
  * fetched, but return 0 for any other property.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_repos_fs_revision_prop (svn_string_t **value_p,
                                          svn_repos_t *repos,
@@ -1107,8 +1113,6 @@
 
 
 /**
- * @since New in 1.1.
- *
  * Set @a *table_p to the entire property list of revision @a rev in
  * filesystem opened in @a repos, as a hash table allocated in @a
  * pool. The table maps <tt>char *</tt> property names to @c
@@ -1121,6 +1125,8 @@
  * hash. If only some of the changed-paths are unreadable, then return
  * an empty hash, except for 'svn:author' and 'svn:date' properties
  * (assuming those properties exist).
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_repos_fs_revision_proplist (apr_hash_t **table_p,
                                              svn_repos_t *repos,
@@ -1311,9 +1317,7 @@
   svn_repos_load_uuid_force
 };
 
-/**
- * @since New in 1.1.
- *
+/**
  * Dump the contents of the filesystem within already-open @a repos into
  * writable @a dumpstream. Begin at revision @a start_rev, and dump every
  * revision up through @a end_rev. Use @a pool for all allocation. If
@@ -1338,6 +1342,8 @@
  * If @a cancel_func is not @c NULL, it is called periodically with
  * @a cancel_baton as argument to see if the client wishes to cancel
  * the dump.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_repos_dump_fs2 (svn_repos_t *repos,
                                  svn_stream_t *dumpstream,
@@ -1352,10 +1358,10 @@
 
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_repos_dump_fs2(), but with the @a use_deltas
  * parameter always set to @c FALSE.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *svn_repos_dump_fs (svn_repos_t *repos,
                                 svn_stream_t *dumpstream,
@@ -1368,9 +1374,7 @@
                                 apr_pool_t *pool);
 
 
-/**
- * @since New in 1.2.
- *
+/**
  * Read and parse dumpfile-formatted @a dumpstream, reconstructing
  * filesystem revisions in already-open @a repos, handling uuids
  * in accordance with @a uuid_action.
@@ -1404,6 +1408,8 @@
  * If @a cancel_func is not @c NULL, it is called periodically with
  * @a cancel_baton as argument to see if the client wishes to cancel
  * the load.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_repos_load_fs2 (svn_repos_t *repos,
                                  svn_stream_t *dumpstream,
@@ -1417,10 +1423,10 @@
                                  apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_repos_load_fs2(), but with @a use_pre_commit_hook and
  * @a use_post_commit_hook always @c FALSE.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *svn_repos_load_fs (svn_repos_t *repos,
                                 svn_stream_t *dumpstream,
@@ -1432,10 +1438,11 @@
                                 apr_pool_t *pool);
 
 
-/**
+/**
+ * A vtable that is driven by svn_repos_parse_dumpstream2().
+ *
  * @since New in 1.1.
- *
- * A vtable that is driven by svn_repos_parse_dumpstream2(). */
+ */
 typedef struct svn_repos_parse_fns2_t
 {
   /** The parser has discovered a new revision record within the
@@ -1524,9 +1531,7 @@
 
 
 
-/**
- * @since New in 1.1.
- *
+/**
  * Read and parse dumpfile-formatted @a stream, calling callbacks in
  * @a parse_fns/@a parse_baton, and using @a pool for allocations.
  *
@@ -1548,6 +1553,8 @@
  *
  * This is enough knowledge to make it easy on vtable implementors,
  * but still allow expansion of the format: most headers are ignored.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *
 svn_repos_parse_dumpstream2 (svn_stream_t *stream,
@@ -1558,9 +1565,7 @@
                              apr_pool_t *pool);
 
 
-/**
- * @since New in 1.1.
- *
+/**
  * Set @a *parser and @a *parse_baton to a vtable parser which commits new
  * revisions to the fs in @a repos. The constructed parser will treat
  * UUID records in a manner consistent with @a uuid_action. Use @a pool
@@ -1576,6 +1581,8 @@
  *
  * Print all parsing feedback to @a outstream (if non-@c NULL).
  *
+ *
+ * @since New in 1.1.
  */
 svn_error_t *
 svn_repos_get_fs_build_parser2 (const svn_repos_parser_fns2_t **parser,
@@ -1589,11 +1596,11 @@
 
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * A vtable that is driven by svn_repos_parse_dumpstream().
  * Similar to svn_repos_parser_fns2_t except that it lacks
  * the delete_node_property and apply_textdelta callbacks.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 typedef struct svn_repos_parse_fns_t
 {
@@ -1632,10 +1639,10 @@
 
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_repos_parse_dumpstream2(), but uses the more limited
  * @c svn_repos_parser_fns_t vtable type.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *
 svn_repos_parse_dumpstream (svn_stream_t *stream,
@@ -1647,10 +1654,10 @@
 
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_repos_get_fs_build_parser2(), but yields the more
  * limited svn_repos_parser_fns_t vtable type.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *
 svn_repos_get_fs_build_parser (const svn_repos_parser_fns_t **parser,
Index: subversion/include/svn_delta.h
===================================================================
--- subversion/include/svn_delta.h (revision 14905)
+++ subversion/include/svn_delta.h (working copy)
@@ -42,9 +42,9 @@
 
 
 /**
+ * Get libsvn_delta version information.
+ *
  * @since New in 1.1.
- *
- * Get libsvn_delta version information.
  */
 const svn_version_t *svn_delta_version (void);
 
@@ -227,15 +227,15 @@
                   apr_pool_t *pool);
 
 
-/**
- * @since New in 1.1.
- *
+/**
  * Return a writable stream which, when fed target data, will send
  * delta windows to @a handler/@a handler_baton which transform the
  * data in @a source to the target data. As usual, the window handler
  * will receive a NULL window to signify the end of the window stream.
  * The stream handler functions will read data from @a source as
  * necessary.
+ *
+ * @since New in 1.1.
  */
 svn_stream_t *svn_txdelta_target_push (svn_txdelta_window_handler_t handler,
                                        void *handler_baton,
@@ -337,30 +337,32 @@
                                          apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * Read and parse one delta window in svndiff format from the
  * readable stream @a stream and place it in @a *window, allocating
  * the result in @a pool. The caller must take responsibility for
  * stripping off the four-byte 'SVN@<ver@>' header at the beginning of
  * the svndiff document before reading the first window, and must
  * provide the version number (the value of the fourth byte) to each
- * invocation of this routine with the @a svndiff_version argument. */
+ * invocation of this routine with the @a svndiff_version argument.
+ *
+ * @since New in 1.1.
+ */
 svn_error_t *svn_txdelta_read_svndiff_window (svn_txdelta_window_t **window,
                                               svn_stream_t *stream,
                                               int svndiff_version,
                                               apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * Skip one delta window in svndiff format in the file @a file. and
  * place it in @a *window, allocating the result in @a pool. The
  * caller must take responsibility for stripping off the four-byte
  * 'SVN@<ver@>' header at the beginning of the svndiff document before
  * reading or skipping the first window, and must provide the version
  * number (the value of the fourth byte) to each invocation of this
- * routine with the @a svndiff_version argument. */
+ * routine with the @a svndiff_version argument.
+ *
+ * @since New in 1.1.
+ */
 svn_error_t *svn_txdelta_skip_svndiff_window (apr_file_t *file,
                                               int svndiff_version,
                                               apr_pool_t *pool);
Index: subversion/include/svn_path.h
===================================================================
--- subversion/include/svn_path.h (revision 14905)
+++ subversion/include/svn_path.h (working copy)
@@ -333,11 +333,11 @@
 
 
 /**
- * @since New in 1.1.
- *
  * Test to see if a backpath, i.e. '..', is present in @a path.
  * If not, return @c FALSE.
  * If so, return @c TRUE.
+ *
+ * @since New in 1.1.
  */
 svn_boolean_t svn_path_is_backpath_present (const char *path);
 
@@ -360,9 +360,7 @@
                                const char *path2,
                                apr_pool_t *pool);
 
-/**
- * @since New in 1.2.
- *
+/**
  * Check whether @a path is a valid Subversion path.
  *
  * A valid Subversion pathname is a UTF-8 string without control
@@ -375,6 +373,8 @@
  *
  * Return @c SVN_NO_ERROR if valid and @c SVN_ERR_FS_PATH_SYNTAX if
  * invalid.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_path_check_valid (const char *path, apr_pool_t *pool);
 
@@ -409,23 +409,24 @@
                                         apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * Convert @a iri (Internationalized URI) to an URI.
  * The return value may be the same as @a iri if it was already
- * a URI. Else, allocate the return value in @a pool. */
+ * a URI. Else, allocate the return value in @a pool.
+ *
+ * @since New in 1.1.
+ */
 const char *svn_path_uri_from_iri (const char *iri,
                                    apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * URI-encode certain characters in @a uri that are not valid in an URI, but
  * doesn't have any special meaning in @a uri at their positions. If no
  * characters need escaping, just return @a uri.
  *
  * NOTE: Currently, this function escapes <, >, ", space, {, }, |, \, ^, and `.
  * This may be extended in the future to do context-dependent escaping.
+ *
+ * @since New in 1.1.
  */
 const char *svn_path_uri_autoescape (const char *uri,
                                      apr_pool_t *pool);
Index: subversion/include/svn_subst.h
===================================================================
--- subversion/include/svn_subst.h (revision 14905)
+++ subversion/include/svn_subst.h (working copy)
@@ -188,8 +188,6 @@
 
 
 /**
- * @since New in 1.1.
- *
  * Convenience routine: a variant of svn_subst_translate_stream2()
  * which operates on files. (See previous docstring for details.) In
  * addition, it will create/detranslate a special file if @a special
@@ -204,6 +202,8 @@
  *
  * If @a eol_str and @a keywords are @c NULL, behavior is just a byte-for-byte
  * copy.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *
 svn_subst_copy_and_translate2 (const char *src,
@@ -216,10 +216,10 @@
                                apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_subst_copy_and_translate2() except that @a special is
  * always set to @c FALSE.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *
 svn_subst_copy_and_translate (const char *src,
Index: subversion/include/svn_xml.h
===================================================================
--- subversion/include/svn_xml.h (revision 14905)
+++ subversion/include/svn_xml.h (working copy)
@@ -118,8 +118,6 @@
                                   apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Return UTF-8 string @a string if it contains no characters that are
  * unrepresentable in XML. Else, return a copy of @a string,
  * allocated in @a pool, with each unrepresentable character replaced
@@ -135,6 +133,8 @@
  * may be other UTF-8 characters that are invalid in XML; see
  * http://subversion.tigris.org/servlets/ReadMsg?list=dev&msgNo=90591
  * and its thread for details.
+ *
+ * @since New in 1.2.
  */
 const char *svn_xml_fuzzy_escape (const char *string,
                                   apr_pool_t *pool);
Index: subversion/include/svn_props.h
===================================================================
--- subversion/include/svn_props.h (revision 14905)
+++ subversion/include/svn_props.h (working copy)
@@ -251,8 +251,8 @@
 /** The UUID of this entry's repository. */
 #define SVN_PROP_ENTRY_UUID SVN_PROP_ENTRY_PREFIX "uuid"
 
-/** @since New in 1.2.
- * The lock token for this entry. */
+/** The lock token for this entry.
+ * @since New in 1.2. */
 #define SVN_PROP_ENTRY_LOCK_TOKEN SVN_PROP_ENTRY_PREFIX "lock-token"
 
 /** When custom, user-defined properties are passed over the wire, they will
Index: subversion/include/svn_types.h
===================================================================
--- subversion/include/svn_types.h (revision 14905)
+++ subversion/include/svn_types.h (working copy)
@@ -407,8 +407,7 @@
 
 
 
-/** @since New in 1.2
- *
+/**
  * A lock object, for client & server to share.
  *
  * A lock represents the exclusive right to add, delete, or modify a
@@ -424,6 +423,8 @@
  * created with apr_pcalloc(), a default value of 0 is universally safe.
  *
  * @note in the current implementation, only files are lockable.
+ *
+ * @since New in 1.2
  */
 typedef struct svn_lock_t
 {
@@ -437,20 +438,22 @@
                                       If value is 0, lock will never expire. */
 } svn_lock_t;
 
-/** @since New in 1.2.
- *
+/**
  * Returns an @c svn_lock_t, allocated in @a pool with all fields initialized
  * to null values.
  *
  * @note To allow for extending the @c svn_lock_t structure in the future
  * releases, this function should always be used to allocate the structure.
+ *
+ * @since New in 1.2.
  */
 svn_lock_t *
 svn_lock_create (apr_pool_t *pool);
 
-/** @since New in 1.2.
+/**
+ * Return a deep copy of @a lock, allocated in @a pool.
  *
- * Return a deep copy of @a lock, allocated in @a pool.
+ * @since New in 1.2.
  */
 svn_lock_t *
 svn_lock_dup (const svn_lock_t *lock, apr_pool_t *pool);
Index: subversion/include/svn_string.h
===================================================================
--- subversion/include/svn_string.h (revision 14905)
+++ subversion/include/svn_string.h (working copy)
@@ -320,18 +320,21 @@
 svn_boolean_t svn_cstring_match_glob_list (const char *str,
                                            apr_array_header_t *list);
 
-/** @since New in 1.2.
- *
+/**
  * Return the number of line breaks in @a msg, allowing any kind of newline
  * termination (CR, LF, CRLF, or LFCR), even inconsistent.
+ *
+ * @since New in 1.2.
  */
 int svn_cstring_count_newlines (const char *msg);
 
-/** @since New in 1.2.
- *
+/**
  * Return a cstring which is the concatenation of @a strings (an array
  * of char *) each separated by @a separator. The returned string is
- * allocated from @a pool. */
+ * allocated from @a pool.
+ *
+ * @since New in 1.2.
+ */
 char *
 svn_cstring_join (apr_array_header_t *strings,
                   const char *separator,
Index: subversion/include/svn_io.h
===================================================================
--- subversion/include/svn_io.h (revision 14905)
+++ subversion/include/svn_io.h (working copy)
@@ -60,10 +60,10 @@
                                 apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * Like svn_io_check_path(), but also set *is_special to @c TRUE if
  * the path is not a normal file.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_io_check_special_path (const char *path,
                                         svn_node_kind_t *kind,
@@ -129,10 +129,10 @@
                                       apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * Like svn_io_open_unique_file(), except that instead of creating a
  * file, a symlink is generated that references the path @a dest.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_io_create_unique_link (const char **unique_name_p,
                                         const char *path,
@@ -142,10 +142,10 @@
 
 
 /**
- * @since New in 1.1.
- *
  * Set @a *dest to the path that the symlink at @a path references.
  * Allocate the string from @a pool.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_io_read_link (svn_string_t **dest,
                                const char *path,
@@ -168,13 +168,13 @@
                                svn_boolean_t copy_perms,
                                apr_pool_t *pool);
 
-/**
- * @since New in 1.1.
- *
+/**
  * Copy symbolic link @a src to @a dst atomically. Overwrite @a dst
  * if it exists, else create it. Both @a src and @a dst are
  * utf8-encoded filenames. After copying, the @a dst link will point
  * to the same thing @a src does.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_io_copy_link (const char *src,
                                const char *dst,
@@ -385,20 +385,18 @@
                                  apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Lock file at @a lock_file. If @a exclusive is TRUE,
  * obtain exclusive lock, otherwise obtain shared lock.
  * Lock will be automatically released when @a pool is cleared or destroyed.
  * Use @a pool for memory allocations.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *svn_io_file_lock (const char *lock_file,
                                svn_boolean_t exclusive,
                                apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * Lock file at @a lock_file. If @a exclusive is TRUE,
  * obtain exclusive lock, otherwise obtain shared lock.
  *
@@ -407,16 +405,18 @@
  *
  * Lock will be automatically released when @a pool is cleared or destroyed.
  * Use @a pool for memory allocations.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_io_file_lock2 (const char *lock_file,
                                 svn_boolean_t exclusive,
                                 svn_boolean_t nonblocking,
                                 apr_pool_t *pool);
 /**
- * @since New in 1.1.
- *
  * Flush any unwritten data from @a file to disk. Use @a pool for
  * memory allocations.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_io_file_flush_to_disk (apr_file_t *file,
                                         apr_pool_t *pool);
@@ -581,10 +581,10 @@
                      apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * Read the contents of the readable stream @a from and write them to the
  * writable stream @a to.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_stream_copy (svn_stream_t *from, svn_stream_t *to,
                               apr_pool_t *pool);
@@ -661,8 +661,7 @@
                               void *walk_baton,
                               apr_pool_t *pool);
 
-/** @since New in 1.3.
- *
+/**
  * Start @a cmd with @a args, using utf8-encoded @a path as working
  * directory. Connect @a cmd's stdin, stdout, and stderr to @a infile,
  * @a outfile, and @a errfile, except where they are null. Return the
@@ -674,6 +673,8 @@
  *
  * @a inherit sets whether the invoked program shall inherit its environment or
  * run "clean".
+ *
+ * @since New in 1.3.
  */
 svn_error_t *svn_io_start_cmd (apr_proc_t *cmd_proc,
                                const char *path,
@@ -685,8 +686,7 @@
                                apr_file_t *errfile,
                                apr_pool_t *pool);
 
-/** @since New in 1.3.
- *
+/**
  * Wait for the process @a *cmd_proc to complete and optionally retrieve
  * its exit code. @a cmd is used only in error messages.
  *
@@ -696,6 +696,8 @@
  * null, and the exit reason is not @c APR_PROC_CHECK_EXIT(), or if
  * @a exitcode is null and the exit code is non-zero, then an
  * @c SVN_ERR_EXTERNAL_PROGRAM error will be returned.
+ *
+ * @since New in 1.3.
  */
 svn_error_t *svn_io_wait_for_cmd (apr_proc_t *cmd_proc,
                                   const char *cmd,
@@ -882,14 +884,15 @@
                         apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * Same as svn_io_dir_make(), but attempts to set the sgid on the
  * directory on systems that support it. Does not return an error if
  * the attempt to set the sgid bit fails. On Unix filesystems,
  * setting the sgid bit on a directory ensures that files and
  * subdirectories created within inherit group ownership from the
- * parent instead of from the primary gid. */
+ * parent instead of from the primary gid.
+ *
+ * @since New in 1.1.
+ */
 svn_error_t *
 svn_io_dir_make_sgid (const char *path, apr_fileperms_t perm,
                       apr_pool_t *pool);
Index: subversion/include/svn_wc.h
===================================================================
--- subversion/include/svn_wc.h (revision 14905)
+++ subversion/include/svn_wc.h (working copy)
@@ -51,9 +51,9 @@
 
 
 /**
+ * Get libsvn_wc version information.
+ *
  * @since New in 1.1.
- *
- * Get libsvn_wc version information.
  */
 const svn_version_t *svn_wc_version (void);
 
@@ -73,8 +73,6 @@
 
 
 /**
- * @since New in 1.2.
- *
  * Return, in @a *adm_access, a pointer to a new access baton for the working
  * copy administrative area associated with the directory @a path. If
  * @a write_lock is true the baton will include a write lock, otherwise the
@@ -112,6 +110,8 @@
  * The first baton in a set, with @a associated passed as @c NULL, must have
  * the longest lifetime of all the batons in the set. This implies it must be
  * the root of the hierarchy.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_adm_open3 (svn_wc_adm_access_t **adm_access,
                                svn_wc_adm_access_t *associated,
@@ -123,9 +123,9 @@
                                apr_pool_t *pool);
 
 /**
+ * Similar to svn_wc_adm_open3(), but without cancellation support.
+ *
  * @deprecated Provided for backward compatibility with the 1.1 API.
- *
- * Similar to svn_wc_adm_open3(), but without cancellation support.
  */
 svn_error_t *svn_wc_adm_open2 (svn_wc_adm_access_t **adm_access,
                                svn_wc_adm_access_t *associated,
@@ -135,10 +135,10 @@
                                apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_wc_adm_open2(), but with @a tree_lock instead of
  * @a depth. @a depth is set to -1 if @a tree_lock is @c TRUE, else 0.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *svn_wc_adm_open (svn_wc_adm_access_t **adm_access,
                               svn_wc_adm_access_t *associated,
@@ -148,8 +148,6 @@
                               apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Checks the working copy to determine the node type of @a path. If
  * @a path is a versioned directory then the behaviour is like that of
  * svn_wc_adm_open3(), otherwise, if @a path is a file or does not
@@ -159,6 +157,8 @@
  * svn_wc_adm_open3() on the parent, except that if the open fails,
  * then the returned SVN_ERR_WC_NOT_DIRECTORY error refers to @a path,
  * not to @a path's parent.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_adm_probe_open3 (svn_wc_adm_access_t **adm_access,
                                      svn_wc_adm_access_t *associated,
@@ -170,10 +170,10 @@
                                      apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to svn_wc_adm_probe_open3() without the cancel
  * functionality.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *svn_wc_adm_probe_open2 (svn_wc_adm_access_t **adm_access,
                                      svn_wc_adm_access_t *associated,
@@ -183,10 +183,10 @@
                                      apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_wc_adm_probe_open2(), but with @a tree_lock instead of
  * @a depth. @a depth is set to -1 if @a tree_lock is @c TRUE, else 0.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *svn_wc_adm_probe_open (svn_wc_adm_access_t **adm_access,
                                     svn_wc_adm_access_t *associated,
@@ -196,8 +196,6 @@
                                     apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Open access batons for @a path and return in @a *anchor_access and
  * @a *target the anchor and target required to drive an editor. Return
  * in @a *target_access the access baton for the target, which may be the
@@ -213,6 +211,8 @@
  *
  * This function is essentially a combination of svn_wc_adm_open3() and
  * svn_wc_get_actual_target(), with the emphasis on reducing physical IO.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_wc_adm_open_anchor (svn_wc_adm_access_t **anchor_access,
@@ -252,8 +252,6 @@
                                         apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Try various ways to obtain an access baton for @a path.
  *
  * First, try to obtain @a *adm_access via svn_wc_adm_probe_retrieve(),
@@ -274,6 +272,8 @@
  * if the client has cancelled the operation.
  *
  * Use @a pool only for local processing, not to allocate @a *adm_access.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_adm_probe_try3 (svn_wc_adm_access_t **adm_access,
                                     svn_wc_adm_access_t *associated,
@@ -285,10 +285,10 @@
                                     apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to svn_wc_adm_probe_try3() without the cancel
  * functionality.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *svn_wc_adm_probe_try2 (svn_wc_adm_access_t **adm_access,
                                     svn_wc_adm_access_t *associated,
@@ -298,10 +298,10 @@
                                     apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_wc_adm_probe_try2(), but with @a tree_lock instead of
  * @a depth. @a depth is set to -1 if @a tree_lock is @c TRUE, else 0.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *svn_wc_adm_probe_try (svn_wc_adm_access_t **adm_access,
                                    svn_wc_adm_access_t *associated,
@@ -402,8 +402,6 @@
 
 
 /**
- * @since New in 1.1.
- *
  * If @a externals_p is non-null, set @a *externals_p to an array of
  * @c svn_wc_external_item_t * objects based on @a desc.
  *
@@ -418,6 +416,8 @@
  * Allocate the table, keys, and values in @a pool.
  *
  * Use @a parent_directory only in constructing error strings.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *
 svn_wc_parse_externals_description2 (apr_array_header_t **externals_p,
@@ -427,12 +427,12 @@
 
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_wc_parse_externals_description2(), but returns the
  * parsed externals in a hash instead of an array. This function
  * should not be used, as storing the externals in a hash causes their
  * order of evaluation to be not easily identifiable.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *
 svn_wc_parse_externals_description (apr_hash_t **externals_p,
@@ -532,16 +532,16 @@
   /** Processed a single revision's blame. */
   svn_wc_notify_blame_revision,
 
- /** @since New in 1.2. Locking a path. */
+ /** Locking a path. @since New in 1.2.*/
   svn_wc_notify_locked,
 
- /** @since New in 1.2. Unlocking a path. */
+ /** Unlocking a path. @since New in 1.2.*/
   svn_wc_notify_unlocked,
 
- /** @since New in 1.2. Failed to lock a path. */
+ /** Failed to lock a path. @since New in 1.2.*/
   svn_wc_notify_failed_lock,
 
- /** @since New in 1.2. Failed to unlock a path. */
+ /** Failed to unlock a path. @since New in 1.2.*/
   svn_wc_notify_failed_unlock
 } svn_wc_notify_action_t;
 
@@ -574,10 +574,10 @@
 
 } svn_wc_notify_state_t;
 
-/** @since New in 1.2.
- *
+/**
  * What happened to a lock during an operation.
  *
+ * @since New in 1.2.
  */
 typedef enum svn_wc_notify_lock_state_t {
   svn_wc_notify_lock_state_inapplicable = 0,
@@ -590,8 +590,7 @@
   svn_wc_notify_lock_state_unlocked
 } svn_wc_notify_lock_state_t;
 
-/** @since New in 1.2.
- *
+/**
  * Structure used in the @c svn_wc_notify_func2_t function.
  *
  * @c path is either absolute or relative to the current working directory
@@ -634,7 +633,10 @@
  * give a less informative notification).
  *
  * @note Callers of notification functions should use svn_wc_create_notify()
- * to create structures of this type to allow for extensibility. */
+ * to create structures of this type to allow for extensibility.
+ *
+ * @since New in 1.2.
+ */
 typedef struct svn_wc_notify_t {
   const char *path;
   svn_wc_notify_action_t action;
@@ -651,28 +653,29 @@
      and svn_wc_dup_notify. */
 } svn_wc_notify_t;
 
-/** @since New in 1.2.
- *
+/**
  * Allocate an @c svn_wc_notify_t structure in @a pool, initialize and return
  * it.
  *
  * Set the @c path field of the created struct to @a path, and @c action to
  * @a action. Set all other fields to their @c _unknown, @c NULL or
  * invalid value, respectively.
+ *
+ * @since New in 1.2.
  */
 svn_wc_notify_t *
 svn_wc_create_notify (const char *path, svn_wc_notify_action_t action,
                       apr_pool_t *pool);
 
-/** @since New in 1.2.
+/**
+ * Return a deep copy of @a notify, allocated in @a pool.
  *
- * Return a deep copy of @a notify, allocated in @a pool.
+ * @since New in 1.2.
  */
 svn_wc_notify_t *
 svn_wc_dup_notify (const svn_wc_notify_t *notify, apr_pool_t *pool);
 
-/** @since New in 1.2.
- *
+/**
  * Notify the world that @a notify->action has happened to @a notify->path.
  *
  * Recommendation: callers of @c svn_wc_notify_func2_t should avoid
@@ -684,15 +687,19 @@
  * been received, and then invoke the notify func once (from within
  * an @c svn_delta_editor_t's close_file(), for example), passing
  * the appropriate @a notify->content_state and @a notify->prop_state flags.
+ *
+ * @since New in 1.2.
  */
 typedef void (*svn_wc_notify_func2_t) (void *baton,
                                        const svn_wc_notify_t *notify,
                                        apr_pool_t *pool);
 
-/** @deprecated Provided for backward compatibility with the 1.1 API.
+/**
+ * Similar to @c svn_wc_notify_func2_t, but takes the information as arguments
+ * instead of struct fields.
  *
- * Similar to @c svn_wc_notify_func2_t, but takes the information as arguments
- * instead of struct fields. */
+ * @deprecated Provided for backward compatibility with the 1.1 API.
+ */
 typedef void (*svn_wc_notify_func_t) (void *baton,
                                       const char *path,
                                       svn_wc_notify_action_t action,
@@ -707,11 +714,11 @@
 
 
 /**
- * @since New in 1.2.
- *
  * A callback vtable invoked by our diff-editors, as they receive
  * diffs from the server. 'svn diff' and 'svn merge' both implement
  * their own versions of this table.
+ *
+ * @since New in 1.2.
  */
 typedef struct svn_wc_diff_callbacks2_t
 {
@@ -882,10 +889,10 @@
 } svn_wc_diff_callbacks2_t;
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to @c svn_wc_diff_callbacks2_t, but with file additions/content
  * changes and property changes split into different functions.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 typedef struct svn_wc_diff_callbacks_t
 {
@@ -1128,17 +1135,21 @@
   /** last commit author of this item */
   const char *cmt_author;
 
- /** @since New in 1.2
- * lock token or NULL if path not locked in this WC */
+ /** lock token or NULL if path not locked in this WC
+ * @since New in 1.2
+ */
   const char *lock_token;
- /** @since New in 1.2
- * lock owner, or NULL if not locked in this WC */
+ /** lock owner, or NULL if not locked in this WC
+ * @since New in 1.2
+ */
   const char *lock_owner;
- /** @since New in 1.2
- * lock comment or NULL if not locked in this WC or no comment */
+ /** lock comment or NULL if not locked in this WC or no comment
+ * @since New in 1.2
+ */
   const char *lock_comment;
- /** @since New in 1.2
- * Lock creation date or 0 if not locked in this WC */
+ /** Lock creation date or 0 if not locked in this WC
+ * @since New in 1.2
+ */
   apr_time_t lock_creation_date;
 
   /* IMPORTANT: If you extend this structure, check svn_wc_entry_dup() to see
@@ -1260,8 +1271,6 @@
 
 
 /**
- * @since New in 1.2.
- *
  * A generic entry-walker.
  *
  * Do a recursive depth-first entry-walk beginning on @a path, which can
@@ -1285,6 +1294,8 @@
  * subsequently as the '.' entry within itself. The two calls can be
  * distinguished by looking for @c SVN_WC_ENTRY_THIS_DIR in the 'name'
  * field of the entry.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_walk_entries2 (const char *path,
                                    svn_wc_adm_access_t *adm_access,
@@ -1297,9 +1308,9 @@
                                    apr_pool_t *pool);
 
 /**
+ * Similar to svn_wc_walk_entries2(), but without cancellation support.
+ *
  * @deprecated Provided for backward compatibility with the 1.0 API.
- *
- * Similar to svn_wc_walk_entries2(), but without cancellation support.
  */
 svn_error_t *svn_wc_walk_entries (const char *path,
                                   svn_wc_adm_access_t *adm_access,
@@ -1420,8 +1431,7 @@
     svn_wc_status_incomplete
 };
 
-/** @since New in 1.2.
- *
+/**
  * Structure for holding the "status" of a working copy item.
  *
  * The item's entry data is in @a entry, augmented and possibly shadowed
@@ -1431,6 +1441,8 @@
  * @note Fields may be added to the end of this structure in future
  * versions. Therefore, users shouldn't allocate structures of this
  * type, to preserve binary compatibility.
+ *
+ * @since New in 1.2.
  */
 typedef struct svn_wc_status2_t
 {
@@ -1469,9 +1481,10 @@
 
 
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
+/**
+ * Same as svn_wc_status2_t, but without the svn_lock_t 'repos_lock' field.
  *
- * Same as svn_wc_status2_t, but without the svn_lock_t 'repos_lock' field.
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 typedef struct svn_wc_status_t
 {
@@ -1507,25 +1520,26 @@
 
 
 
-/** @since New in 1.2.
- *
+/**
  * Return a deep copy of the @a orig_stat status structure, allocated
  * in @a pool.
+ *
+ * @since New in 1.2.
  */
 svn_wc_status2_t *svn_wc_dup_status2 (svn_wc_status2_t *orig_stat,
                                       apr_pool_t *pool);
 
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
+/**
+ * Same as svn_wc_dup_status2(), but for older svn_wc_status_t structures.
  *
- * Same as svn_wc_dup_status2(), but for older svn_wc_status_t structures.
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 svn_wc_status_t *svn_wc_dup_status (svn_wc_status_t *orig_stat,
                                     apr_pool_t *pool);
 
 
-/** @since New in 1.2.
- *
+/**
  * Fill @a *status for @a path, allocating in @a pool, with the exception
  * of the @c repos_rev field, which is normally filled in by the caller.
  * @a adm_access must be an access baton for @a path.
@@ -1550,6 +1564,8 @@
  * The other available results for the @c text_status field are more
  * straightforward in their meanings. See the comments on the
  * @c svn_wc_status_kind structure for some hints.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_status2 (svn_wc_status2_t **status,
                              const char *path,
@@ -1557,9 +1573,10 @@
                              apr_pool_t *pool);
 
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
+/**
+ * Same as svn_wc_status2(), but for older svn_wc_status_t structures.
  *
- * Same as svn_wc_status2(), but for older svn_wc_status_t structures.
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 svn_error_t *svn_wc_status (svn_wc_status_t **status,
                             const char *path,
@@ -1569,28 +1586,29 @@
 
 
 
-/** @since New in 1.2.
- *
+/**
  * A callback for reporting a @a status about @a path.
  *
  * @a baton is a closure object; it should be provided by the
  * implementation, and passed by the caller.
+ *
+ * @since New in 1.2.
  */
 typedef void (*svn_wc_status_func2_t) (void *baton,
                                        const char *path,
                                        svn_wc_status2_t *status);
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
+/**
+ * Same as svn_wc_status_func2_t(), but for older svn_wc_status_t structures.
  *
- * Same as svn_wc_status_func2_t(), but for older svn_wc_status_t structures.
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 typedef void (*svn_wc_status_func_t) (void *baton,
                                       const char *path,
                                       svn_wc_status_t *status);
 
 
-/** @since New in 1.2.
- *
+/**
  * Set @a *editor and @a *edit_baton to an editor that generates @c
  * svn_wc_status2_t structures and sends them through @a status_func /
  * @a status_baton. @a anchor is an access baton, with a tree lock,
@@ -1637,6 +1655,8 @@
  *
  * Allocate the editor itself in @a pool, but the editor does temporary
  * allocations in a subpool of @a pool.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_get_status_editor2 (const svn_delta_editor_t **editor,
                                         void **edit_baton,
@@ -1656,10 +1676,12 @@
                                         apr_pool_t *pool);
 
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
+/**
+ * Same as svn_wc_get_status_editor2(), but with @a set_locks_baton set
+ * to @c NULL, and taking a deprecated svn_wc_status_func_t argument.
  *
- * Same as svn_wc_get_status_editor2(), but with @a set_locks_baton set
- * to @c NULL, and taking a deprecated svn_wc_status_func_t argument. */
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
+ */
 svn_error_t *svn_wc_get_status_editor (const svn_delta_editor_t **editor,
                                        void **edit_baton,
                                        svn_revnum_t *edit_revision,
@@ -1677,8 +1699,7 @@
                                        apr_pool_t *pool);
 
 
-/** @since New in 1.2.
- *
+/**
  * Associate @a locks, a hash table mapping <tt>const char*</tt>
  * absolute repository paths to <tt>svn_lock_t</tt> objects, with a
  * @a set_locks_baton returned by an earlier call to
@@ -1688,6 +1709,8 @@
  * @note @a locks will not be copied, so it must be valid throughout the
  * edit. @a pool must also not be destroyed or cleared before the edit is
  * finished.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_wc_status_set_repos_locks (void *set_locks_baton,
@@ -1698,8 +1721,7 @@
 /** @} */
 
 
-/** @since New in 1.2.
- *
+/**
  * Copy @a src to @a dst_basename in @a dst_parent, and schedule
  * @a dst_basename for addition to the repository, remembering the copy
  * history.
@@ -1720,6 +1742,8 @@
  * Important: this is a variant of svn_wc_add(). No changes will happen
  * to the repository until a commit occurs. This scheduling can be
  * removed with svn_client_revert().
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_copy2 (const char *src,
                            svn_wc_adm_access_t *dst_parent,
@@ -1730,9 +1754,10 @@
                            void *notify_baton,
                            apr_pool_t *pool);
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
+/**
+ * Similar to svn_wc_copy2(), but takes an @c svn_wc_notify_func_t instead.
  *
- * Similar to svn_wc_copy2(), but takes an @c svn_wc_notify_func_t instead.
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 svn_error_t *svn_wc_copy (const char *src,
                           svn_wc_adm_access_t *dst_parent,
@@ -1743,8 +1768,7 @@
                           void *notify_baton,
                           apr_pool_t *pool);
 
-/** @since New in 1.2.
- *
+/**
  * Schedule @a path for deletion, it will be deleted from the repository on
  * the next commit. If @a path refers to a directory, then a recursive
  * deletion will occur. @a adm_access must hold a write lock for the parent
@@ -1763,6 +1787,8 @@
  * For each path marked for deletion, @a notify_func will be called with
  * the @a notify_baton and that path. The @a notify_func callback may be
  * @c NULL if notification is not needed.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_delete2 (const char *path,
                              svn_wc_adm_access_t *adm_access,
@@ -1772,9 +1798,10 @@
                              void *notify_baton,
                              apr_pool_t *pool);
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
+/**
+ * Similar to svn_wc_delete2(), but takes an @c svn_wc_notify_func_t instead.
  *
- * Similar to svn_wc_delete2(), but takes an @c svn_wc_notify_func_t instead.
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 svn_error_t *svn_wc_delete (const char *path,
                             svn_wc_adm_access_t *adm_access,
@@ -1785,8 +1812,7 @@
                             apr_pool_t *pool);
 
 
-/** @since New in 1.2.
- *
+/**
  * Put @a path under version control by adding an entry in its parent,
  * and, if @a path is a directory, adding an administrative area. The
  * new entry and anything under it is scheduled for addition to the
@@ -1838,6 +1864,8 @@
  *
  * ### Update: see "###" comment in svn_wc_add_repos_file()'s doc
  * string about this.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_add2 (const char *path,
                           svn_wc_adm_access_t *parent_access,
@@ -1849,9 +1877,10 @@
                           void *notify_baton,
                           apr_pool_t *pool);
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
+/**
+ * Similar to svn_wc_add2(), but takes an @c svn_wc_notify_func_t instead.
  *
- * Similar to svn_wc_add2(), but takes an @c svn_wc_notify_func_t instead.
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 svn_error_t *svn_wc_add (const char *path,
                          svn_wc_adm_access_t *parent_access,
@@ -1941,8 +1970,6 @@
 
 
 /**
- * @since New in 1.2.
- *
  * Assuming @a path is under version control and in a state of conflict,
  * then take @a path *out* of this state. If @a resolve_text is true then
  * any text conflict is resolved, if @a resolve_props is true then any
@@ -1969,6 +1996,8 @@
  * information to @c notify_func (if non-@c NULL.) If only text or only
  * property conflict resolution was requested, and it was successful, then
  * success gets reported.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_resolved_conflict2 (const char *path,
                                         svn_wc_adm_access_t *adm_access,
@@ -1982,10 +2011,10 @@
                                         apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_wc_resolved_conflict2(), but takes an
  * svn_wc_notify_func_t and doesn't have cancellation support.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *svn_wc_resolved_conflict (const char *path,
                                        svn_wc_adm_access_t *adm_access,
@@ -1999,7 +2028,7 @@
 
 /* Commits. */
 
-/** @since New in 1.2.
+/**
  * Bump a successfully committed absolute @a path to @a new_revnum after a
  * commit succeeds. @a rev_date and @a rev_author are the (server-side)
  * date and author of the new revision; one or both may be @c NULL.
@@ -2015,6 +2044,8 @@
  * If @a recurse is true and @a path is a directory, then bump every
  * versioned object at or under @a path. This is usually done for
  * copied trees.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_process_committed2 (const char *path,
                                         svn_wc_adm_access_t *adm_access,
@@ -2027,10 +2058,12 @@
                                         apr_pool_t *pool);
 
 
-/** @deprecated Provided for backwards compability with the 1.1 API.
+/**
+ * Similar to svn_wc_process_committed2(), but with @a remove_lock set to
+ * @c FALSE.
  *
- * Similar to svn_wc_process_committed2(), but with @a remove_lock set to
- * @c FALSE. */
+ * @deprecated Provided for backwards compability with the 1.1 API.
+ */
 svn_error_t *svn_wc_process_committed (const char *path,
                                        svn_wc_adm_access_t *adm_access,
                                        svn_boolean_t recurse,
@@ -2044,8 +2077,7 @@
 
 
 
-/** @since New in 1.2.
- *
+/**
  * Do a depth-first crawl in a working copy, beginning at @a path.
  *
  * Communicate the `state' of the working copy's revisions to
@@ -2072,6 +2104,8 @@
  * If @a traversal_info is non-null, then record pre-update traversal
  * state in it. (Caller should obtain @a traversal_info from
  * svn_wc_init_traversal_info().)
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_wc_crawl_revisions2 (const char *path,
@@ -2086,10 +2120,11 @@
                          svn_wc_traversal_info_t *traversal_info,
                          apr_pool_t *pool);
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
- *
+/**
  * Similar to svn_wc_crawl_revisions2(), but takes an svn_wc_notify_func_t
  * and a @c svn_reporter_t instead.
+ *
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_wc_crawl_revisions (const char *path,
@@ -2141,8 +2176,7 @@
 
 /* Update and update-like functionality. */
 
-/** @since New in 1.2.
- *
+/**
  * Set @a *editor and @a *edit_baton to an editor and baton for updating a
  * working copy.
  *
@@ -2175,6 +2209,7 @@
  * have their working timestamp set to the last-committed-time. If
  * FALSE, the working files will be touched with the 'now' time.
  *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_get_update_editor2 (svn_revnum_t *target_revision,
                                         svn_wc_adm_access_t *anchor,
@@ -2191,10 +2226,11 @@
                                         svn_wc_traversal_info_t *ti,
                                         apr_pool_t *pool);
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
- *
+/**
  * Similar to svn_wc_get_update_editor2(), but takes an svn_wc_notify_func_t
  * instead.
+ *
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 svn_error_t *svn_wc_get_update_editor (svn_revnum_t *target_revision,
                                        svn_wc_adm_access_t *anchor,
@@ -2211,8 +2247,7 @@
                                        svn_wc_traversal_info_t *ti,
                                        apr_pool_t *pool);
 
-/** @since New in 1.2.
- *
+/**
  * A variant of svn_wc_get_update_editor().
  *
  * Set @a *editor and @a *edit_baton to an editor and baton for "switching"
@@ -2249,6 +2284,7 @@
  * have their working timestamp set to the last-committed-time. If
  * FALSE, the working files will be touched with the 'now' time.
  *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_get_switch_editor2 (svn_revnum_t *target_revision,
                                         svn_wc_adm_access_t *anchor,
@@ -2266,11 +2302,13 @@
                                         svn_wc_traversal_info_t *ti,
                                         apr_pool_t *pool);
 
-/** @deprecated Provided for backwards compatibility with the 1.2 API.
- *
+/**
  * Similar to svn_wc_get_switch_editor2(), but takes an
  * @c svn_wc_notify_func_t instead.
- */
+ *
+ * @deprecated Provided for backwards compatibility with the 1.2 API.
+ *
+ /
 svn_error_t *svn_wc_get_switch_editor (svn_revnum_t *target_revision,
                                        svn_wc_adm_access_t *anchor,
                                        const char *target,
@@ -2331,8 +2369,6 @@
                               apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Set property @a name to @a value for @a path, or if @a value is
  * null, remove property @a name from @a path. @a adm_access is an
  * access baton with a write lock for @a path.
@@ -2349,6 +2385,8 @@
  * @a skip_checks is true.
  *
  * Use @a pool for temporary allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_prop_set2 (const char *name,
                                const svn_string_t *value,
@@ -2359,9 +2397,9 @@
 
 
 /**
+ * Like svn_wc_prop_set2(), but with @a skip_checks always false.
+ *
  * @deprecated Provided for backward compatibility with the 1.1 API.
- *
- * Like svn_wc_prop_set2(), but with @a skip_checks always false.
  */
 svn_error_t *svn_wc_prop_set (const char *name,
                               const svn_string_t *value,
@@ -2400,8 +2438,6 @@
 
 
 /**
- * @since New in 1.2.
- *
  * Return an @a editor/@a edit_baton for diffing a working copy against the
  * repository.
  *
@@ -2427,6 +2463,8 @@
  *
  * If @a cancel_func is non-null, it will be used along with @a cancel_baton
  * to periodically check if the client has canceled the operation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_get_diff_editor3 (svn_wc_adm_access_t *anchor,
                                       const char *target,
@@ -2444,10 +2482,11 @@
 
 
 /**
+ * Similar to svn_wc_get_diff_editor3(), but with an
+ * @c svn_wc_diff_callbacks_t instead of @c svn_wc_diff_callbacks2_t.
+ *
  * @deprecated Provided for backward compatibility with the 1.1 API.
- *
- * Similar to svn_wc_get_diff_editor3(), but with an
- * @c svn_wc_diff_callbacks_t instead of @c svn_wc_diff_callbacks2_t. */
+ */
 svn_error_t *svn_wc_get_diff_editor2 (svn_wc_adm_access_t *anchor,
                                       const char *target,
                                       const svn_wc_diff_callbacks_t *callbacks,
@@ -2464,10 +2503,10 @@
 
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_wc_get_diff_editor2(), but with @a ignore_ancestry
  * always set to @c FALSE.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *svn_wc_get_diff_editor (svn_wc_adm_access_t *anchor,
                                      const char *target,
@@ -2484,8 +2523,6 @@
 
 
 /**
- * @since New in 1.2.
- *
  * Compare working copy against the text-base.
  *
  * @a anchor/@a target represent the base of the hierarchy to be compared.
@@ -2501,6 +2538,8 @@
  * ancestry are treated as delete/add or as simple modifications. If
  * @a ignore_ancestry is @c FALSE, then any discontinuous node ancestry will
  * result in the diff given as a full delete followed by an add.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_wc_diff3 (svn_wc_adm_access_t *anchor,
                            const char *target,
@@ -2511,10 +2550,11 @@
                            apr_pool_t *pool);
 
 /**
+ * Similar to svn_wc_diff3(), but with a @c svn_wc_diff_callbacks_t argument
+ * instead of @c svn_wc_diff_callbacks2_t.
+ *
  * @deprecated Provided for backward compatibility with the 1.1 API.
- *
- * Similar to svn_wc_diff3(), but with a @c svn_wc_diff_callbacks_t argument
- * instead of @c svn_wc_diff_callbacks2_t. */
+ */
 svn_error_t *svn_wc_diff2 (svn_wc_adm_access_t *anchor,
                            const char *target,
                            const svn_wc_diff_callbacks_t *callbacks,
@@ -2524,10 +2564,10 @@
                            apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_wc_diff2(), but with @a ignore_ancestry always set
  * to @c FALSE.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *svn_wc_diff (svn_wc_adm_access_t *anchor,
                           const char *target,
@@ -2693,8 +2733,6 @@
 
 
 /**
- * @since New in 1.2.
- *
  * Recurse from @a path, cleaning up unfinished log business. Perform
  * necessary allocations in @a pool. Any working copy locks under @a path
  * will be taken over and then cleared by this function. If @a diff3_cmd
@@ -2707,6 +2745,8 @@
  * If @a cancel_func is non-null, invoke it with @a cancel_baton at
  * various points during the operation. If it returns an error
  * (typically @c SVN_ERR_CANCELLED), return that error immediately.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_wc_cleanup2 (const char *path,
@@ -2716,10 +2756,10 @@
                  apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to svn_wc_cleanup2(). @a optional_adm_access is an historic
  * relic and not used, it may be NULL.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_wc_cleanup (const char *path,
@@ -2762,8 +2802,7 @@
                  apr_pool_t *pool);
 
 
-/** @since New in 1.2.
- *
+/**
  * Revert changes to @a path (perhaps in a @a recursive fashion). Perform
  * necessary allocations in @a pool.
  *
@@ -2786,6 +2825,8 @@
  *
  * If @a path is not under version control, return the error
  * SVN_ERR_UNVERSIONED_RESOURCE.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_wc_revert2 (const char *path,
@@ -2798,9 +2839,10 @@
                 void *notify_baton,
                 apr_pool_t *pool);
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
+/**
+ * Similar to svn_wc_revert2(), but takes an @c svn_wc_notify_func_t instead.
  *
- * Similar to svn_wc_revert2(), but takes an @c svn_wc_notify_func_t instead.
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_wc_revert (const char *path,
Index: subversion/include/svn_client.h
===================================================================
--- subversion/include/svn_client.h (revision 14905)
+++ subversion/include/svn_client.h (working copy)
@@ -61,9 +61,9 @@
 
 
 /**
+ * Get libsvn_client version information.
+ *
  * @since New in 1.1.
- *
- * Get libsvn_client version information.
  */
 const svn_version_t *svn_client_version (void);
 
@@ -130,9 +130,6 @@
 
 #if defined(WIN32) || defined(DOXYGEN)
 /**
- * @since New in 1.2.
- * @note This function is only available on Windows.
- *
  * Create and return @a *provider, an authentication provider of type @c
  * svn_auth_cred_simple_t that gets/sets information from the user's
  * ~/.subversion configuration directory. Allocate @a *provider in
@@ -144,6 +141,9 @@
  * storing it to disk. On earlier versions of Windows, the provider
  * does nothing.
  *
+ * @since New in 1.2.
+ * @note This function is only available on Windows.
+ *
  * @note An administrative password reset may invalidate the account's
  * secret key. This function will detect that situation and behave as
  * if the password were not cached at all.
@@ -384,15 +384,13 @@
   /** main authentication baton. */
   svn_auth_baton_t *auth_baton;
 
- /** @deprecated Provided for backwards compatibility with the 1.1 API.
-
- notification callback function.
- This will be called by notify_func2() by default. */
+ /** notification callback function.
+ * This will be called by notify_func2() by default.
+ * @deprecated Provided for backwards compatibility with the 1.1 API. */
   svn_wc_notify_func_t notify_func;
 
- /** @deprecated Provided for backwards compatibility with the 1.1 API.
-
- notification callback baton for notify_func() */
+ /** notification callback baton for notify_func()
+ * @deprecated Provided for backwards compatibility with the 1.1 API. */
   void *notify_baton;
 
   /** Log message callback function. NULL means that Subversion
@@ -416,13 +414,13 @@
   /** a baton to pass to the cancellation callback. */
   void *cancel_baton;
 
- /** @since New in 1.2.
- * notification function, defaulting to a function that forwards
- * to notify_func(). */
+ /** notification function, defaulting to a function that forwards
+ * to notify_func().
+ * @since New in 1.2. */
   svn_wc_notify_func2_t notify_func2;
 
- /** @since New in 1.2.
- * notification baton for notify_func2(). */
+ /** notification baton for notify_func2().
+ * @since New in 1.2. */
   void *notify_baton2;
 } svn_client_ctx_t;
 
@@ -456,8 +454,6 @@
                            apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Checkout a working copy of @a URL at @a revision, looked up at @a
  * peg_revision, using @a path as the root directory of the newly
  * checked out working copy, and authenticating with the
@@ -485,6 +481,8 @@
  * return the error SVN_ERR_RA_ILLEGAL_URL.
  *
  * Use @a pool for any temporary allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_checkout2 (svn_revnum_t *result_rev,
@@ -499,11 +497,11 @@
 
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to svn_client_checkout2(), but with the @a peg_revision
  * parameter always set to @c svn_opt_revision_unspecified and
  * ignore_externals always set to @c FALSE.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_client_checkout (svn_revnum_t *result_rev,
@@ -516,8 +514,6 @@
 
 
 /**
- * @since New in 1.2.
- *
  * Update working trees @a paths to @a revision, authenticating with the
  * authentication baton cached in @a ctx. @a paths is an array of const
  * char * paths to be updated. Unversioned paths that are direct children
@@ -549,6 +545,8 @@
  * it passing @a ctx->cancel_baton at various places during the update.
  *
  * Use @a pool for any temporary allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_update2 (apr_array_header_t **result_revs,
@@ -560,11 +558,11 @@
                     apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to svn_client_update2() except that it accepts only a single
  * target in @a path, returns a single revision if @a result_rev is
  * not NULL, and ignore_externals is always set to @c FALSE.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_client_update (svn_revnum_t *result_rev,
@@ -610,8 +608,6 @@
 
 
 /**
- * @since New in 1.1.
- *
  * Schedule a working copy @a path for addition to the repository.
  *
  * @a path's parent must be under revision control already, but @a
@@ -633,6 +629,8 @@
  * Important: this is a *scheduling* operation. No changes will
  * happen to the repository until a commit occurs. This scheduling
  * can be removed with svn_client_revert().
+ *
+ * @since New in 1.1.
  */
 svn_error_t *
 svn_client_add2 (const char *path,
@@ -642,10 +640,10 @@
                  apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_client_add2(), but with the @a force parameter
  * always set to @c FALSE.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *
 svn_client_add (const char *path,
@@ -759,8 +757,7 @@
                                 apr_pool_t *pool);
 
 
-/** @since New in 1.2.
- *
+/**
  * Commit files or directories into repository, authenticating with
  * the authentication baton cached in @a ctx, and using
  * @a ctx->log_msg_func/@a ctx->log_msg_baton to obtain the log message.
@@ -787,6 +784,8 @@
  * If no error is returned and @a (*commit_info)->revision is set to
  * @c SVN_INVALID_REVNUM, then the commit was a no-op; nothing needed to
  * be committed.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_commit2 (svn_client_commit_info_t **commit_info,
@@ -796,10 +795,11 @@
                     svn_client_ctx_t *ctx,
                     apr_pool_t *pool);
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
- *
+/**
  * Similar to svn_client_commit2(), but with @a keep_locks set to
  * true and a @a nonrecursive argument instead of "recurse".
+ *
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_client_commit (svn_client_commit_info_t **commit_info,
@@ -808,9 +808,7 @@
                    svn_client_ctx_t *ctx,
                    apr_pool_t *pool);
 
-/**
- * @since New in 1.2.
- *
+/**
  * Given @a path to a working copy directory (or single file), call
  * @a status_func/status_baton with a set of @c svn_wc_status_t *
  * structures which describe the status of @a path and its children.
@@ -835,6 +833,8 @@
  * svn_wc_notify_status_external action before handling each externals
  * definition, and with @c svn_wc_notify_status_completed
  * after each.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_status2 (svn_revnum_t *result_rev,
@@ -852,12 +852,12 @@
 
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to svn_client_status2(), but with the @a ignore_externals
  * parameter always set to @c FALSE, and taking a deprecated
  * svn_wc_status_func_t argument, and requiring @a *revision to be
  * non-const even though it is treated as constant.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_client_status (svn_revnum_t *result_rev,
@@ -873,8 +873,6 @@
                    apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Invoke @a receiver with @a receiver_baton on each log message from @a
  * start to @a end in turn, inclusive (but never invoke @a receiver on a
  * given log message more than once).
@@ -908,6 +906,8 @@
  *
  * If @a ctx->notify_func2 is non-null, then call @a ctx->notify_func2/baton2
  * with a 'skip' signal on any unversioned targets.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_log2 (const apr_array_header_t *targets,
@@ -923,8 +923,6 @@
 
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_client_log2(), but with the @a limit parameter set to 0,
  * and the following special case:
  *
@@ -941,6 +939,8 @@
  * messages from youngest to oldest, where the oldest commit is
  * revision 1. That works fine, except when there are no commits in
  * the repository, hence this special case.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *
 svn_client_log (const apr_array_header_t *targets,
@@ -954,8 +954,6 @@
                 apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Invoke @a receiver with @a receiver_baton on each line-blame item
  * associated with revision @a end of @a path_or_url, using @a start
  * as the default source of all blame. @a peg_revision indicates in
@@ -970,6 +968,8 @@
  * error @c SVN_ERR_CLIENT_IS_BINARY_FILE.
  *
  * Use @a pool for any temporary allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_blame2 (const char *path_or_url,
@@ -982,10 +982,10 @@
                    apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to svn_client_blame() except that @a peg_revision is always
  * the same as @a end.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_client_blame (const char *path_or_url,
@@ -1078,10 +1078,10 @@
                                apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_client_diff2(), but with the @a ignore_content_type
  * parameter always set to @c FALSE.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *svn_client_diff (const apr_array_header_t *diff_options,
                               const char *path1,
@@ -1144,11 +1144,11 @@
                                    apr_pool_t *pool);
 
 /**
+ * Similar to svn_client_diff_peg2(), but with the @a ignore_content_type
+ * parameter always set to @c FALSE.
+ *
  * @since New in 1.1.
  * @deprecated Provided for backward compatibility with the 1.1 API.
- *
- * Similar to svn_client_diff_peg2(), but with the @a ignore_content_type
- * parameter always set to @c FALSE.
  */
 svn_error_t *svn_client_diff_peg (const apr_array_header_t *diff_options,
                                   const char *path,
@@ -1218,13 +1218,13 @@
 
 
 /**
- * @since New in 1.1.
- *
  * Merge the changes between the filesystem object @a source in peg
  * revision @a peg_revision, as it changed between @a revision1 and @a
  * revision2.
  *
  * All other options are handled identically to svn_client_merge().
+ *
+ * @since New in 1.1.
  */
 svn_error_t *
 svn_client_merge_peg (const char *source,
@@ -1349,8 +1349,6 @@
 
 
 /**
- * @since New in 1.2.
- *
  * Move @a src_path to @a dst_path.
  *
  * @a src_path must be a file or directory under version control, or the
@@ -1392,6 +1390,8 @@
  * the new location of the thing.
  *
  * ### Is this really true? What about svn_wc_notify_commit_replaced()? ###
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_move2 (svn_client_commit_info_t **commit_info,
@@ -1402,12 +1402,12 @@
                   apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to svn_client_move2(), but an extra argument @a src_revision
  * must be passed. This has no effect, but must be of kind
  * @c svn_opt_revision_unspecified or @c svn_opt_revision_head,
  * otherwise error @c SVN_ERR_UNSUPPORTED_FEATURE is returned.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_client_move (svn_client_commit_info_t **commit_info,
@@ -1434,9 +1434,7 @@
  */
 
 
-/**
- * @since New in 1.2.
- *
+/**
  * Set @a propname to @a propval on @a target. If @a recurse is true,
  * then @a propname will be set on recursively on @a target and all
  * children. If @a recurse is false, and @a target is a directory, @a
@@ -1459,6 +1457,8 @@
  * ctx->cancel_baton at various places during the operation.
  *
  * Use @a pool for all memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_propset2 (const char *propname,
@@ -1469,11 +1469,11 @@
                      svn_client_ctx_t *ctx,
                      apr_pool_t *pool);
 
-/**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
+/**
  * Like svn_client_propset2(), but with @a skip_checks always false and a
  * newly created @a ctx.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_client_propset (const char *propname,
@@ -1514,8 +1514,6 @@
                         apr_pool_t *pool);
                         
 /**
- * @since New in 1.2.
- *
  * Set @a *props to a hash table whose keys are `<tt>char *</tt>' paths,
  * prefixed by @a target (a working copy path or a URL), of items on
  * which property @a propname is set, and whose values are `@c svn_string_t
@@ -1541,6 +1539,8 @@
  *
  * If error, don't touch @a *props, otherwise @a *props is a hash table
  * even if empty.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_propget2 (apr_hash_t **props,
@@ -1553,10 +1553,10 @@
                      apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to svn_client_propget2(), except that the peg revision is
  * always the same as @a revision.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_client_propget (apr_hash_t **props,
@@ -1588,8 +1588,6 @@
                         apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Set @a *props to the regular properties of @a target, a URL or working
  * copy path.
  *
@@ -1616,6 +1614,8 @@
  * versioned entry below (and including) @a target.
  *
  * If @a target is not found, return the error @c SVN_ERR_ENTRY_NOT_FOUND.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_proplist2 (apr_array_header_t **props,
@@ -1627,10 +1627,10 @@
                       apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to svn_client_proplist2(), except that the peg revision is
  * always the same as @a revision.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_client_proplist (apr_array_header_t **props,
@@ -1663,8 +1663,6 @@
 
 
 /**
- * @since New in 1.2.
- *
  * Export the contents of either a subversion repository or a
  * subversion working copy into a 'clean' directory (meaning a
  * directory with no administrative directories). If @a result_rev
@@ -1707,6 +1705,8 @@
  * @a ignore_externals is TRUE.
  *
  * All allocations are done in @a pool.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_export3 (svn_revnum_t *result_rev,
@@ -1723,13 +1723,13 @@
 
 
 /**
- * @since New in 1.1.
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to svn_client_export3(), but with the @a peg_revision
  * parameter always set to @c svn_opt_revision_unspecified, @a
  * overwrite set to the value of @a force, @a ignore_externals
  * always false, and @a recurse always true.
+ *
+ * @since New in 1.1.
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_client_export2 (svn_revnum_t *result_rev,
@@ -1743,10 +1743,10 @@
 
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * Similar to svn_client_export2(), but with the @a native_eol parameter
  * always set to @c NULL.
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *
 svn_client_export (svn_revnum_t *result_rev,
@@ -1759,8 +1759,6 @@
 
 
 /**
- * @since New in 1.2.
- *
  * Set @a *dirents to a newly allocated hash of entries for @a
  * path_or_url at @a revision. The actual node revision selected is
  * determined by the path as it exists in @a peg_revision. If @a
@@ -1780,6 +1778,8 @@
  *
  * If @a recurse is true (and @a path_or_url is a directory) this will
  * be a recursive operation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_ls2 (apr_hash_t **dirents,
@@ -1791,10 +1791,10 @@
                 apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to svn_client_ls2() except that the peg revision is always
  * the same as @a revision.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_client_ls (apr_hash_t **dirents,
@@ -1806,8 +1806,6 @@
 
 
 /**
- * @since New in 1.2.
- *
  * Output the content of file identified by @a path_or_url and @a
  * revision to the stream @a out. The actual node revision selected
  * is determined by the path as it exists in @a peg_revision. If @a
@@ -1826,6 +1824,8 @@
  * Perform all allocations from @a pool.
  *
  * ### TODO: Add an expansion/translation flag?
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_cat2 (svn_stream_t *out,
@@ -1837,10 +1837,10 @@
 
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * Similar to svn_client_cat2() except that the peg revision is always
  * the same as @a revision.
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_client_cat (svn_stream_t *out,
@@ -1856,8 +1856,7 @@
  * @{
  */
 
-/** @since New in 1.2.
- *
+/**
  * Lock @a targets in the repository. @a targets is an array of
  * <tt>const char *</tt> paths - either all working copy paths or URLs. All
  * @a targets must be in the same repository.
@@ -1877,6 +1876,8 @@
  * structure.
  *
  * Use @a pool for temporary allocations.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_lock (const apr_array_header_t *targets,
@@ -1885,8 +1886,7 @@
                  svn_client_ctx_t *ctx,
                  apr_pool_t *pool);
 
-/** @since New in 1.2.
- *
+/**
  * Unlock @a targets in the repository. @a targets is an array of
  * <tt>const char *</tt> paths - either all working copy paths or all URLs.
  * All @a targets must be in the same repository.
@@ -1912,6 +1912,8 @@
  * used and the error will be passed in the notification structure.
 
  * Use @a pool for temporary allocations.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_unlock (const apr_array_header_t *targets,
@@ -1921,14 +1923,15 @@
 
 /** @} */
 
-/** @since New in 1.2.
- *
+/**
  * A structure which describes various system-generated metadata about
  * a working-copy path or URL.
  *
  * @note Fields may be added to the end of this structure in future
  * versions. Therefore, users shouldn't allocate structures of this
  * type, to preserve binary compatibility.
+ *
+ * @since New in 1.2.
  */
 typedef struct svn_info_t
 {
@@ -1982,12 +1985,13 @@
 } svn_info_t;
 
 
-/** @since New in 1.2.
- *
+/**
  * The callback invoked by svn_client_info(). Each invocation
  * describes @a path with the information present in @a info. Note
  * that any fields within @a info may be NULL if information is
  * unavailable. Use @a pool for all temporary allocation.
+ *
+ * @since New in 1.2.
  */
 typedef svn_error_t *(*svn_info_receiver_t)
      (void *baton,
@@ -1996,8 +2000,6 @@
       apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Invoke @a receiver with @a receiver_baton to return information
  * about @a path_or_url in @a revision. The information returned is
  * system-generated metadata, not the sort of "property" metadata
@@ -2026,6 +2028,8 @@
  * If @a recurse is true (and @a path_or_url is a directory) this will
  * be a recursive operation, invoking @a receiver on each child.
  *
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_client_info (const char *path_or_url,
Index: subversion/include/svn_hash.h
===================================================================
--- subversion/include/svn_hash.h (revision 14905)
+++ subversion/include/svn_hash.h (working copy)
@@ -50,14 +50,13 @@
  */
 
 /**
+ * The conventional terminator for hash dumps.
+ *
  * @since New in 1.1.
- *
- * The conventional terminator for hash dumps. */
+ */
 #define SVN_HASH_TERMINATOR "END"
 
 /**
- * @since New in 1.1.
- *
  * Read a hash table from @a stream, storing the resultants names and
  * values in @a hash. Use a @a pool for all allocations. @a hash will
  * have <tt>const char *</tt> keys and <tt>svn_string_t *</tt> values.
@@ -65,6 +64,8 @@
  * end of the stream; otherwise, expect the hash to be terminated by a
  * line containing @a terminator. Pass @c SVN_HASH_TERMINATOR to use
  * the conventional terminator "END".
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_hash_read2 (apr_hash_t *hash,
                              svn_stream_t *stream,
@@ -72,12 +73,12 @@
                              apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * Dump @a hash to @a stream. Use @a pool for all allocations. @a
  * hash has <tt>const char *</tt> keys and <tt>svn_string_t *</tt>
  * values. If @a terminator is not NULL, terminate the hash with a
  * line containing @a terminator.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_hash_write2 (apr_hash_t *hash,
                               svn_stream_t *stream,
@@ -85,11 +86,11 @@
                               apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * Similar to svn_hash_read2(), but allows @a stream to contain
  * deletion lines which remove entries from @a hash as well as adding
  * to it.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_hash_read_incremental (apr_hash_t *hash,
                                         svn_stream_t *stream,
@@ -97,12 +98,12 @@
                                         apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * Similar to svn_hash_write2(), but only writes out entries for
  * keys which differ between @a hash and @a oldhash, and also writes
  * out deletion lines for keys which are present in @a oldhash but not
  * in @a hash.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *svn_hash_write_incremental (apr_hash_t *hash,
                                          apr_hash_t *oldhash,
@@ -111,22 +112,23 @@
                                          apr_pool_t *pool);
 
 /**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
  * This function behaves like svn_hash_read2(), but it only works
  * on an apr_file_t input, empty files are accepted, and the hash is
  * expected to be terminated with a line containing "END" or
  * "PROPS-END".
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 svn_error_t *svn_hash_read (apr_hash_t *hash,
                             apr_file_t *srcfile,
                             apr_pool_t *pool);
 
 /**
+ * This function behaves like svn_hash_write2(), but it only works
+ * on an apr_file_t output, and the terminator is always "END".
+ *
  * @deprecated Provided for backward compatibility with the 1.0 API.
- *
- * This function behaves like svn_hash_write2(), but it only works
- * on an apr_file_t output, and the terminator is always "END". */
+ */
 svn_error_t *svn_hash_write (apr_hash_t *hash,
                              apr_file_t *destfile,
                              apr_pool_t *pool);
Index: subversion/include/svn_error.h
===================================================================
--- subversion/include/svn_error.h (revision 14905)
+++ subversion/include/svn_error.h (working copy)
@@ -135,9 +135,10 @@
  */
 void svn_error_compose (svn_error_t *chain, svn_error_t *new_err);
 
-/** @since New in 1.2.
+/** Create a new error that is a deep copy of err and return it.
  *
- * Create a new error that is a deep copy of err and return it. */
+ * @since New in 1.2.
+ */
 svn_error_t *svn_error_dup (svn_error_t *err);
 
 /** Free the memory used by @a error, as well as all ancestors and
@@ -152,12 +153,13 @@
 void svn_error_clear (svn_error_t *error);
 
 
-/** @since New in 1.2
- *
+/**
  * Very basic default error handler: print out error stack @a error to the
  * stdio stream @a stream, with each error prefixed by @a prefix, and quit
  * iff the @a fatal flag is set. Allocations are performed in the error's
  * pool.
+ *
+ * @since New in 1.2
  */
 void svn_handle_error2 (svn_error_t *error,
                         FILE *stream,
@@ -170,11 +172,12 @@
                        FILE *stream,
                        svn_boolean_t fatal);
 
-/** @since New in 1.2
- *
+/**
  * Very basic default warning handler: print out the error @a error to the
  * stdio stream @a stream, prefixed by @a prefix. Allocations are
  * performed in the error's pool.
+ *
+ * @since New in 1.2
  */
 void svn_handle_warning2 (FILE *stream, svn_error_t *error, const char *prefix);
 
@@ -239,23 +242,24 @@
 /** @} */
 
 /**
- * @since New in 1.2.
- *
  * Return TRUE if @a err is an error specifically related to locking a
  * path in the repository, FALSE otherwise.
  *
  * SVN_ERR_FS_OUT_OF_DATE is in here because it's a non-fatal error
  * that can be thrown when attempting to lock an item.
+ *
+ * @since New in 1.2.
  */
 #define SVN_ERR_IS_LOCK_ERROR(err) \
   (err->apr_err == SVN_ERR_FS_PATH_ALREADY_LOCKED || \
    err->apr_err == SVN_ERR_FS_OUT_OF_DATE) \
 
 /**
+ * Return TRUE if @a err is an error specifically related to unlocking
+ * a path in the repository, FALSE otherwise.
+ *
  * @since New in 1.2.
- *
- * Return TRUE if @a err is an error specifically related to unlocking
- * a path in the repository, FALSE otherwise. */
+ */
 #define SVN_ERR_IS_UNLOCK_ERROR(err) \
   (err->apr_err == SVN_ERR_FS_PATH_NOT_LOCKED || \
    err->apr_err == SVN_ERR_FS_BAD_LOCK_TOKEN || \
Index: subversion/include/svn_utf.h
===================================================================
--- subversion/include/svn_utf.h (revision 14905)
+++ subversion/include/svn_utf.h (working copy)
@@ -35,8 +35,6 @@
 
 
 /**
- * @since New in 1.1.
- *
  * Initialize the UTF-8 encoding/decoding routines.
  * Allocate cached translation handles in a subpool of @a pool.
  *
@@ -44,6 +42,8 @@
  * svn function may be in use in other threads during the call of this
  * function or when @a pool is cleared or destroyed.
  * Initializing the UTF-8 routines will improve performance.
+ *
+ * @since New in 1.1.
  */
 void svn_utf_initialize (apr_pool_t *pool);
 
Index: subversion/include/svn_opt.h
===================================================================
--- subversion/include/svn_opt.h (revision 14905)
+++ subversion/include/svn_opt.h (working copy)
@@ -246,8 +246,6 @@
 /* Parsing arguments. */
 
 /**
- * @since New in 1.2.
- *
  * Pull remaining target arguments from @a os into @a *targets_p,
  * converting them to UTF-8, followed by targets from @a known_targets
  * (which might come from, for example, the "--targets" command line
@@ -259,6 +257,8 @@
  * directory.
  *
  * Allocate @a *targets_p and its elements in @a pool.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_opt_args_to_target_array2 (apr_array_header_t **targets_p,
@@ -268,8 +268,6 @@
 
 
 /**
- * @deprecated Provided for backward compatibility with the 1.1 API.
- *
  * The same as svn_opt_args_to_target_array2() except that, in
  * addition, if @a extract_revisions is set, then look for trailing
  * "@rev" syntax on the first two paths. If the first target in @a
@@ -280,6 +278,8 @@
  * and replace @a *end_revision with the value of "rev". Ignore
  * revision specifiers on any further paths. "rev" can be any form of
  * single revision specifier, as accepted by svn_opt_parse_revision().
+ *
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 svn_error_t *
 svn_opt_args_to_target_array (apr_array_header_t **targets_p,
@@ -325,8 +325,6 @@
                         apr_pool_t *pool);
 
 /**
- * @since New in 1.1.
- *
  * Parse a working-copy or URL in @a path, extracting any trailing
  * revision specifier of the form "@rev" from the last component of
  * the path.
@@ -356,6 +354,8 @@
  * specifier is invalid. If no trailing revision specifier is found,
  * set @a *truepath to @a path and @a rev->kind to @c
  * svn_opt_revision_unspecified.
+ *
+ * @since New in 1.1.
  */
 svn_error_t *
 svn_opt_parse_path (svn_opt_revision_t *rev,
Index: subversion/include/svn_ra.h
===================================================================
--- subversion/include/svn_ra.h (revision 14905)
+++ subversion/include/svn_ra.h (working copy)
@@ -41,9 +41,9 @@
 /* Misc. declarations */
 
 /**
+ * Get libsvn_ra version information.
+ *
  * @since New in 1.1.
- *
- * Get libsvn_ra version information.
  */
 const svn_version_t *svn_ra_version (void);
 
@@ -118,8 +118,6 @@
         svn_revnum_t *latest_revnum);
 
 /**
- * @since New in 1.1.
- *
  * A callback function type for use in @c get_file_revs.
  * @a baton is provided by the caller, @a path is the pathname of the file
  * in revision @a rev and @a rev_props are the revision properties.
@@ -131,7 +129,10 @@
  * delta for this and the previous revision.
  * @a pool may be used for temporary allocations, but you can't rely
  * on objects allocated to live outside of this particular call and the
- * immediately following calls to @a *delta_handler, if any. */
+ * immediately following calls to @a *delta_handler, if any.
+ *
+ * @since New in 1.1.
+ */
 typedef svn_error_t *(*svn_ra_file_rev_handler_t)
        (void *baton,
         const char *path,
@@ -143,10 +144,10 @@
         apr_pool_t *pool);
 
 /**
+ * Callback function type for locking and unlocking actions.
+ *
  * @since New in 1.2.
  *
- * Callback function type for locking and unlocking actions.
- *
  * @a do_lock is TRUE when locking @a path, and FALSE
  * otherwise.
  *
@@ -169,8 +170,7 @@
                                                 apr_pool_t *pool);
 
 
-/** @since New in 1.2.
- *
+/**
  * The update Reporter.
  *
  * A vtable structure which allows a working copy to describe a subset
@@ -191,6 +191,8 @@
  * a locally added file or directory (which previously did not exist),
  * it may be reported as having revision 0 or as having the parent
  * directory's revision.
+ *
+ * @since New in 1.2.
  */
 typedef struct svn_ra_reporter2_t
 {
@@ -257,9 +259,10 @@
 
 } svn_ra_reporter2_t;
 
-/** @deprecated Provided for backward compatibility with the 1.1 API.
+/**
+ * Similar to @c svn_ra_reporter2_t, but without support for lock tokens.
  *
- * Similar to @c svn_ra_reporter2_t, but without support for lock tokens.
+ * @deprecated Provided for backward compatibility with the 1.1 API.
  */
 typedef struct svn_ra_reporter_t
 {
@@ -349,28 +352,27 @@
 
 /* Public Interfaces. */
 
-/** @since New in 1.2.
- *
+/**
  * Initialize the RA library. This function must be called before using
  * any function in this header, except the deprecated APIs based on
  * @c svn_ra_plugin_t, or svn_ra_version(). This function must not be called
  * simultaneously in multiple threads. @a pool must live
  * longer than any open RA sessions.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *
 svn_ra_initialize (apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * A repository access session. This object is used to perform requests
  * to a repository, identified by an URL.
+ *
+ * @since New in 1.2.
  */
 typedef struct svn_ra_session_t svn_ra_session_t;
 
 /**
- * @since New in 1.2.
- *
  * Open a repository session to @a repos_URL. Return an opaque object
  * representing this session in @a *session_p, allocated in @a pool.
  *
@@ -385,6 +387,8 @@
  * use @a pool for memory allocation.
  *
  * @see svn_client_open_ra_session().
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_open (svn_ra_session_t **session_p,
                           const char *repos_URL,
@@ -394,23 +398,23 @@
                           apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Get the latest revision number from the repository of @a session.
  *
  * Use @a pool for memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_get_latest_revnum (svn_ra_session_t *session,
                                        svn_revnum_t *latest_revnum,
                                        apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Get the latest revision number at time @a tm in the repository of
  * @a session.
  *
  * Use @a pool for memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_get_dated_revision (svn_ra_session_t *session,
                                         svn_revnum_t *revision,
@@ -418,8 +422,6 @@
                                         apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Set the property @a name to @a value on revision @a rev in the repository
  * of @a session.
  *
@@ -428,6 +430,8 @@
  * Please note that properties attached to revisions are @em unversioned.
  *
  * Use @a pool for memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_change_rev_prop (svn_ra_session_t *session,
                                      svn_revnum_t rev,
@@ -436,13 +440,13 @@
                                      apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Set @a *props to the list of unversioned properties attached to revision
  * @a rev in the repository of @a session. The hash maps
  * (<tt>const char *</tt>) names to (<tt>@c svn_string_t *</tt>) values.
  *
  * Use @a pool for memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_rev_proplist (svn_ra_session_t *session,
                                   svn_revnum_t rev,
@@ -450,13 +454,13 @@
                                   apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Set @a *value to the value of unversioned property @a name attached to
  * revision @a rev in the repository of @a session. If @a rev has no
  * property by that name, set @a *value to @c NULL.
  *
  * Use @a pool for memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_rev_prop (svn_ra_session_t *session,
                               svn_revnum_t rev,
@@ -465,8 +469,6 @@
                               apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Set @a *editor and @a *edit_baton to an editor for committing changes
  * to the repository of @a session, using @a log_msg as the log message. The
  * revisions being committed against are passed to the editor
@@ -497,6 +499,8 @@
  * finishing the edit.
  *
  * Use @a pool for memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_get_commit_editor (svn_ra_session_t *session,
                                        const svn_delta_editor_t **editor,
@@ -509,8 +513,6 @@
                                        apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Fetch the contents and properties of file @a path at @a revision.
  * Interpret @a path relative to the URL in @a session. Use
  * @a pool for all allocations.
@@ -532,6 +534,8 @@
  *
  * The stream handlers for @a stream may not perform any RA
  * operations using @a session.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_get_file (svn_ra_session_t *session,
                               const char *path,
@@ -542,8 +546,6 @@
                               apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * If @a dirents is non @c NULL, set @a *dirents to contain all the entries
  * of directory @a path at @a revision. The keys of @a dirents will be
  * entry names (<tt>const char *</tt>), and the values dirents
@@ -562,6 +564,8 @@
  * generated by the SCM system itself (e.g. 'wcprops', 'entryprops',
  * etc.) The keys are <tt>const char *</tt>, values are
  * <tt>@c svn_string_t *</tt>.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_get_dir (svn_ra_session_t *session,
                              const char *path,
@@ -572,8 +576,6 @@
                              apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Ask the RA layer to update a working copy.
  *
  * The client initially provides an @a update_editor/@a baton to the
@@ -606,6 +608,8 @@
  * @a session from within the editing operations of @a update_editor.
  *
  * Use @a pool for memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_do_update (svn_ra_session_t *session,
                                const svn_ra_reporter2_t **reporter,
@@ -618,8 +622,6 @@
                                apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Ask the RA layer to 'switch' a working copy to a new
  * @a switch_url; it's another form of svn_ra_do_update().
  *
@@ -654,6 +656,8 @@
  * operations of @a switch_editor.
  *
  * Use @a pool for memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_do_switch (svn_ra_session_t *session,
                                const svn_ra_reporter2_t **reporter,
@@ -667,8 +671,6 @@
                                apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Ask the RA layer to describe the status of a working copy with respect
  * to @a revision of the repository (or HEAD, if @a revision is invalid).
  *
@@ -699,6 +701,8 @@
  * using @a session from within the editing operations of @a status_editor.
  *
  * Use @a pool for memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_do_status (svn_ra_session_t *session,
                                const svn_ra_reporter2_t **reporter,
@@ -711,8 +715,6 @@
                                apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Ask the RA layer to 'diff' a working copy against @a versus_url;
  * it's another form of svn_ra_do_update().
  *
@@ -757,6 +759,8 @@
  * @a session from within the editing operations of @a diff_editor.
  *
  * Use @a pool for memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_do_diff (svn_ra_session_t *session,
                              const svn_ra_reporter2_t **reporter,
@@ -771,8 +775,6 @@
                              apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Invoke @a receiver with @a receiver_baton on each log message from
  * @a start to @a end. @a start may be greater or less than @a end;
  * this just controls whether the log messages are processed in descending
@@ -809,6 +811,8 @@
  * within @a receiver.
  *
  * Use @a pool for memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_get_log (svn_ra_session_t *session,
                              const apr_array_header_t *paths,
@@ -822,13 +826,13 @@
                              apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Set @a *kind to the node kind associated with @a path at @a revision.
  * If @a path does not exist under @a revision, set @a *kind to
  * @c svn_node_none. @a path is relative to the @a session's parent URL.
  *
  * Use @a pool for memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_check_path (svn_ra_session_t *session,
                                 const char *path,
@@ -837,13 +841,13 @@
                                 apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Set @a *dirent to an @c svn_dirent_t associated with @a path at @a
  * revision. @a path is relative to the @a session's parent's URL.
  * If @a path does not exist in @a revision, set @a *dirent to NULL.
  *
  * Use @a pool for memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_stat (svn_ra_session_t *session,
                           const char *path,
@@ -852,21 +856,20 @@
                           apr_pool_t *pool);
 
 
-/** @since New in 1.2.
- *
+/**
  * Set @a *uuid to the repository's UUID.
  *
  * NOTE: the UUID has the same lifetime as the @a session.
  *
  * Use @a pool for temporary memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_get_uuid (svn_ra_session_t *session,
                               const char **uuid,
                               apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Set @a *url to the repository's root URL. The value will not include
  * a trailing '/'. The returned URL is guaranteed to be a prefix of the
  * @a session's URL.
@@ -874,14 +877,14 @@
  * NOTE: the URL has the same lifetime as the @a session.
  *
  * Use @a pool for temporary memory allocation.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_get_repos_root (svn_ra_session_t *session,
                                     const char **url,
                                     apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Set @a *locations to the locations (at the repository revisions
  * @a location_revisions) of the file identified by @a path in
  * @a peg_revision. @a path is relative to the URL to which
@@ -895,6 +898,8 @@
  * NOTE: This functionality is not available in pre-1.1 servers. If the
  * server doesn't implement it, an @c SVN_ERR_RA_NOT_IMPLEMENTED error is
  * returned.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_get_locations (svn_ra_session_t *session,
                                    apr_hash_t **locations,
@@ -904,8 +909,6 @@
                                    apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Retrieve a subset of the interesting revisions of a file @a path
  * as seen in revision @a end (see svn_fs_history_prev() for a
  * definition of "interesting revisions"). Invoke @a handler with
@@ -927,6 +930,8 @@
  * NOTE: This functionality is not available in pre-1.1 servers. If the
  * server doesn't implement it, an @c SVN_ERR_RA_NOT_IMPLEMENTED error is
  * returned.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_get_file_revs (svn_ra_session_t *session,
                                    const char *path,
@@ -937,8 +942,6 @@
                                    apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Lock each path in @a path_revs, which is a hash whose keys are the
  * paths to be locked, and whose values are the corresponding bas
  * revisions for each path.
@@ -966,6 +969,8 @@
  * @a lock_baton.
  *
  * Use @a pool for temporary allocations.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_lock (svn_ra_session_t *session,
                           apr_hash_t *path_revs,
@@ -976,8 +981,6 @@
                           apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Remove the repository lock for each path in @a path_tokens.
  * @a path_tokens is a hash whose keys are the paths to be locked, and
  * whose values are the corresponding lock tokens for each path. If
@@ -997,6 +1000,8 @@
  * the @a lock_baton.
  *
  * Use @a pool for temporary allocations.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_unlock (svn_ra_session_t *session,
                             apr_hash_t *path_tokens,
@@ -1005,12 +1010,12 @@
                             void *lock_baton,
                             apr_pool_t *pool);
 
-/**
- * @since New in 1.2.
- *
+/**
  * If @a path is locked, set @a *lock to an svn_lock_t which
  * represents the lock, allocated in @a pool. If @a path is not
  * locked, set @a *lock to NULL.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_get_lock (svn_ra_session_t *session,
                               svn_lock_t **lock,
@@ -1018,33 +1023,35 @@
                               apr_pool_t *pool);
 
 /**
- * @since New in 1.2.
- *
  * Set @a *locks to a hashtable which represents all locks on or
  * below @a path.
  *
  * The hashtable maps (const char *) absolute fs paths to (const
  * svn_lock_t *) structures. The hashtable -- and all keys and
  * values -- are allocated in @a pool.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_get_locks (svn_ra_session_t *session,
                                apr_hash_t **locks,
                                const char *path,
                                apr_pool_t *pool);
 
-/** @since New in 1.2.
- *
+/**
  * Append a textual list of all available RA modules to the stringbuf
  * @a output.
+ *
+ * @since New in 1.2.
  */
 svn_error_t *svn_ra_print_modules (svn_stringbuf_t *output,
                                    apr_pool_t *pool);
 
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
- *
+/**
  * Similar to svn_ra_print_modules().
  * @a ra_baton is ignored.
+ *
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 svn_error_t *svn_ra_print_ra_libraries (svn_stringbuf_t **descriptions,
                                         void *ra_baton,
@@ -1052,10 +1059,11 @@
 
 
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
- *
+/**
  * Using this callback struct is similar to calling the newer public
  * interface that is based on @c svn_ra_session_t.
+ *
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 typedef struct svn_ra_plugin_t
 {
@@ -1243,10 +1251,11 @@
                                   const char **url,
                                   apr_pool_t *pool);
 
- /** @since New in 1.1.
- *
+ /**
    * Call svn_ra_get_locations() with the session associated with
    * @a session_baton and all other arguments.
+ *
+ * @since New in 1.1.
    */
   svn_error_t *(*get_locations) (void *session_baton,
                                  apr_hash_t **locations,
@@ -1256,10 +1265,10 @@
                                  apr_pool_t *pool);
 
   /**
- * @since New in 1.1.
- *
    * Call svn_ra_get_file_revs() with the session associated with
    * @a session_baton and all other arguments.
+ *
+ * @since New in 1.1.
    */
   svn_error_t *(*get_file_revs) (void *session_baton,
                                  const char *path,
@@ -1270,9 +1279,9 @@
                                  apr_pool_t *pool);
 
   /**
+ * Return the plugin's version information.
+ *
    * @since New in 1.1.
- *
- * Return the plugin's version information.
    */
   const svn_version_t *(*get_version) (void);
 
@@ -1280,8 +1289,6 @@
 } svn_ra_plugin_t;
 
 /**
- * @deprecated Provided for backwards compatibility with the 1.1 API.
- *
  * All "ra_FOO" implementations *must* export a function named
  * svn_ra_FOO_init() of type @c svn_ra_init_func_t.
  *
@@ -1295,14 +1302,14 @@
  * before accessing the other parameters.
  *
  * ### need to force this to be __cdecl on Windows... how??
+ *
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 typedef svn_error_t *(*svn_ra_init_func_t) (int abi_version,
                                             apr_pool_t *pool,
                                             apr_hash_t *hash);
 
-/**
- * @deprecated Provided for backward compatibility with the 1.0 API.
- *
+/**
  * The current ABI (Application Binary Interface) version for the
  * RA plugin model. This version number will change when the ABI
  * between the SVN core (e.g. libsvn_client) and the RA plugin changes.
@@ -1324,47 +1331,51 @@
  * 2005-01-19 Rework the plugin interface and don't provide the vtable
  * to the client. Separate ABI versions are no longer used.
  * </pre>
+ *
+ * @deprecated Provided for backward compatibility with the 1.0 API.
  */
 #define SVN_RA_ABI_VERSION 2
 
 /* Public RA implementations. */
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
+/** Initialize libsvn_ra_dav.
  *
- * Initialize libsvn_ra_dav. */
+ * @deprecated Provided for backwards compatibility with the 1.1 API. */
 svn_error_t * svn_ra_dav_init (int abi_version,
                                apr_pool_t *pool,
                                apr_hash_t *hash);
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
+/** Initialize libsvn_ra_local.
  *
- * Initialize libsvn_ra_local. */
+ * @deprecated Provided for backwards compatibility with the 1.1 API. */
 svn_error_t * svn_ra_local_init (int abi_version,
                                  apr_pool_t *pool,
                                  apr_hash_t *hash);
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
+/** Initialize libsvn_ra_svn.
  *
- * Initialize libsvn_ra_svn. */
+ * @deprecated Provided for backwards compatibility with the 1.1 API. */
 svn_error_t * svn_ra_svn_init (int abi_version,
                                apr_pool_t *pool,
                                apr_hash_t *hash);
 
 
 
-/** @deprecated Provide for backwards compability with the 1.1 API.
- *
+/**
  * Initialize the compatibility wrapper, using @a pool for any allocations.
  * The caller must hold on to @a ra_baton as long as the RA library is used.
+ *
+ * @deprecated Provide for backwards compability with the 1.1 API.
  */
 svn_error_t *svn_ra_init_ra_libs (void **ra_baton, apr_pool_t *pool);
 
-/** @deprecated Provided for backwards compatibility with the 1.1 API.
- *
+/**
  * Return an RA vtable-@a library which can handle URL. A number of
  * svn_client_* routines will call this internally, but client apps might
  * use it too. $a ra_baton is a baton obtained by a call to
  * svn_ra_init_ra_libs().
+ *
+ * @deprecated Provided for backwards compatibility with the 1.1 API.
  */
 svn_error_t *svn_ra_get_ra_library (svn_ra_plugin_t **library,
                                     void *ra_baton,
@@ -1376,3 +1387,4 @@
 #endif /* __cplusplus */
 
 #endif /* SVN_RA_H */
+
\ No newline at end of file

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Jun 1 08:26:14 2005

This is an archived mail posted to the Subversion Dev mailing list.