| API ERRATA -- $Id$ |
| |
| Root Cause of Errata: schema limitation |
| Library(s) Affected: libsvn_wc |
| Function(s) Affected: svn_wc_ensure_adm3 |
| svn_wc_ensure_adm2 |
| svn_wc_ensure_adm |
| New Behavior in: 1.7 |
| Related Issues: n/a |
| |
| |
| == Details of Previous Behavior == |
| |
| These functions were documented to allow passing NULL for the REPOS or |
| the UUID parameters. The working copy library would construct an entry |
| for the directory, recording the node's URL in the repository and |
| (potentially) empty values for REPOS ("repos_root_url") and UUID |
| ("repos_uuid"). |
| |
| In normal usage, immediately following the call to svn_wc_ensure_adm(), |
| the client code would perform an "update". This sequence is used to |
| perform a checkout. The checkout process only needs the target URL, |
| and doesn't really worry about the repository root or the uuid. These |
| values will be filled in later, as part of the checkout/update process. |
| |
| |
| == Details of New Behavior == |
| |
| If NULL is passed for REPOS or UUID, then SVN_ERR_BAD_URL or |
| SVN_ERR_BAD_UUID will be returned. |
| |
| |
| == Rationale for Change == |
| |
| Our schema does not allow NULL for either of these values (see the |
| REPOSITORY table in wc-metadata.sql). There is really no way to |
| support this particular scenario without relaxing these constraints. |
| |
| |
| == Impact on API Users == |
| |
| Clients typically never call these functions. If they *do*, then they |
| should pass all values, or be subject to an error return. |
| |
| Using Google Code Search, I found only two callers: our client code |
| (which passes non-NULL values), and the KDESVN project which appears |
| to also pass non-NULL values. |