Index: mailing-lists.html =================================================================== --- mailing-lists.html (revision 908111) +++ mailing-lists.html (working copy) @@ -112,8 +112,11 @@ -
-

Subscribing

+
+

Subscribing + +

To subscribe to the lists above, simply send email to LISTNAME-subscribe@subversion.apache.org @@ -123,8 +126,11 @@

-
-

Searching the Archives

+
+

Searching the Archives + +

It's often useful to search the mailing list archives before posting or replying: someone may have already reported the bug @@ -157,8 +163,11 @@

-
-

Announcements

+
+

Announcements + +

If you only want to receive mail about important announcements (new releases of Subversion, for example), just subscribe @@ -167,8 +176,11 @@

-
-

Other Mailing Lists

+
+

Other Mailing Lists + +

We have a variety of additional mailing lists for other aspects of the project management. You can find these lists on Index: news.html =================================================================== --- news.html (revision 908111) +++ news.html (working copy) @@ -22,8 +22,11 @@ -

-

2010-01-21 — Subversion 1.6.9 Released

+
+

2010-01-21 — Subversion 1.6.9 Released + +

Subversion 1.6.9, the latest stable version of Subversion, has been released. For more information, see the @@ -34,8 +37,11 @@

-
-

2009-11-07 — Subversion joins Apache Incubator

+
+

2009-11-07 — Subversion joins Apache Incubator + +

The Subversion project has been accepted into the Apache Incubator, the Index: packages.html =================================================================== --- packages.html (revision 908111) +++ packages.html (working copy) @@ -55,8 +55,11 @@ ready. The packagers already know when new source releases come out, and work as fast as they can to make binaries available.

-
-

AIX

+
+

AIX + +

    @@ -71,8 +74,11 @@
-
-

Debian Linux

+
+

Debian Linux + +

    @@ -88,8 +94,11 @@
-
-

Fedora Linux

+
+

Fedora Linux + +

    @@ -105,8 +114,11 @@
-
-

FreeBSD

+
+

FreeBSD + +

    @@ -121,8 +133,11 @@
-
-

HP-UX

+
+

HP-UX + +

    @@ -137,8 +152,11 @@
-
-

NetBSD

+
+

NetBSD + +

    @@ -155,8 +173,11 @@
-
-

OpenBSD

+
+

OpenBSD + +

    @@ -170,8 +191,11 @@
-
-

Mac OS X

+
+

Mac OS X + +

    @@ -197,8 +221,11 @@
-
-

Red Hat Linux

+
+

Red Hat Linux + +

    @@ -217,8 +244,11 @@
-
-

Solaris

+
+

Solaris + +

    @@ -238,8 +268,11 @@
-
-

SUSE Linux

+
+

SUSE Linux + +

    @@ -252,8 +285,11 @@
-
-

Ubuntu Linux

+
+

Ubuntu Linux + +

    @@ -269,8 +305,11 @@
-
-

Windows

+
+

