Johan Corveleyn

* STATUS: Nominate r1866425 (Last-Modified header) for 1.12.x too.

* STATUS: Vote for and approve r1865266.

* STATUS: Nominate r1866425 (mod_dav_svn: Set Last-Modified response header

for 'external' GET requests.)

mod_dav_svn: Set Last-Modified response header for 'external' GET requests

(i.e. requests to URI's not under /!svn). This partially reverts r1724790

which removed it for all GET requests, for performance reasons (however, for

external requests the Last-Modified header is needed for certain use cases).

See this thread on dev@:

Date: 2019/09/02 14:20:16 GMT

From: Johan Corveleyn

To: Subversion dev list

Subject: Re: Last-Modified HTTP header in GET responses

Message-ID: <>

Review by: brane

* subversion/mod_dav_svn/repos.c

(get_last_modified): New function (reverted its removal in r1724790).

(set_headers): Set Last-Modified response header for 'external' requests.

* subversion/tests/cmdline/

(last_modified_header): New test.

* 1.10.x/STATUS: Vote for r1839739.

* 1.10.x/STATUS: Vote for r1836960 group, approving.

* 1.10.x/STATUS: Vote for r1839662, approving.

* 1.11.x/STATUS: Upgrade vote for r1841725 group, approving.

* 1.11.x/STATUS: Vote for r1841822, approving.

* 1.11.x/STATUS: Vote for the conflict resolver backports.

* 1.11.x/STATUS: Vote for the r1840990 group, approving.

* STATUS: Add r1841524, r1841525 (Fix detection of JDK 10 on Windows when

--with-jdk is used) to the java10 nomination, and vote for it.

* build/generator/

(_find_jdk): Fix indentation of comments (tabs -> spaces).

Fix detection of JDK 10 on Windows when --with-jdk is used.

* build/generator/

(_find_jdk): Use javac.exe instead of javah.exe for validating the

--with-jdk option. Drop the quotes from the vermatch regex, because

with javac the version number is not quoted.

* 1.9.x/STATUS: Vote for r1830883 group (externals pruning). Vote for

r1811189 (rewording <Location/> block warning), approving.

* STATUS: Vote for conflict resolver fixes: r1830083 (issue #4739) and

r1833895 (issue #4744) groups.

* STATUS: Vote for r1833836 group (conflict resolver search limit), approving.

* STATUS: Vote for r1830883 group (externals pruning), approving.

* STATUS: Vote for r1833621, approving.

* site/publish/faq.html

(portability): Replace "Win32" by "Windows", which seems more appropriate


* site/publish/faq.html

(portability): Replace "MacOS X" by "macOS".

Suggested by: Ryan Schmidt <subversion-2018{_AT_}>

Add write-changelog command to for parsing CHANGES text from

commit messages.

Usage: write-changelog [--include-unlabeled-summaries] branch previous

branch The branch (or tag or trunk), relative to

^/subversion/, of which to generate the changelog,

when compared to "previous".

previous The "previous" branch or tag, relative to

^/subversion/, to compare "branch" against.


Include summary lines that do not have a changes

label, unless an explicit [c:skip] or [c:ignore] is

part of the commit message (except if the summary line

contains 'STATUS', 'CHANGES',

'Post-release housekeeping', 'Follow-up' or starts

with '*').

We try to retain all relevant "changelog lines" from the commit messages.

Changelog lines are lines with the following format:

'['[audience[:section]]']' <message>


<message> '['[audience[:section]]']'


audience = U (User-visible) or D (Developer-visible)

section = general|major|minor|client|server|clientserver|other|api|bindings

(section is optional and is treated case-insensitively)

message = the actual text for CHANGES

This means the "changes label" can be used as prefix or suffix, and it

can also be left empty (which results in an uncategorized changes entry),

if the committer isn't sure where the changelog entry belongs.

Putting [skip], [ignore], [c:skip] or [c:ignore] somewhere in the

log message means this commit must be ignored for Changelog processing

(ignored even with the --include-unlabeled-summaries option).

If there is no changes label anywhere in the commit message, and the

--include-unlabeled-summaries option is used, we'll consider the summary

line of the commit message (= first line except if it starts with a *)

as an uncategorized changes entry, except if it contains "status",

"changes", "post-release housekeeping" or "follow-up".

* tools/dist/

(add_to_changes_log): New function.

(print_section): New function.

(print_changes): New function.

(write_changelog): New function.

* site/README: Commits get mailed via commits@, not notifications@.

Found by: danielsh

* site/README: Add a note about the "staging" site, and describe the workflow

for making changes on staging, and promoting (merging) them to publish.

Create a branch of /site/publish called /site/staging, so we can start

working on the Subversion website through a new workflow: editing staging

and promoting to publish after (lazy) review. The workflow will be described

in /site/README.

See the thread started here on dev@:

Date: Tue, 03 Oct 2017 21:32:13 GMT

From: Johan Corveleyn

To: Subversion dev list

Subject: Workflow for editing the subversion website

Message ID: <>

* publish/quick-start.html:

Rework the SVN Quick Start page as discussed on dev@s.a.o [1]


Patch by: Pavel Lyalyakin <pavel.lyalyakin{_AT_}>

* publish/quick-start.html, README, TODO:

Add missing svn:eol-style=native property.

Patch by: Pavel Lyalyakin <pavel.lyalyakin{_AT_}>

* tests/libsvn_client/conflicts-test.c

(test_cherry_pick_post_move_edit): Move this test to be last in the code,

where it should have been. No functional change.

* notes/resolve-moves

(Finding missing conflict victims): Describe the need to also search

the history of the merge source for moves (in case of a merge operation).

Add an example illustrating why we need this (the cherry-pick post-move

edit case).

* subversion/tests/libsvn_client/conflicts-test.c

(test_cherry_pick_post_move_edit): Correct expectation of this XFAILing

test to make it easier to see what's really missing with this use case.