Windows + +

    Index: issue-tracker.html =================================================================== --- issue-tracker.html (revision 908111) +++ issue-tracker.html (working copy) @@ -45,8 +45,11 @@ the likelihood that we'll recognize them as constructive.

    -
    -

    Handy Dandy Issue Tracker Queries

    +
    +

    Handy Dandy Issue Tracker Queries + +

    Index: roadmap.html =================================================================== --- roadmap.html (revision 908111) +++ roadmap.html (working copy) @@ -18,8 +18,11 @@

    Subversion Roadmap

    -
    -

    Upcoming Releases

    +
    +

    Upcoming Releases + +

    This is a preliminary timetable for the next few upcoming releases. As noted above, we do not guarantee that a specific feature will @@ -58,8 +61,11 @@

    -
    -

    How We Plan Releases

    +
    +

    How We Plan Releases + +

    Subversion uses a compromise between time-driven and feature-driven release planning. We schedule the next release for an approximate @@ -91,8 +97,11 @@

    -
    -

    Upcoming Features

    +
    +

    Upcoming Features + +

    We try to have at least one or two new features under active development at any given time, but we generally don't rush a feature @@ -180,8 +189,11 @@

    -
    -

    Past Releases

    +
    +

    Past Releases + +

    For information about past releases, see the release history.

    Index: docs/community-guide/l10n.part.html =================================================================== --- docs/community-guide/l10n.part.html (revision 908111) +++ docs/community-guide/l10n.part.html (working copy) @@ -1,5 +1,8 @@ -
    -

    Localization (l10n)

    +
    +

    Localization (l10n) + +

    Translation has been divided into two domains. First, there is the translation of server messages sent to connecting clients. This issue @@ -9,8 +12,11 @@ libraries.

    -
    -

    Localization overview

    +
    +

    Localization overview + +

    The gettext package provides services for translating messages. It uses the xgettext tool to extract strings from the sources for @@ -70,8 +76,11 @@

    -
    -

    Software version requirements

    +
    +

    Software version requirements + +

    The Makefile build targets locale-gnu-* (used to maintain po files) require GNU gettext 0.13 or newer. Note that this is not a requirement @@ -80,8 +89,11 @@

    -
    -

    Starting a new translation

    +
    +

    Starting a new translation + +

    Before starting a new translation please contact the subversion development mailing list to make sure you are not duplicating efforts. Also @@ -91,8 +103,11 @@

    After that, you should perform the following steps:

    -
    -

    Unix (GNU gettext)

    +
    +

    Unix (GNU gettext) + +

    1. check out Subversion (see INSTALL for more information)
    2. @@ -157,15 +172,21 @@
    -
    -

    Unix (non-GNU gettext)

    +
    +

    Unix (non-GNU gettext) + +

    To be documented

    -
    -

    Windows

    +
    +

    Windows + +

    See issue #1977.

    @@ -175,8 +196,11 @@
    -
    -

    Verifying your po file

    +
    +

    Verifying your po file + +

    Before submitting to the mailing list or committing to the repository, please make sure your po file 'compiles'. You can do this with these @@ -195,8 +219,11 @@

    -
    -

    Submitting your po file

    +
    +

    Submitting your po file + +

    Please don't mail large po files to the mailing lists. There are many subscribers on dev@subversion.apache.org who are on slow links and do @@ -212,8 +239,11 @@

    -
    -

    Updating existing po files

    +
    +

    Updating existing po files + +

    The Makefile based part of the build system contains a make target to facilitate maintenance of existing po files. To update po files on @@ -249,8 +279,11 @@

    -
    -

    Maintenance on branches

    +
    +

    Maintenance on branches + +

    Editing po files in trunk is pretty straightforward, but gets a bit more complicated when those changes are going to be transferred to a release @@ -290,8 +323,11 @@

    -
    -

    Requirements for po and mo files

    +
    +

    Requirements for po and mo files + +

    On some gettext implementations we have to ensure that the mo files — whether obtained through the project or created @@ -313,8 +349,11 @@

    -
    -

    Conventions for the empty string msgid section

    +
    +

    Conventions for the empty string msgid section + +

    Some gettext implementations use a section with a msgid "" (empty string) to keep administrative data. One of the headers suggested is @@ -330,8 +369,11 @@

    -
    -

    Translation teams

    +
    +

    Translation teams + +

    The GNU translation project (http://www2.iro.umontreal.ca/~gnutra/po/HTML/) attempts to organise @@ -341,8 +383,11 @@

    -
    -

    Single versus double quotes

    +
    +

    Single versus double quotes + +

    The project has standardised the use of quotes. Some translation teams have done the same. If there is no translation team for your @@ -352,8 +397,11 @@

    -
    -

    Error message conventions

    +
    +

    Error message conventions + +

    Since translators will generally see all error messages in the code, it's important to know that there is a Index: docs/community-guide/issues.part.html =================================================================== --- docs/community-guide/issues.part.html (revision 908111) +++ docs/community-guide/issues.part.html (working copy) @@ -1,5 +1,8 @@ -

    -

    Bugs / Issues

    +
    +

    Bugs / Issues + +

    Subversion isn't perfect software. It contains bugs, lacks features, and has room for improvement like any other piece of @@ -60,8 +63,11 @@

    The following are the policies that we ask folks to abide by when reporting problems or requested enhancements to Subversion.

    -
    -

    How to report a bug

    +
    +

    How to report a bug + +

    First, make sure it's a bug. If Subversion does not behave the way you expect, look in the documentation and mailing list archives for @@ -140,8 +146,11 @@

    -
    -

    Where to report a bug

    +
    +

    Where to report a bug + +

      @@ -187,8 +196,11 @@
    -
    -

    Issue triage

    +
    +

    Issue triage + +

    When an issue is filed, it goes into the special milestone "---", meaning unmilestoned. This is a holding area that issues Index: docs/community-guide/general.part.html =================================================================== --- docs/community-guide/general.part.html (revision 908111) +++ docs/community-guide/general.part.html (working copy) @@ -1,8 +1,14 @@ -

    -

    General Overview

    +
    +

    General Overview + +

    -
    -

    Participating in the community

    +
    +

    Participating in the community + +

    Although Subversion was originally sponsored and hosted by CollabNet (http://www.collab.net), @@ -67,8 +73,11 @@

    -
    -

    Theory and documentation

    +
    +

    Theory and documentation + +

    1. Design

      @@ -135,8 +144,11 @@
    -
    -

    Code to read

    +
    +

    Code to read + +

    Before you can contribute code, you'll need to familiarize yourself with the existing code base and interfaces.

    @@ -193,8 +205,11 @@
    -
    -

    Directory layout

    +
    +

    Directory layout + +

    A rough guide to the source tree:

    @@ -267,8 +282,11 @@
    -
    -

    Branching policy

    +
    +

    Branching policy + +

    The Subversion project strongly prefers that active development happen in the common trunk. Changes made to trunk have the highest @@ -289,8 +307,11 @@ task. The following are some guidelines to make your branch-based development work go smoothly.

    -
    -

    Branch creation and management

    +
    +

    Branch creation and management + +

    There's nothing particularly complex about branch-based development. You make a branch from the trunk (or from whatever @@ -303,8 +324,11 @@

    -
    -

    Lightweight branches

    +
    +

    Lightweight branches + +

    If you're working on a feature or bugfix in stages involving multiple commits, and some of the intermediate stages aren't stable @@ -337,8 +361,11 @@

    -
    -

    BRANCH-README files

    +
    +

    BRANCH-README files + +

    For branches you expect to be longer-lived, we recommend the creation and regular updating of a file in the root of your branch @@ -395,11 +422,17 @@

    -
    -

    Documentation

    +
    +

    Documentation + +

    -
    -

    Document Everything

    +
    +

    Document Everything + +

    Every function, whether public or internal, must start out with a documentation comment that describes what the function does. The @@ -474,8 +507,11 @@

    -
    -

    Public API Documentation

    +
    +

    Public API Documentation + +

    We use the Doxygen format for public interface documentation. This means anything that goes in a @@ -509,8 +545,11 @@

    -
    -

    Patch submission guidelines

    +
    +

    Patch submission guidelines + +

    Mail patches to dev@subversion.apache.org, starting the subject line with [PATCH]. This helps our patch manager spot patches Index: docs/community-guide/debugging.part.html =================================================================== --- docs/community-guide/debugging.part.html (revision 908111) +++ docs/community-guide/debugging.part.html (working copy) @@ -1,11 +1,20 @@ -

    -

    Debugging Subversion

    +
    +

    Debugging Subversion + +

    -
    -

    Debugging the server

    +
    +

    Debugging the server + +

    -
    -

    Debugging the DAV server

    +
    +

    Debugging the DAV server + +

    'mod_dav_svn.so' contains the main Subversion server logic; it runs as a module within mod_dav, which runs as a module within httpd. @@ -39,8 +48,11 @@

    -
    -

    Debugging the ra_svn client and server, on Unix

    +
    +

    Debugging the ra_svn client and server, on Unix + +

    Bugs in ra_svn usually manifest themselves with one of the following cryptic error messages:

    @@ -121,8 +133,11 @@
    -
    -

    Tracing network traffic

    +
    +

    Tracing network traffic + +

    Use Wireshark (formerly known as "Ethereal") to eavesdrop on the conversation.

    @@ -201,8 +216,11 @@
    -
    -

    Tracking down memory leaks

    +
    +

    Tracking down memory leaks + +

    Our use of APR pools makes it unusual for us to have memory leaks in the strictest sense; all the memory we allocate will be cleaned up Index: docs/community-guide/releasing.part.html =================================================================== --- docs/community-guide/releasing.part.html (revision 908111) +++ docs/community-guide/releasing.part.html (working copy) @@ -1,8 +1,14 @@ -

    -

    Making Subversion Releases

    +
    +

    Making Subversion Releases + +

    -
    -

    Release numbering, compatibility, and deprecation

    +
    +

    Release numbering, compatibility, and deprecation + +

    Subversion uses "MAJOR.MINOR.PATCH" release numbers, with the same guidelines as APR (see -

    -

    Reuse of release names

    +
    +

    Reuse of release names + +

    If a release or candidate release needs to be quickly re-issued due to some non-code problem (say, a packaging glitch), it's okay to reuse @@ -175,8 +184,11 @@

    -
    -

    Deprecation

    +
    +

    Deprecation + +

    When a new, improved version of an API is introduced, the old one remains for compatibility, at least until the next major release. @@ -228,8 +240,11 @@

    -
    -

    Stabilizing and maintaining releases

    +
    +

    Stabilizing and maintaining releases + +

    Minor and major number releases go through a stabilization period before release, and remain in maintenance (bugfix) mode after release. @@ -458,8 +473,11 @@

    NOTE: Changes to STATUS regarding the temporary branch, including voting, are always kept on the main release branch.

    -
    -

    Alpha and beta releases

    +
    +

    Alpha and beta releases + +

    When we want new features to get wide testing before we enter the formal stabilization period described above, we'll sometimes release @@ -493,8 +511,11 @@

    -
    -

    Signing source distribution packages (a.k.a tarballs)

    +
    +

    Signing source distribution packages (a.k.a tarballs) + +

    Before a release or release candidate is officially made public, it is made available in a temporary location for committers to test and sign. @@ -545,8 +566,11 @@

    -
    -

    Custom releases

    +
    +

    Custom releases + +

    It is preferred to use the patch process and have your changes accepted and applied to trunk to be released on the normal Subversion @@ -577,8 +601,11 @@

    -
    -

    Creating and maintaining release branches

    +
    +

    Creating and maintaining release branches + +

    A new release branch is created for each new major and minor release. So, for example, a new release branch is created when @@ -640,8 +667,11 @@

    -
    -

    Porting changes to release branches

    +
    +

    Porting changes to release branches + +

    Once a release branch has been created, no development ever takes place there. The only changes permitted are ones made to @@ -656,8 +686,11 @@

    -
    -

    Managing the CHANGES file

    +
    +

    Managing the CHANGES file + +

    The CHANGES file is the project changelog file. Before a release, it must be brought up to date to list all changes since the @@ -686,8 +719,11 @@ If it takes more than one line to describe, maybe I'm getting too detailed?

    -
    -

    Writing the initial content for a branch

    +
    +

    Writing the initial content for a branch + +

    Run svn log -rHEAD:BRANCH_POINT http://svn.apache.org/repos/asf/subversion/branches/A.B.x,where @@ -711,7 +747,10 @@

    -

    Adding content for patch release

    +

    Adding content for patch release + +

    As part of release stabilization, CHANGES should be updated as bug fixes are @@ -726,8 +765,11 @@

    -
    -

    Preparing to roll a release

    +
    +

    Preparing to roll a release + +

    So, a release branch has stabilized, and you are gearing up to roll the release. Before you can actually roll the archives, you need to @@ -798,8 +840,11 @@

    -
    -

    Rolling a release

    +
    +

    Rolling a release + +

    Before rolling, first make sure that the latest version of the CHANGES file from trunk is merged into the release branch, and that @@ -938,8 +983,11 @@

    -
    -

    The actual releasing

    +
    +

    The actual releasing + +

    Upload the tarballs to http://subversion.tigris.org/downloads/.

    @@ -1026,8 +1074,11 @@
    -
    -

    After a release has been made

    +
    +

    After a release has been made + +

    When someone with administrative access to svn.collab.net has time available, they will upgrade it to the latest release or Index: docs/community-guide/mailing-lists.part.html =================================================================== --- docs/community-guide/mailing-lists.part.html (revision 908111) +++ docs/community-guide/mailing-lists.part.html (working copy) @@ -1,5 +1,8 @@ -

    -

    Mailing Lists

    +
    +

    Mailing Lists + +

    The advice below is based on years of experience with the Subversion mailing lists, and addresses the problems seen most @@ -11,8 +14,11 @@

    If you follow these conventions when posting to our mailing lists, your post is much more likely to be read and answered.

    -
    -

    Where to post

    +
    +

    Where to post + +

    When in doubt, mail users@subversion.apache.org, not dev@subversion.apache.org. @@ -40,8 +46,11 @@

    -
    -

    When to post

    +
    +

    When to post + +

    Sometimes, when really impassioned about a topic, it's tempting to respond to every message in a mail thread. Please don't do this. Our @@ -57,11 +66,17 @@

    -
    -

    Formatting

    +
    +

    Formatting + +

    -
    -

    Line Length

    +
    +

    Line Length + +

    Please don't use lines longer than 72 columns. Many people use 80-column terminals to read their email. By writing your text in 72 @@ -79,8 +94,11 @@

    -
    -

    Capitalization

    +
    +

    Capitalization + +

    Capitalize the first letter of each sentence, and use paragraphs. If you're showing screen output or some other sort of example, offset @@ -93,11 +111,17 @@

    -
    -

    Replying

    +
    +

    Replying + +

    -
    -

    Reply-To

    +
    +

    Reply-To + +

    Make sure to use your mailreader's "Follow-up" or "Reply-to-all" or "Group reply" feature when responding to a list post. Otherwise, your @@ -127,8 +151,11 @@

    -
    -

    Making a fresh post

    +
    +

    Making a fresh post + +

    Don't start a new thread (subject) by replying to an existing post. Instead, start a fresh mail, even if that means you have to @@ -151,8 +178,11 @@

    -
    -

    Re-threading

    +
    +

    Re-threading + +

    If you do need to change the Subject header while preserving the thread (perhaps because the thread has wandered into @@ -171,8 +201,11 @@

    -
    -

    Top-Posting

    +
    +

    Top-Posting + +

    Please don't reflexively chide people for top-posting. "Top-posting" is the practice of putting the response text above the @@ -199,8 +232,11 @@

    -
    -

    Sending patches

    +
    +

    Sending patches + +

    See here for advice on how to send in a patch. Note that you can send in a patch to modify these web pages as @@ -211,8 +247,11 @@

    -
    -

    Languages and encodings

    +
    +

    Languages and encodings + +

    Please use ASCII or ISO-8859 text if possible. Don't post HTML mails, RichText mails, or other formats that might be opaque to Index: docs/community-guide/roles.part.html =================================================================== --- docs/community-guide/roles.part.html (revision 908111) +++ docs/community-guide/roles.part.html (working copy) @@ -1,8 +1,14 @@ -

    -

    Community Roles

    +
    +

    Community Roles + +

    -
    -

    Committers

    +
    +

    Committers + +

    Committers in the Subversion project are those folks to whom the right to directly commit changes to our version controlled resources @@ -18,8 +24,11 @@ >COMMITTERS file lists all committers, both full and partial, and says the domains for each partial committer.

    -
    -

    How full commit access is granted

    +
    +

    How full commit access is granted + +

    After someone has successfully contributed a few non-trivial patches, some full committer, usually whoever has reviewed and applied @@ -63,8 +72,11 @@

    -
    -

    How partial commit access is granted

    +
    +

    How partial commit access is granted + +

    A full committer sponsors the partial committer. Usually this means the full committer has applied several patches to the same area @@ -108,8 +120,11 @@

    -
    -

    The contrib/ area

    +
    +

    The contrib/ area + +

    When a tool is accepted into the contrib/ area, we automatically offer its author partial commit access to maintain the @@ -124,8 +139,11 @@

    -
    -

    The "obvious fix" rule

    +
    +

    The "obvious fix" rule + +

    Any committer, whether full or partial, may commit fixes for obvious typos, grammar mistakes, and formatting problems wherever they @@ -156,8 +174,11 @@

    -
    -

    Release Manager

    +
    +

    Release Manager + +

    The role of the Release Manager in the Subversion project is to handle the process of getting code stabilized, packaged and released @@ -187,8 +208,11 @@

    -
    -

    Patch Manager

    +
    +

    Patch Manager + +

    Subversion usually has a Patch Manager, whose job is to watch the dev@ mailing list and make sure that no patches "slip through the Index: docs/community-guide/building.part.html =================================================================== --- docs/community-guide/building.part.html (revision 908111) +++ docs/community-guide/building.part.html (working copy) @@ -1,8 +1,14 @@ -

    -

    Building and Testing

    +
    +

    Building and Testing + +

    -
    -

    The configuration/build system under unix

    +
    +

    The configuration/build system under unix + +

    Greg Stein wrote a custom build system for Subversion, which had been using `automake' and recursive Makefiles. Now it uses a single, @@ -217,8 +223,11 @@

    -
    -

    Automated tests

    +
    +

    Automated tests + +

    For a description of how to use and add tests to Subversion's automated test framework, please read -

    -

    Build farm

    +
    +

    Build farm + +

    Lieven Govaerts has set up a BuildBot build/test @@ -273,8 +285,11 @@

    -
    -

    Writing test cases before code

    +
    +

    Writing test cases before code + +

     From: Karl Fogel <kfogel@collab.net>
    Index: docs/community-guide/index.html
    ===================================================================
    --- docs/community-guide/index.html	(revision 908111)
    +++ docs/community-guide/index.html	(working copy)
    @@ -151,11 +151,17 @@
     
     
    -
    -

    General Overview

    +
    +

    General Overview + +

    -
    -

    Participating in the community

    +
    +

    Participating in the community + +

    Although Subversion was originally sponsored and hosted by CollabNet (http://www.collab.net), @@ -220,8 +226,11 @@

    -
    -

    Theory and documentation

    +
    +

    Theory and documentation + +

    1. Design

      @@ -288,8 +297,11 @@
    -
    -

    Code to read

    +
    +

    Code to read + +

    Before you can contribute code, you'll need to familiarize yourself with the existing code base and interfaces.

    @@ -346,8 +358,11 @@
    -
    -

    Directory layout

    +
    +

    Directory layout + +

    A rough guide to the source tree:

    @@ -420,8 +435,11 @@
    -
    -

    Branching policy

    +
    +

    Branching policy + +

    The Subversion project strongly prefers that active development happen in the common trunk. Changes made to trunk have the highest @@ -442,8 +460,11 @@ task. The following are some guidelines to make your branch-based development work go smoothly.

    -
    -

    Branch creation and management

    +
    +

    Branch creation and management + +

    There's nothing particularly complex about branch-based development. You make a branch from the trunk (or from whatever @@ -456,8 +477,11 @@

    -
    -

    Lightweight branches

    +
    +

    Lightweight branches + +

    If you're working on a feature or bugfix in stages involving multiple commits, and some of the intermediate stages aren't stable @@ -490,8 +514,11 @@

    -
    -

    BRANCH-README files

    +
    +

    BRANCH-README files + +

    For branches you expect to be longer-lived, we recommend the creation and regular updating of a file in the root of your branch @@ -548,11 +575,17 @@

    -
    -

    Documentation

    +
    +

    Documentation + +

    -
    -

    Document Everything

    +
    +

    Document Everything + +

    Every function, whether public or internal, must start out with a documentation comment that describes what the function does. The @@ -627,8 +660,11 @@

    -
    -

    Public API Documentation

    +
    +

    Public API Documentation + +

    We use the Doxygen format for public interface documentation. This means anything that goes in a @@ -662,8 +698,11 @@

    -
    -

    Patch submission guidelines

    +
    +

    Patch submission guidelines + +

    Mail patches to dev@subversion.apache.org, starting the subject line with [PATCH]. This helps our patch manager spot patches @@ -755,11 +794,17 @@

    -
    -

    Community Roles

    +
    +

    Community Roles + +

    -
    -

    Committers

    +
    +

    Committers + +

    Committers in the Subversion project are those folks to whom the right to directly commit changes to our version controlled resources @@ -775,8 +820,11 @@ >COMMITTERS file lists all committers, both full and partial, and says the domains for each partial committer.

    -
    -

    How full commit access is granted

    +
    +

    How full commit access is granted + +

    After someone has successfully contributed a few non-trivial patches, some full committer, usually whoever has reviewed and applied @@ -820,8 +868,11 @@

    -
    -

    How partial commit access is granted

    +
    +

    How partial commit access is granted + +

    A full committer sponsors the partial committer. Usually this means the full committer has applied several patches to the same area @@ -865,8 +916,11 @@

    -
    -

    The contrib/ area

    +
    +

    The contrib/ area + +

    When a tool is accepted into the contrib/ area, we automatically offer its author partial commit access to maintain the @@ -881,8 +935,11 @@

    -
    -

    The "obvious fix" rule

    +
    +

    The "obvious fix" rule + +

    Any committer, whether full or partial, may commit fixes for obvious typos, grammar mistakes, and formatting problems wherever they @@ -913,8 +970,11 @@

    -
    -

    Release Manager

    +
    +

    Release Manager + +

    The role of the Release Manager in the Subversion project is to handle the process of getting code stabilized, packaged and released @@ -944,8 +1004,11 @@

    -
    -

    Patch Manager

    +
    +

    Patch Manager + +

    Subversion usually has a Patch Manager, whose job is to watch the dev@ mailing list and make sure that no patches "slip through the @@ -979,11 +1042,17 @@

    -
    -

    Coding and Commit Conventions

    +
    +

    Coding and Commit Conventions + +

    -
    -

    Code modularity and interface visibility

    +
    +

    Code modularity and interface visibility + +

    Subversion's code and headers files are segregated along a couple of key lines: library-specific vs. inter-library; public vs. private. @@ -1024,8 +1093,11 @@

    -
    -

    Coding style

    +
    +

    Coding style + +

    Subversion uses ANSI C, and follows the GNU coding standards, except that we do not put a space between the name of a function and @@ -1069,8 +1141,11 @@

    -
    -

    Using page breaks

    +
    +

    Using page breaks + +

    We're using page breaks (the Ctrl-L character, ASCII 12) for section boundaries in both code and plaintext prose files. Each @@ -1085,8 +1160,11 @@

    -
    -

    Error message conventions

    +
    +

    Error message conventions + +

    For error messages the following conventions apply:

    @@ -1150,8 +1228,11 @@
    -
    -

    APR pool usage conventions

    +
    +

    APR pool usage conventions + +

    (This assumes you already basically understand how APR pools work; see apr_pools.h for details.)

    @@ -1332,8 +1413,11 @@
    -
    -

    APR status codes

    +
    +

    APR status codes + +

    Always check for APR status codes (except APR_SUCCESS) with the APR_STATUS_IS_...() macros, not by direct comparison. This is required @@ -1342,8 +1426,11 @@

    -
    -

    Exception handling

    +
    +

    Exception handling + +

    OK, here's how to use exceptions in Subversion.

    @@ -1510,8 +1597,11 @@
    -
    -

    Secure coding guidelines

    +
    +

    Secure coding guidelines + +

    Just like almost any other programming language, C has undesirable features which enables an attacker to make your program fail in @@ -1625,8 +1715,11 @@

    -
    -

    Other coding conventions

    +
    +

    Other coding conventions + +

    In addition to the GNU standards, Subversion uses these conventions:

    @@ -1776,8 +1869,11 @@
    -
    -

    Writing log messages

    +
    +

    Writing log messages + +

    Every commit needs a log message.

    @@ -1979,8 +2075,11 @@
    -
    -

    Crediting

    +
    +

    Crediting + +

    It is very important to record code contributions in a consistent and parseable way. This allows us to write scripts to figure out who @@ -2139,11 +2238,17 @@

    -
    -

    Building and Testing

    +
    +

    Building and Testing + +

    -
    -

    The configuration/build system under unix

    +
    +

    The configuration/build system under unix + +

    Greg Stein wrote a custom build system for Subversion, which had been using `automake' and recursive Makefiles. Now it uses a single, @@ -2358,8 +2463,11 @@

    -
    -

    Automated tests

    +
    +

    Automated tests + +

    For a description of how to use and add tests to Subversion's automated test framework, please read -

    -

    Build farm

    +
    +

    Build farm + +

    Lieven Govaerts has set up a BuildBot build/test @@ -2414,8 +2525,11 @@

    -
    -

    Writing test cases before code

    +
    +

    Writing test cases before code + +

     From: Karl Fogel <kfogel@collab.net>
    @@ -2457,14 +2571,23 @@
     
    -
    -

    Debugging Subversion

    +
    +

    Debugging Subversion + +

    -
    -

    Debugging the server

    +
    +

    Debugging the server + +

    -
    -

    Debugging the DAV server

    +
    +

    Debugging the DAV server + +

    'mod_dav_svn.so' contains the main Subversion server logic; it runs as a module within mod_dav, which runs as a module within httpd. @@ -2498,8 +2621,11 @@

    -
    -

    Debugging the ra_svn client and server, on Unix

    +
    +

    Debugging the ra_svn client and server, on Unix + +

    Bugs in ra_svn usually manifest themselves with one of the following cryptic error messages:

    @@ -2580,8 +2706,11 @@
    -
    -

    Tracing network traffic

    +
    +

    Tracing network traffic + +

    Use Wireshark (formerly known as "Ethereal") to eavesdrop on the conversation.

    @@ -2660,8 +2789,11 @@
    -
    -

    Tracking down memory leaks

    +
    +

    Tracking down memory leaks + +

    Our use of APR pools makes it unusual for us to have memory leaks in the strictest sense; all the memory we allocate will be cleaned up @@ -2714,8 +2846,11 @@

    -
    -

    Mailing Lists

    +
    +

    Mailing Lists + +

    The advice below is based on years of experience with the Subversion mailing lists, and addresses the problems seen most @@ -2727,8 +2862,11 @@

    If you follow these conventions when posting to our mailing lists, your post is much more likely to be read and answered.

    -
    -

    Where to post

    +
    +

    Where to post + +

    When in doubt, mail users@subversion.apache.org, not dev@subversion.apache.org. @@ -2756,8 +2894,11 @@

    -
    -

    When to post

    +
    +

    When to post + +

    Sometimes, when really impassioned about a topic, it's tempting to respond to every message in a mail thread. Please don't do this. Our @@ -2773,11 +2914,17 @@

    -
    -

    Formatting

    +
    +

    Formatting + +

    -
    -

    Line Length

    +
    +

    Line Length + +

    Please don't use lines longer than 72 columns. Many people use 80-column terminals to read their email. By writing your text in 72 @@ -2795,8 +2942,11 @@

    -
    -

    Capitalization

    +
    +

    Capitalization + +

    Capitalize the first letter of each sentence, and use paragraphs. If you're showing screen output or some other sort of example, offset @@ -2809,11 +2959,17 @@

    -
    -

    Replying

    +
    +

    Replying + +

    -
    -

    Reply-To

    +
    +

    Reply-To + +

    Make sure to use your mailreader's "Follow-up" or "Reply-to-all" or "Group reply" feature when responding to a list post. Otherwise, your @@ -2843,8 +2999,11 @@

    -
    -

    Making a fresh post

    +
    +

    Making a fresh post + +

    Don't start a new thread (subject) by replying to an existing post. Instead, start a fresh mail, even if that means you have to @@ -2867,8 +3026,11 @@

    -
    -

    Re-threading

    +
    +

    Re-threading + +

    If you do need to change the Subject header while preserving the thread (perhaps because the thread has wandered into @@ -2887,8 +3049,11 @@

    -
    -

    Top-Posting

    +
    +

    Top-Posting + +

    Please don't reflexively chide people for top-posting. "Top-posting" is the practice of putting the response text above the @@ -2915,8 +3080,11 @@

    -
    -

    Sending patches

    +
    +

    Sending patches + +

    See here for advice on how to send in a patch. Note that you can send in a patch to modify these web pages as @@ -2927,8 +3095,11 @@

    -
    -

    Languages and encodings

    +
    +

    Languages and encodings + +

    Please use ASCII or ISO-8859 text if possible. Don't post HTML mails, RichText mails, or other formats that might be opaque to @@ -2953,8 +3124,11 @@

    -
    -

    Bugs / Issues

    +
    +

    Bugs / Issues + +

    Subversion isn't perfect software. It contains bugs, lacks features, and has room for improvement like any other piece of @@ -3015,8 +3189,11 @@

    The following are the policies that we ask folks to abide by when reporting problems or requested enhancements to Subversion.

    -
    -

    How to report a bug

    +
    +

    How to report a bug + +

    First, make sure it's a bug. If Subversion does not behave the way you expect, look in the documentation and mailing list archives for @@ -3095,8 +3272,11 @@

    -
    -

    Where to report a bug

    +
    +

    Where to report a bug + +

      @@ -3142,8 +3322,11 @@
    -
    -

    Issue triage

    +
    +

    Issue triage + +

    When an issue is filed, it goes into the special milestone "---", meaning unmilestoned. This is a holding area that issues @@ -3207,11 +3390,17 @@

    -
    -

    Making Subversion Releases

    +
    +

    Making Subversion Releases + +

    -
    -

    Release numbering, compatibility, and deprecation

    +
    +

    Release numbering, compatibility, and deprecation + +

    Subversion uses "MAJOR.MINOR.PATCH" release numbers, with the same guidelines as APR (see -

    -

    Reuse of release names

    +
    +

    Reuse of release names + +

    If a release or candidate release needs to be quickly re-issued due to some non-code problem (say, a packaging glitch), it's okay to reuse @@ -3384,8 +3576,11 @@

    -
    -

    Deprecation

    +
    +

    Deprecation + +

    When a new, improved version of an API is introduced, the old one remains for compatibility, at least until the next major release. @@ -3437,8 +3632,11 @@

    -
    -

    Stabilizing and maintaining releases

    +
    +

    Stabilizing and maintaining releases + +

    Minor and major number releases go through a stabilization period before release, and remain in maintenance (bugfix) mode after release. @@ -3667,8 +3865,11 @@

    NOTE: Changes to STATUS regarding the temporary branch, including voting, are always kept on the main release branch.

    -
    -

    Alpha and beta releases

    +
    +

    Alpha and beta releases + +

    When we want new features to get wide testing before we enter the formal stabilization period described above, we'll sometimes release @@ -3702,8 +3903,11 @@

    -
    -

    Signing source distribution packages (a.k.a tarballs)

    +
    +

    Signing source distribution packages (a.k.a tarballs) + +

    Before a release or release candidate is officially made public, it is made available in a temporary location for committers to test and sign. @@ -3754,8 +3958,11 @@

    -
    -

    Custom releases

    +
    +

    Custom releases + +

    It is preferred to use the patch process and have your changes accepted and applied to trunk to be released on the normal Subversion @@ -3786,8 +3993,11 @@

    -
    -

    Creating and maintaining release branches

    +
    +

    Creating and maintaining release branches + +

    A new release branch is created for each new major and minor release. So, for example, a new release branch is created when @@ -3849,8 +4059,11 @@

    -
    -

    Porting changes to release branches

    +
    +

    Porting changes to release branches + +

    Once a release branch has been created, no development ever takes place there. The only changes permitted are ones made to @@ -3865,8 +4078,11 @@

    -
    -

    Managing the CHANGES file

    +
    +

    Managing the CHANGES file + +

    The CHANGES file is the project changelog file. Before a release, it must be brought up to date to list all changes since the @@ -3895,8 +4111,11 @@ If it takes more than one line to describe, maybe I'm getting too detailed?

    -
    -

    Writing the initial content for a branch

    +
    +

    Writing the initial content for a branch + +

    Run svn log -rHEAD:BRANCH_POINT http://svn.apache.org/repos/asf/subversion/branches/A.B.x,where @@ -3920,7 +4139,10 @@

    -

    Adding content for patch release

    +

    Adding content for patch release + +

    As part of release stabilization, CHANGES should be updated as bug fixes are @@ -3935,8 +4157,11 @@

    -
    -

    Preparing to roll a release

    +
    +

    Preparing to roll a release + +

    So, a release branch has stabilized, and you are gearing up to roll the release. Before you can actually roll the archives, you need to @@ -4007,8 +4232,11 @@

    -
    -

    Rolling a release

    +
    +

    Rolling a release + +

    Before rolling, first make sure that the latest version of the CHANGES file from trunk is merged into the release branch, and that @@ -4147,8 +4375,11 @@

    -
    -

    The actual releasing

    +
    +

    The actual releasing + +

    Upload the tarballs to http://subversion.tigris.org/downloads/.

    @@ -4235,8 +4466,11 @@
    -
    -

    After a release has been made

    +
    +

    After a release has been made + +

    When someone with administrative access to svn.collab.net has time available, they will upgrade it to the latest release or @@ -4258,8 +4492,11 @@

    -
    -

    Localization (l10n)

    +
    +

    Localization (l10n) + +

    Translation has been divided into two domains. First, there is the translation of server messages sent to connecting clients. This issue @@ -4269,8 +4506,11 @@ libraries.

    -
    -

    Localization overview

    +
    +

    Localization overview + +

    The gettext package provides services for translating messages. It uses the xgettext tool to extract strings from the sources for @@ -4330,8 +4570,11 @@

    -
    -

    Software version requirements

    +
    +

    Software version requirements + +

    The Makefile build targets locale-gnu-* (used to maintain po files) require GNU gettext 0.13 or newer. Note that this is not a requirement @@ -4340,8 +4583,11 @@

    -
    -

    Starting a new translation

    +
    +

    Starting a new translation + +

    Before starting a new translation please contact the subversion development mailing list to make sure you are not duplicating efforts. Also @@ -4351,8 +4597,11 @@

    After that, you should perform the following steps:

    -
    -

    Unix (GNU gettext)

    +
    +

    Unix (GNU gettext) + +

    1. check out Subversion (see INSTALL for more information)
    2. @@ -4417,15 +4666,21 @@
    -
    -

    Unix (non-GNU gettext)

    +
    +

    Unix (non-GNU gettext) + +

    To be documented

    -
    -

    Windows

    +
    +

    Windows + +

    See issue #1977.

    @@ -4435,8 +4690,11 @@
    -
    -

    Verifying your po file

    +
    +

    Verifying your po file + +

    Before submitting to the mailing list or committing to the repository, please make sure your po file 'compiles'. You can do this with these @@ -4455,8 +4713,11 @@

    -
    -

    Submitting your po file

    +
    +

    Submitting your po file + +

    Please don't mail large po files to the mailing lists. There are many subscribers on dev@subversion.apache.org who are on slow links and do @@ -4472,8 +4733,11 @@

    -
    -

    Updating existing po files

    +
    +

    Updating existing po files + +

    The Makefile based part of the build system contains a make target to facilitate maintenance of existing po files. To update po files on @@ -4509,8 +4773,11 @@

    -
    -

    Maintenance on branches

    +
    +

    Maintenance on branches + +

    Editing po files in trunk is pretty straightforward, but gets a bit more complicated when those changes are going to be transferred to a release @@ -4550,8 +4817,11 @@

    -
    -

    Requirements for po and mo files

    +
    +

    Requirements for po and mo files + +

    On some gettext implementations we have to ensure that the mo files — whether obtained through the project or created @@ -4573,8 +4843,11 @@

    -
    -

    Conventions for the empty string msgid section

    +
    +

    Conventions for the empty string msgid section + +

    Some gettext implementations use a section with a msgid "" (empty string) to keep administrative data. One of the headers suggested is @@ -4590,8 +4863,11 @@

    -
    -

    Translation teams

    +
    +

    Translation teams + +

    The GNU translation project (http://www2.iro.umontreal.ca/~gnutra/po/HTML/) attempts to organise @@ -4601,8 +4877,11 @@

    -
    -

    Single versus double quotes

    +
    +

    Single versus double quotes + +

    The project has standardised the use of quotes. Some translation teams have done the same. If there is no translation team for your @@ -4612,8 +4891,11 @@

    -
    -

    Error message conventions

    +
    +

    Error message conventions + +

    Since translators will generally see all error messages in the code, it's important to know that there is a Index: docs/community-guide/conventions.part.html =================================================================== --- docs/community-guide/conventions.part.html (revision 908111) +++ docs/community-guide/conventions.part.html (working copy) @@ -1,8 +1,14 @@ -

    -

    Coding and Commit Conventions

    +
    +

    Coding and Commit Conventions + +

    -
    -

    Code modularity and interface visibility

    +
    +

    Code modularity and interface visibility + +

    Subversion's code and headers files are segregated along a couple of key lines: library-specific vs. inter-library; public vs. private. @@ -43,8 +49,11 @@

    -
    -

    Coding style

    +
    +

    Coding style + +

    Subversion uses ANSI C, and follows the GNU coding standards, except that we do not put a space between the name of a function and @@ -88,8 +97,11 @@

    -
    -

    Using page breaks

    +
    +

    Using page breaks + +

    We're using page breaks (the Ctrl-L character, ASCII 12) for section boundaries in both code and plaintext prose files. Each @@ -104,8 +116,11 @@

    -
    -

    Error message conventions

    +
    +

    Error message conventions + +

    For error messages the following conventions apply:

    @@ -169,8 +184,11 @@
    -
    -

    APR pool usage conventions

    +
    +

    APR pool usage conventions + +

    (This assumes you already basically understand how APR pools work; see apr_pools.h for details.)

    @@ -351,8 +369,11 @@
    -
    -

    APR status codes

    +
    +

    APR status codes + +

    Always check for APR status codes (except APR_SUCCESS) with the APR_STATUS_IS_...() macros, not by direct comparison. This is required @@ -361,8 +382,11 @@

    -
    -

    Exception handling

    +
    +

    Exception handling + +

    OK, here's how to use exceptions in Subversion.

    @@ -529,8 +553,11 @@
    -
    -

    Secure coding guidelines

    +
    +

    Secure coding guidelines + +

    Just like almost any other programming language, C has undesirable features which enables an attacker to make your program fail in @@ -644,8 +671,11 @@

    -
    -

    Other coding conventions

    +
    +

    Other coding conventions + +

    In addition to the GNU standards, Subversion uses these conventions:

    @@ -795,8 +825,11 @@
    -
    -

    Writing log messages

    +
    +

    Writing log messages + +

    Every commit needs a log message.

    @@ -998,8 +1031,11 @@
    -
    -

    Crediting

    +
    +

    Crediting + +

    It is very important to record code contributions in a consistent and parseable way. This allows us to write scripts to figure out who Index: docs/release-notes/1.2.html =================================================================== --- docs/release-notes/1.2.html (revision 908111) +++ docs/release-notes/1.2.html (working copy) @@ -18,8 +18,11 @@

    Subversion 1.2 Release Notes

    -
    -

    What's New in Subversion 1.2

    +
    +

    What's New in Subversion 1.2 + +

    • Optional locking ("reserved checkouts")
    • @@ -39,8 +42,11 @@
    -
    -

    Downloading

    +
    +

    Downloading + +

    Subversion 1.2 is available as source code in three formats:

    @@ -67,8 +73,11 @@
    -
    -

    Compatibility Concerns

    +
    +

    Compatibility Concerns + +

    Older clients and servers interoperate transparently with 1.2 servers and clients. Of course, some of the new 1.2 features may not @@ -87,8 +96,11 @@ program written for 1.2 cannot necessarily compile or run against older libraries.

    -
    -

    Command Line Output Changes

    +
    +

    Command Line Output Changes + +

    Although the Subversion developers try hard to keep output from the command line programs compatible between releases, new information @@ -111,8 +123,11 @@

    -
    -

    Unexpected Berkeley DB Upgrades

    +
    +

    Unexpected Berkeley DB Upgrades + +

    This is not actually related to the Subversion 1.2 release, but it may affect you if you upgrade to 1.2 via a package distribution @@ -136,8 +151,11 @@

    -
    -

    Known Bugs

    +
    +

    Known Bugs + +

    Subversion 1.2.3 fixes several bugs in 1.2.1 and 1.2.0 (1.2.2 was a placeholder release and was never officially blessed). See the -

    -

    New Features

    +
    +

    New Features + +

    File Locking (requires new client and server)

    @@ -243,8 +264,11 @@
    -
    -

    New subcommand switches:

    +
    +

    New subcommand switches: + +

    svn log --limit N
    Display only N revisions, then stop. (Note: a 1.2 @@ -290,8 +314,11 @@
    -
    -

    Enhancements and Bugfixes

    +
    +

    Enhancements and Bugfixes + +

    Faster access to old revisions due to xdelta compression @@ -366,8 +393,11 @@

    -
    -

    Bugfixes:

    +
    +

    Bugfixes: + +

    More than 50 new bugs fixed. See the CHANGES file for details.

    @@ -376,8 +406,11 @@
    -
    -

    Developer Changes

    +
    +

    Developer Changes + +

    The svn_ra.h API has now been "flattened", essentially imitating the same way the svn_fs.h API hides multiple implementations. Instead @@ -398,8 +431,11 @@

    -
    -

    Deprecation of 1.0.x Series

    +
    +

    Deprecation of 1.0.x Series + +

    The Subversion 1.0.x line is no longer supported. This doesn't mean that your 1.0 installation is doomed; if it works well and is all Index: docs/release-notes/1.3.html =================================================================== --- docs/release-notes/1.3.html (revision 908111) +++ docs/release-notes/1.3.html (working copy) @@ -18,8 +18,11 @@

    Subversion 1.3 Release Notes

    -
    -

    What's New in Subversion 1.3

    +
    +

    What's New in Subversion 1.3 + +

    • Path-based authorization for svnserve
    • @@ -42,8 +45,11 @@
    -
    -

    Downloading

    +
    +

    Downloading + +

    Subversion 1.3 is available as source code in three formats:

    @@ -67,8 +73,11 @@
    -
    -

    Compatibility Concerns

    +
    +

    Compatibility Concerns + +

    Older clients and servers interoperate transparently with 1.3 servers and clients. Of course, some of the new 1.3 features may not @@ -87,8 +96,11 @@ However, a program written for 1.3 cannot necessarily compile or run against older libraries.

    -
    -

    Command Line Output Changes

    +
    +

    Command Line Output Changes + +

    Although the Subversion developers try hard to keep output from the command line programs compatible between releases, new information @@ -120,8 +132,11 @@

    -
    -

    Unexpected Berkeley DB Upgrades

    +
    +

    Unexpected Berkeley DB Upgrades + +

    This is not actually related to the Subversion 1.3 release, but it may affect you if you upgrade to 1.3 via a package distribution @@ -144,8 +159,11 @@

    -
    -

    New Features

    +
    +

    New Features + +

    Path-based authorization for svnserve (requires new server)

    @@ -215,8 +233,11 @@
    -
    -

    Major Language Binding Improvements

    +
    +

    Major Language Binding Improvements + +

    • It's now possible to build the SWIG bindings from source without @@ -238,8 +259,11 @@
    -
    -

    New subcommand switches

    +
    +

    New subcommand switches + +

    svn blame --xml [--incremental]
    svn status --xml [--incremental]
    @@ -266,8 +290,11 @@
    -
    -

    Enhancements and Bugfixes

    +
    +

    Enhancements and Bugfixes + +

    Listing available repositories in mod_dav_svn (server)

    @@ -369,8 +396,11 @@
    -
    -

    Changes in the working copy format

    +
    +

    Changes in the working copy format + +

    Subversion 1.3 features a minor change in the way properties are stored in the working copy, which reduces the size of some working @@ -392,8 +422,11 @@

    -
    -

    Subversion 1.1.x series no longer supported

    +
    +

    Subversion 1.1.x series no longer supported + +

    The Subversion 1.1.x line is no longer supported. This doesn't mean that your 1.1 installation is doomed; if it works well and is all Index: docs/release-notes/1.4.html =================================================================== --- docs/release-notes/1.4.html (revision 908111) +++ docs/release-notes/1.4.html (working copy) @@ -18,8 +18,11 @@

    Subversion 1.4 Release Notes

    -
    -

    What's New in Subversion 1.4

    +
    +

    What's New in Subversion 1.4 + +

    • svnsync, a new repository mirroring tool
    • @@ -43,8 +46,11 @@
    -
    -

    Compatibility Concerns

    +
    +

    Compatibility Concerns + +

    Older clients and servers interoperate transparently with 1.4 servers and clients. Of course, some of the new 1.4 features may not @@ -60,8 +66,11 @@ However, a program written for 1.4 cannot necessarily compile or run against older libraries.

    -
    -

    Working Copy and Repository Format Changes

    +
    +

    Working Copy and Repository Format Changes + +

    Due to certain improvements and bugfixes made to the working copy library, the version number of the working copy format has been @@ -85,8 +94,11 @@

    -
    -

    Command Line Output Changes

    +
    +

    Command Line Output Changes + +

    Although the Subversion developers try hard to keep output from the command line programs compatible between releases, new information @@ -104,8 +116,11 @@

    -
    -

    New Features

    +
    +

    New Features + +

    svnsync (some features require a 1.4 server)

    @@ -214,8 +229,11 @@
    -
    -

    New subcommand switches

    +
    +

    New subcommand switches + +

    This release of Subversion adds a few new switches and options to the command line client. These are: @@ -248,8 +266,11 @@
    -
    -

    Enhancements and Bugfixes

    +
    +

    Enhancements and Bugfixes + +

    svnserve as native Windows service (server)

    @@ -299,8 +320,11 @@
    -
    -

    Subversion 1.2.x series no longer supported

    +
    +

    Subversion 1.2.x series no longer supported + +

    The Subversion 1.2.x line is no longer supported. This doesn't mean that your 1.2 installation is doomed; if it works well and is all Index: docs/release-notes/1.5.html =================================================================== --- docs/release-notes/1.5.html (revision 908111) +++ docs/release-notes/1.5.html (working copy) @@ -18,8 +18,11 @@

    Subversion 1.5 Release Notes

    -
    -

    What's New in Subversion 1.5

    +
    +

    What's New in Subversion 1.5 + +

    • -
      -

      Compatibility Concerns

      +
      +

      Compatibility Concerns + +

      Older clients and servers interoperate transparently with 1.5 servers and clients. However, some of the new 1.5 features (e.g., not upgraded automatically.

      -
      -

      Working Copy Upgrades

      +
      +

      Working Copy Upgrades + +

      WARNING: if a Subversion 1.5 client encounters a pre-1.5 working copy, it will automatically upgrade the @@ -208,8 +217,11 @@

      -
      -

      Repository Upgrades

      +
      +

      Repository Upgrades + +

      The Subversion 1.5 server works with 1.4 and older repositories, and it will not upgrade such repositories to 1.5 unless @@ -238,8 +250,11 @@

      -
      -

      Command Line Output Changes

      +
      +

      Command Line Output Changes + +

      Although we try hard to keep output from the command line programs compatible between releases, new information sometimes has to be @@ -309,8 +324,11 @@

      -
      -

      New Features

      +
      +

      New Features + +

      Merge tracking (foundational) (client and server)

      @@ -340,8 +358,11 @@ by Paul Burba

    -
    -

    Overview

    +
    +

    Overview + +

    Subversion's merge tracking is designed to:

    @@ -362,8 +383,11 @@
    -
    -

    User interface

    +
    +

    User interface + +

    Merging changes from (say) trunk to a branch no longer requires that you specify the revision range. Instead, each time you want to @@ -440,8 +464,11 @@

    -
    -

    Merge tracking and compatibility

    +
    +

    Merge tracking and compatibility + +

    As described earlier, merge-tracking is not supported unless you upgrade the repository as well as the @@ -459,8 +486,11 @@

    -
    -

    Known Issues

    +
    +

    Known Issues + +

    There are still known issues with merge tracking in 1.5.0. We're working on the most important ones first, which are:

    @@ -543,8 +573,11 @@
    -
    -

    Further reading

    +
    +

    Further reading + +

    For more on merge-tracking in Subversion 1.5, see:

    @@ -578,8 +611,11 @@ replaces -N, and allows users to construct working copies containing just what's needed, leaving out everything else.

    -
    -

    Depth overview

    +
    +

    Depth overview + +

    Each directory now understands the notion of depth, which has four possible values: empty, files, immediates, infinity. The values are defined as follows:

    @@ -613,8 +649,11 @@
    -
    -

    User Interface

    +
    +

    User Interface + +

    Affected commands:

    • checkout
    • @@ -664,8 +703,11 @@
    -
    -

    Compatibility with older servers

    +
    +

    Compatibility with older servers + +

    The new --depth feature naturally requires the client to be 1.5+, and will work most efficiently if the server is also 1.5+. @@ -687,8 +729,11 @@

    -
    -

    Further reading

    +
    +

    Further reading + +

    -
    -

    Further reading

    +
    +

    Further reading + +

    • The Two additions to the svn:externals feature

      -
      -

      Peg revision syntax for URLs

      +
      +

      Peg revision syntax for URLs + +

      Compatibility and the new syntax: For compatibility reasons, the pre-1.5 svn:externals syntax continues to not understand @@ -866,8 +917,11 @@

      -
      -

      Support for relative URLs

      +
      +

      Support for relative URLs + +

      Prior to Subversion 1.5, the URLs in an svn:externals specification must be absolute. Now they can be relative. Four @@ -1113,8 +1167,11 @@

      -
      -

      Example configuration

      +
      +

      Example configuration + +

      Participants:

        @@ -1189,8 +1246,11 @@
      -
      -

      Enhancements and Bugfixes

      +
      +

      Enhancements and Bugfixes + +

      Copy/move-related improvements (client and server)

      @@ -1336,8 +1396,11 @@ href="http://svn.collab.net/repos/svn/trunk/CHANGES">CHANGES file for a complete list.

      -
      -

      New "resolve" subcommand replaces "resolved"

      +
      +

      New "resolve" subcommand replaces "resolved" + +

      A new resolve subcommand replaces the "resolved" subcommand (the latter is deprecated, but still @@ -1366,8 +1429,11 @@

      -
      -

      New --keep-local option retains path after delete.

      +
      +

      New --keep-local option retains path after delete. + +

      Delete (remove) now takes a --keep-local option to retain its @@ -1375,8 +1441,11 @@

      -
      -

      Commit now takes a --with-revprop option.

      +
      +

      Commit now takes a --with-revprop option. + +

      Commit now takes a --with-revprop option allowing one to set revision properties @@ -1445,8 +1514,11 @@
      -
      -

      Subversion 1.3.x series no longer supported

      +
      +

      Subversion 1.3.x series no longer supported + +

      The Subversion 1.3.x line is no longer supported. This doesn't mean that your 1.3 installation is doomed; if it works well and is all @@ -1457,11 +1529,17 @@

      -
      -

      Subversion Dependencies Distribution: Binary Compatibility Issues

      +
      +

      Subversion Dependencies Distribution: Binary Compatibility Issues + +

      -
      -

      Background

      +
      +

      Background + +

      APR 0.9.x and 1.x are binary-incompatible. This means if you are already using Subversion with APR 0.9.x, and then upgrade your libapr @@ -1477,8 +1555,11 @@

      -
      -

      Subversion 1.5.0 Dependencies Distribution

      +
      +

      Subversion 1.5.0 Dependencies Distribution + +

      Today, these dependencies are no longer exotic, so our source distribution contains just Subversion itself. Those building Index: docs/release-notes/1.6.html =================================================================== --- docs/release-notes/1.6.html (revision 908111) +++ docs/release-notes/1.6.html (working copy) @@ -18,8 +18,11 @@

      Subversion 1.6 Release Notes

      -
      -

      What's New in Subversion 1.6

      +
      +

      What's New in Subversion 1.6 + +

      • -
        -

        Compatibility Concerns

        +
        +

        Compatibility Concerns + +

        Older clients and servers interoperate transparently with 1.6 servers and clients. However, some of the new 1.6 features may not be @@ -131,8 +137,11 @@ Subversion 1.6. But, repositories are not upgraded automatically.

        -
        -

        Working Copy Upgrades

        +
        +

        Working Copy Upgrades + +

        WARNING: if a Subversion 1.6 client encounters a pre-1.6 working copy, it will automatically upgrade the @@ -154,8 +163,11 @@

        -
        -

        Repository Upgrades

        +
        +

        Repository Upgrades + +

        The Subversion 1.6 server works with 1.5 and older repositories, and it will not upgrade such repositories to 1.6 unless @@ -172,8 +184,11 @@

        -
        -

        Command Line Output Changes

        +
        +

        Command Line Output Changes + +

        Although we try hard to keep output from the command line programs compatible between releases, new information sometimes has to be @@ -251,8 +266,11 @@

        -
        -

        Hook Changes

        +
        +

        Hook Changes + +

        Changed handling of output of pre-lock hook

        @@ -266,8 +284,11 @@
        -
        -

        New Features

        +
        +

        New Features + +

        -
        -

        Filesystem Storage Improvements

        +
        +

        Filesystem Storage Improvements + +

        Subversion 1.6 contains several improvements to both the Berkeley DB and FSFS backends. These are designed to improve storage space, and can result in @@ -543,8 +567,11 @@

        -
        -

        Ctypes Python Bindings

        +
        +

        Ctypes Python Bindings + +

        Subversion 1.6 introduces a new python binding for the Subversion API. The new binding makes use of the ctypes library to present the standard API along @@ -574,8 +601,11 @@

        -
        -

        Enhancements and Bugfixes

        +
        +

        Enhancements and Bugfixes + +

        @@ -704,8 +734,11 @@ href="http://svn.collab.net/repos/svn/trunk/CHANGES">CHANGES file for a complete list.

        -
        -

        log can take multiple revisions

        +
        +

        log can take multiple revisions + +

        The svn log command can now take multiple revision arguments in one invocation. Both the -c and -r arguments are supported.

        @@ -733,8 +766,11 @@
        -
        -

        --trust-server-cert option

        +
        +

        --trust-server-cert option + +

        Option added to svn and svnsync, so that non-interactive operations can work with self-signed certificates not @@ -815,8 +851,11 @@

        -
        -

        Subversion 1.4.x series no longer supported

        +
        +

        Subversion 1.4.x series no longer supported + +

        The Subversion 1.4.x line is no longer supported. This doesn't mean that your 1.4 installation is doomed; if it works well and is all @@ -827,8 +866,11 @@

        -
        -

        New Dependency: SQLite

        +
        +

        New Dependency: SQLite + +

        We now require SQLite to build both the server and client. We recommend 3.6.13 or greater, but work with Index: docs/release-notes/1.6.zh.html =================================================================== --- docs/release-notes/1.6.zh.html (revision 908111) +++ docs/release-notes/1.6.zh.html (working copy) @@ -20,8 +20,11 @@

        本文根据原文r36726,由Subversion中文站的中文化翻译小组翻译,欢迎各位参与翻译工作,加入地址:http://code.google.com/p/svncndoc/,参与翻译的志愿者包括rocksun

        -
        -

        Subversion 1.6的新东西

        +
        +

        Subversion 1.6的新东西 + +

        • -
          -

          兼容性情况

          +
          +

          兼容性情况 + +

          以前的客户端和服务器可以直接与1.6的服务器和客户端交互,然而,如果服务器和客户端不全是1.6时,一些新的1.6特性将会不可用。而另外一些特性,在服务器是旧的,客户端是新的时,可以运行但是效率比较低。

          @@ -108,8 +114,11 @@ svnadmin等不能读取Subversion 1.6的版本库,但是版本库不是自动升级的

          -
          -

          工作拷贝升级

          +
          +

          工作拷贝升级 + +

          警告:如果一个Subversion 1.6客户端遇到了一个1.6以前的工作拷贝,它会在接触到工作拷贝时自动升级工作拷贝格式,并使旧的Subversion客户端不能再读这些工作拷贝了。如果你在机器上使用多个版本的Subversion,请确认你对工作拷贝使用的subversion版本,防止意外升级工作拷贝。(但是这种“自动升级”行为不会发生在版本库上,只发生在工作拷贝。)

          @@ -121,8 +130,11 @@
          -
          -

          版本库升级

          +
          +

          版本库升级 + +

          Subversion 1.6服务器可以与1.5和以前的版本库工作,如果不使用svnadmin upgrade命令,版本库不会自动升级到1.6。这意味仅仅升级服务器不能直接得到某些特性,你也需要升级版本库。(我们决定不使用自动升级版本库,因为我们不希望subversion 1.6偷偷的升级成1.5不可用的版本库,这对于版本库管理来说是一件很慎重的事情。)

          @@ -130,8 +142,11 @@
          -
          -

          命令行输出的变更

          +
          +

          命令行输出的变更 + +

          尽管我们希望尽可能让命令行程序的的输出与以前版本保持兼容,但是还是要添加一些信息,这会破坏一些精确依赖输出的脚本。

          @@ -178,8 +193,11 @@
          -
          -

          钩子变更

          +
          +

          钩子变更 + +

          pre-lock中对于输出数据处理的变化

          @@ -192,8 +210,11 @@
          -
          -

          新特性

          +
          +

          新特性 + +

          -
          -

          文件系统存储改进

          +
          +

          文件系统存储改进 + +

          Subversion 1.6包含了Berkeley DB和FSFS后端的改进,主要为了改进存储空间,可以显著产生更小的版本库,这些变更包括:

            @@ -404,8 +428,11 @@
          -
          -

          Ctypes Python绑定

          +
          +

          Ctypes Python绑定 + +

          Subversion 1.6为Subversion API引入了新的python绑定,新的绑定可以充分利用ctypes库提供的标准API,提供标准Subversion结构的面向对象的接口,这个绑定相比于原来的基于SWIG的绑定有以下优势:

            @@ -422,8 +449,11 @@
          -
          -

          改进和bug修正

          +
          +

          改进和bug修正 + +

          @@ -521,8 +551,11 @@

          在命令行客户端有太多改进和新选项可以在这里列出来,除了本文已经提到的部分,下面是一些被认为是重要的,但是完整的列表请看CHANGES文件。

          -
          -

          日志可以接受多个修订版本

          +
          +

          日志可以接受多个修订版本 + +

          svn log命令可以在一次调用中接受多个修订版本参数,-c和-r选项都支持。

          @@ -549,8 +582,11 @@
          -
          -

          --trust-server-cert选项

          +
          +

          --trust-server-cert选项 + +

          添加到svnsvnsync的选项,这样非交互式的操作也可以在未经过权威信任的自签名凭证下工作。

          @@ -618,15 +654,21 @@
          -
          -

          Subversion 1.4.x系列不再支持

          +
          +

          Subversion 1.4.x系列不再支持 + +

          Subversion 1.4.x线不再支持,这不是意味着1.4的安装已经要完蛋了;如果它工作良好,满足了你的需要,那很好。“不再支持”的意思是我们不再接受1.4.x版本的bug报告,也不会发布任何1.4.x的bug修正版本,除非有绝对安全隐患或数据丢失的bug。

          -
          -

          新的依赖:SQLite

          +
          +

          新的依赖:SQLite + +

          我们现在需要SQLite来构建服务器和客户端,我们推荐3.6.13或更新的版本,但是3.4.0已经足够。如果它位于tarball的根下,Subversion会尝试使用SQLite amalgamation,否则Subversion会在系统的常见位置寻找SQLite。你也可以通过传递给configure命令--with-sqlite来指明SQLite库或amalgamation的位置。

          Index: docs/index.html =================================================================== --- docs/index.html (revision 908111) +++ docs/index.html (working copy) @@ -25,8 +25,11 @@ so if you spot errors in them, please feel free to submit corrections to the relevant owners of the documentation.

          -
          -

          Subversion User Manuals

          +
          +

          Subversion User Manuals + +

          If you want to know how to use Subversion, you can find a number of published user manuals available @@ -41,8 +44,11 @@

          -
          -

          Community Guides

          +
          +

          Community Guides + +

          The Subversion community operates at peak efficiency when everyone honors the various policies which were established by the community @@ -58,8 +64,11 @@

          -
          -

          Subversion API

          +
          +

          Subversion API + +

          Subversion is a collection of modular libraries written in the C programming language, each of which has a clearly defined @@ -87,8 +96,11 @@

          -
          -

          Release Notes

          +
          +

          Release Notes + +

          Here are a set of release notes for the major Subversion releases thus far:

          Index: faq.zh.html =================================================================== --- faq.zh.html (revision 908111) +++ faq.zh.html (working copy) @@ -177,20 +177,29 @@
          -
          -

          常见问题:

          +
          +

          常见问题: + +

          -
          -

          为什么会有这样一个项目?

          +
          +

          为什么会有这样一个项目? + +

          为了接管CVS的用户基础。确切的说,我们写了一个新的版本控制系统,它和CVS很相似,但是它修正了以前CVS所没有解决的许多问题。请看我们的首页。

          -
          -

          Subversion是私有软件的吗?我听说它是属于CollabNet公司的。

          +
          +

          Subversion是私有软件的吗?我听说它是属于CollabNet公司的。 + +

          不是,Subversion一款开源/免费的软件。CollabNet公司为几个全职的开发人员支付薪水,并且拥有相关代码的版权,但是这个版权是一个Apache/BSD-风格的许可证,它完全遵从于 -

          -

          Subversion用在我的项目上是否足够稳定?

          +
          +

          Subversion用在我的项目上是否足够稳定? + +

          是的,绝对可以。它是一款已经准备好进入黄金时段的产品。

          @@ -211,8 +223,11 @@ -
          -

          Subversion的客户端/服务器在协同工作时的策略是怎样的?

          +
          +

          Subversion的客户端/服务器在协同工作时的策略是怎样的? + +

          客户端和服务器被设计成只要他们相互之间没有超过一个主要的发行版本,就可以协调工作。例如任何一个1.x的客户端都可以和一个1.y的服务器协调工作。然而,如果客户端和服务器的版本不相匹配,某些特性可能不能使用。

          @@ -222,8 +237,11 @@
          -
          -

          Subversion可以运行在哪些操作系统上?

          +
          +

          Subversion可以运行在哪些操作系统上? + +

          所有现代风格的操作系统,比如Unix, Win32, BeOS, OS/2, MacOS X。

          @@ -235,8 +253,11 @@
          -
          -

          所有它的一切是否是一种新的文件系统?比方说ext2文件系统?

          +
          +

          所有它的一切是否是一种新的文件系统?比方说ext2文件系统? + +

          不是。"Subversion文件系统"不是一个可以装在操作系统上的内核级的文件系统,相反,它是Subversion版本库的接口,是一个版本文件系统,在某种意义上说,它可以存储一个文件目录结构(树)并且使这个目录结构从一个修订版本到下一个修订版本的过程中保留版本信息。访问这个版本库来编写程序和使用其他文件系统的API是很相似的,但是最大的不同在于,这个特殊的文件系统在你写入的时候不会丢失数据。目录结构(树)的一些旧的状态信息可以被很容易的恢复,就像恢复到最近的状态那样容易。

          @@ -256,8 +277,11 @@
          -
          -

          我听说Subversion是Apache项目的扩展?我是否需要Apache来做服务器呢?

          +
          +

          我听说Subversion是Apache项目的扩展?我是否需要Apache来做服务器呢? + +

          不用。Subversion是一系列的库,它与一个命令行的客户端相互配合工作。有两类不同的Subversion的服务器进程,包括一个svnserve进程,这是一个小的类似CVS的pserver进程的独立运行程序,另一个是使用mod_dav_svn模块的Apachehttpd-2.0svnserve进程可以说是一个常用协议,而mod_dav_svn进程使用了WebDAV作为它的网络协议。请参阅Subversion手册第六章以了解更多的内容。

          @@ -266,8 +290,11 @@ -
          -

          是否意味着我必须首先安装Apache才能使用Subversion?

          +
          +

          是否意味着我必须首先安装Apache才能使用Subversion? + +

          一句话:不必。

          @@ -281,8 +308,11 @@ -
          -

          我现在所运行的是Apache 1.x,但是我不能仅仅为了支持Subversion版本库而将其转换成Apache 2.0。这是否意味着我不能使用Subversion服务器?

          +
          +

          我现在所运行的是Apache 1.x,但是我不能仅仅为了支持Subversion版本库而将其转换成Apache 2.0。这是否意味着我不能使用Subversion服务器? + +

          不必,你可以用svnserve作为Subversion的服务器,它可以很好的工作。

          @@ -291,16 +321,22 @@
          -
          -

          为什么不象SCM系统Y那样来做X?

          +
          +

          为什么不象SCM系统Y那样来做X? + +

          我们从来没有试图在SCM系统上推到重来,开辟出一个新的天地,也没有试图完全模仿每一个SCM系统的好的特性,我们只是要取代CVS。请参阅我们的第一个问题。

          -
          -

          为什么整个库都使用相同的版本号码?我想让我的每一个工程都有其自己的版本号。

          +
          +

          为什么整个库都使用相同的版本号码?我想让我的每一个工程都有其自己的版本号。 + +

          首先,请注意Subversion没有项目这个概念。版本库只是存储版本化的目录树 — 你可以将某个子目录当作项目,但是Subversion不会对其特殊对待。因此,对于一个项目的构成完全由用户自己解释。(与之类似的branches -

          -

          Subversion是否有变更集?

          +
          +

          Subversion是否有变更集? + +

          这个问题有些麻烦,因为好像每个人对变更集的定义多少有些不同,或者至少对版本控制系统的变更集特性多少有些不同的期望。

          @@ -340,8 +379,11 @@
          -
          -

          下一个版本什么时候发布?

          +
          +

          下一个版本什么时候发布? + +

          看我们的状态页 @@ -350,8 +392,11 @@

          -