svn commit: r1918157 - /subversion/branches/1.14.x/STATUS
Author: dsahlberg Date: Tue Jun 4 19:39:19 2024 New Revision: 1918157 URL: http://svn.apache.org/viewvc?rev=1918157=rev Log: In branches/1.14.x: * STATUS Vote for r1915236, r1915239 Modified: subversion/branches/1.14.x/STATUS Modified: subversion/branches/1.14.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1918157=1918156=1918157=diff == --- subversion/branches/1.14.x/STATUS (original) +++ subversion/branches/1.14.x/STATUS Tue Jun 4 19:39:19 2024 @@ -48,7 +48,7 @@ Candidate changes: Justification: Distros moving to newer compilers that treat these as errors Votes: - +1: astieger + +1: astieger, dsahlberg Veto-blocked changes: =
svn commit: r1917520 - in /subversion/site/publish: ./ docs/community-guide/
Author: dsahlberg Date: Sun May 5 16:26:16 2024 New Revision: 1917520 URL: http://svn.apache.org/viewvc?rev=1917520=rev Log: In site/publish: Merge 1917511 and 1917512 from site/staging: www.svnforum.org now only points to the Cirate website, there is no forum anymore. Remove the link. * faq.html, faq.ja.html, faq.zh.html (#more-information): As above Remove references to the IRC channels * contributing.html, docs/community-guide/conventions.part.html, docs/community-guide/general.part.html, docs/community-guide/how-to-roll-releases-in-private.txt, docs/community-guide/issues.part.html, docs/community-guide/releasing.part.html, faq.ja.html, faq.zh.html (various sections): As above * faq.html (more-information): As above (irc): New section explaining why the IRC channels disappeared Discussed on dev@ https://lists.apache.org/thread/pjxppcnt1b5zcbph3181hlb56rbo77wf Modified: subversion/site/publish/ (props changed) subversion/site/publish/contributing.html subversion/site/publish/docs/community-guide/conventions.part.html subversion/site/publish/docs/community-guide/general.part.html subversion/site/publish/docs/community-guide/how-to-roll-releases-in-private.txt subversion/site/publish/docs/community-guide/issues.part.html subversion/site/publish/docs/community-guide/releasing.part.html subversion/site/publish/faq.html subversion/site/publish/faq.ja.html subversion/site/publish/faq.zh.html Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1917511-1917512 Modified: subversion/site/publish/contributing.html URL: http://svn.apache.org/viewvc/subversion/site/publish/contributing.html?rev=1917520=1917519=1917520=diff == --- subversion/site/publish/contributing.html (original) +++ subversion/site/publish/contributing.html Sun May 5 16:26:16 2024 @@ -43,7 +43,7 @@ Participate in the mailing lists There are https://subversion.apache.org/faq#more-information;> - mailing lists, IRC channels and forums + mailing lists you can join to discuss Subversion. These are an excellent source for users and contributors interested in having technical discussions, answering questions, or resolving Modified: subversion/site/publish/docs/community-guide/conventions.part.html URL: http://svn.apache.org/viewvc/subversion/site/publish/docs/community-guide/conventions.part.html?rev=1917520=1917519=1917520=diff == --- subversion/site/publish/docs/community-guide/conventions.part.html (original) +++ subversion/site/publish/docs/community-guide/conventions.part.html Sun May 5 16:26:16 2024 @@ -893,12 +893,8 @@ necessary. - This not only helps put developers in the right frame of mind for -reading the rest of the log message, but also plays well with the -"ASFBot" bot that echoes the first line of each commit to realtime -forums like IRC. (For details, see -https://wilderness.apache.org/;>https://wilderness.apache.org/ -) + This helps put developers in the right frame of mind for +reading the rest of the log message. If the commit is just one simple change to one file, then you can dispense with the general description and simply go straight to the Modified: subversion/site/publish/docs/community-guide/general.part.html URL: http://svn.apache.org/viewvc/subversion/site/publish/docs/community-guide/general.part.html?rev=1917520=1917519=1917520=diff == --- subversion/site/publish/docs/community-guide/general.part.html (original) +++ subversion/site/publish/docs/community-guide/general.part.html Sun May 5 16:26:16 2024 @@ -20,20 +20,9 @@ A number of Subversion's developers are improve Subversion, while many others are simply excellent volunteers who are interested in building a better version control system. -The community exists mainly through IRC, mailing lists and a +The community exists mainly through mailing lists and a Subversion repository. To participate: - - -Join us on irc.libera.chat in the #svn-dev channel (use the -https://web.libera.chat/?channel=#svn-dev;>web interface or -https://matrix.to/#/#svn-dev:libera.chat;>Matrix or -any IRC software; archived -https://colabti.org/irclogger/irclogger_logs/svn-dev;>here). - - - - Join the "dev", "commits", and "announce" mailing lists. The dev list, d...@subversion.apache.org, is where almost all discussion takes place. All development questions should go @@ -685,17 +674,15 @@ have an svn client, http://svn.apache.org/viewvc/subversion/site/publish/docs/community-guide/how-to-roll-r
svn commit: r1917512 - in /subversion/site/staging: ./ docs/community-guide/
Author: dsahlberg Date: Sun May 5 08:27:07 2024 New Revision: 1917512 URL: http://svn.apache.org/viewvc?rev=1917512=rev Log: In site/staging: Remove references to the IRC channels * contributing.html, docs/community-guide/conventions.part.html, docs/community-guide/general.part.html, docs/community-guide/how-to-roll-releases-in-private.txt, docs/community-guide/issues.part.html, docs/community-guide/releasing.part.html, faq.ja.html, faq.zh.html (various sections): As above * faq.html (more-information): As above (irc): New section explaining why the IRC channels disappeared Discussed on dev@ https://lists.apache.org/thread/pjxppcnt1b5zcbph3181hlb56rbo77wf Modified: subversion/site/staging/contributing.html subversion/site/staging/docs/community-guide/conventions.part.html subversion/site/staging/docs/community-guide/general.part.html subversion/site/staging/docs/community-guide/how-to-roll-releases-in-private.txt subversion/site/staging/docs/community-guide/issues.part.html subversion/site/staging/docs/community-guide/releasing.part.html subversion/site/staging/faq.html subversion/site/staging/faq.ja.html subversion/site/staging/faq.zh.html Modified: subversion/site/staging/contributing.html URL: http://svn.apache.org/viewvc/subversion/site/staging/contributing.html?rev=1917512=1917511=1917512=diff == --- subversion/site/staging/contributing.html (original) +++ subversion/site/staging/contributing.html Sun May 5 08:27:07 2024 @@ -43,7 +43,7 @@ Participate in the mailing lists There are https://subversion.apache.org/faq#more-information;> - mailing lists, IRC channels and forums + mailing lists you can join to discuss Subversion. These are an excellent source for users and contributors interested in having technical discussions, answering questions, or resolving Modified: subversion/site/staging/docs/community-guide/conventions.part.html URL: http://svn.apache.org/viewvc/subversion/site/staging/docs/community-guide/conventions.part.html?rev=1917512=1917511=1917512=diff == --- subversion/site/staging/docs/community-guide/conventions.part.html (original) +++ subversion/site/staging/docs/community-guide/conventions.part.html Sun May 5 08:27:07 2024 @@ -893,12 +893,8 @@ necessary. - This not only helps put developers in the right frame of mind for -reading the rest of the log message, but also plays well with the -"ASFBot" bot that echoes the first line of each commit to realtime -forums like IRC. (For details, see -https://wilderness.apache.org/;>https://wilderness.apache.org/ -) + This helps put developers in the right frame of mind for +reading the rest of the log message. If the commit is just one simple change to one file, then you can dispense with the general description and simply go straight to the Modified: subversion/site/staging/docs/community-guide/general.part.html URL: http://svn.apache.org/viewvc/subversion/site/staging/docs/community-guide/general.part.html?rev=1917512=1917511=1917512=diff == --- subversion/site/staging/docs/community-guide/general.part.html (original) +++ subversion/site/staging/docs/community-guide/general.part.html Sun May 5 08:27:07 2024 @@ -20,20 +20,9 @@ A number of Subversion's developers are improve Subversion, while many others are simply excellent volunteers who are interested in building a better version control system. -The community exists mainly through IRC, mailing lists and a +The community exists mainly through mailing lists and a Subversion repository. To participate: - - -Join us on irc.libera.chat in the #svn-dev channel (use the -https://web.libera.chat/?channel=#svn-dev;>web interface or -https://matrix.to/#/#svn-dev:libera.chat;>Matrix or -any IRC software; archived -https://colabti.org/irclogger/irclogger_logs/svn-dev;>here). - - - - Join the "dev", "commits", and "announce" mailing lists. The dev list, d...@subversion.apache.org, is where almost all discussion takes place. All development questions should go @@ -685,17 +674,15 @@ have an svn client, http://svn.apache.org/viewvc/subversion/site/staging/docs/community-guide/how-to-roll-releases-in-private.txt?rev=1917512=1917511=1917512=diff == --- subversion/site/staging/docs/community-guide/how-to-roll-releases-in-private.txt (original) +++ subversion/site/staging/docs/community-guide/how-to-roll-releases-in-private.txt Sun May 5 08:27:07 2024 @@ -66,8 +66,6 @@ To post the release: and ensure the results are no more than a second apart. This ensures you will not announce be
svn commit: r1917511 - in /subversion/site/staging: faq.html faq.ja.html faq.zh.html
Author: dsahlberg Date: Sun May 5 07:45:50 2024 New Revision: 1917511 URL: http://svn.apache.org/viewvc?rev=1917511=rev Log: In site/staging: www.svnforum.org now only points to the Cirate website, there is no forum anymore. Remove the link. * faq.html, faq.ja.html, faq.zh.html (#more-information): As above Modified: subversion/site/staging/faq.html subversion/site/staging/faq.ja.html subversion/site/staging/faq.zh.html Modified: subversion/site/staging/faq.html URL: http://svn.apache.org/viewvc/subversion/site/staging/faq.html?rev=1917511=1917510=1917511=diff == --- subversion/site/staging/faq.html (original) +++ subversion/site/staging/faq.html Sun May 5 07:45:50 2024 @@ -721,9 +721,6 @@ other resources available: (The IRC channel was hosted on freenode.net until May 2021. It may still exist but it is no longer recognized as an official channel.) - https://www.svnforum.org/;>svnforum.org, an unofficial - web-based forum with approximately the same target audience as the - mailing list Modified: subversion/site/staging/faq.ja.html URL: http://svn.apache.org/viewvc/subversion/site/staging/faq.ja.html?rev=1917511=1917510=1917511=diff == --- subversion/site/staging/faq.ja.html [utf-8] (original) +++ subversion/site/staging/faq.ja.html [utf-8] Sun May 5 07:45:50 2024 @@ -464,7 +464,6 @@ Win32システムには、シンボリ� 注意: このメイリングリストはモデレータ制だから、あなたの投稿が配送されるまでには、少し遅延があるかも。 https://svn.haxx.se/users/;>Subversion ユーザーズリストのアーカイブ IRC。irc.libera.chat の #svn チャンネルにて。 - https://www.svnforum.org/;>svnforum.org。Webベースの非公式なフォーラムで、メイリングリストと同じ程度の層を参加者のターゲットにしている。 Modified: subversion/site/staging/faq.zh.html URL: http://svn.apache.org/viewvc/subversion/site/staging/faq.zh.html?rev=1917511=1917510=1917511=diff == --- subversion/site/staging/faq.zh.html [utf-8] (original) +++ subversion/site/staging/faq.zh.html [utf-8] Sun May 5 07:45:50 2024 @@ -444,7 +444,6 @@ href="http://svn.collab.net/repos/svn/tr 注意这个列表需要经过审核,所以在显示之前有一些延迟。 https://svn.haxx.se/users/;>Subversion用户信息列表。 在线聊天系统(IRC)在irc.libera.chat的#svn频道。 - https://www.svnforum.org/;>svnforum.org一个非官方基于网络的论坛,针对的读者和邮件列表近似。
svn propchange: r1917446 - svn:log
Author: dsahlberg Revision: 1917446 Modified property: svn:log Modified: svn:log at Wed May 1 09:05:12 2024 -- --- svn:log (original) +++ svn:log Wed May 1 09:05:12 2024 @@ -7,3 +7,7 @@ Make svn_apply_autoprops.py Python 3-com (main): Use `open()` instead of `file()`, and `os.walk()` instead of `os.path.walk()`. + +Patch by: Khairul Azhar Kasmiran + +Discussed on dev@ https://lists.apache.org/thread/rd8942g7oc6lljjpybw94r4lqhyh2p36
svn commit: r1917446 - /subversion/trunk/contrib/client-side/svn_apply_autoprops.py
Author: dsahlberg Date: Wed May 1 09:03:30 2024 New Revision: 1917446 URL: http://svn.apache.org/viewvc?rev=1917446=rev Log: Make svn_apply_autoprops.py Python 3-compatible. * contrib/client-side/svn_apply_autoprops.py: (get_autoprop_lines): Use raw strings for regexes, and `for line in fd` instead of `for line in fd.xreadlines()`. (filter_walk): Pass directory names separately. (main): Use `open()` instead of `file()`, and `os.walk()` instead of `os.path.walk()`. Modified: subversion/trunk/contrib/client-side/svn_apply_autoprops.py Modified: subversion/trunk/contrib/client-side/svn_apply_autoprops.py URL: http://svn.apache.org/viewvc/subversion/trunk/contrib/client-side/svn_apply_autoprops.py?rev=1917446=1917445=1917446=diff == --- subversion/trunk/contrib/client-side/svn_apply_autoprops.py (original) +++ subversion/trunk/contrib/client-side/svn_apply_autoprops.py Wed May 1 09:03:30 2024 @@ -68,10 +68,10 @@ def get_autoprop_lines(fd): lines = [] reading_autoprops = 0 - re_start_autoprops = re.compile('^\s*\[auto-props\]\s*') - re_end_autoprops = re.compile('^\s*\[\w+\]\s*') + re_start_autoprops = re.compile(r'^\s*\[auto-props\]\s*') + re_end_autoprops = re.compile(r'^\s*\[\w+\]\s*') - for line in fd.xreadlines(): + for line in fd: if reading_autoprops: if re_end_autoprops.match(line): reading_autoprops = 0 @@ -124,13 +124,14 @@ def process_autoprop_lines(lines): return result -def filter_walk(autoprop_lines, dirname, filenames): +def filter_walk(autoprop_lines, dirname, dirnames, filenames): # Do not descend into a .svn directory. try: -filenames.remove(SVN_WC_ADM_DIR_NAME) +dirnames.remove(SVN_WC_ADM_DIR_NAME) except ValueError: pass + filenames += dirnames filenames.sort() # Find those filenames that match each fnmatch. @@ -184,7 +185,7 @@ def main(): return 1 try: -fd = file(config_filename) +fd = open(config_filename) except IOError: print("Cannot open svn configuration file '%s' for reading: %s" \ % (config_filename, sys.exc_value.strerror)) @@ -196,7 +197,8 @@ def main(): autoprop_lines = process_autoprop_lines(autoprop_lines) - os.path.walk(wc_path, filter_walk, autoprop_lines) + for root, dirs, files in os.walk(wc_path): +filter_walk(autoprop_lines, root, dirs, files) if __name__ == '__main__': sys.exit(main())
svn propchange: r1917397 - svn:log
Author: dsahlberg Revision: 1917397 Modified property: svn:log Modified: svn:log at Sun Apr 28 18:19:19 2024 -- --- svn:log (original) +++ svn:log Sun Apr 28 18:19:19 2024 @@ -10,3 +10,5 @@ Patch by: Khairul Azhar Kasmiran https://lists.apache.org/thread/r2hkc00dwgjco0r09v5rdz2sdmtjtb2w + +Note from future: contains mixed space and tabs. Fixed in r1917405
svn commit: r1917405 - /subversion/trunk/contrib/client-side/svn_apply_autoprops.py
Author: dsahlberg Date: Sun Apr 28 18:18:50 2024 New Revision: 1917405 URL: http://svn.apache.org/viewvc?rev=1917405=rev Log: r1917397 contained mixed space and tab. Replace all tabs. * contrib/client-side/svn_apply_autoprops.py (filter_walk): As above Modified: subversion/trunk/contrib/client-side/svn_apply_autoprops.py Modified: subversion/trunk/contrib/client-side/svn_apply_autoprops.py URL: http://svn.apache.org/viewvc/subversion/trunk/contrib/client-side/svn_apply_autoprops.py?rev=1917405=1917404=1917405=diff == --- subversion/trunk/contrib/client-side/svn_apply_autoprops.py (original) +++ subversion/trunk/contrib/client-side/svn_apply_autoprops.py Sun Apr 28 18:18:50 2024 @@ -147,8 +147,8 @@ def filter_walk(autoprop_lines, dirname, for prop in prop_list: command = ['svn', 'propset', prop[0], prop[1]] for f in matching_filenames: - if '@' in f: - f += '@' +if '@' in f: + f += '@' command += ["%s/%s" % (dirname, f)] status = subprocess.call(command)
svn propchange: r1917397 - svn:log
Author: dsahlberg Revision: 1917397 Modified property: svn:log Modified: svn:log at Sun Apr 28 08:24:27 2024 -- --- svn:log (original) +++ svn:log Sun Apr 28 08:24:27 2024 @@ -9,5 +9,4 @@ end of the filename, see the Subversion Patch by: Khairul Azhar Kasmiran Discussion on dev@: - - +https://lists.apache.org/thread/r2hkc00dwgjco0r09v5rdz2sdmtjtb2w
svn commit: r1917397 - /subversion/trunk/contrib/client-side/svn_apply_autoprops.py
Author: dsahlberg Date: Sun Apr 28 08:21:45 2024 New Revision: 1917397 URL: http://svn.apache.org/viewvc?rev=1917397=rev Log: svn_apply_autoprops: Support @-containing filenames. '@' is used by the peg revision syntax. If a filename contains '@' an additional '@' must be appended at the end of the filename, see the Subversion book: https://svnbook.red-bean.com/en/1.7/svn.advanced.pegrevs.html * contrib/client-side/svn_apply_autoprops.py (filter_walk): Append '@' to filenames containing '@'. Patch by: Khairul Azhar Kasmiran Discussion on dev@: Modified: subversion/trunk/contrib/client-side/svn_apply_autoprops.py Modified: subversion/trunk/contrib/client-side/svn_apply_autoprops.py URL: http://svn.apache.org/viewvc/subversion/trunk/contrib/client-side/svn_apply_autoprops.py?rev=1917397=1917396=1917397=diff == --- subversion/trunk/contrib/client-side/svn_apply_autoprops.py (original) +++ subversion/trunk/contrib/client-side/svn_apply_autoprops.py Sun Apr 28 08:21:45 2024 @@ -147,6 +147,8 @@ def filter_walk(autoprop_lines, dirname, for prop in prop_list: command = ['svn', 'propset', prop[0], prop[1]] for f in matching_filenames: + if '@' in f: + f += '@' command += ["%s/%s" % (dirname, f)] status = subprocess.call(command)
svn commit: r1917382 - /subversion/trunk/contrib/client-side/svn_apply_autoprops.py
Author: dsahlberg Date: Sat Apr 27 12:41:31 2024 New Revision: 1917382 URL: http://svn.apache.org/viewvc?rev=1917382=rev Log: Make svn_apply_autoprops.py Windows-compatible. * contrib/client-side/svn_apply_autoprops.py: (): Add default Windows Subversion configuration path. (process_autoprop_lines): Use `ON` instead of `*` for boolean properties. (filter_walk): Replace `os.spawnvp()` with `subprocess.call()`. Patch by: Khairul Azhar Kasmiran Discussion on dev@: https://lists.apache.org/thread/p66voozgndlr8qlqrtkbjs6dq0jklooj Modified: subversion/trunk/contrib/client-side/svn_apply_autoprops.py Modified: subversion/trunk/contrib/client-side/svn_apply_autoprops.py URL: http://svn.apache.org/viewvc/subversion/trunk/contrib/client-side/svn_apply_autoprops.py?rev=1917382=1917381=1917382=diff == --- subversion/trunk/contrib/client-side/svn_apply_autoprops.py (original) +++ subversion/trunk/contrib/client-side/svn_apply_autoprops.py Sat Apr 27 12:41:31 2024 @@ -28,11 +28,15 @@ import getopt import fnmatch import os +import platform import re +import subprocess import sys # The default path to the Subversion configuration file. -SVN_CONFIG_FILENAME = os.path.expandvars('$HOME/.subversion/config') +SVN_CONFIG_FILENAME = os.path.expandvars( + r'%APPDATA%\Subversion\config' if platform.system() == 'Windows' + else '$HOME/.subversion/config') # The name of Subversion's private directory in working copies. SVN_WC_ADM_DIR_NAME = '.svn' @@ -112,7 +116,7 @@ def process_autoprop_lines(lines): prop_value = prop_value.strip() except ValueError: prop_name = prop -prop_value = '*' +prop_value = 'ON' if len(prop_name): props_list += [(prop_name, prop_value)] @@ -145,7 +149,7 @@ def filter_walk(autoprop_lines, dirname, for f in matching_filenames: command += ["%s/%s" % (dirname, f)] - status = os.spawnvp(os.P_WAIT, 'svn', command) + status = subprocess.call(command) if status: print('Command %s failed with exit status %s' \ % (command, status))
svn commit: r1917381 - /subversion/trunk/contrib/client-side/svn_apply_autoprops.py
Author: dsahlberg Date: Sat Apr 27 12:32:07 2024 New Revision: 1917381 URL: http://svn.apache.org/viewvc?rev=1917381=rev Log: Python (at least 2.7.18) raise a SyntaxError on non-ascii characters, which in my case were introduced by Subversion's keyword expansion of $LastChangedDate: $ and non-english LANG setting the day as "lör" (Swedish for "sat"). * contrib/client-side/svn_apply_autoprops.py: (): Add coding according to PEP-263. Modified: subversion/trunk/contrib/client-side/svn_apply_autoprops.py Modified: subversion/trunk/contrib/client-side/svn_apply_autoprops.py URL: http://svn.apache.org/viewvc/subversion/trunk/contrib/client-side/svn_apply_autoprops.py?rev=1917381=1917380=1917381=diff == --- subversion/trunk/contrib/client-side/svn_apply_autoprops.py (original) +++ subversion/trunk/contrib/client-side/svn_apply_autoprops.py Sat Apr 27 12:32:07 2024 @@ -1,4 +1,5 @@ #!/usr/bin/env python +# coding=utf-8 # To do: # 1) Switch to using the Subversion Python bindings.
svn commit: r1915519 [1/4] - in /subversion/branches/pristine-checksum-salt: ./ build/ build/ac-macros/ build/generator/ build/generator/swig/ contrib/client-side/svn_load_dirs/ contrib/hook-scripts/
Author: dsahlberg Date: Thu Feb 1 20:04:07 2024 New Revision: 1915519 URL: http://svn.apache.org/viewvc?rev=1915519=rev Log: On branch pristine-checksum-salt: Catchup merge with trunk Added: subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/tests/data/repository-deltas.dump - copied unchanged from r1915518, subversion/trunk/subversion/bindings/swig/python/tests/data/repository-deltas.dump subversion/branches/pristine-checksum-salt/tools/dev/awk/ - copied from r1915518, subversion/trunk/tools/dev/awk/ subversion/branches/pristine-checksum-salt/tools/dev/hash-test.c - copied unchanged from r1915518, subversion/trunk/tools/dev/hash-test.c subversion/branches/pristine-checksum-salt/tools/hook-scripts/mailer/tests/README.md - copied unchanged from r1915518, subversion/trunk/tools/hook-scripts/mailer/tests/README.md subversion/branches/pristine-checksum-salt/tools/hook-scripts/mailer/tests/mailer-t2.sh - copied unchanged from r1915518, subversion/trunk/tools/hook-scripts/mailer/tests/mailer-t2.sh subversion/branches/pristine-checksum-salt/tools/hook-scripts/mailer/tests/t2-reference/ - copied from r1915518, subversion/trunk/tools/hook-scripts/mailer/tests/t2-reference/ Removed: subversion/branches/pristine-checksum-salt/tools/dev/iz/ Modified: subversion/branches/pristine-checksum-salt/ (props changed) subversion/branches/pristine-checksum-salt/CHANGES subversion/branches/pristine-checksum-salt/COMMITTERS subversion/branches/pristine-checksum-salt/INSTALL subversion/branches/pristine-checksum-salt/Makefile.in subversion/branches/pristine-checksum-salt/NOTICE subversion/branches/pristine-checksum-salt/build.conf subversion/branches/pristine-checksum-salt/build/ac-macros/swig.m4 subversion/branches/pristine-checksum-salt/build/generator/gen_win.py subversion/branches/pristine-checksum-salt/build/generator/gen_win_dependencies.py subversion/branches/pristine-checksum-salt/build/generator/swig/__init__.py subversion/branches/pristine-checksum-salt/build/get-py-info.py subversion/branches/pristine-checksum-salt/build/run_tests.py subversion/branches/pristine-checksum-salt/build/transform_sql.py subversion/branches/pristine-checksum-salt/configure.ac subversion/branches/pristine-checksum-salt/contrib/client-side/svn_load_dirs/svn_load_dirs.pl.in subversion/branches/pristine-checksum-salt/contrib/hook-scripts/check-mime-type.pl subversion/branches/pristine-checksum-salt/contrib/server-side/fsfsverify.py subversion/branches/pristine-checksum-salt/subversion/bindings/javahl/README subversion/branches/pristine-checksum-salt/subversion/bindings/swig/INSTALL subversion/branches/pristine-checksum-salt/subversion/bindings/swig/include/svn_containers.swg subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.h subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/svn/delta.py subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/svn/fs.py subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/svn/repos.py subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/tests/delta.py subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/tests/fs.py subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/tests/repository.py subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/tests/wc.py subversion/branches/pristine-checksum-salt/subversion/bindings/swig/ruby/libsvn_swig_ruby/swigutil_rb.c subversion/branches/pristine-checksum-salt/subversion/bindings/swig/svn_delta.i subversion/branches/pristine-checksum-salt/subversion/bindings/swig/svn_repos.i subversion/branches/pristine-checksum-salt/subversion/include/svn_wc.h subversion/branches/pristine-checksum-salt/subversion/libsvn_client/copy.c subversion/branches/pristine-checksum-salt/subversion/libsvn_client/externals.c subversion/branches/pristine-checksum-salt/subversion/libsvn_repos/load-fs-vtable.c subversion/branches/pristine-checksum-salt/subversion/libsvn_repos/reporter.c subversion/branches/pristine-checksum-salt/subversion/libsvn_subr/io.c subversion/branches/pristine-checksum-salt/subversion/libsvn_subr/sysinfo.c subversion/branches/pristine-checksum-salt/subversion/libsvn_subr/version.c subversion/branches/pristine-checksum-salt/subversion/libsvn_wc/revert.c subversion/branches/pristine-checksum-salt/subversion/libsvn_wc/workqueue.c subversion/branches/pristine-checksum-salt/subversion/svn/cl.h subversion/branches/pristine-checksum-salt/subversion/svn/info-cmd.c subversion/branches
svn commit: r1915519 [3/4] - in /subversion/branches/pristine-checksum-salt: ./ build/ build/ac-macros/ build/generator/ build/generator/swig/ contrib/client-side/svn_load_dirs/ contrib/hook-scripts/
Modified: subversion/branches/pristine-checksum-salt/subversion/tests/cmdline/diff_tests.py URL: http://svn.apache.org/viewvc/subversion/branches/pristine-checksum-salt/subversion/tests/cmdline/diff_tests.py?rev=1915519=1915518=1915519=diff == --- subversion/branches/pristine-checksum-salt/subversion/tests/cmdline/diff_tests.py (original) +++ subversion/branches/pristine-checksum-salt/subversion/tests/cmdline/diff_tests.py Thu Feb 1 20:04:07 2024 @@ -833,7 +833,7 @@ def diff_head_of_moved_file(sbox): ' This is the file \'mu\'.\n', '+\n', '+Actually, it\'s a new mu.\n', -'\ No newline at end of file\n', +'\\ No newline at end of file\n', ] svntest.actions.run_and_verify_svn(expected_output, [], @@ -1024,7 +1024,7 @@ def diff_base_to_repos(sbox): None, [], 'diff', '-r', 'BASE:2', wc_dir) # to do the comparison, remove all output lines starting with +++ or --- - re_infoline = re.compile('^(\+\+\+|---).*$') + re_infoline = re.compile(r'^(\+\+\+|---).*$') list1 = [] list2 = [] @@ -4256,7 +4256,7 @@ def diff_dir_replaced_by_file(sbox): '+++ %s\t(working copy)\n' % sbox.path('A/B/E'), '@@ -0,0 +1 @@\n', '+text\n', -'\ No newline at end of file\n', +'\\ No newline at end of file\n', ] svntest.actions.run_and_verify_svn(expected_output, [], @@ -4464,7 +4464,7 @@ def diff_local_missing_obstruction(sbox) 'Added: K\n', '## -0,0 +1 ##\n', '+V\n', -'\ No newline at end of property\n', +'\\ No newline at end of property\n', 'Index: %s\n' % (sbox.path('iota'),), '===\n', '--- %s\t(revision 1)\n' % (sbox.path('iota'),), @@ -4475,7 +4475,7 @@ def diff_local_missing_obstruction(sbox) 'Added: K\n', '## -0,0 +1 ##\n', '+V\n', -'\ No newline at end of property\n', +'\\ No newline at end of property\n', ] svntest.actions.run_and_verify_svn(expected_output, [], 'diff', wc_dir) @@ -4639,7 +4639,7 @@ def diff_repo_repo_added_file_mime_type( 'Deleted: svn:mime-type\n', '## -1 +0,0 ##\n', '-text/plain\n', -'\ No newline at end of property\n'] +'\\ No newline at end of property\n'] svntest.actions.run_and_verify_svn(expected_output, [], 'diff', '-r2:1', newfile) @@ -4661,7 +4661,7 @@ def diff_switched_file(sbox): '@@ -1 +1,2 @@\n', ' This is the file \'mu\'.\n', '+Mu\n', -'\ No newline at end of file\n', +'\\ No newline at end of file\n', ] svntest.actions.run_and_verify_svn(expected_output, [], 'diff', '-r', '1', sbox.ospath('iota')) @@ -4676,7 +4676,7 @@ def diff_switched_file(sbox): '-This is the file \'iota\'.\n', '+This is the file \'mu\'.\n', '+Mu\n', -'\ No newline at end of file\n', +'\\ No newline at end of file\n', ] svntest.actions.run_and_verify_svn(expected_output, [], 'diff', '-r', '1', sbox.ospath('')) @@ -4709,7 +4709,7 @@ def diff_parent_dir(sbox): 'Deleted: A\n', '## -1 +0,0 ##\n', '-B\n', - '\ No newline at end of property\n', + '\\ No newline at end of property\n', ] svntest.actions.run_and_verify_svn(expected_output, [], @@ -4726,7 +4726,7 @@ def diff_parent_dir(sbox): 'Deleted: A\n', '## -1 +0,0 ##\n', '-B\n', - '\ No newline at end of property\n', + '\\ No newline at end of property\n', ] svntest.actions.run_and_verify_svn(expected_output, [], @@ -4823,7 +4823,7 @@ def diff_local_copied_dir(sbox): 'Added: p2\n', '## -0,0 +1 ##\n', '+v2\n', - '\ No newline at end of property\n', + '\\ No newline at end of property\n', ] svntest.actions.run_and_verify_svn(expected_output_C2, [], @@ -5036,14 +5036,14 @@ def diff_symlinks(sbox): '+++ %s\t(working copy)\n' % sbox.path('to-iota'), '@@ -0,0 +1 @@\n', '+link iota\n', -'\ No newline at end of file\n', +'\\ No newline at end of file\n', '\n', 'Property changes on: %s\n' % sbox.path('to-iota'), '___\n', 'Added: svn:special\n', '## -0,0 +1 ##\n', '+*\n', -'\ No newline at end of property\n', +'\\ No newline at end of property\n', ], [], 'diff', wc_dir) svntest.actions.run_and_verify_svn([ @@ -5055,14 +5055,14 @@ def diff_symlinks(sbox): '+++ b/to-iota\t(working copy)\n', '@@ -0,0 +1 @@\n', '+iota\n', -'\ No newline at end of file\n', +'\\ No newline at end of file\n', '\n', 'Property changes on: to-iota\n', '___\n',
svn commit: r1915519 [2/4] - in /subversion/branches/pristine-checksum-salt: ./ build/ build/ac-macros/ build/generator/ build/generator/swig/ contrib/client-side/svn_load_dirs/ contrib/hook-scripts/
Modified: subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.h URL: http://svn.apache.org/viewvc/subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.h?rev=1915519=1915518=1915519=diff == --- subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.h (original) +++ subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.h Thu Feb 1 20:04:07 2024 @@ -275,14 +275,10 @@ svn_swig_py_unwrap_struct_ptr(PyObject * /* make an editor that "thunks" from C callbacks up to Python */ void svn_swig_py_make_editor(const svn_delta_editor_t **editor, - void **edit_baton, - PyObject *py_editor, apr_pool_t *pool); /* make a parse vtable that "thunks" from C callbacks up to Python */ void svn_swig_py_make_parse_fns3(const svn_repos_parse_fns3_t **parse_fns3, - void **parse_baton, - PyObject *py_parse_fns3, apr_pool_t *pool); apr_file_t *svn_swig_py_make_file(PyObject *py_file, Modified: subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/svn/delta.py URL: http://svn.apache.org/viewvc/subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/svn/delta.py?rev=1915519=1915518=1915519=diff == --- subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/svn/delta.py (original) +++ subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/svn/delta.py Thu Feb 1 20:04:07 2024 @@ -77,5 +77,6 @@ class Editor: pass -def make_editor(editor, pool=None): - return svn_swig_py_make_editor(editor, pool) +def make_editor(editor, pool=None, baton=None): + from libsvn.delta import _AncBaton + return svn_swig_py_make_editor(pool), _AncBaton(editor, pool, baton) Modified: subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/svn/fs.py URL: http://svn.apache.org/viewvc/subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/svn/fs.py?rev=1915519=1915518=1915519=diff == --- subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/svn/fs.py (original) +++ subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/svn/fs.py Thu Feb 1 20:04:07 2024 @@ -23,6 +23,7 @@ #under the License. ## +import errno from libsvn.fs import * ## @@ -158,6 +159,18 @@ class FileDiff: return self.tempfile1, self.tempfile2 def get_pipe(self): +"""Perform diff and return a file object from which the output can +be read. + +When DIFFOPTIONS is None (the default), use svn's internal diff. + +With any other DIFFOPTIONS, exec the external diff found on PATH, +passing it DIFFOPTIONS. On Windows, exec diff.exe rather than +diff. If a diff utility is not installed or found on PATH, throws +FileNotFoundError. Caveat: On some systems, including Windows, an +external diff may not be available unless installed and added to +PATH manually. +""" self.get_files() # If diffoptions were provided, then the diff command needs to be @@ -170,8 +183,17 @@ class FileDiff: + [self.tempfile1, self.tempfile2] # open the pipe, and return the file object for reading from the child. - p = _subprocess.Popen(cmd, stdout=_subprocess.PIPE, bufsize=-1, -close_fds=_sys.platform != "win32") + try: +p = _subprocess.Popen(cmd, stdout=_subprocess.PIPE, bufsize=-1, + close_fds=_sys.platform != "win32") + # When removing Python 2 support: Change to FileNotFoundError and + # remove check for ENOENT (FileNotFoundError "Corresponds to errno + # ENOENT" according to documentation) + except OSError as err: +if err.errno == errno.ENOENT: + err.strerror = "External diff command not found in PATH" +raise err + return _PopenStdoutWrapper(p) else: Modified: subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/svn/repos.py URL: http://svn.apache.org/viewvc/subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/svn/repos.py?rev=1915519=1915518=1915519=diff == --- subversion/branches/pristine-checksum-salt/subversion/bindings/swig/python/svn/repos.py (original)
svn commit: r1915519 [4/4] - in /subversion/branches/pristine-checksum-salt: ./ build/ build/ac-macros/ build/generator/ build/generator/swig/ contrib/client-side/svn_load_dirs/ contrib/hook-scripts/
Modified: subversion/branches/pristine-checksum-salt/tools/hook-scripts/mailer/mailer.py URL: http://svn.apache.org/viewvc/subversion/branches/pristine-checksum-salt/tools/hook-scripts/mailer/mailer.py?rev=1915519=1915518=1915519=diff == --- subversion/branches/pristine-checksum-salt/tools/hook-scripts/mailer/mailer.py (original) +++ subversion/branches/pristine-checksum-salt/tools/hook-scripts/mailer/mailer.py Thu Feb 1 20:04:07 2024 @@ -1,7 +1,6 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- # -# # Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information @@ -130,7 +129,7 @@ def main(pool, cmd, config_fname, repos_ {'author': author, 'repos_basename': os.path.basename(repos.repos_dir) }) -messenger = PropChange(pool, cfg, repos, author, propname, action) +messenger = PropChange(cfg, repos, author, propname, action) elif cmd == 'lock' or cmd == 'unlock': author = cmd_args[0] repos = Repository(repos_dir, 0, pool) ### any old revision will do @@ -144,7 +143,19 @@ def main(pool, cmd, config_fname, repos_ else: raise UnknownSubcommand(cmd) - return messenger.generate() + output = create_output(cfg, repos) + return messenger.generate(output, pool) + + +def create_output(cfg, repos): +if cfg.is_set('general.mail_command'): + cls = PipeOutput +elif cfg.is_set('general.smtp_hostname'): + cls = SMTPOutput +else: + cls = StandardOutput + +return cls(cfg, repos) def remove_leading_slashes(path): @@ -153,90 +164,79 @@ def remove_leading_slashes(path): return path +class Writer: + "Simple class for writing strings/binary, with optional encoding." + + def __init__(self, encoding): +self.buffer = BytesIO() + +# Attach a couple functions to SELF, rather than methods. +self.write_binary = self.buffer.write + +if codecs.lookup(encoding) != codecs.lookup('utf-8'): + def _write(s): +"Write text string S using the given encoding." +return self.buffer.write(s.encode(encoding, 'backslashreplace')) +else: + def _write(s): +"Write text string S using the *default* encoding (utf-8)." +return self.buffer.write(to_bytes(s)) +self.write = _write + + class OutputBase: "Abstract base class to formalize the interface of output methods" - def __init__(self, cfg, repos, prefix_param): + def __init__(self, cfg, repos): self.cfg = cfg self.repos = repos -self.prefix_param = prefix_param self._CHUNKSIZE = 128 * 1024 -# This is a public member variable. This must be assigned a suitable -# piece of descriptive text before make_subject() is called. -self.subject = "" + def send(self, subject_line, group, params, long_func, short_func): + writer = Writer(self.get_encoding()) - def make_subject(self, group, params): -prefix = self.cfg.get(self.prefix_param, group, params) -if prefix: - subject = prefix + ' ' + self.subject -else: - subject = self.subject + try: + try: + long_func(writer) + except MessageTooLarge: + writer.buffer.truncate(0) + short_func(writer) + except MessageSendFailure: +return True # failed -try: - truncate_subject = int( - self.cfg.get('truncate_subject', group, params)) -except ValueError: - truncate_subject = 0 + self.deliver(subject_line, group, params, writer.buffer.getvalue()) -# truncate subject as UTF-8 string. -# Note: there still exists an issue on combining characters. -if truncate_subject: - bsubject = to_bytes(subject) - if len(bsubject) > truncate_subject: -idx = truncate_subject - 2 -while b'\x80' <= bsubject[idx-1:idx] <= b'\xbf': - idx -= 1 -subject = to_str(bsubject[:idx-1]) + "..." + return False # succeeded -return subject + def get_encoding(self): +"""Get the encoding for text-to-bytes in the output. - def start(self, group, params): -"""Override this method. -Begin writing an output representation. GROUP is the name of the -configuration file group which is causing this output to be produced. -PARAMS is a dictionary of any named subexpressions of regular expressions -defined in the configuration file, plus the key 'author' contains the -author of the action being reported.""" -raise NotImplementedError +This will default to UTF-8. If the output mechanism needs a different +encoding, then override this method to provide the custom encoding. +""" +return 'utf-8' - def finish(self): + def deliver(self, subject_line, group, params, body): """Override this method. -Flush any cached information
svn commit: r1915466 - /subversion/trunk/subversion/libsvn_wc/revert.c
Author: dsahlberg Date: Mon Jan 29 20:46:59 2024 New Revision: 1915466 URL: http://svn.apache.org/viewvc?rev=1915466=rev Log: Follow-up to r1915215 * subversion/libsvn_wc/revert.c (revert_wc_data): *notify_access should be reset, just like *notify_required is reset in revert_list_reset(). Fix a mistake in check for APR_UWRITE. Modified: subversion/trunk/subversion/libsvn_wc/revert.c Modified: subversion/trunk/subversion/libsvn_wc/revert.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/revert.c?rev=1915466=1915465=1915466=diff == --- subversion/trunk/subversion/libsvn_wc/revert.c (original) +++ subversion/trunk/subversion/libsvn_wc/revert.c Mon Jan 29 20:46:59 2024 @@ -512,6 +512,8 @@ revert_wc_data(svn_boolean_t *run_wq, svn_boolean_t special; #endif + *notify_noaccess = FALSE; /* notify_required is reset elsewhere */ + /* Would be nice to use svn_io_dirent2_t here, but the performance improvement that provides doesn't work, because we need the read only and executable bits later on, in the most likely code path */ @@ -678,7 +680,7 @@ revert_wc_data(svn_boolean_t *run_wq, * Only checking for user's W since that is the only * one set by svn_io_set_file_read_write() * Issue #4622 */ - if (finfo.protection | APR_UWRITE) + if (finfo.protection & APR_UWRITE) *notify_noaccess = TRUE; else {
svn commit: r1915353 - in /subversion/site/publish: ./ docs/community-guide/releasing.part.html index.html mailing-lists.html news.html roadmap.html
Author: dsahlberg Date: Sun Jan 21 16:40:17 2024 New Revision: 1915353 URL: http://svn.apache.org/viewvc?rev=1915353=rev Log: In site/publish: Merge 1915016 and 1915225 from staging. Also update mergeinfo to include 1898162 (which was a catchup merge from publish to staging). * docs/community-guide/releasing.part.html (#releasing-release): Add note how to add the release to reporter.a.o on the command line. * mailing-lists.html (#list-list): Change link [to mailarchive] (#downloading): New section [how to download mbox file] Modified: subversion/site/publish/ (props changed) subversion/site/publish/docs/community-guide/releasing.part.html subversion/site/publish/index.html (props changed) subversion/site/publish/mailing-lists.html subversion/site/publish/news.html (props changed) subversion/site/publish/roadmap.html (props changed) Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1898162,1915016-1915026,1915028,1915031-1915225 Modified: subversion/site/publish/docs/community-guide/releasing.part.html URL: http://svn.apache.org/viewvc/subversion/site/publish/docs/community-guide/releasing.part.html?rev=1915353=1915352=1915353=diff == --- subversion/site/publish/docs/community-guide/releasing.part.html (original) +++ subversion/site/publish/docs/community-guide/releasing.part.html Sun Jan 21 16:40:17 2024 @@ -1255,7 +1255,11 @@ release.py clean-dist Submit the version number of the new release on https://reporter.apache.org/addrelease.html?subversion; ->reporter.apache.org. (Can we automate that?) +>reporter.apache.org. The following command + +curl -u USERNAME "https://reporter.apache.org/addrelease.py?date=`date +%s`=subversion=VERSION=`date +%F`" + +will add the release, it should probably be added to release.py. Propchange: subversion/site/publish/index.html -- Merged /subversion/site/staging/index.html:r1898162 Modified: subversion/site/publish/mailing-lists.html URL: http://svn.apache.org/viewvc/subversion/site/publish/mailing-lists.html?rev=1915353=1915352=1915353=diff == --- subversion/site/publish/mailing-lists.html (original) +++ subversion/site/publish/mailing-lists.html Sun Jan 21 16:40:17 2024 @@ -380,8 +380,11 @@ delay for your post to appear (see below Archives: - Not public. - Only https://mail-search.apache.org/pmc/private-arch/subversion-private/;>full committers and https://mail-search.apache.org/pmc/private-arch/subversion-private/;>ASF Members have access. + + https://lists.apache.org/list.html?priv...@subversion.apache.org; + >lists.apache.org (searchable, not public) + + Only full committers and ASF Members have access. @@ -469,6 +472,27 @@ delay for your post to appear (see below + +Downloading mbox files + + + +If you want to download the archives as mbox files, you can do this + from https://lists.apache.org;>lists.apache.org (use + the download link in the upper right). + +If you want to download the mbox files regularly, you can use the + following url: + +https://lists.apache.org/api/mbox.lua?list=dev=subversion.apache.org=2022-12 + + Replace the list argument with the name of the list in the table above + and change the year/date. + + + + Announcements
svn commit: r1915225 - /subversion/site/staging/mailing-lists.html
Author: dsahlberg Date: Sat Jan 13 18:39:01 2024 New Revision: 1915225 URL: http://svn.apache.org/viewvc?rev=1915225=rev Log: In site/staging: Add instructions how to download mbox files Suggested by: danielsh Update link to (retired) mail-search.a.o to lists.a.o * mailing-lists.html (#list-list): Change link (#downloading): New section Modified: subversion/site/staging/mailing-lists.html Modified: subversion/site/staging/mailing-lists.html URL: http://svn.apache.org/viewvc/subversion/site/staging/mailing-lists.html?rev=1915225=1915224=1915225=diff == --- subversion/site/staging/mailing-lists.html (original) +++ subversion/site/staging/mailing-lists.html Sat Jan 13 18:39:01 2024 @@ -380,8 +380,11 @@ delay for your post to appear (see below Archives: - Not public. - Only https://mail-search.apache.org/pmc/private-arch/subversion-private/;>full committers and https://mail-search.apache.org/pmc/private-arch/subversion-private/;>ASF Members have access. + + https://lists.apache.org/list.html?priv...@subversion.apache.org; + >lists.apache.org (searchable, not public) + + Only full committers and ASF Members have access. @@ -469,6 +472,27 @@ delay for your post to appear (see below + +Downloading mbox files + + + +If you want to download the archives as mbox files, you can do this + from https://lists.apache.org;>lists.apache.org (use + the download link in the upper right). + +If you want to download the mbox files regularly, you can use the + following url: + +https://lists.apache.org/api/mbox.lua?list=dev=subversion.apache.org=2022-12 + + Replace the list argument with the name of the list in the table above + and change the year/date. + + + + Announcements
svn commit: r1915215 - in /subversion/trunk/subversion: include/svn_wc.h libsvn_wc/revert.c svn/notify.c svnbench/notify.c
Author: dsahlberg Date: Sat Jan 13 09:16:26 2024 New Revision: 1915215 URL: http://svn.apache.org/viewvc?rev=1915215=rev Log: Manage spurious Reverted message caused by non-W access to files owned by another user. Part of Issue #4622. The revert notification comes from the code trying to add W permissions but since there is already W (for another user) the code doesn't change anything and the notification will come back next time as well. Changing to add a separate notification type "you don't have W access and we can't do anything about it". The text should be tweaked further. Discussed on dev@: https://lists.apache.org/thread/p1ky889bxwy8okqly7h1lgckxfpldnxs * subversion/include/svn_wc.h (svn_wc_notify_action_t): Add a new notification type * subversion/libsvn_wc/revert.c (revert_wc_data): Add new parameter to indicate the need for notification of "no access" and use that when a file is readonly but (some other user) already has W. (revert_restore): Handle the "no access" case with the new notification type. * subversion/svn/notify.c (notify_body): Handle the new notification type * subversion/svnbench/notify.c (notify): Handle the new notification type Modified: subversion/trunk/subversion/include/svn_wc.h subversion/trunk/subversion/libsvn_wc/revert.c subversion/trunk/subversion/svn/notify.c subversion/trunk/subversion/svnbench/notify.c Modified: subversion/trunk/subversion/include/svn_wc.h URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/include/svn_wc.h?rev=1915215=1915214=1915215=diff == --- subversion/trunk/subversion/include/svn_wc.h (original) +++ subversion/trunk/subversion/include/svn_wc.h Sat Jan 13 09:16:26 2024 @@ -993,6 +993,7 @@ typedef enum svn_wc_notify_action_t svn_wc_notify_restore, /** Reverting a modified path. */ + /* See also svn_wc_notify_revert_noaccess */ svn_wc_notify_revert, /** A revert operation has failed. */ @@ -1325,6 +1326,12 @@ typedef enum svn_wc_notify_action_t * @since New in 1.15. */ svn_wc_notify_warning, + /** A file is readonly for the user but isn't svn:needs-lock. + * So we want to restore RW, but fail since the file has W bits, + * just not for the current user. + * @since New in 1.15. */ + svn_wc_notify_revert_noaccess, + } svn_wc_notify_action_t; Modified: subversion/trunk/subversion/libsvn_wc/revert.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/revert.c?rev=1915215=1915214=1915215=diff == --- subversion/trunk/subversion/libsvn_wc/revert.c (original) +++ subversion/trunk/subversion/libsvn_wc/revert.c Sat Jan 13 09:16:26 2024 @@ -263,6 +263,7 @@ revert_restore_handle_copied_dirs(svn_bo static svn_error_t * revert_wc_data(svn_boolean_t *run_wq, svn_boolean_t *notify_required, + svn_boolean_t *notify_noaccess, svn_wc__db_t *db, const char *local_abspath, svn_wc__db_status_t status, @@ -309,6 +310,7 @@ revert_restore(svn_boolean_t *run_wq, svn_wc__db_status_t status; svn_node_kind_t kind; svn_boolean_t notify_required; + svn_boolean_t notify_noaccess; const apr_array_header_t *conflict_files; svn_filesize_t recorded_size; apr_time_t recorded_time; @@ -398,7 +400,7 @@ revert_restore(svn_boolean_t *run_wq, if (!metadata_only) { SVN_ERR(revert_wc_data(run_wq, - _required, + _required, _noaccess, db, local_abspath, status, kind, reverted_kind, recorded_size, recorded_time, copied_here, use_commit_times, @@ -419,12 +421,19 @@ revert_restore(svn_boolean_t *run_wq, } } - if (notify_func && notify_required) -notify_func(notify_baton, -svn_wc_create_notify(local_abspath, svn_wc_notify_revert, - scratch_pool), -scratch_pool); - + if (notify_func) +{ + if (notify_required) +notify_func(notify_baton, +svn_wc_create_notify(local_abspath, svn_wc_notify_revert, + scratch_pool), +scratch_pool); + else if (notify_noaccess) +notify_func(notify_baton, +svn_wc_create_notify(local_abspath, svn_wc_notify_revert_noaccess, + scratch_pool), +scratch_pool); +} if (depth == svn_depth_infinity && kind == svn_node_dir) { apr_pool_t *iterpool = svn_pool_create(scratch_pool); @@ -482,6 +491,7 @@ revert_restore(svn_boolean_t *run_wq, static svn_error_t * revert_wc_data(svn_bo
svn commit: r1915214 - /subversion/trunk/subversion/libsvn_subr/io.c
Author: dsahlberg Date: Sat Jan 13 08:56:50 2024 New Revision: 1915214 URL: http://svn.apache.org/viewvc?rev=1915214=rev Log: Replace the homegrown checks for readonly/executable with calls to access(2) to consider, for example, user's secondary groups. * subversion/libsvn_subr/io.c (svn_io__is_finfo_read_only): As above (svn_io__is_finfo_executable): As above but move the permission check code from here (svn_io_is_file_executable): .. to here since access() wants a path and we already have it in the arguments. Suggested by: Joe Orton See https://lists.apache.org/list?d...@apr.apache.org Modified: subversion/trunk/subversion/libsvn_subr/io.c Modified: subversion/trunk/subversion/libsvn_subr/io.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/io.c?rev=1915214=1915213=1915214=diff == --- subversion/trunk/subversion/libsvn_subr/io.c (original) +++ subversion/trunk/subversion/libsvn_subr/io.c Sat Jan 13 08:56:50 2024 @@ -2531,27 +2531,14 @@ svn_io__is_finfo_read_only(svn_boolean_t apr_pool_t *pool) { #if defined(APR_HAS_USER) && !defined(WIN32) &&!defined(__OS2__) - apr_status_t apr_err; - apr_uid_t uid; - apr_gid_t gid; - - *read_only = FALSE; - - apr_err = apr_uid_current(, , pool); - - if (apr_err) -return svn_error_wrap_apr(apr_err, _("Error getting UID of process")); - - /* Check write bit for current user. */ - if (apr_uid_compare(uid, file_info->user) == APR_SUCCESS) -*read_only = !(file_info->protection & APR_UWRITE); - - else if (apr_gid_compare(gid, file_info->group) == APR_SUCCESS) -*read_only = !(file_info->protection & APR_GWRITE); - - else -*read_only = !(file_info->protection & APR_WWRITE); - + *read_only = (access(file_info->fname, W_OK) != 0); + /* svn_io__is_finfo_read_only can be called with a dangling + * symlink. access() will check the permission on the missing + * target and return -1 and errno = ENOENT. Check for ENOENT + * and pretend the file is writeable, otherwise we will get + * spurious Reverted messages on the symlink. + */ + if (*read_only && errno == ENOENT) *read_only = FALSE; #else /* WIN32 || __OS2__ || !APR_HAS_USER */ *read_only = (file_info->protection & APR_FREADONLY); #endif @@ -2564,33 +2551,7 @@ svn_io__is_finfo_executable(svn_boolean_ apr_finfo_t *file_info, apr_pool_t *pool) { -#if defined(APR_HAS_USER) && !defined(WIN32) &&!defined(__OS2__) - apr_status_t apr_err; - apr_uid_t uid; - apr_gid_t gid; - - *executable = FALSE; - - apr_err = apr_uid_current(, , pool); - - if (apr_err) -return svn_error_wrap_apr(apr_err, _("Error getting UID of process")); - - /* Check executable bit for current user. */ - if (apr_uid_compare(uid, file_info->user) == APR_SUCCESS) -*executable = (file_info->protection & APR_UEXECUTE); - - else if (apr_gid_compare(gid, file_info->group) == APR_SUCCESS) -*executable = (file_info->protection & APR_GEXECUTE); - - else -*executable = (file_info->protection & APR_WEXECUTE); - -#else /* WIN32 || __OS2__ || !APR_HAS_USER */ - *executable = FALSE; -#endif - - return SVN_NO_ERROR; + return svn_io_is_file_executable(executable, file_info->fname, pool); } svn_error_t * @@ -2599,12 +2560,7 @@ svn_io_is_file_executable(svn_boolean_t apr_pool_t *pool) { #if defined(APR_HAS_USER) && !defined(WIN32) &&!defined(__OS2__) - apr_finfo_t file_info; - - SVN_ERR(svn_io_stat(_info, path, APR_FINFO_PROT | APR_FINFO_OWNER, - pool)); - SVN_ERR(svn_io__is_finfo_executable(executable, _info, pool)); - + *executable = (access(path, X_OK) == 0); #else /* WIN32 || __OS2__ || !APR_HAS_USER */ *executable = FALSE; #endif
svn commit: r1915144 - /subversion/trunk/tools/dev/unix-build/Makefile.svn
Author: dsahlberg Date: Mon Jan 8 21:00:04 2024 New Revision: 1915144 URL: http://svn.apache.org/viewvc?rev=1915144=rev Log: In tools/dev/unix-build: FreeBSD seems to have the sha*sum tools in /sbin. Check for the tools there. * Makefile.svn (do_check_sha256): Add code to check in /sbin Modified: subversion/trunk/tools/dev/unix-build/Makefile.svn Modified: subversion/trunk/tools/dev/unix-build/Makefile.svn URL: http://svn.apache.org/viewvc/subversion/trunk/tools/dev/unix-build/Makefile.svn?rev=1915144=1915143=1915144=diff == --- subversion/trunk/tools/dev/unix-build/Makefile.svn (original) +++ subversion/trunk/tools/dev/unix-build/Makefile.svn Mon Jan 8 21:00:04 2024 @@ -169,6 +169,9 @@ if [ -x /bin/sha256 ]; then \ elif [ -x /usr/bin/sha256sum ]; then \ (cd $(DISTDIR) && \ echo "${SHA256_${1}} ${1}" | /usr/bin/sha256sum --quiet --check); \ +elif [ -x /sbin/sha256sum ]; then \ + (cd $(DISTDIR) && \ + echo "${SHA256_${1}} ${1}" | /sbin/sha256sum --quiet --check /dev/stdin); \ elif [ -x /usr/bin/shasum ]; then \ echo "${SHA256_${1}} ${1}"; \ (cd $(DISTDIR) && \
svn commit: r1915028 - in /subversion/site/publish: ./ site-nav.html
Author: dsahlberg Date: Sun Dec 31 16:34:08 2023 New Revision: 1915028 URL: http://svn.apache.org/viewvc?rev=1915028=rev Log: In site/publish: merge 1915027 from staging * site-nav.html (#copyright): Update year Modified: subversion/site/publish/ (props changed) subversion/site/publish/site-nav.html Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1915027 Modified: subversion/site/publish/site-nav.html URL: http://svn.apache.org/viewvc/subversion/site/publish/site-nav.html?rev=1915028=1915027=1915028=diff == --- subversion/site/publish/site-nav.html (original) +++ subversion/site/publish/site-nav.html Sun Dec 31 16:34:08 2023 @@ -70,7 +70,7 @@ -Copyright 2022 https://www.apache.org/; class="nopadding">The Apache +Copyright 2023 https://www.apache.org/; class="nopadding">The Apache Software Foundation, Licensed under the https://www.apache.org/licenses/LICENSE-2.0; class="nopadding">Apache License, Version 2.0. Apache, Apache Subversion, and
svn commit: r1915027 - /subversion/site/staging/site-nav.html
Author: dsahlberg Date: Sun Dec 31 16:28:31 2023 New Revision: 1915027 URL: http://svn.apache.org/viewvc?rev=1915027=rev Log: In site/staging: * site-nav.html (#copyright): Update copyright year now that we've made a release in 2023.. Modified: subversion/site/staging/site-nav.html Modified: subversion/site/staging/site-nav.html URL: http://svn.apache.org/viewvc/subversion/site/staging/site-nav.html?rev=1915027=1915026=1915027=diff == --- subversion/site/staging/site-nav.html (original) +++ subversion/site/staging/site-nav.html Sun Dec 31 16:28:31 2023 @@ -70,7 +70,7 @@ -Copyright 2022 https://www.apache.org/; class="nopadding">The Apache +Copyright 2023 https://www.apache.org/; class="nopadding">The Apache Software Foundation, Licensed under the https://www.apache.org/licenses/LICENSE-2.0; class="nopadding">Apache License, Version 2.0. Apache, Apache Subversion, and
svn commit: r1915016 - /subversion/site/staging/docs/community-guide/releasing.part.html
Author: dsahlberg Date: Sun Dec 31 10:10:40 2023 New Revision: 1915016 URL: http://svn.apache.org/viewvc?rev=1915016=rev Log: In site/staging: * docs/community-guide/releasing.part.html (#releasing-release): Add note how to add the release to reporter.a.o on the command line. Modified: subversion/site/staging/docs/community-guide/releasing.part.html Modified: subversion/site/staging/docs/community-guide/releasing.part.html URL: http://svn.apache.org/viewvc/subversion/site/staging/docs/community-guide/releasing.part.html?rev=1915016=1915015=1915016=diff == --- subversion/site/staging/docs/community-guide/releasing.part.html (original) +++ subversion/site/staging/docs/community-guide/releasing.part.html Sun Dec 31 10:10:40 2023 @@ -1249,7 +1249,11 @@ release.py clean-dist Submit the version number of the new release on https://reporter.apache.org/addrelease.html?subversion; ->reporter.apache.org. (Can we automate that?) +>reporter.apache.org. The following command + +curl -u USERNAME "https://reporter.apache.org/addrelease.py?date=`date +%s`=subversion=VERSION=`date +%F`" + +will add the release, it should probably be added to release.py.
svn commit: r1914966 - /subversion/trunk/tools/dist/release-lines.yaml
Author: dsahlberg Date: Thu Dec 28 19:42:34 2023 New Revision: 1914966 URL: http://svn.apache.org/viewvc?rev=1914966=rev Log: * tools/dist/release-lines.yaml: Update supported release list for release.py. 1.10 is no longer supported. Modified: subversion/trunk/tools/dist/release-lines.yaml Modified: subversion/trunk/tools/dist/release-lines.yaml URL: http://svn.apache.org/viewvc/subversion/trunk/tools/dist/release-lines.yaml?rev=1914966=1914965=1914966=diff == --- subversion/trunk/tools/dist/release-lines.yaml (original) +++ subversion/trunk/tools/dist/release-lines.yaml Thu Dec 28 19:42:34 2023 @@ -24,7 +24,7 @@ tool_versions: # The version that is our current recommended release recommended_release: '1.14' # For clean-dist, a whitelist of artifacts to keep, by version. -supported_release_lines: ['1.10', '1.14'] +supported_release_lines: ['1.14'] # Long-Term Support (LTS) versions lts_release_lines: ['1.10', '1.14']
svn commit: r1914897 - /subversion/branches/1.14.x/STATUS
Author: dsahlberg Date: Sat Dec 23 21:48:57 2023 New Revision: 1914897 URL: http://svn.apache.org/viewvc?rev=1914897=rev Log: In branches/1.14.x: * STATUS Vote for r1914518 Modified: subversion/branches/1.14.x/STATUS Modified: subversion/branches/1.14.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1914897=1914896=1914897=diff == --- subversion/branches/1.14.x/STATUS (original) +++ subversion/branches/1.14.x/STATUS Sat Dec 23 21:48:57 2023 @@ -34,7 +34,7 @@ Candidate changes: Justification: Bug fix. Votes: - +1: futatuki + +1: futatuki, dsahlberg * r1912632 Fix `invalid escape sequence` in Python scripts to prevent many
svn commit: r1914896 - /subversion/trunk/subversion/bindings/javahl/README
Author: dsahlberg Date: Sat Dec 23 21:35:54 2023 New Revision: 1914896 URL: http://svn.apache.org/viewvc?rev=1914896=rev Log: MacOS is not MacOS X anymore * subversion/bindings/javahl/README s/MacOS X/MacOS/ Modified: subversion/trunk/subversion/bindings/javahl/README Modified: subversion/trunk/subversion/bindings/javahl/README URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/javahl/README?rev=1914896=1914895=1914896=diff == --- subversion/trunk/subversion/bindings/javahl/README (original) +++ subversion/trunk/subversion/bindings/javahl/README Sat Dec 23 21:35:54 2023 @@ -39,7 +39,7 @@ jar file with --with-junit when running has been tested. JUnit can be downloaded from https://junit.org/ .) -MacOS X: +MacOS: After building libsvnjavahl.dylib, you must rename it to libsvnjavahl.jnilib. Make install-javahl creates a symbolic
svn commit: r66284 - in /dev/subversion: subversion-1.14.3.tar.bz2.asc subversion-1.14.3.tar.gz.asc
Author: dsahlberg Date: Sat Dec 23 20:50:36 2023 New Revision: 66284 Log: Add my signatures for Subversion 1.14.3 Modified: dev/subversion/subversion-1.14.3.tar.bz2.asc dev/subversion/subversion-1.14.3.tar.gz.asc Modified: dev/subversion/subversion-1.14.3.tar.bz2.asc == --- dev/subversion/subversion-1.14.3.tar.bz2.asc (original) +++ dev/subversion/subversion-1.14.3.tar.bz2.asc Sat Dec 23 20:50:36 2023 @@ -21,3 +21,17 @@ iF0EABECAB0WIQSxzxBgoek00Z6G1tbl0wJz9Z0l 8NfyAKCNzMW+mM42nhMPKsTTGMmBalSahwCgm7pKfbUqmf8YbXT5bFdEBlkJ9I4= =CUBD -END PGP SIGNATURE- +-BEGIN PGP SIGNATURE- + +iQGzBAABCgAdFiEET/y1XA0Nk0PPtGEfKNtHMpz/3GMFAmWHR2oACgkQKNtHMpz/ +3GMgggwAoerQHK4Kh4TtFiIXTlqr1BGZAvLjHyPgEJ/zzxrAh7OM7W28HDrT/Si5 +DZoKdW74w459AH6VUeRhTUdDEYnziZMicnGLHSck1p56tzDb/2MBlqMmCRywU9Zi +r4SEBxcJK7wWIRho0a1BjdGnuZwGpXF1pzkQwmgxsg8PMpZqxp35RtAPA87YQaNu +KqDSJjOCeJn+ioXBSWEVhNmbTaaQtniXhPyGA41KBbctFwjUTPDMb8ZmqXtIesAj +kQD2dWKAyUPXuSJ9Y2O0OflIk7OBSDCMGnkaseaXiOXTDfD5GssYRKOhF9/jStNI +t5T58sZX7vLAX1pf8hzIxn3caIk3x41uP4AzS9khEl8sF0WC4oRmAe34NhFwJwfc +W46SqqaCt3AwHTEbTkaFtCEyl7MSDhptOSOfXywz3M4+B06X1fexSkGY8jVFpazU +8zPnNmr3xPBwSzC+E6nD3grSjnGU2s0vxL2MRK9vH5VwcKmoeHA7Hm8DHi7/Bs3G +zNp9WKBv +=piyH +-END PGP SIGNATURE- Modified: dev/subversion/subversion-1.14.3.tar.gz.asc == --- dev/subversion/subversion-1.14.3.tar.gz.asc (original) +++ dev/subversion/subversion-1.14.3.tar.gz.asc Sat Dec 23 20:50:36 2023 @@ -21,3 +21,17 @@ iF0EABECAB0WIQSxzxBgoek00Z6G1tbl0wJz9Z0l 8IIwAKD2wK/rnl2UQKrfOky2LViOATy5CQCgh88jUXwB4fzAlwrhuOe8t/Y8LRM= =P7zH -END PGP SIGNATURE- +-BEGIN PGP SIGNATURE- + +iQGzBAABCgAdFiEET/y1XA0Nk0PPtGEfKNtHMpz/3GMFAmWHR2oACgkQKNtHMpz/ +3GMRGAv/RH3r/qLbfmfz5Q8eT/zXVI4uPss8crRfyzcoVbkqXn6/A66b8JafcKRG +QFVWhB8LRZecPbyC8pXQZRsGb5PxqfjEjI44L+ZwH34Q0nUDMdZmab+aBM3QnYqY +pJ0xuAnvNKfd2tcyB3Wbi1ps4qI8U1itHtnKBrHSVpEy6bK83y2xEWd5vK5mG9GE +Ty0NKzJjhY10lCDnbKZEcB4eZEpZXwdPiEwm7i7FdO4AXTjZImsvPLrv4G0ScqAF +AUbRuemmB5iqnIdZeOsOrgsHk94IQpK2rQI/+jX477xxg9n8ndJ/kKwHSt8kSNlW +vp3WqpqEHYEu2rVkKPlm3L+AV3ai3cUhalp6AcZWxXeHhJnAKsCrZwMYRwSQ0vIu +04CwjKasMJeDZnNvh57o8GHBoeME9anuxxV7dA29fsEjVEQJppNod1QTfjzO74UR +xSEiFeBDesvtCd2ci0sK2CX34QstCoJh73c3SnlDKMnsFveWvz6HDug9UoAy+wW2 +EhjRUgnh +=YmrU +-END PGP SIGNATURE-
svn commit: r1914846 - /subversion/branches/1.14.x/STATUS
Author: dsahlberg Date: Fri Dec 22 09:08:04 2023 New Revision: 1914846 URL: http://svn.apache.org/viewvc?rev=1914846=rev Log: * STATUS: Nominate r1912632. Modified: subversion/branches/1.14.x/STATUS Modified: subversion/branches/1.14.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1914846=1914845=1914846=diff == --- subversion/branches/1.14.x/STATUS (original) +++ subversion/branches/1.14.x/STATUS Fri Dec 22 09:08:04 2023 @@ -36,6 +36,15 @@ Candidate changes: Votes: +1: futatuki + * r1912632 + Fix `invalid escape sequence` in Python scripts to prevent many + `SyntaxWarning`s since Python 3.12. + Justification: + Bare \ in regexps are SyntaxWarning as of Python 3.12, will be + SyntaxError in a future release. + Votes: + +1: dsahlberg + Veto-blocked changes: =
svn commit: r1914741 - /subversion/trunk/tools/dev/unix-build/Makefile.svn
Author: dsahlberg Date: Sun Dec 17 19:54:54 2023 New Revision: 1914741 URL: http://svn.apache.org/viewvc?rev=1914741=rev Log: In tools/dev/unix-build: Homebrew only has shasum, not sha256 or sha256sum. Make this work for the buildscript * Makefile.svn (do_check_sha256): Add code for shasum Modified: subversion/trunk/tools/dev/unix-build/Makefile.svn Modified: subversion/trunk/tools/dev/unix-build/Makefile.svn URL: http://svn.apache.org/viewvc/subversion/trunk/tools/dev/unix-build/Makefile.svn?rev=1914741=1914740=1914741=diff == --- subversion/trunk/tools/dev/unix-build/Makefile.svn (original) +++ subversion/trunk/tools/dev/unix-build/Makefile.svn Sun Dec 17 19:54:54 2023 @@ -169,6 +169,10 @@ if [ -x /bin/sha256 ]; then \ elif [ -x /usr/bin/sha256sum ]; then \ (cd $(DISTDIR) && \ echo "${SHA256_${1}} ${1}" | /usr/bin/sha256sum --quiet --check); \ +elif [ -x /usr/bin/shasum ]; then \ +echo "${SHA256_${1}} ${1}"; \ +(cd $(DISTDIR) && \ +echo "${SHA256_${1}} ${1}" | /usr/bin/shasum -a 256 -c /dev/stdin ); \ else \ echo "Error: No tool found to verify checksum"; \ false; \
svn propchange: r1914222 - svn:log
Author: dsahlberg Revision: 1914222 Modified property: svn:log Modified: svn:log at Tue Dec 12 15:41:04 2023 -- --- svn:log (original) +++ svn:log Tue Dec 12 15:41:04 2023 @@ -1,4 +1,3 @@ -12345678901234567890123456789012345678901234567890123456789012345678901234567890 Clarify the help message for svnmucc PUT on how to get the file contents from stdin.
svn commit: r1914374 - /subversion/trunk/tools/dev/awk/buildwin.bat
Author: dsahlberg Date: Tue Dec 5 19:53:30 2023 New Revision: 1914374 URL: http://svn.apache.org/viewvc?rev=1914374=rev Log: * tools/dev/awk/buildwin.bat: Adjust arguments required to build under Visual Studio 2022 Modified: subversion/trunk/tools/dev/awk/buildwin.bat Modified: subversion/trunk/tools/dev/awk/buildwin.bat URL: http://svn.apache.org/viewvc/subversion/trunk/tools/dev/awk/buildwin.bat?rev=1914374=1914373=1914374=diff == --- subversion/trunk/tools/dev/awk/buildwin.bat (original) +++ subversion/trunk/tools/dev/awk/buildwin.bat Tue Dec 5 19:53:30 2023 @@ -5,8 +5,8 @@ rem rem If you delete the call to setlocal it will probably work under Win95/Win98 as well. setlocal -set cl=-w -Ox -QIfdiv- -nologo -link -nologo setargv.obj +set cl=/DHAS_ISBLANK -w -Ox -nologo -link -nologo setargv.obj -cl maketab.c -o maketab.exe +cl maketab.c /link /out:maketab.exe maketab.exe > proctab.c -cl -o awk.exe b.c main.c parse.c proctab.c tran.c lib.c run.c lex.c ytab.c missing95.c +cl b.c main.c parse.c proctab.c tran.c lib.c run.c lex.c ytab.c missing95.c /link /out:awk.exe \ No newline at end of file
svn commit: r1914373 - /subversion/trunk/tools/dev/awk/
Author: dsahlberg Date: Tue Dec 5 19:48:32 2023 New Revision: 1914373 URL: http://svn.apache.org/viewvc?rev=1914373=rev Log: In tools/dev: Copy awk from https://svn.apache.org/repos/asf/httpd/httpd/win32-msi/trunk/awk build-svn-deps-win.pl require AWK but a binary version is not so easy to find anymore. Thus include the sources here so we can build our own. Added: subversion/trunk/tools/dev/awk/ - copied from r1914372, httpd/httpd/win32-msi/trunk/awk/
svn commit: r1914224 - /subversion/branches/1.14.x/STATUS
Author: dsahlberg Date: Thu Nov 30 06:55:57 2023 New Revision: 1914224 URL: http://svn.apache.org/viewvc?rev=1914224=rev Log: Vote for r1914220, approving. Modified: subversion/branches/1.14.x/STATUS Modified: subversion/branches/1.14.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1914224=1914223=1914224=diff == --- subversion/branches/1.14.x/STATUS (original) +++ subversion/branches/1.14.x/STATUS Thu Nov 30 06:55:57 2023 @@ -22,13 +22,6 @@ Candidate changes: votes: +1: rhuijben - * r1914220 - Update copyright year to 2023. - Justification: - To show correct year in upcoming release. - Votes: - +1: hartmannathan - * r1914222 Improve help message for svnmucc PUT. Justification: @@ -41,3 +34,11 @@ Veto-blocked changes: Approved changes: = + + * r1914220 + Update copyright year to 2023. + Justification: + To show correct year in upcoming release. + Votes: + +1: hartmannathan, dsahlberg +
svn commit: r1914223 - /subversion/branches/1.14.x/STATUS
Author: dsahlberg Date: Thu Nov 30 06:44:58 2023 New Revision: 1914223 URL: http://svn.apache.org/viewvc?rev=1914223=rev Log: Nominatey r1914222 Modified: subversion/branches/1.14.x/STATUS Modified: subversion/branches/1.14.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1914223=1914222=1914223=diff == --- subversion/branches/1.14.x/STATUS (original) +++ subversion/branches/1.14.x/STATUS Thu Nov 30 06:44:58 2023 @@ -29,6 +29,13 @@ Candidate changes: Votes: +1: hartmannathan + * r1914222 + Improve help message for svnmucc PUT. + Justification: + Users asked. + Votes: + +1: dsahlberg + Veto-blocked changes: =
svn commit: r1914222 - /subversion/trunk/subversion/svnmucc/svnmucc.c
Author: dsahlberg Date: Thu Nov 30 06:43:05 2023 New Revision: 1914222 URL: http://svn.apache.org/viewvc?rev=1914222=rev Log: 12345678901234567890123456789012345678901234567890123456789012345678901234567890 Clarify the help message for svnmucc PUT on how to get the file contents from stdin. Just using "-" causes getopt to give an unhelpful error message. Discussed on users@ [1] and dev@ [2] and the actual message was suggested by hartmannathan. * subversion/svnmucc/svnmucc.c (help): Clarify help text for PUT [1] https://lists.apache.org/thread/dxyklzf39dh2oov1kh6rp9csc4h5rxxh [2] https://lists.apache.org/thread/l7x22yp6kb71qlv3rn8tfmcrc5hk73r4 Modified: subversion/trunk/subversion/svnmucc/svnmucc.c Modified: subversion/trunk/subversion/svnmucc/svnmucc.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svnmucc/svnmucc.c?rev=1914222=1914221=1914222=diff == --- subversion/trunk/subversion/svnmucc/svnmucc.c (original) +++ subversion/trunk/subversion/svnmucc/svnmucc.c Thu Nov 30 06:43:05 2023 @@ -286,7 +286,9 @@ help(FILE *stream, apr_pool_t *pool) " mv SRC-URL DST-URL : move SRC-URL to DST-URL\n" " rm URL : delete URL\n" " put SRC-FILE URL : add or modify file URL with contents copied from\n" - " SRC-FILE (use \"-\" to read from standard input)\n" + " SRC-FILE (to read from standard input, use \"--\"\n" + " to stop option processing followed by \"-\" to\n" + " indicate standard input)\n" " propset NAME VALUE URL : set property NAME on URL to VALUE\n" " propsetf NAME FILE URL : set property NAME on URL to value read from FILE\n" " propdel NAME URL : delete property NAME from URL\n"
svn commit: r1914208 - in /subversion/site/publish: ./ docs/community-guide/releasing.part.html
Author: dsahlberg Date: Wed Nov 29 14:00:43 2023 New Revision: 1914208 URL: http://svn.apache.org/viewvc?rev=1914208=rev Log: In site/publish: Merge 1914198-1914200 from site/staging: * docs/community-guide/releasing.part.html: (#release-numbering): Remove paragraph about nightlies since we don't publish nightly tarballs anymore. See r1912028. (#backport-merge-bot): Fix misleading virtual machine name. The svn-qavm2 machine was renamed to svn-qavm1 in May 2022. See r107776 in the Subversion PMC's private repository. Authored by: hartmannathan Review by: me Modified: subversion/site/publish/ (props changed) subversion/site/publish/docs/community-guide/releasing.part.html Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1914198-1914200 Modified: subversion/site/publish/docs/community-guide/releasing.part.html URL: http://svn.apache.org/viewvc/subversion/site/publish/docs/community-guide/releasing.part.html?rev=1914208=1914207=1914208=diff == --- subversion/site/publish/docs/community-guide/releasing.part.html (original) +++ subversion/site/publish/docs/community-guide/releasing.part.html Wed Nov 29 14:00:43 2023 @@ -121,13 +121,6 @@ This indicates that the build came from a working copy, which is useful in bug reports. -We also produce a set of release-like tarballs from the trunk development -line -https://ci.apache.org/projects/subversion/nightlies/index.html;>every -night, but these have no testing and are only recommended for users -looking to run the bleeding edge, or test a particular bug fix, without -building directly from the repository. - Alpha and beta releases #alphas-betas" @@ -1634,7 +1627,7 @@ using release.py to automate most of the #backport-merge-bot" title="Link to this section"> -The backport merge bot runs nightly on the svn-qavm2 machine, +The backport merge bot runs nightly on the svn-qavm1 machine, under the svnsvn local user account, making commits using the svn-role Subversion account name. This configuration currently requires someone with admin access to @@ -1662,7 +1655,7 @@ sudo -H -u svnsvn svn up ~svnsvn/src/sv sudo -H -u svnsvn svn up -r0 ~svnsvn/src/svn/Z.Z.x -More notes on the setup can be found in machines/svn-qavm2/ and +More notes on the setup can be found in machines/svn-qavm1/ and in the Subversion PMC's https://svn.apache.org/repos/private/pmc/subversion;> private repository. There are also historical notes on previous
svn commit: r1914148 - in /subversion/site/publish: ./ images/
Author: dsahlberg Date: Mon Nov 27 06:23:36 2023 New Revision: 1914148 URL: http://svn.apache.org/viewvc?rev=1914148=rev Log: In site/publish: Merge r1914141-1914142 Add GNU Guix to list Add svn:needs-lock to images lacking it * packages.html (#guix): New subsection. * images/guix.png (): New file. * apache-logo.png, apache.png, banner-gradient.jpg, centos.png, corner-white.png, cygwin.png, green-ellipsis-light.png, green-light.png, linkaway.gif, orange-light.png, red-light.png, svn-square.jpg, svnbook-cover.jpg, todo.png, yellow-light.png: (): Add svn:needs-lock property. Authored by: hartmannathan Review by: me Added: subversion/site/publish/images/guix.png - copied unchanged from r1914141, subversion/site/staging/images/guix.png Modified: subversion/site/publish/ (props changed) subversion/site/publish/images/apache-logo.png (props changed) subversion/site/publish/images/apache.png (props changed) subversion/site/publish/images/banner-gradient.jpg (props changed) subversion/site/publish/images/centos.png (props changed) subversion/site/publish/images/corner-white.png (props changed) subversion/site/publish/images/cygwin.png (props changed) subversion/site/publish/images/green-ellipsis-light.png (props changed) subversion/site/publish/images/green-light.png (props changed) subversion/site/publish/images/linkaway.gif (props changed) subversion/site/publish/images/orange-light.png (props changed) subversion/site/publish/images/red-light.png (props changed) subversion/site/publish/images/svn-square.jpg (props changed) subversion/site/publish/images/svnbook-cover.jpg (props changed) subversion/site/publish/images/todo.png (props changed) subversion/site/publish/images/yellow-light.png (props changed) subversion/site/publish/packages.html Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1914141-1914142 Propchange: subversion/site/publish/images/apache-logo.png -- svn:needs-lock = * Propchange: subversion/site/publish/images/apache.png -- svn:needs-lock = * Propchange: subversion/site/publish/images/banner-gradient.jpg -- svn:needs-lock = * Propchange: subversion/site/publish/images/centos.png -- svn:needs-lock = * Propchange: subversion/site/publish/images/corner-white.png -- svn:needs-lock = * Propchange: subversion/site/publish/images/cygwin.png -- svn:needs-lock = * Propchange: subversion/site/publish/images/green-ellipsis-light.png -- svn:needs-lock = * Propchange: subversion/site/publish/images/green-light.png -- svn:needs-lock = * Propchange: subversion/site/publish/images/linkaway.gif -- svn:needs-lock = * Propchange: subversion/site/publish/images/orange-light.png -- svn:needs-lock = * Propchange: subversion/site/publish/images/red-light.png -- svn:needs-lock = * Propchange: subversion/site/publish/images/svn-square.jpg -- svn:needs-lock = * Propchange: subversion/site/publish/images/svnbook-cover.jpg -- svn:needs-lock = * Propchange: subversion/site/publish/images/todo.png -- svn:needs-lock = * Propchange: subversion/site/publish/images/yellow-light.png -- svn:needs-lock = * Modified: subversion/site/publish/packages.html URL: http://svn.apache.org/viewvc/subversion/site/publish/packages.html?rev=1914148=1914147=1914148=diff == --- subversion/site/publish/packages.html (original) +++ subversion/site/publish/packages.html Mon Nov 27 06:23:36 2023 @@ -35,6 +35,7 @@ DebianLinux | FedoraLinux | FreeBSD | + GNU Guix | HP-UX | NetBSD | OpenBSD | @@ -175,6
svn commit: r1913706 - /subversion/trunk/tools/dev/unix-build/Makefile.svn
Author: dsahlberg Date: Fri Nov 10 21:50:41 2023 New Revision: 1913706 URL: http://svn.apache.org/viewvc?rev=1913706=rev Log: * tools/dev/unix-build/Makefile.svn: Change download source of PCRE to Sourceforge. PCRE.ORG as of today say "Note that the former ftp.pcre.org FTP site is no longer available." Modified: subversion/trunk/tools/dev/unix-build/Makefile.svn Modified: subversion/trunk/tools/dev/unix-build/Makefile.svn URL: http://svn.apache.org/viewvc/subversion/trunk/tools/dev/unix-build/Makefile.svn?rev=1913706=1913705=1913706=diff == --- subversion/trunk/tools/dev/unix-build/Makefile.svn (original) +++ subversion/trunk/tools/dev/unix-build/Makefile.svn Fri Nov 10 21:50:41 2023 @@ -210,7 +210,7 @@ APR_URL = https://svn.apache.org/repos/ APR_ICONV_URL = https://archive.apache.org/dist/apr/$(APR_ICONV_DIST) GNU_ICONV_URL = https://ftp.gnu.org/pub/gnu/libiconv/$(GNU_ICONV_DIST) APR_UTIL_URL = https://svn.apache.org/repos/asf/apr/apr-util -PCRE_URL = https://ftp.pcre.org/pub/pcre/$(PCRE_DIST) +PCRE_URL = https://downloads.sourceforge.net/project/pcre/pcre/$(PCRE_VER)/$(PCRE_DIST) HTTPD_URL = https://archive.apache.org/dist/httpd/$(HTTPD_DIST) #NEON_URL = http://webdav.org/neon/$(NEON_DIST) NEON_URL = http://ftp.openbsd.org/pub/OpenBSD/distfiles/$(NEON_DIST)
svn propchange: r1913556 - svn:log
Author: dsahlberg Revision: 1913556 Modified property: svn:log Modified: svn:log at Fri Nov 3 13:08:22 2023 -- --- svn:log (original) +++ svn:log Fri Nov 3 13:08:22 2023 @@ -1,5 +1,5 @@ Delete /tools/dev/iz. It was used to extract issue handling statistics "for -management" in the tigtis.org days. We have not used IssueZilla/BugZilla for +management" in the tigris.org days. We have not used IssueZilla/BugZilla for ages so let's get rid of some dead code. Discussed: https://lists.apache.org/thread/5fkwrobtygjz4d9po45d8hq5kbmjnqqt
svn commit: r1913556 - /subversion/trunk/tools/dev/iz/
Author: dsahlberg Date: Fri Nov 3 13:01:05 2023 New Revision: 1913556 URL: http://svn.apache.org/viewvc?rev=1913556=rev Log: Delete /tools/dev/iz. It was used to extract issue handling statistics "for management" in the tigtis.org days. We have not used IssueZilla/BugZilla for ages so let's get rid of some dead code. Discussed: https://lists.apache.org/thread/5fkwrobtygjz4d9po45d8hq5kbmjnqqt Removed: subversion/trunk/tools/dev/iz/
svn commit: r1913109 - /subversion/branches/1.14.x/STATUS
Author: dsahlberg Date: Thu Oct 19 08:13:46 2023 New Revision: 1913109 URL: http://svn.apache.org/viewvc?rev=1913109=rev Log: In branches/1.14.x: * STATUS Re-approve the now fixed r1912500 group Modified: subversion/branches/1.14.x/STATUS Modified: subversion/branches/1.14.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1913109=1913108=1913109=diff == --- subversion/branches/1.14.x/STATUS (original) +++ subversion/branches/1.14.x/STATUS Thu Oct 19 08:13:46 2023 @@ -39,14 +39,13 @@ Candidate changes: Veto-blocked changes: = +Approved changes: += + * r1912500, r1912501, r1912502, r1912503, r1912515, r1912517, r1912691 swig-py: Use pure Python objects as edit/parse_fns3 and decendant batons. Justification: Bug fix. Issue #4916, #4917, #4918 Votes: +1: futatuki - -1: dsahlberg Nominated revision numbers doesn't make sense, see dev@ - -Approved changes: -= - + +0: dsahlberg (not enough experience for +1, but looks good)
svn commit: r1913094 - /subversion/branches/1.14.x/STATUS
Author: dsahlberg Date: Thu Oct 19 00:02:48 2023 New Revision: 1913094 URL: http://svn.apache.org/viewvc?rev=1913094=rev Log: In branches/1.14.x: * STATUS Remove my nomination for the swig-py fixes. Explained on dev@ Modified: subversion/branches/1.14.x/STATUS Modified: subversion/branches/1.14.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1913094=1913093=1913094=diff == --- subversion/branches/1.14.x/STATUS (original) +++ subversion/branches/1.14.x/STATUS Thu Oct 19 00:02:48 2023 @@ -39,13 +39,14 @@ Candidate changes: Veto-blocked changes: = -Approved changes: -= - * r192501, r192502, r192503, r1912500, r1912515, r1912517, r1912691 swig-py: Use pure Python objects as edit/parse_fns3 and decendant batons. Justification: Bug fix. Issue #4916, #4917, #4918 Votes: +1: futatuki - +0: dsahlberg (not enough experience for +1, but looks good) + -1: dsahlberg Nominated revision numbers doesn't make sense, see dev@ + +Approved changes: += +
svn commit: r1913059 - in /subversion/site/publish: ./ packages.html
Author: dsahlberg Date: Tue Oct 17 12:41:26 2023 New Revision: 1913059 URL: http://svn.apache.org/viewvc?rev=1913059=rev Log: Merged revision(s) 1913041-1913058 from subversion/site/staging: WANdisco is renaming itself to Cirata. Update links accordingly. Update section to match * packages.html (#bigpoint, #osx): MacOS is the official name since 2016. Let's modernise. (#osx): Remove Cirata/WANdisco. They don't provide binaries for MacOS anymore. (multiple sections): s/wandisco/cirata (formerly WANdisco)/ Modified: subversion/site/publish/ (props changed) subversion/site/publish/packages.html Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1913041-1913058 Modified: subversion/site/publish/packages.html URL: http://svn.apache.org/viewvc/subversion/site/publish/packages.html?rev=1913059=1913058=1913059=diff == --- subversion/site/publish/packages.html (original) +++ subversion/site/publish/packages.html Tue Oct 17 12:41:26 2023 @@ -39,7 +39,7 @@ NetBSD | OpenBSD | openSUSE | - MacOSX | + MacOS | RedHatLinux | Solaris | SUSELinux | @@ -97,10 +97,10 @@ $ yum install subversion $ yum install mod_dav_svn -https://wandisco.com/source-code-management/subversion#linux;> -WANdisco (supported and certified by - https://wandisco.com/source-code-management/subversion/; - >WANdisco) +https://cirata.com/source-code-management/subversion#linux;> +Cirata (supported and certified by + https://cirata.com/source-code-management/subversion/; + >Cirata (formerly WANdisco)) @@ -125,10 +125,10 @@ $ yum install mod_dav_svn $ apt-get install subversion $ apt-get install libapache2-mod-svn -https://wandisco.com/source-code-management/subversion#linux;> -WANdisco (supported and certified by - https://wandisco.com/source-code-management/subversion; - >WANdisco) +https://cirata.com/source-code-management/subversion#linux;> +Cirata (supported and certified by + https://cirata.com/source-code-management/subversion; + >Cirata (formerly WANdisco)) @@ -263,7 +263,7 @@ $ zypper install subversion-server -Mac OS X +MacOS @@ -282,13 +282,8 @@ $ brew install (OPTIONS) subversionhttps://ports.macports.org/port/subversion; >MacPorts (requires https://www.macports.org/;>MacPorts) -https://wandisco.com/source-code-management/subversion#mac;> -WANdisco (client and server; supported and certified by - https://wandisco.com/source-code-management/subversion; - >WANdisco) - Older Subversion binaries were provided with Xcode in versions - of Mac OS X prior to 10.15 (Catalina). See the + of MacOS/OS X prior to 10.15 (Catalina). See the https://www.apple.com/opensource/;>open source section of Apple's web site for more information. @@ -310,10 +305,10 @@ $ brew install (OPTIONS) subversion$ yum install subversion $ yum install mod_dav_svn -https://wandisco.com/source-code-management/subversion#linux;> -WANdisco (supported and certified by - https://wandisco.com/source-code-management/subversion; - >WANdisco) +https://cirata.com/source-code-management/subversion#linux;> +Cirata (supported and certified by + https://cirata.com/source-code-management/subversion; + >Cirata (formerly WANdisco)) @@ -361,10 +356,10 @@ $ zypper install subversion-server https://software.opensuse.org/download.html?project=devel:tools:scm:svn:1.8package=subversion;> 1.8 series of releases. -https://wandisco.com/source-code-management/subversion#linux;> -WANdisco (supported and certified by - https://wandisco.com/source-code-management/subversion; - >WANdisco) +https://cirata.com/source-code-management/subversion#linux;> +Cirata (supported and certified by + https://cirata.com/source-code-management/subversion; + >Cirata (formerly WANdisco)) @@ -389,10 +384,10 @@ $ zypper install subversion-server $ apt-get install subversion $ apt-get install libapache2-svn -https://wandisco.com/source-code-management/subversion#linux;> -WANdisco (supported and certified by - https://wandisco.com/source-code-management/subversion; - >WANdisco) +https://cirata.com/source-code-management/subversion#linux;> +Cirata (supported and certified by + https://cirata.com/source-code-management/subversion; + >Cirata (formerly WANdisco)) @@ -422,10 +417,10 @@ $ apt-get install libapache2-svn https://www.visualsvn.com; >VisualSVN) -https://wandisco.com/source-code-management/subversion#windows; - >WANdisco (32- and 64-bit client and ser
svn commit: r1913058 - /subversion/site/staging/packages.html
Author: dsahlberg Date: Tue Oct 17 12:33:13 2023 New Revision: 1913058 URL: http://svn.apache.org/viewvc?rev=1913058=rev Log: In site/staging: * packages.html (#bigpoint, #osx): MacOS is the official name since 2016. Let's modernise. Modified: subversion/site/staging/packages.html Modified: subversion/site/staging/packages.html URL: http://svn.apache.org/viewvc/subversion/site/staging/packages.html?rev=1913058=1913057=1913058=diff == --- subversion/site/staging/packages.html (original) +++ subversion/site/staging/packages.html Tue Oct 17 12:33:13 2023 @@ -39,7 +39,7 @@ NetBSD | OpenBSD | openSUSE | - MacOSX | + MacOS | RedHatLinux | Solaris | SUSELinux | @@ -263,7 +263,7 @@ $ zypper install subversion-server -Mac OS X +MacOS @@ -283,7 +283,7 @@ $ brew install (OPTIONS) subversionMacPorts (requires https://www.macports.org/;>MacPorts) Older Subversion binaries were provided with Xcode in versions - of Mac OS X prior to 10.15 (Catalina). See the + of MacOS/OS X prior to 10.15 (Catalina). See the https://www.apple.com/opensource/;>open source section of Apple's web site for more information.
svn commit: r1913057 - /subversion/site/staging/packages.html
Author: dsahlberg Date: Tue Oct 17 12:30:42 2023 New Revision: 1913057 URL: http://svn.apache.org/viewvc?rev=1913057=rev Log: In site/staging: Follow-up to r1913041 * packages.html (#osx): Remove Cirata/WANdisco. They don't provide binaries for MacOS anymore. (Source: Private e-mail with Cirata contact). * packages.html (multiple sections): Add note that Cirata was formerly WANdisco. Suggested by: hartmannathan Modified: subversion/site/staging/packages.html Modified: subversion/site/staging/packages.html URL: http://svn.apache.org/viewvc/subversion/site/staging/packages.html?rev=1913057=1913056=1913057=diff == --- subversion/site/staging/packages.html (original) +++ subversion/site/staging/packages.html Tue Oct 17 12:30:42 2023 @@ -100,7 +100,7 @@ $ yum install mod_dav_svn https://cirata.com/source-code-management/subversion#linux;> Cirata (supported and certified by https://cirata.com/source-code-management/subversion/; - >Cirata) + >Cirata (formerly WANdisco)) @@ -128,7 +128,7 @@ $ apt-get install libapache2-mod-svnhttps://cirata.com/source-code-management/subversion#linux;> Cirata (supported and certified by https://cirata.com/source-code-management/subversion; - >Cirata) + >Cirata (formerly WANdisco)) @@ -282,11 +282,6 @@ $ brew install (OPTIONS) subversionhttps://ports.macports.org/port/subversion; >MacPorts (requires https://www.macports.org/;>MacPorts) -https://cirata.com/source-code-management/subversion#mac;> -Cirata (client and server; supported and certified by - https://cirata.com/source-code-management/subversion; - >Cirata) - Older Subversion binaries were provided with Xcode in versions of Mac OS X prior to 10.15 (Catalina). See the https://www.apple.com/opensource/;>open source section @@ -313,7 +308,7 @@ $ yum install mod_dav_svn https://cirata.com/source-code-management/subversion#linux;> Cirata (supported and certified by https://cirata.com/source-code-management/subversion; - >Cirata) + >Cirata (formerly WANdisco)) @@ -364,7 +359,7 @@ $ zypper install subversion-server https://cirata.com/source-code-management/subversion#linux;> Cirata (supported and certified by https://cirata.com/source-code-management/subversion; - >Cirata) + >Cirata (formerly WANdisco)) @@ -392,7 +387,7 @@ $ apt-get install libapache2-svn https://cirata.com/source-code-management/subversion#linux;> Cirata (supported and certified by https://cirata.com/source-code-management/subversion; - >Cirata) + >Cirata (formerly WANdisco)) @@ -429,7 +424,7 @@ $ apt-get install libapache2-svn https://cirata.com/source-code-management/subversion#windows; >Cirata (32- and 64-bit client and server; supported and certified by https://cirata.com/source-code-management/subversion; - >Cirata) + >Cirata (formerly WANdisco))
svn commit: r1913041 - /subversion/site/staging/packages.html
Author: dsahlberg Date: Tue Oct 17 06:50:02 2023 New Revision: 1913041 URL: http://svn.apache.org/viewvc?rev=1913041=rev Log: In site/staging: WANdisco is renaming itself to Cirata. Update links accordingly. * packages.html (multiple sections): s/wandisco/cirata/ Modified: subversion/site/staging/packages.html Modified: subversion/site/staging/packages.html URL: http://svn.apache.org/viewvc/subversion/site/staging/packages.html?rev=1913041=1913040=1913041=diff == --- subversion/site/staging/packages.html (original) +++ subversion/site/staging/packages.html Tue Oct 17 06:50:02 2023 @@ -97,10 +97,10 @@ $ yum install subversion $ yum install mod_dav_svn -https://wandisco.com/source-code-management/subversion#linux;> -WANdisco (supported and certified by - https://wandisco.com/source-code-management/subversion/; - >WANdisco) +https://cirata.com/source-code-management/subversion#linux;> +Cirata (supported and certified by + https://cirata.com/source-code-management/subversion/; + >Cirata) @@ -125,10 +125,10 @@ $ yum install mod_dav_svn $ apt-get install subversion $ apt-get install libapache2-mod-svn -https://wandisco.com/source-code-management/subversion#linux;> -WANdisco (supported and certified by - https://wandisco.com/source-code-management/subversion; - >WANdisco) +https://cirata.com/source-code-management/subversion#linux;> +Cirata (supported and certified by + https://cirata.com/source-code-management/subversion; + >Cirata) @@ -282,10 +282,10 @@ $ brew install (OPTIONS) subversionhttps://ports.macports.org/port/subversion; >MacPorts (requires https://www.macports.org/;>MacPorts) -https://wandisco.com/source-code-management/subversion#mac;> -WANdisco (client and server; supported and certified by - https://wandisco.com/source-code-management/subversion; - >WANdisco) +https://cirata.com/source-code-management/subversion#mac;> +Cirata (client and server; supported and certified by + https://cirata.com/source-code-management/subversion; + >Cirata) Older Subversion binaries were provided with Xcode in versions of Mac OS X prior to 10.15 (Catalina). See the @@ -310,10 +310,10 @@ $ brew install (OPTIONS) subversion$ yum install subversion $ yum install mod_dav_svn -https://wandisco.com/source-code-management/subversion#linux;> -WANdisco (supported and certified by - https://wandisco.com/source-code-management/subversion; - >WANdisco) +https://cirata.com/source-code-management/subversion#linux;> +Cirata (supported and certified by + https://cirata.com/source-code-management/subversion; + >Cirata) @@ -361,10 +361,10 @@ $ zypper install subversion-server https://software.opensuse.org/download.html?project=devel:tools:scm:svn:1.8package=subversion;> 1.8 series of releases. -https://wandisco.com/source-code-management/subversion#linux;> -WANdisco (supported and certified by - https://wandisco.com/source-code-management/subversion; - >WANdisco) +https://cirata.com/source-code-management/subversion#linux;> +Cirata (supported and certified by + https://cirata.com/source-code-management/subversion; + >Cirata) @@ -389,10 +389,10 @@ $ zypper install subversion-server $ apt-get install subversion $ apt-get install libapache2-svn -https://wandisco.com/source-code-management/subversion#linux;> -WANdisco (supported and certified by - https://wandisco.com/source-code-management/subversion; - >WANdisco) +https://cirata.com/source-code-management/subversion#linux;> +Cirata (supported and certified by + https://cirata.com/source-code-management/subversion; + >Cirata) @@ -426,10 +426,10 @@ $ apt-get install libapache2-svn https://www.visualsvn.com; >VisualSVN) -https://wandisco.com/source-code-management/subversion#windows; - >WANdisco (32- and 64-bit client and server; supported and certified by - https://wandisco.com/source-code-management/subversion; - >WANdisco) +https://cirata.com/source-code-management/subversion#windows; + >Cirata (32- and 64-bit client and server; supported and certified by + https://cirata.com/source-code-management/subversion; + >Cirata)
svn commit: r1912826 - /subversion/trunk/subversion/tests/cmdline/copy_tests.py
Author: dsahlberg Date: Sun Oct 8 19:07:58 2023 New Revision: 1912826 URL: http://svn.apache.org/viewvc?rev=1912826=rev Log: Follow-up to r1909127, copy_tests.py 17 would fail if there was a symlink in the path to the svn-test-work directory. * subversion/tests/cmdline/copy_tests.py (wc_move_parent_into_child): Use absolute paths when calling the svn command. Discussed: https://lists.apache.org/thread/wzqmkxkcc3nd8qonor7pzry84vgrxrb5 Reported by: hartmannathan Suggested by: futatuki Modified: subversion/trunk/subversion/tests/cmdline/copy_tests.py Modified: subversion/trunk/subversion/tests/cmdline/copy_tests.py URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/copy_tests.py?rev=1912826=1912825=1912826=diff == --- subversion/trunk/subversion/tests/cmdline/copy_tests.py (original) +++ subversion/trunk/subversion/tests/cmdline/copy_tests.py Sun Oct 8 19:07:58 2023 @@ -1296,7 +1296,7 @@ def wc_move_parent_into_child(sbox): "child '%s'" % (re.escape(from_path), re.escape(to_path)) svntest.actions.run_and_verify_svn(None, expected_error, 'mv', - '.', 'F/B') + from_path, to_path) os.chdir(was_cwd)
svn commit: r1912747 - /subversion/branches/1.14.x/STATUS
Author: dsahlberg Date: Thu Oct 5 12:23:07 2023 New Revision: 1912747 URL: http://svn.apache.org/viewvc?rev=1912747=rev Log: Nominate r1912724, r1912743 Suggested by: hartmannathan Modified: subversion/branches/1.14.x/STATUS Modified: subversion/branches/1.14.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1912747=1912746=1912747=diff == --- subversion/branches/1.14.x/STATUS (original) +++ subversion/branches/1.14.x/STATUS Thu Oct 5 12:23:07 2023 @@ -29,6 +29,13 @@ Candidate changes: Votes: +1: dsahlberg, stsp + * r1912724, r1912743 + Python bindings error handling + Justification: + Improve documentation and error message. Issue #1778 + Votes: + +1: dsahlberg + Veto-blocked changes: =
svn commit: r1912744 - /subversion/branches/1.14.x/STATUS
Author: dsahlberg Date: Thu Oct 5 07:48:18 2023 New Revision: 1912744 URL: http://svn.apache.org/viewvc?rev=1912744=rev Log: On the svn_1.14.x branch: Approve the r1912500 group Changes to bindings only require one +1 and at least one +0 Modified: subversion/branches/1.14.x/STATUS Modified: subversion/branches/1.14.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1912744=1912743=1912744=diff == --- subversion/branches/1.14.x/STATUS (original) +++ subversion/branches/1.14.x/STATUS Thu Oct 5 07:48:18 2023 @@ -29,6 +29,12 @@ Candidate changes: Votes: +1: dsahlberg, stsp +Veto-blocked changes: += + +Approved changes: += + * r192501, r192502, r192503, r1912500, r1912515, r1912517, r1912691 swig-py: Use pure Python objects as edit/parse_fns3 and decendant batons. Justification: @@ -36,9 +42,3 @@ Candidate changes: Votes: +1: futatuki +0: dsahlberg (not enough experience for +1, but looks good) - -Veto-blocked changes: -= - -Approved changes: -=
svn propchange: r1912743 - svn:log
Author: dsahlberg Revision: 1912743 Modified property: svn:log Modified: svn:log at Thu Oct 5 07:45:47 2023 -- --- svn:log (original) +++ svn:log Thu Oct 5 07:45:47 2023 @@ -20,3 +20,4 @@ for ENOENT. (test_diff_repos_paths_external): Add note to change code when droping Python2 support. No functional change. +Discussion dev@ https://lists.apache.org/thread/hfnfq4v6jytod1xr4dsttp00ptfgmfgr
svn commit: r1912743 - in /subversion/trunk/subversion/bindings/swig/python: svn/fs.py tests/fs.py
Author: dsahlberg Date: Thu Oct 5 07:36:08 2023 New Revision: 1912743 URL: http://svn.apache.org/viewvc?rev=1912743=rev Log: Fix issue #1778: Better handling if diff is not available. r1824410 solves the basic issue, to use the internal diff functions when available. However if diffoptions is not None, an external diff command is still called. If diff (or diff.exe) is not found in PATH, Python2 will raise an OSError and Python3 will raise a FileNotFoundError (which inherits OSError). r1912724 adds a docstring to FileDiff.get_pipe() documenting this behaviour. This revision add an improved error message. When dropping Python2 support, the code can catch FileNotFoundError and remove the check for ENOENT. * subversion/bindings/swig/python/svn/fs.py (FileDiff.get_pipe): Catch OSError/ENOENT and improve error msg * subversion/bindings/swig/python/tests/fs.py (test_diff_repos_paths_external): Add note to change code when droping Python2 support. No functional change. Modified: subversion/trunk/subversion/bindings/swig/python/svn/fs.py subversion/trunk/subversion/bindings/swig/python/tests/fs.py Modified: subversion/trunk/subversion/bindings/swig/python/svn/fs.py URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/swig/python/svn/fs.py?rev=1912743=1912742=1912743=diff == --- subversion/trunk/subversion/bindings/swig/python/svn/fs.py (original) +++ subversion/trunk/subversion/bindings/swig/python/svn/fs.py Thu Oct 5 07:36:08 2023 @@ -23,6 +23,7 @@ #under the License. ## +import errno from libsvn.fs import * ## @@ -182,8 +183,17 @@ class FileDiff: + [self.tempfile1, self.tempfile2] # open the pipe, and return the file object for reading from the child. - p = _subprocess.Popen(cmd, stdout=_subprocess.PIPE, bufsize=-1, -close_fds=_sys.platform != "win32") + try: +p = _subprocess.Popen(cmd, stdout=_subprocess.PIPE, bufsize=-1, + close_fds=_sys.platform != "win32") + # When removing Python 2 support: Change to FileNotFoundError and + # remove check for ENOENT (FileNotFoundError "Corresponds to errno + # ENOENT" according to documentation) + except OSError as err: +if err.errno == errno.ENOENT: + err.strerror = "External diff command not found in PATH" +raise err + return _PopenStdoutWrapper(p) else: Modified: subversion/trunk/subversion/bindings/swig/python/tests/fs.py URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/swig/python/tests/fs.py?rev=1912743=1912742=1912743=diff == --- subversion/trunk/subversion/bindings/swig/python/tests/fs.py (original) +++ subversion/trunk/subversion/bindings/swig/python/tests/fs.py Thu Oct 5 07:36:08 2023 @@ -308,6 +308,9 @@ class SubversionFSTestCase(unittest.Test try: diffout, differr = Popen(["diff"], stdin=PIPE, stderr=PIPE).communicate() +# When removing Python 2 support: Change to FileNotFoundError and +# remove check for ENOENT (FileNotFoundError "Corresponds to errno +# ENOENT" according to documentation) except OSError as err: if err.errno == errno.ENOENT: self.skipTest("'diff' command not present")
svn commit: r1912697 - in /subversion/trunk/subversion/bindings/swig/python: libsvn_swig_py/swigutil_py.c tests/wc.py
Author: dsahlberg Date: Mon Oct 2 20:08:24 2023 New Revision: 1912697 URL: http://svn.apache.org/viewvc?rev=1912697=rev Log: Change "call back (function)" to "callback (function)" in docstrings and comments (except when used as a verb). No functional change. * subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c, subversion/bindings/swig/python/tests/wc.py (multiple functions): As above Modified: subversion/trunk/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c subversion/trunk/subversion/bindings/swig/python/tests/wc.py Modified: subversion/trunk/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c?rev=1912697=1912696=1912697=diff == --- subversion/trunk/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c (original) +++ subversion/trunk/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c Mon Oct 2 20:08:24 2023 @@ -3194,7 +3194,7 @@ void svn_swig_py_notify_func(void *baton svn_swig_py_acquire_py_lock(); /* As caller can't understand Python context and we can't notify if - Python call back function raise exception to caller, we must catch it + Python callback function raise exception to caller, we must catch it if it is occurred, and restore error indicator */ PyErr_Fetch(_type, , _traceback); @@ -3244,7 +3244,7 @@ void svn_swig_py_notify_func2(void *bato svn_swig_py_acquire_py_lock(); /* As caller can't understand Python context and we can't notify if - Python call back function raise exception to caller, we must catch it + Python callback function raise exception to caller, we must catch it if it is occurred, and restore error indicator */ PyErr_Fetch(_type, , _traceback); @@ -3287,7 +3287,7 @@ void svn_swig_py_status_func(void *baton svn_swig_py_acquire_py_lock(); /* As caller can't understand Python context and we can't notify if - Python call back function raise exception to caller, we must catch it + Python callback function raise exception to caller, we must catch it if it is occurred, and restore error indicator */ PyErr_Fetch(_type, , _traceback); @@ -3436,7 +3436,7 @@ void svn_swig_py_status_func2(void *bato svn_swig_py_acquire_py_lock(); /* As caller can't understand Python context and we can't notify if - Python call back function raise exception to caller, we must catch it + Python callback function raise exception to caller, we must catch it if it is occurred, and restore error indicator */ PyErr_Fetch(_type, , _traceback); @@ -4721,7 +4721,7 @@ ra_callbacks_progress_func(apr_off_t pro svn_swig_py_acquire_py_lock(); /* As caller can't understand Python context and we can't notify if - Python call back function raise exception to caller, we must catch it + Python callback function raise exception to caller, we must catch it if it is occurred, and restore error indicator */ PyErr_Fetch(_type, , _traceback); @@ -5632,7 +5632,7 @@ svn_swig_py_config_enumerator2(const cha svn_swig_py_acquire_py_lock(); /* As caller can't understand Python context and we can't notify if - Python call back function raise exception to caller, we must catch it + Python callback function raise exception to caller, we must catch it if it is occurred, and restore error indicator */ PyErr_Fetch(_type, , _traceback); @@ -5690,7 +5690,7 @@ svn_swig_py_config_section_enumerator2(c svn_swig_py_acquire_py_lock(); /* As caller can't understand Python context and we can't notify if - Python call back function raise exception to caller, we must catch it + Python callback function raise exception to caller, we must catch it if it is occurred, and restore error indicator */ PyErr_Fetch(_type, , _traceback); Modified: subversion/trunk/subversion/bindings/swig/python/tests/wc.py URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/swig/python/tests/wc.py?rev=1912697=1912696=1912697=diff == --- subversion/trunk/subversion/bindings/swig/python/tests/wc.py (original) +++ subversion/trunk/subversion/bindings/swig/python/tests/wc.py Mon Oct 2 20:08:24 2023 @@ -180,9 +180,9 @@ class SubversionWorkingCopyTestCase(unit self.assertTrue(target.startswith(self.path)) def test_status_editor_callback_exception(self): - """test case for status_editor call back not to be crashed by Python exception""" + """test case for status_editor callback not to be crashed by Python exception""" def status_func(target, status): -# Note: exception with in this call back doesn't propagate to +#
svn commit: r1912661 - /subversion/branches/1.14.x/STATUS
Author: dsahlberg Date: Sun Oct 1 15:37:53 2023 New Revision: 1912661 URL: http://svn.apache.org/viewvc?rev=1912661=rev Log: Vote for the r192501, r192502, r192503, r1912500, r1912515, r1912517 group Modified: subversion/branches/1.14.x/STATUS Modified: subversion/branches/1.14.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1912661=1912660=1912661=diff == --- subversion/branches/1.14.x/STATUS (original) +++ subversion/branches/1.14.x/STATUS Sun Oct 1 15:37:53 2023 @@ -35,6 +35,7 @@ Candidate changes: Bug fix. Issue #4916, #4917, #4918 Votes: +1: futatuki + +0: dsahlberg (not enough experience for +1, but looks good) Veto-blocked changes: =
svn commit: r1912632 - in /subversion/trunk: build/ build/generator/ build/generator/swig/ subversion/tests/cmdline/ subversion/tests/cmdline/legacy/ subversion/tests/cmdline/svntest/ tools/dist/
Author: dsahlberg Date: Sat Sep 30 18:13:16 2023 New Revision: 1912632 URL: http://svn.apache.org/viewvc?rev=1912632=rev Log: Fix `invalid escape sequence` in Python scripts to prevent many `SyntaxWarning`s since Python 3.12. * build/generator/gen_win.py * build/generator/gen_win_dependencies.py * build/generator/swig/__init__.py * build/transform_sql.py * subversion/tests/cmdline/basic_tests.py * subversion/tests/cmdline/changelist_tests.py * subversion/tests/cmdline/checkout_tests.py * subversion/tests/cmdline/copy_tests.py * subversion/tests/cmdline/diff_tests.py * subversion/tests/cmdline/getopt_tests.py * subversion/tests/cmdline/info_tests.py * subversion/tests/cmdline/legacy/utf8_tests.py * subversion/tests/cmdline/lock_tests.py * subversion/tests/cmdline/log_tests.py * subversion/tests/cmdline/merge_authz_tests.py * subversion/tests/cmdline/merge_automatic_tests.py * subversion/tests/cmdline/merge_tests.py * subversion/tests/cmdline/merge_tree_conflict_tests.py * subversion/tests/cmdline/patch_tests.py * subversion/tests/cmdline/prop_tests.py * subversion/tests/cmdline/special_tests.py * subversion/tests/cmdline/stat_tests.py * subversion/tests/cmdline/svnadmin_tests.py * subversion/tests/cmdline/svnfsfs_tests.py * subversion/tests/cmdline/svnmover_tests.py * subversion/tests/cmdline/svnmucc_tests.py * subversion/tests/cmdline/svntest/actions.py * subversion/tests/cmdline/svntest/main.py * subversion/tests/cmdline/svntest/verify.py * subversion/tests/cmdline/svntest/wc.py * subversion/tests/cmdline/trans_tests.py * subversion/tests/cmdline/update_tests.py * subversion/tests/cmdline/upgrade_tests.py * subversion/tests/manual/tree-conflicts-add-vs-add.py * tools/dist/release.py Use raw literals or correct escape sequences. Patch by: jun66j5 Review by: futatuki Discussed: https://lists.apache.org/thread/m5s9zpj2jvsmtof07c0vvpjlwnwpdwsl Modified: subversion/trunk/build/generator/gen_win.py subversion/trunk/build/generator/gen_win_dependencies.py subversion/trunk/build/generator/swig/__init__.py subversion/trunk/build/transform_sql.py subversion/trunk/subversion/tests/cmdline/basic_tests.py subversion/trunk/subversion/tests/cmdline/changelist_tests.py subversion/trunk/subversion/tests/cmdline/checkout_tests.py subversion/trunk/subversion/tests/cmdline/copy_tests.py subversion/trunk/subversion/tests/cmdline/diff_tests.py subversion/trunk/subversion/tests/cmdline/getopt_tests.py subversion/trunk/subversion/tests/cmdline/info_tests.py subversion/trunk/subversion/tests/cmdline/legacy/utf8_tests.py subversion/trunk/subversion/tests/cmdline/lock_tests.py subversion/trunk/subversion/tests/cmdline/log_tests.py subversion/trunk/subversion/tests/cmdline/merge_authz_tests.py subversion/trunk/subversion/tests/cmdline/merge_automatic_tests.py subversion/trunk/subversion/tests/cmdline/merge_tests.py subversion/trunk/subversion/tests/cmdline/merge_tree_conflict_tests.py subversion/trunk/subversion/tests/cmdline/patch_tests.py subversion/trunk/subversion/tests/cmdline/prop_tests.py subversion/trunk/subversion/tests/cmdline/special_tests.py subversion/trunk/subversion/tests/cmdline/stat_tests.py subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py subversion/trunk/subversion/tests/cmdline/svnfsfs_tests.py subversion/trunk/subversion/tests/cmdline/svnmover_tests.py subversion/trunk/subversion/tests/cmdline/svnmucc_tests.py subversion/trunk/subversion/tests/cmdline/svntest/actions.py subversion/trunk/subversion/tests/cmdline/svntest/main.py subversion/trunk/subversion/tests/cmdline/svntest/verify.py subversion/trunk/subversion/tests/cmdline/svntest/wc.py subversion/trunk/subversion/tests/cmdline/trans_tests.py subversion/trunk/subversion/tests/cmdline/update_tests.py subversion/trunk/subversion/tests/cmdline/upgrade_tests.py subversion/trunk/tools/dist/release.py Modified: subversion/trunk/build/generator/gen_win.py URL: http://svn.apache.org/viewvc/subversion/trunk/build/generator/gen_win.py?rev=1912632=1912631=1912632=diff == --- subversion/trunk/build/generator/gen_win.py (original) +++ subversion/trunk/build/generator/gen_win.py Sat Sep 30 18:13:16 2023 @@ -574,7 +574,7 @@ class WinGeneratorBase(gen_win_dependenc # This section parses those dependencies and adds them to the dependency list # for this target. if name.startswith('javahl') or name == 'libsvnjavahl': - for dep in re.findall('\$\(([^\)]*)_DEPS\)', target.add_deps): + for dep in re.findall(r'\$\(([^\)]*)_DEPS\)', target.add_deps): dep = dep.replace('_', '-') depends.extend(self.sections[dep].get_targets()) @@ -728,7 +728,7 @@ class WinGeneratorBase(gen_win_dependenc for dep in self.get_win_depends(target, FILTER_EXTERNALLIBS): if dep.external_lib: -for elib
svn commit: r1912626 - in /subversion/trunk: build/run_tests.py subversion/tests/cmdline/svntest/main.py
Author: dsahlberg Date: Sat Sep 30 12:57:25 2023 New Revision: 1912626 URL: http://svn.apache.org/viewvc?rev=1912626=rev Log: Fix TypeError when running the test suite with --verbose. * build/run_tests.py (create_parser): Simplify callback set_log_level and let --verbose set the value directly. * subversion/tests/cmdline/svntest/main.py (_create_parser): Simplify callback set_log_level and let --verbose set the value directly. Patch by: jun66j5 Discussed: https://lists.apache.org/thread/83wwbpb4cq8b9g6lvzlz28rh55gxsz6g Modified: subversion/trunk/build/run_tests.py subversion/trunk/subversion/tests/cmdline/svntest/main.py Modified: subversion/trunk/build/run_tests.py URL: http://svn.apache.org/viewvc/subversion/trunk/build/run_tests.py?rev=1912626=1912625=1912626=diff == --- subversion/trunk/build/run_tests.py (original) +++ subversion/trunk/build/run_tests.py Sat Sep 30 12:57:25 2023 @@ -1034,17 +1034,19 @@ class TestHarness: def create_parser(): - def set_log_level(option, opt, value, parser, level=None): -if level is None: - level = value -parser.values.set_log_level = getattr(logging, level, None) or int(level) + def set_log_level(option, opt, value, parser): +if value.isdigit(): + value = int(value) +else: + value = getattr(logging, value) +parser.values.set_log_level = value parser = optparse.OptionParser(usage=__doc__); parser.add_option('-l', '--list', action='store_true', dest='list_tests', help='Print test doc strings instead of running them') - parser.add_option('-v', '--verbose', action='callback', -callback=set_log_level, callback_args=(logging.DEBUG, ), + parser.add_option('-v', '--verbose', action='store_const', +dest='set_log_level', const=logging.DEBUG, help='Print binary command-lines') parser.add_option('-c', '--cleanup', action='store_true', help='Clean up after successful tests') Modified: subversion/trunk/subversion/tests/cmdline/svntest/main.py URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/svntest/main.py?rev=1912626=1912625=1912626=diff == --- subversion/trunk/subversion/tests/cmdline/svntest/main.py (original) +++ subversion/trunk/subversion/tests/cmdline/svntest/main.py Sat Sep 30 12:57:25 2023 @@ -2188,13 +2188,12 @@ def _create_parser(usage=None): if logger.getEffectiveLevel() == logging.NOTSET: logger.setLevel(logging.WARN) - def set_log_level(option, opt, value, parser, level=None): -if level: - # called from --verbose - logger.setLevel(level) + def set_log_level(option, opt, value, parser): +if value.isdigit(): + level = int(value) else: - # called from --set-log-level - logger.setLevel(getattr(logging, value, None) or int(value)) + level = getattr(logging, value) +logger.setLevel(level) # Set up the parser. # If you add new options, consider adding them in @@ -2213,10 +2212,10 @@ def _create_parser(usage=None): help='Print test doc strings instead of running them') parser.add_option('--milestone-filter', action='store', dest='milestone_filter', help='Limit --list to those with target milestone specified') - parser.add_option('-v', '--verbose', action='callback', -callback=set_log_level, callback_args=(logging.DEBUG, ), + parser.add_option('-v', '--verbose', action='store_const', +dest='set_log_level', const=logging.DEBUG, help='Print binary command-lines (same as ' + - '"--set-log-level logging.DEBUG")') + '"--set-log-level DEBUG")') parser.add_option('-q', '--quiet', action='store_true', help='Print only unexpected results (not with --verbose)') parser.add_option('-p', '--parallel', action='store_const',
svn commit: r1912510 - in /subversion/site/publish: ./ index.html news.html
Author: dsahlberg Date: Sun Sep 24 08:08:34 2023 New Revision: 1912510 URL: http://svn.apache.org/viewvc?rev=1912510=rev Log: In site/publish: Merge 1912509 from staging * index.html, news.html (#news-20230924): Also change the headline Modified: subversion/site/publish/ (props changed) subversion/site/publish/index.html (contents, props changed) subversion/site/publish/news.html (contents, props changed) Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1912509 Modified: subversion/site/publish/index.html URL: http://svn.apache.org/viewvc/subversion/site/publish/index.html?rev=1912510=1912509=1912510=diff == --- subversion/site/publish/index.html (original) +++ subversion/site/publish/index.html Sun Sep 24 08:08:34 2023 @@ -71,7 +71,7 @@ -2022-05-09 Apache Subversion 1.10.x end of life +2023-09-24 Apache Subversion 1.10.x end of life Propchange: subversion/site/publish/index.html -- Merged /subversion/site/staging/index.html:r1912509 Modified: subversion/site/publish/news.html URL: http://svn.apache.org/viewvc/subversion/site/publish/news.html?rev=1912510=1912509=1912510=diff == --- subversion/site/publish/news.html (original) +++ subversion/site/publish/news.html Sun Sep 24 08:08:34 2023 @@ -27,7 +27,7 @@ -2022-05-09 Apache Subversion 1.10.x end of life +2023-09-24 Apache Subversion 1.10.x end of life Propchange: subversion/site/publish/news.html -- Merged /subversion/site/staging/news.html:r1912509
svn commit: r1912509 - in /subversion/site/staging: index.html news.html
Author: dsahlberg Date: Sun Sep 24 08:07:20 2023 New Revision: 1912509 URL: http://svn.apache.org/viewvc?rev=1912509=rev Log: In site/staging: * index.html, news.html (#news-20230924): Changing the anchor doesn't really make the visitor see the change. Change headline as well. Modified: subversion/site/staging/index.html subversion/site/staging/news.html Modified: subversion/site/staging/index.html URL: http://svn.apache.org/viewvc/subversion/site/staging/index.html?rev=1912509=1912508=1912509=diff == --- subversion/site/staging/index.html (original) +++ subversion/site/staging/index.html Sun Sep 24 08:07:20 2023 @@ -71,7 +71,7 @@ -2022-05-09 Apache Subversion 1.10.x end of life +2023-09-24 Apache Subversion 1.10.x end of life Modified: subversion/site/staging/news.html URL: http://svn.apache.org/viewvc/subversion/site/staging/news.html?rev=1912509=1912508=1912509=diff == --- subversion/site/staging/news.html (original) +++ subversion/site/staging/news.html Sun Sep 24 08:07:20 2023 @@ -27,7 +27,7 @@ -2022-05-09 Apache Subversion 1.10.x end of life +2023-09-24 Apache Subversion 1.10.x end of life
svn commit: r1912508 - in /subversion/site/publish: ./ docs/release-notes/index.html download.html index.html news.html roadmap.html
Author: dsahlberg Date: Sun Sep 24 08:05:23 2023 New Revision: 1912508 URL: http://svn.apache.org/viewvc?rev=1912508=rev Log: In site/publish: Merge 1900660 to 1901374 and 1912506 to 1912507 from staging, officially marking 1.10.x EOL and reverting the 6 month release cadence. * docs/release-notes/index.html Remove reference to 6 month release cadence. Mark 1.13.x and older as No longer supported. * download.html Remove reference to 6 month release cadence. Hide "older still released" section until we again have two supported releases. * index.html (#news-20230924): News item about 1.10 EOL (#news-20211215, #news-20210526): Remove old news items * news.html (#news-20230924): News item about 1.10 EOL * roadmap.html Remove reference to 6 month release cadence. Modified: subversion/site/publish/ (props changed) subversion/site/publish/docs/release-notes/index.html subversion/site/publish/download.html subversion/site/publish/index.html (contents, props changed) subversion/site/publish/news.html (contents, props changed) subversion/site/publish/roadmap.html (contents, props changed) Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1900661-1901374,1912506-1912507 Modified: subversion/site/publish/docs/release-notes/index.html URL: http://svn.apache.org/viewvc/subversion/site/publish/docs/release-notes/index.html?rev=1912508=1912507=1912508=diff == --- subversion/site/publish/docs/release-notes/index.html (original) +++ subversion/site/publish/docs/release-notes/index.html Sun Sep 24 08:05:23 2023 @@ -19,11 +19,6 @@ Apache Subversion Releases - -New 6-month regular and 2-year LTS release schedule: see -How We Plan Releases. - - The Apache Subversion project publishes releases with a relatively high degree of regularity. At any given time, we're working towards our next major release while continuing to fix bugs in previous releases. @@ -114,14 +109,8 @@ official support status for the various Long-Term Support -1.11.x - 1.13.x -No longer supported - -1.10.x -Long-Term Support - -1.9.x and earlier +1.13.x and earlier No longer supported Modified: subversion/site/publish/download.html URL: http://svn.apache.org/viewvc/subversion/site/publish/download.html?rev=1912508=1912507=1912508=diff == --- subversion/site/publish/download.html (original) +++ subversion/site/publish/download.html Sun Sep 24 08:05:23 2023 @@ -23,20 +23,16 @@ [define version]1.14[end] - -Learn about our new 6-month regular and 2-year LTS release schedule: see -How We Plan Releases. - - The latest and recommended LTS (long-term support) release of Apache Subversion is:[version] + +--> Use the links below to download Apache Subversion from one of our mirrors. You must verify the integrity of @@ -127,6 +123,8 @@ Other mirrors: + +--> + +2022-05-09 Apache Subversion 1.10.x end of life + + + +The Subversion 1.10.x line is end of life (EOL). +It was released on 2018-04-13 and was supported for the last four years +according to the LTS release life-cycle (see How we plan +releases). We recommend everyone to update to the current LTS release 1.14.2 as soon as practically +possible since we've stopped accepting bug reports against 1.10.x and will not +make any more 1.10.x releases. The last 1.10.x release (1.10.8) was made +on 2022-04-12 and is available to anyone who can't update to 1.14. + + + 2022-04-12 Apache Subversion Security Advisory - -2021-12-15 Subversion NOT affected by CVE-2021-44228 (Log4Shell) - - - -Subversion is not based on Java and does not depend on the vulnerable - Apache Log4j library. - -Subversion provides language bindings for Java ("JavaHL") but this code - does not depend on the Apache Log4j library. - -However depending on your installation there may be related components - that are vulnerable: - -Some vendors provide Java based web interfaces bundled with their - Subversion distribution. Please check your vendor's information to - verify if you are vulnerable. -It is possible to write repository hooks in Java. These hooks are - written by the repository administrator. - - - - - -2021-05-26 IRC migration to libera.chat - - - -The Subversion project has decided to move the official IRC channels to - https://libera.chat;>libera.chat due to concerns about the - future stability of our previous IRC network. - -Please join us in the #svn or #svn-dev channels! - - - [Click here to see all News items.] Propchange: subversion/site/publish/index.html -- Merged /subversion/site/staging/index.html:r1900
svn commit: r1912507 - /subversion/site/staging/docs/release-notes/index.html
Author: dsahlberg Date: Sun Sep 24 07:54:24 2023 New Revision: 1912507 URL: http://svn.apache.org/viewvc?rev=1912507=rev Log: In site/staging: * docs/release-notes/index.html: Remove the reference to the 6-month release policy Modified: subversion/site/staging/docs/release-notes/index.html Modified: subversion/site/staging/docs/release-notes/index.html URL: http://svn.apache.org/viewvc/subversion/site/staging/docs/release-notes/index.html?rev=1912507=1912506=1912507=diff == --- subversion/site/staging/docs/release-notes/index.html (original) +++ subversion/site/staging/docs/release-notes/index.html Sun Sep 24 07:54:24 2023 @@ -19,11 +19,6 @@ Apache Subversion Releases - -New 6-month regular and 2-year LTS release schedule: see -How We Plan Releases. - - The Apache Subversion project publishes releases with a relatively high degree of regularity. At any given time, we're working towards our next major release while continuing to fix bugs in previous releases.
svn commit: r1912506 - in /subversion/site/staging: index.html news.html
Author: dsahlberg Date: Sun Sep 24 07:48:47 2023 New Revision: 1912506 URL: http://svn.apache.org/viewvc?rev=1912506=rev Log: In site/staging: * index.html, news.html: Update the date for the 1.10 EOL news item to reflect the actual publish date Modified: subversion/site/staging/index.html subversion/site/staging/news.html Modified: subversion/site/staging/index.html URL: http://svn.apache.org/viewvc/subversion/site/staging/index.html?rev=1912506=1912505=1912506=diff == --- subversion/site/staging/index.html (original) +++ subversion/site/staging/index.html Sun Sep 24 07:48:47 2023 @@ -70,9 +70,9 @@ - + 2022-05-09 Apache Subversion 1.10.x end of life - @@ -86,7 +86,7 @@ possible since we've stopped accepting b make any more 1.10.x releases. The last 1.10.x release (1.10.8) was made on 2022-04-12 and is available to anyone who can't update to 1.14. - + 2022-04-12 Apache Subversion Security Advisory Modified: subversion/site/staging/news.html URL: http://svn.apache.org/viewvc/subversion/site/staging/news.html?rev=1912506=1912505=1912506=diff == --- subversion/site/staging/news.html (original) +++ subversion/site/staging/news.html Sun Sep 24 07:48:47 2023 @@ -26,9 +26,9 @@ - + 2022-05-09 Apache Subversion 1.10.x end of life - @@ -42,7 +42,7 @@ possible since we've stopped accepting b make any more 1.10.x releases. The last 1.10.x release (1.10.8) was made on 2022-04-12 and is available to anyone who can't update to 1.14. - + 2022-04-12 Apache Subversion Security Advisory
svn commit: r1912505 - in /subversion/site/publish: ./ .htaccess
Author: dsahlberg Date: Sun Sep 24 07:26:12 2023 New Revision: 1912505 URL: http://svn.apache.org/viewvc?rev=1912505=rev Log: In site/publish: Merge revision 1911986 from staging * .htaccess Change /buildbot/ redirects to ci2.apache.org See the merged commits for more details. Modified: subversion/site/publish/ (props changed) subversion/site/publish/.htaccess Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1911986 Modified: subversion/site/publish/.htaccess URL: http://svn.apache.org/viewvc/subversion/site/publish/.htaccess?rev=1912505=1912504=1912505=diff == --- subversion/site/publish/.htaccess (original) +++ subversion/site/publish/.htaccess Sun Sep 24 07:26:12 2023 @@ -2,10 +2,10 @@ Options +Includes RewriteEngine On -RedirectMatch ^/buildbot/all$ http://ci.apache.org/waterfall?category=svn-prod\=svn-warnings\=svn-status\=svn-compat\_events=true -RedirectMatch ^/buildbot/prod$ http://ci.apache.org/waterfall?category=svn-prod\=svn-warnings\_events=true -RedirectMatch ^/buildbot/stat$ http://ci.apache.org/waterfall?category=svn-status\_events=true -RedirectMatch ^/buildbot/compat$ http://ci.apache.org/waterfall?category=svn-compat\_events=true +RedirectMatch ^/buildbot/all$ https://ci2.apache.org/#/waterfall?tags=svn-prod\=svn-warnings\=svn-status\=svn-compat +RedirectMatch ^/buildbot/prod$ https://ci2.apache.org/#/waterfall?tags=svn-prod\=svn-warnings +RedirectMatch ^/buildbot/stat$ https://ci2.apache.org/#/waterfall?tags=svn-status +RedirectMatch ^/buildbot/compat$ https://ci2.apache.org/#/waterfall?tags=svn-compat RedirectMatch ^/patches$ /docs/community-guide/general.html#patches RedirectMatch ^/HACKING$ /docs/community-guide/ RedirectMatch ^/prerelease-caveats$ /docs/community-guide/releasing.html#prerelease-caveats
svn propchange: r1912504 - svn:log
Author: dsahlberg Revision: 1912504 Modified property: svn:log Modified: svn:log at Sun Sep 24 07:24:40 2023 -- --- svn:log (original) +++ svn:log Sun Sep 24 07:24:40 2023 @@ -1,4 +1,4 @@ -In site/publish: Merge revision 1911986 to 1912028 from staging +In site/publish: Merge revision 1911987 to 1912028 from staging * docs/community-guide/building.part.html: Change to ci2.apache.org and document configuration.
svn commit: r1912504 - in /subversion/site/publish: ./ docs/community-guide/building.part.html docs/community-guide/conventions.part.html docs/community-guide/conventions.toc.html source-code.html
Author: dsahlberg Date: Sun Sep 24 07:20:59 2023 New Revision: 1912504 URL: http://svn.apache.org/viewvc?rev=1912504=rev Log: In site/publish: Merge revision 1911986 to 1912028 from staging * docs/community-guide/building.part.html: Change to ci2.apache.org and document configuration. * docs/community-guide/conventions.part.html New section about the GitHub integration (including how to close issues). * docs/community-guide/conventions.toc.html Link to the above. * source-code.html Remove links to the nightly builds as these didn't work. See the merged commits for more details. Modified: subversion/site/publish/ (props changed) subversion/site/publish/docs/community-guide/building.part.html subversion/site/publish/docs/community-guide/conventions.part.html subversion/site/publish/docs/community-guide/conventions.toc.html subversion/site/publish/source-code.html Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1911987-1912028 Modified: subversion/site/publish/docs/community-guide/building.part.html URL: http://svn.apache.org/viewvc/subversion/site/publish/docs/community-guide/building.part.html?rev=1912504=1912503=1912504=diff == --- subversion/site/publish/docs/community-guide/building.part.html (original) +++ subversion/site/publish/docs/community-guide/building.part.html Sun Sep 24 07:20:59 2023 @@ -267,7 +267,7 @@ farm. The Buildbot waterfall for the Sub The whole farm For more information about build services, head over -to https://ci.apache.org/;>ci.apache.org. +to https://ci2.apache.org/;>ci2.apache.org. If you'd like to receive notifications about buildbot build and @@ -275,6 +275,12 @@ test failures, please subscribe to the < href="/mailing-lists.html#notifications-ml">notifications@ mailing list. +Buildbot is configured in the https://svn.apache.org/repos/infra/infrastructure/buildbot2/;>Infra +repository, specifically, the https://svn.apache.org/repos/infra/infrastructure/buildbot2/projects/subversion.py; +>subversion.py file. + Modified: subversion/site/publish/docs/community-guide/conventions.part.html URL: http://svn.apache.org/viewvc/subversion/site/publish/docs/community-guide/conventions.part.html?rev=1912504=1912503=1912504=diff == --- subversion/site/publish/docs/community-guide/conventions.part.html (original) +++ subversion/site/publish/docs/community-guide/conventions.part.html Sun Sep 24 07:20:59 2023 @@ -1268,4 +1268,28 @@ voted for the change to be merged. + +Github + #github" +title="Link to this section"> + + +The Subversion repository is mirrored to GitHub at https://github.com/apache/subversion/; +>https://github.com/apache/subversion/. + +Some users might create pull requests in GitHub. If the code is committed +to the Subversion repository, make sure to include text in the log message +to automatically close the pull request: + + +This fixes #NNN in GitHub + + +To manage pull requests without committing code, you must have a GitHub +account connected to your ASF id and you must have the triager role +assigned to your account by ASF Infra. + + + Modified: subversion/site/publish/docs/community-guide/conventions.toc.html URL: http://svn.apache.org/viewvc/subversion/site/publish/docs/community-guide/conventions.toc.html?rev=1912504=1912503=1912504=diff == --- subversion/site/publish/docs/community-guide/conventions.toc.html (original) +++ subversion/site/publish/docs/community-guide/conventions.toc.html Sun Sep 24 07:20:59 2023 @@ -13,6 +13,7 @@ Other coding conventions Writing log messages Crediting + GitHub @@ -29,5 +30,6 @@ Other coding conventions Writing log messages Crediting + GitHub Modified: subversion/site/publish/source-code.html URL: http://svn.apache.org/viewvc/subversion/site/publish/source-code.html?rev=1912504=1912503=1912504=diff == --- subversion/site/publish/source-code.html (original) +++ subversion/site/publish/source-code.html Sun Sep 24 07:20:59 2023 @@ -82,20 +82,6 @@ - -Nightly Source Releases - - - -The project also produces nightly source code snapshots based upon the -latest development sources. These are available as -https://ci.apache.org/projects/subversion/nightlies/index.html;>nightly -source releases, and are only recommended for people who would like to -test cutting-edge new features. These are not for production use! - - - Web Access
svn commit: r1912028 - /subversion/site/staging/source-code.html
Author: dsahlberg Date: Thu Aug 31 19:37:24 2023 New Revision: 1912028 URL: http://svn.apache.org/viewvc?rev=1912028=rev Log: In site/staging: * source-code.html (#nightlies): Remove section since we don't publish nightly tarballs anymore) Discussed: https://lists.apache.org/thread/fz69kh0o5zjglqqs7rypm2x5rv1nkro9 Modified: subversion/site/staging/source-code.html Modified: subversion/site/staging/source-code.html URL: http://svn.apache.org/viewvc/subversion/site/staging/source-code.html?rev=1912028=1912027=1912028=diff == --- subversion/site/staging/source-code.html (original) +++ subversion/site/staging/source-code.html Thu Aug 31 19:37:24 2023 @@ -82,20 +82,6 @@ - -Nightly Source Releases - - - -The project also produces nightly source code snapshots based upon the -latest development sources. These are available as -https://ci.apache.org/projects/subversion/nightlies/index.html;>nightly -source releases, and are only recommended for people who would like to -test cutting-edge new features. These are not for production use! - - - Web Access
svn commit: r1912002 - /subversion/trunk/contrib/client-side/svn_load_dirs/svn_load_dirs.pl.in
Author: dsahlberg Date: Tue Aug 29 19:55:03 2023 New Revision: 1912002 URL: http://svn.apache.org/viewvc?rev=1912002=rev Log: Fix issue #4621 The svn command line client version 1.9 and later will return an error on propget if the property doesn't exist. * contrib/client-side/svn_load_dirs/svn_load_dirs.pl.in Check for the property existence using proplist before trying to get the property Patch by: Vivek Khera (newline fixes by me, removed part already fixed in r1863392) Modified: subversion/trunk/contrib/client-side/svn_load_dirs/svn_load_dirs.pl.in Modified: subversion/trunk/contrib/client-side/svn_load_dirs/svn_load_dirs.pl.in URL: http://svn.apache.org/viewvc/subversion/trunk/contrib/client-side/svn_load_dirs/svn_load_dirs.pl.in?rev=1912002=1912001=1912002=diff == --- subversion/trunk/contrib/client-side/svn_load_dirs/svn_load_dirs.pl.in (original) +++ subversion/trunk/contrib/client-side/svn_load_dirs/svn_load_dirs.pl.in Tue Aug 29 19:55:03 2023 @@ -1239,6 +1239,15 @@ while (defined (my $load_dir = _next # get the incorrect information. So always append @BASE # and any preceding @'s will be treated normally and the # correct information will be retrieved. + +# first make sure that the file has the eol-style property +# else svn 1.9 will error when it is not found +my @proplist = read_from_process($svn, + 'proplist', + '--quiet', + "$upd_file\@BASE"); +next unless grep(/svn:eol-style/, @proplist); + my @command = ($svn, 'propget', 'svn:eol-style',
svn commit: r1911988 - in /subversion/site/staging/docs/community-guide: conventions.part.html conventions.toc.html
Author: dsahlberg Date: Tue Aug 29 16:04:02 2023 New Revision: 1911988 URL: http://svn.apache.org/viewvc?rev=1911988=rev Log: In site/staging: * docs/community-guide/conventions.part.html (#github): Add a new section about GitHub integration * docs/community-guide/conventions.toc.html Link to the new #github section. Modified: subversion/site/staging/docs/community-guide/conventions.part.html subversion/site/staging/docs/community-guide/conventions.toc.html Modified: subversion/site/staging/docs/community-guide/conventions.part.html URL: http://svn.apache.org/viewvc/subversion/site/staging/docs/community-guide/conventions.part.html?rev=1911988=1911987=1911988=diff == --- subversion/site/staging/docs/community-guide/conventions.part.html (original) +++ subversion/site/staging/docs/community-guide/conventions.part.html Tue Aug 29 16:04:02 2023 @@ -1268,4 +1268,28 @@ voted for the change to be merged. + +Github + #github" +title="Link to this section"> + + +The Subversion repository is mirrored to GitHub at https://github.com/apache/subversion/; +>https://github.com/apache/subversion/. + +Some users might create pull requests in GitHub. If the code is committed +to the Subversion repository, make sure to include text in the log message +to automatically close the pull request: + + +This fixes #NNN in GitHub + + +To manage pull requests without committing code, you must have a GitHub +account connected to your ASF id and you must have the triager role +assigned to your account by ASF Infra. + + + Modified: subversion/site/staging/docs/community-guide/conventions.toc.html URL: http://svn.apache.org/viewvc/subversion/site/staging/docs/community-guide/conventions.toc.html?rev=1911988=1911987=1911988=diff == --- subversion/site/staging/docs/community-guide/conventions.toc.html (original) +++ subversion/site/staging/docs/community-guide/conventions.toc.html Tue Aug 29 16:04:02 2023 @@ -13,6 +13,7 @@ Other coding conventions Writing log messages Crediting + GitHub @@ -29,5 +30,6 @@ Other coding conventions Writing log messages Crediting + GitHub
svn commit: r1911987 - /subversion/site/staging/docs/community-guide/building.part.html
Author: dsahlberg Date: Tue Aug 29 15:51:38 2023 New Revision: 1911987 URL: http://svn.apache.org/viewvc?rev=1911987=rev Log: In site/staging: * docs/community-guide/building.part.html (#build-farm): Buildbot canonical URL has changed. Add note where to find the configuration. Modified: subversion/site/staging/docs/community-guide/building.part.html Modified: subversion/site/staging/docs/community-guide/building.part.html URL: http://svn.apache.org/viewvc/subversion/site/staging/docs/community-guide/building.part.html?rev=1911987=1911986=1911987=diff == --- subversion/site/staging/docs/community-guide/building.part.html (original) +++ subversion/site/staging/docs/community-guide/building.part.html Tue Aug 29 15:51:38 2023 @@ -267,7 +267,7 @@ farm. The Buildbot waterfall for the Sub The whole farm For more information about build services, head over -to https://ci.apache.org/;>ci.apache.org. +to https://ci2.apache.org/;>ci2.apache.org. If you'd like to receive notifications about buildbot build and @@ -275,6 +275,12 @@ test failures, please subscribe to the < href="/mailing-lists.html#notifications-ml">notifications@ mailing list. +Buildbot is configured in the https://svn.apache.org/repos/infra/infrastructure/buildbot2/;>Infra +repository, specifically, the https://svn.apache.org/repos/infra/infrastructure/buildbot2/projects/subversion.py; +>subversion.py file. +
svn commit: r1911986 - /subversion/site/staging/.htaccess
Author: dsahlberg Date: Tue Aug 29 15:45:58 2023 New Revision: 1911986 URL: http://svn.apache.org/viewvc?rev=1911986=rev Log: In site/staging * .htaccess: Update buildbot redirects to work with the new ci2.apache.org Modified: subversion/site/staging/.htaccess Modified: subversion/site/staging/.htaccess URL: http://svn.apache.org/viewvc/subversion/site/staging/.htaccess?rev=1911986=1911985=1911986=diff == --- subversion/site/staging/.htaccess (original) +++ subversion/site/staging/.htaccess Tue Aug 29 15:45:58 2023 @@ -2,10 +2,10 @@ Options +Includes RewriteEngine On -RedirectMatch ^/buildbot/all$ http://ci.apache.org/waterfall?category=svn-prod\=svn-warnings\=svn-status\=svn-compat\_events=true -RedirectMatch ^/buildbot/prod$ http://ci.apache.org/waterfall?category=svn-prod\=svn-warnings\_events=true -RedirectMatch ^/buildbot/stat$ http://ci.apache.org/waterfall?category=svn-status\_events=true -RedirectMatch ^/buildbot/compat$ http://ci.apache.org/waterfall?category=svn-compat\_events=true +RedirectMatch ^/buildbot/all$ https://ci2.apache.org/#/waterfall?tags=svn-prod\=svn-warnings\=svn-status\=svn-compat +RedirectMatch ^/buildbot/prod$ https://ci2.apache.org/#/waterfall?tags=svn-prod\=svn-warnings +RedirectMatch ^/buildbot/stat$ https://ci2.apache.org/#/waterfall?tags=svn-status +RedirectMatch ^/buildbot/compat$ https://ci2.apache.org/#/waterfall?tags=svn-compat RedirectMatch ^/patches$ /docs/community-guide/general.html#patches RedirectMatch ^/HACKING$ /docs/community-guide/ RedirectMatch ^/prerelease-caveats$ /docs/community-guide/releasing.html#prerelease-caveats
svn commit: r1911931 - /subversion/trunk/contrib/hook-scripts/check-mime-type.pl
Author: dsahlberg Date: Sat Aug 26 14:17:18 2023 New Revision: 1911931 URL: http://svn.apache.org/viewvc?rev=1911931=rev Log: This fixes #22 in Github: Enhance hook script check-mime-type.pl to also check property-modified files. * contrib/hook-scripts/check-mime-type.pl: - add option to recognize property-modified files for checks - make check for svn:eol-style optional - enhance texts and comments to reflect changes - rename array "files_added" to "files_to_check" to better fit its usage - explicitly mark here document with quotes as interpolating - fix script name in comments - update copyright and license to reflect switch to ASF Patch by: Matthias Bücher maddes+subvers...@maddes.net Suggested by: Leo Davis [1] [1] https://mail-archives.apache.org/mod_mbox/subversion-dev/201403.mbox/%3c1576503.m6xb7ud...@hurry.speechfxinc.com%3E Modified: subversion/trunk/contrib/hook-scripts/check-mime-type.pl Modified: subversion/trunk/contrib/hook-scripts/check-mime-type.pl URL: http://svn.apache.org/viewvc/subversion/trunk/contrib/hook-scripts/check-mime-type.pl?rev=1911931=1911930=1911931=diff == --- subversion/trunk/contrib/hook-scripts/check-mime-type.pl (original) +++ subversion/trunk/contrib/hook-scripts/check-mime-type.pl Sat Aug 26 14:17:18 2023 @@ -1,28 +1,36 @@ #!/usr/bin/env perl # -# commit-mime-type-check.pl: check that every added file has the -# svn:mime-type property set and every added file with a mime-type -# matching text/* also has svn:eol-style set. If any file fails this -# test the user is sent a verbose error message suggesting solutions and -# the commit is aborted. +# check-mime-type.pl: check that every added or property-modified file +# has the svn:mime-type property set and every added or property-modified +# file with a mime-type matching text/* also has svn:eol-style set. +# If any file fails this test the user is sent a verbose error message +# suggesting solutions and the commit is aborted. # -# Usage: commit-mime-type-check.pl REPOS TXN-NAME +# Usage: check-mime-type.pl REPOS TXN-NAME # -# Most of commit-mime-type-check.pl was taken from +# Most of check-mime-type.pl was taken from # commit-access-control.pl, Revision 9986, 2004-06-14 16:29:22 -0400. # -# Copyright (c) 2000-2004 CollabNet. All rights reserved. +# Copyright (c) 2000-2009 CollabNet. All rights reserved. +# Copyright (c) 2010-2020 Apache Software Foundation (ASF). +# +#Licensed to the Apache Software Foundation (ASF) under one +#or more contributor license agreements. See the NOTICE file +#distributed with this work for additional information +#regarding copyright ownership. The ASF licenses this file +#to you under the Apache License, Version 2.0 (the +#"License"); you may not use this file except in compliance +#with the License. You may obtain a copy of the License at # -# This software is licensed as described in the file COPYING, which -# you should have received as part of this distribution. The terms -# are also available at http://subversion.tigris.org/license.html. -# If newer versions of this license are posted there, you may use a -# newer version instead, at your option. +# http://www.apache.org/licenses/LICENSE-2.0 # -# This software consists of voluntary contributions made by many -# individuals. For exact contribution history, see the revision -# history and logs, available at http://subversion.tigris.org/. +#Unless required by applicable law or agreed to in writing, +#software distributed under the License is distributed on an +#"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +#KIND, either express or implied. See the License for the +#specific language governing permissions and limitations +#under the License. # # Turn on warnings the best way depending on the Perl version. @@ -40,6 +48,12 @@ use Carp; ## # Configuration section. +# Toggle: Check files of mime-type text/* for svn:eol-style property. +my $check_text_eol = 1; + +# Toggle: Check property-modified files too. +my $check_prop_modified_files = 0; + # Svnlook path. my $svnlook = "/usr/bin/svnlook"; @@ -100,19 +114,28 @@ my $tmp_dir = '/tmp'; chdir($tmp_dir) or die "$0: cannot chdir `$tmp_dir': $!\n"; -# Figure out what files have added using svnlook. -my @files_added; +# Figure out what files have been added/property-modified using svnlook. +my $regex_files_to_check; +if ($che
svn commit: r1911929 - /subversion/branches/1.14.x/STATUS
Author: dsahlberg Date: Sat Aug 26 13:18:44 2023 New Revision: 1911929 URL: http://svn.apache.org/viewvc?rev=1911929=rev Log: * branches/1.14.x/STATUS: Add my +0 from code review to r1907124. Since it only affects tests, approved with two +1 votes from stsp and rhuijben (and +0 from hartmannathan and myself). Modified: subversion/branches/1.14.x/STATUS Modified: subversion/branches/1.14.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1911929=1911928=1911929=diff == --- subversion/branches/1.14.x/STATUS (original) +++ subversion/branches/1.14.x/STATUS Sat Aug 26 13:18:44 2023 @@ -22,14 +22,6 @@ Candidate changes: votes: +1: rhuijben - * r1907124 - svntest/main.py: Remove wrong comma that broke tests with --enable-sasl - Justification: - Syntax error. - Votes: - +1: stsp, rhuijben - +0: hartmannathan (haven't tested yet; intend to upgrade to +1 soon) - * r1908926 libsvn_client: Pass redirected URL for file externals. Justification: @@ -42,3 +34,12 @@ Veto-blocked changes: Approved changes: = + + * r1907124 + svntest/main.py: Remove wrong comma that broke tests with --enable-sasl + Justification: + Syntax error. + Votes: + +1: stsp, rhuijben + +0: hartmannathan (haven't tested yet; intend to upgrade to +1 soon) + +0: dsahlberg (reviewed, not tested)
svn commit: r1911928 - /subversion/trunk/tools/dist/README.backport
Author: dsahlberg Date: Sat Aug 26 10:07:44 2023 New Revision: 1911928 URL: http://svn.apache.org/viewvc?rev=1911928=rev Log: tools/dist/README.backport * (backport.pl): Update notes on usage of this script, the -1.9.x job is long gone, remove the version number to avoid updates in the future Modified: subversion/trunk/tools/dist/README.backport Modified: subversion/trunk/tools/dist/README.backport URL: http://svn.apache.org/viewvc/subversion/trunk/tools/dist/README.backport?rev=1911928=1911927=1911928=diff == --- subversion/trunk/tools/dist/README.backport (original) +++ subversion/trunk/tools/dist/README.backport Sat Aug 26 10:07:44 2023 @@ -18,9 +18,9 @@ F4. Adding new entries to STATUS. The scripts are: backport.pl: -oldest script, implements [F1], [F2], and [F3]. As of Feb 2018, used in -production by svn-role (running on svn-qavm) and by svn-backport-conflicts-1.9.x -(a buildbot job). +oldest script, implements [F1], [F2], and [F3]. As of Aug 2023, used in +production by svn-role (running on svn-qavm) and by the buildbot jobs +svn-backport-conflicts-* (see https://ci2.apache.org/). nominate.pl: Symlink to backport.pl. Implements [F4]. (The script inspects its argv[0].)
svn commit: r1911830 - /subversion/branches/1.14.x/STATUS
Author: dsahlberg Date: Mon Aug 21 16:49:00 2023 New Revision: 1911830 URL: http://svn.apache.org/viewvc?rev=1911830=rev Log: * branches/1.14.x/STATUS: Add ending newline to see if it resolves backport jobs not succeeding Modified: subversion/branches/1.14.x/STATUS Modified: subversion/branches/1.14.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1911830=1911829=1911830=diff == --- subversion/branches/1.14.x/STATUS (original) +++ subversion/branches/1.14.x/STATUS Mon Aug 21 16:49:00 2023 @@ -48,3 +48,4 @@ Approved changes: Bug fix. Code to parse forward merges did not work as intended. Votes: +1: hartmannathan, stsp, dsahlberg +
svn commit: r1911713 - in /subversion/site/publish: ./ docs/community-guide/releasing.part.html
Author: dsahlberg Date: Wed Aug 16 06:07:27 2023 New Revision: 1911713 URL: http://svn.apache.org/viewvc?rev=1911713=rev Log: In site/publish: Merge 1911705-1911709 from site/staging * docs/community-guide/releasing.part.html (#releasing, #release-compat, #release-stabilization-how-to-edit): Fix typos Modified: subversion/site/publish/ (props changed) subversion/site/publish/docs/community-guide/releasing.part.html Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1911705-1911709 Modified: subversion/site/publish/docs/community-guide/releasing.part.html URL: http://svn.apache.org/viewvc/subversion/site/publish/docs/community-guide/releasing.part.html?rev=1911713=1911712=1911713=diff == --- subversion/site/publish/docs/community-guide/releasing.part.html (original) +++ subversion/site/publish/docs/community-guide/releasing.part.html Wed Aug 16 06:07:27 2023 @@ -14,7 +14,7 @@ order of specificity: created?" and "What should be the content of a tarball?" What steps to take when it is time to create a release. This section addresses the question of "How do I manage a release?" -How to constructing a set of release tarballs. This section discusses +How to construct a set of release tarballs. This section discusses the steps required to go from source code in the repository to a set of distributable .tar.gz or .zip files with the desired content. @@ -228,7 +228,7 @@ client/server interoperability, and make path between MAJOR.MINOR Subversion releases. Compatibility can span a number of axes: everything from APIs and ABIs to -command line output formats. We try to balance to need to modify the existing +command line output formats. We try to balance the need to modify the existing architecture to support new features, while still supporting current users to the greatest extent possible. The general idea is: @@ -251,7 +251,7 @@ to the greatest extent possible. The ge (Occasionally, bugs are found which require the behavior of old APIs to be modified slightly. This typically only manifests itself in - various corner cases and other uncommon area. These changes are + various corner cases and other uncommon areas. These changes are documented as https://svn.apache.org/repos/asf/subversion/trunk/notes/api-errata/;>API errata for each MAJOR.MINOR release.) @@ -756,8 +756,8 @@ voting, are always kept on the main rele title="Link to this section"> -When adding revisions to a nominations that others have already voted on, -annotated their entries with "(rX only)" to clarify what parts they have and +When adding revisions to a nomination that others have already voted on, +annotate their entries with "(rX only)" to clarify what parts they have and haven't voted on, like this:
svn propchange: r1911590 - svn:log
Author: dsahlberg Revision: 1911590 Modified property: svn:log Modified: svn:log at Thu Aug 10 12:34:03 2023 -- --- svn:log (original) +++ svn:log Thu Aug 10 12:34:03 2023 @@ -1,4 +1,4 @@ -Github pull request #24 +This fixes #24 in Github * subversion/tests/cmdline/svntest/main.py (class TestRunner): Fix spelling in docstring (introduced in r859313)
svn commit: r1911590 - /subversion/trunk/subversion/tests/cmdline/svntest/main.py
Author: dsahlberg Date: Thu Aug 10 12:04:39 2023 New Revision: 1911590 URL: http://svn.apache.org/viewvc?rev=1911590=rev Log: Github pull request #24 * subversion/tests/cmdline/svntest/main.py (class TestRunner): Fix spelling in docstring (introduced in r859313) Patch by: wangqi123a Modified: subversion/trunk/subversion/tests/cmdline/svntest/main.py Modified: subversion/trunk/subversion/tests/cmdline/svntest/main.py URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/svntest/main.py?rev=1911590=1911589=1911590=diff == --- subversion/trunk/subversion/tests/cmdline/svntest/main.py (original) +++ subversion/trunk/subversion/tests/cmdline/svntest/main.py Thu Aug 10 12:04:39 2023 @@ -1877,7 +1877,7 @@ class TestSpawningThread(threading.Threa class TestRunner: """Encapsulate a single test case (predicate), including logic for - runing the test and test list output.""" + running the test and test list output.""" def __init__(self, func, index): self.pred = svntest.testcase.create_test_case(func)
svn commit: r1911315 - /subversion/branches/1.14.x/STATUS
Author: dsahlberg Date: Thu Jul 27 12:55:36 2023 New Revision: 1911315 URL: http://svn.apache.org/viewvc?rev=1911315=rev Log: * STATUS Vote for r1906502 (approving) Modified: subversion/branches/1.14.x/STATUS Modified: subversion/branches/1.14.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1911315=1911314=1911315=diff == --- subversion/branches/1.14.x/STATUS (original) +++ subversion/branches/1.14.x/STATUS Thu Jul 27 12:55:36 2023 @@ -22,13 +22,6 @@ Candidate changes: votes: +1: rhuijben - * r1906502 - libsvn_diff: Fix missing pointer dereference in svn:mergeinfo diff parser - Justification: - Bug fix. Code to parse forward merges did not work as intended. - Votes: - +1: hartmannathan, stsp - * r1907124 svntest/main.py: Remove wrong comma that broke tests with --enable-sasl Justification: @@ -49,3 +42,9 @@ Veto-blocked changes: Approved changes: = + * r1906502 + libsvn_diff: Fix missing pointer dereference in svn:mergeinfo diff parser + Justification: + Bug fix. Code to parse forward merges did not work as intended. + Votes: + +1: hartmannathan, stsp, dsahlberg
svn commit: r1911284 - /subversion/branches/1.14.x/STATUS
Author: dsahlberg Date: Wed Jul 26 07:18:36 2023 New Revision: 1911284 URL: http://svn.apache.org/viewvc?rev=1911284=rev Log: * STATUS: Vote for r1911278, approving (only affects documentation) Modified: subversion/branches/1.14.x/STATUS Modified: subversion/branches/1.14.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/STATUS?rev=1911284=1911283=1911284=diff == --- subversion/branches/1.14.x/STATUS (original) +++ subversion/branches/1.14.x/STATUS Wed Jul 26 07:18:36 2023 @@ -43,15 +43,15 @@ Candidate changes: Votes: +1: dsahlberg - * r1911278 - INSTALL: Improve APR build notes, especially regarding APR 1.7.3 on Windows - Justification: - SVN is unusable with APR 1.7.3 on Windows. - Votes: - +1: hartmannathan - Veto-blocked changes: = Approved changes: = + + * r1911278 + INSTALL: Improve APR build notes, especially regarding APR 1.7.3 on Windows + Justification: + SVN is unusable with APR 1.7.3 on Windows. + Votes: + +1: hartmannathan, dsahlberg
svn commit: r1911062 - /subversion/trunk/subversion/tests/cmdline/copy_tests.py
Author: dsahlberg Date: Mon Jul 17 11:58:58 2023 New Revision: 1911062 URL: http://svn.apache.org/viewvc?rev=1911062=rev Log: Cleanup from r1909127 * tests/cmdline/copy_tests.py (url_move_parent_into_child): Remove unneccessary print() Modified: subversion/trunk/subversion/tests/cmdline/copy_tests.py Modified: subversion/trunk/subversion/tests/cmdline/copy_tests.py URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/copy_tests.py?rev=1911062=1911061=1911062=diff == --- subversion/trunk/subversion/tests/cmdline/copy_tests.py (original) +++ subversion/trunk/subversion/tests/cmdline/copy_tests.py Mon Jul 17 11:58:58 2023 @@ -1261,8 +1261,6 @@ def url_move_parent_into_child(sbox): B_url = sbox.repo_url + "/A/B" F_url = sbox.repo_url + "/A/B/F" - print(B_url) - print(F_url) expected_error = "svn: E27: Cannot move path '.*%s' into its own " \ "child '.*%s'" % (re.escape(B_url),
svn commit: r1911011 - in /subversion/site/publish: ./ blog/index.html
Author: dsahlberg Date: Fri Jul 14 14:54:02 2023 New Revision: 1911011 URL: http://svn.apache.org/viewvc?rev=1911011=rev Log: In site/publish: Merge r1911010 from staging Follow-up to 1911008/1911009 * blog/index.html: (#blog-20070327): Fix incorrect headline Modified: subversion/site/publish/ (props changed) subversion/site/publish/blog/index.html Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1911010 Modified: subversion/site/publish/blog/index.html URL: http://svn.apache.org/viewvc/subversion/site/publish/blog/index.html?rev=1911011=1911010=1911011=diff == --- subversion/site/publish/blog/index.html (original) +++ subversion/site/publish/blog/index.html Fri Jul 14 14:54:02 2023 @@ -133,7 +133,7 @@ -2007-06-13 Merge auditing +2007-03-27 Authz and anon authn agony
svn commit: r1911010 - /subversion/site/staging/blog/index.html
Author: dsahlberg Date: Fri Jul 14 14:53:19 2023 New Revision: 1911010 URL: http://svn.apache.org/viewvc?rev=1911010=rev Log: In site/staging: Follow-up to 1911008 * blog/index.html: (#blog-20070327): Fix incorrect headline Modified: subversion/site/staging/blog/index.html Modified: subversion/site/staging/blog/index.html URL: http://svn.apache.org/viewvc/subversion/site/staging/blog/index.html?rev=1911010=1911009=1911010=diff == --- subversion/site/staging/blog/index.html (original) +++ subversion/site/staging/blog/index.html Fri Jul 14 14:53:19 2023 @@ -133,7 +133,7 @@ -2007-06-13 Merge auditing +2007-03-27 Authz and anon authn agony
svn commit: r1911009 - in /subversion/site/publish: ./ blog/2007-03-27-authz-and-anon-authn-agony.html blog/index.html
Author: dsahlberg Date: Fri Jul 14 14:51:22 2023 New Revision: 1911009 URL: http://svn.apache.org/viewvc?rev=1911009=rev Log: In site/publish: Merge r1911008 from site/staging: Copy another blog article from blogs.collab.net following the previously given permission. * blog/2007-03-27-authz-and-anon-authn-agony.html: New file * blog/index.html (#blog-20070327): New section linking to the file above Several sections: Fix end-of-div comment pointing to the wrong #anchor Added: subversion/site/publish/blog/2007-03-27-authz-and-anon-authn-agony.html - copied unchanged from r1911008, subversion/site/staging/blog/2007-03-27-authz-and-anon-authn-agony.html Modified: subversion/site/publish/ (props changed) subversion/site/publish/blog/index.html Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1911008 Modified: subversion/site/publish/blog/index.html URL: http://svn.apache.org/viewvc/subversion/site/publish/blog/index.html?rev=1911009=1911008=1911009=diff == --- subversion/site/publish/blog/index.html (original) +++ subversion/site/publish/blog/index.html Fri Jul 14 14:51:22 2023 @@ -130,7 +130,20 @@ svn:mergeinfo. Continue reading - + + + +2007-06-13 Merge auditing + + + +C. Michael Pilato reveals a trick to expose a repository root to anonymous + users while restricting access to a specific subdirectory to authenticated + users. Continue reading + + 2006-09-10 Enhancing Subversion @@ -142,7 +155,7 @@ a Subversion installation. Continue reading - +
svn commit: r1911008 - in /subversion/site/staging/blog: 2007-03-27-authz-and-anon-authn-agony.html index.html
Author: dsahlberg Date: Fri Jul 14 14:49:23 2023 New Revision: 1911008 URL: http://svn.apache.org/viewvc?rev=1911008=rev Log: In site/staging: Copy another blog article from blogs.collab.net following the previously given permission. * blog/2007-03-27-authz-and-anon-authn-agony.html: New file * blog/index.html (#blog-20070327): New section linking to the file above Several sections: Fix end-of-div comment pointing to the wrong #anchor Added: subversion/site/staging/blog/2007-03-27-authz-and-anon-authn-agony.html (with props) Modified: subversion/site/staging/blog/index.html Added: subversion/site/staging/blog/2007-03-27-authz-and-anon-authn-agony.html URL: http://svn.apache.org/viewvc/subversion/site/staging/blog/2007-03-27-authz-and-anon-authn-agony.html?rev=1911008=auto == --- subversion/site/staging/blog/2007-03-27-authz-and-anon-authn-agony.html (added) +++ subversion/site/staging/blog/2007-03-27-authz-and-anon-authn-agony.html Fri Jul 14 14:49:23 2023 @@ -0,0 +1,74 @@ + + + + + + +Authz and Anon Authn Agony + + + + + + + + + + + + + + + + +Authz and Anon Authn Agony + +This article is mirrored with permission from the original location http://blogs.collab.net/subversion/authz_and_anon_. Inactive links have been removed or updated. + +Author: C. Michael Pilato +Posted: 2007-03-22 + +A recent first-time attempt at using Subversions path-based authorization module turned out to be less trivial than Id planned because I was trying to use it with a repository that allowed anonymous read access. Things went well at first â I did some copying and pasting of sample httpd.conf directives and authz file contents from http://www.svnbook.com/;>Version Control with Subversion, tweaking as necessary to suit my needs. In a short time, I had what I thought was the perfect setup. I was wrong. +Say, like me, you wish to configure a repository such that it permits anonymous reads to most of it, authenticated reads to the rest of it, and authenticated writes to the whole thing. You already have an Apache htpasswd file with your writers usernames and password hashes, and youve configured Apache to use that htpasswd file for authentication, and an authz file for authorization. You then make the obvious additions to your authz file: + +[groups] +writers = someuser1, someuser2, ⦠+ +[repository:/] +* = r +@writers = rw + +[repository:/trunk/private-area] +* = +@writers = rw + +Theres a group with your writers usernames. Theres a rule which grants anonymous read to the world, and write access to just the writers. And theres an override rule which removes read access from unauthenticated users in the repositorys private area. Looks great. +Then you start testing. +Upon checking out your repositorys /trunk directory, anonymous users get what youd expect â the tree, minus the /trunk/private-area directory. +But what about your authenticated would-be writers? Ah, therein lies the rub! There are no authenticated users. Since anonymous users can checkout the tree, Apache never bothers to query you for authentication credentials. And you cant force Subversion to transmit authentication credentials when Apache hasnt asked for them. +So whats the workaround? +First, you could disable anonymous access altogether, and force non-writers to share a username like anonymous and a publicized password. In your authz rules, the user anonymous would have only read permission, and only on the public portion of the repository. This works fine, but at some discomfort to non-writers. They now have to supply a password which, though not secret, might still be non-obvious and/or unknown to them. +Secondly, you could just leave things the way they are, and force writers to checkout just the private area of the repository separately. They wont have the luxury of both the public and private areas being connected inside a single working copy, but that might be okay. +Thirdly, you could keep the private stuff in its own repository. For writers, this is very similar to the second workaround. But your writers wont be able to make a private thing public without breaking the history across repositories. +Finally, you could setup a second Location block in your httpd.conf file which points to the same repository but with a slightly different URL (for example, with -no-anon appended to it). In this block, disallow anonymous access. Then add a matching redundant entry in your authz file, too: + +[repository-no-anon:/] +* = +@writers = rw + +Now, anonymous non-writers can checkout from the original repository URL without prompting, and wont see the private area. Non-anonymous writers can checkout from the alternate repository URL with prompting, and will see the private area. (Thanks to Max Bowsher for this great hybrid workaround idea.) + + + + +About the author + + +C. Michael Pilato is a core Subvers
svn commit: r1910908 - in /subversion/site/publish: ./ docs/community-guide/releasing.part.html faq.html
Author: dsahlberg Date: Mon Jul 10 07:32:51 2023 New Revision: 1910908 URL: http://svn.apache.org/viewvc?rev=1910908=rev Log: In site/publish: Merge 1902723,1910824-1910900 from site/staging * docs/community-guide/releasing.part.html (#before-release-pristine-tools): Remove one release process variation that doesn't work anymore * faq.html (#reverseproxy): New section (many different sections): Removed or updated dead links Modified: subversion/site/publish/ (props changed) subversion/site/publish/docs/community-guide/releasing.part.html subversion/site/publish/faq.html Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1902723,1910824-1910900 Modified: subversion/site/publish/docs/community-guide/releasing.part.html URL: http://svn.apache.org/viewvc/subversion/site/publish/docs/community-guide/releasing.part.html?rev=1910908=1910907=1910908=diff == --- subversion/site/publish/docs/community-guide/releasing.part.html (original) +++ subversion/site/publish/docs/community-guide/releasing.part.html Mon Jul 10 07:32:51 2023 @@ -827,8 +827,7 @@ time pass. the release. The details of the rolling process are automated by the https://svn.apache.org/repos/asf/subversion/trunk/tools/dist/release.py;>release.py helper script. To run this script, you'll need a Subversion trunk working -copy (or a shallow trunk working copy containing the tools/dist and -build/generator directories). Run release.py -h to get a +copy. Run release.py -h to get a list of available subcommands. Before you can actually roll the archives, you need to Modified: subversion/site/publish/faq.html URL: http://svn.apache.org/viewvc/subversion/site/publish/faq.html?rev=1910908=1910907=1910908=diff == --- subversion/site/publish/faq.html (original) +++ subversion/site/publish/faq.html Mon Jul 10 07:32:51 2023 @@ -77,6 +77,7 @@ For older questions, see How do I convert an existing CVS repository into a Subversion repository? What if I'm behind a proxy? +I need to put Subversion behind a reverse proxy My admins don't want me to have a HTTP server for Subversion. What can I do if I still want remote usage? How do I manage several different projects @@ -938,6 +939,142 @@ running svn --version. + +I need to put Subversion behind a reverse proxy + + + +A reverse proxy can be used if the Subversion server is not directly +connected to the internet. It will forward HTTP/HTTPS traffic from a public +facing server to the Subversion server, potentially removing HTTPS +encryption. It can also be useful if several different HTTP servers must +be served on the same port. + +Subversion uses a subset of the WebDAV/DeltaV protocol; see this FAQ item for the details. +As far as the proxy server is concerned, Subversion uses plain WebDAV +protocol. For the svn copy and svn move commands, an extra +HTTP_DESTINATION header is used; this must be rewritten separately. + +Detailed instructions are provided for a few different proxy servers. It +should be fairly easy to copy the ideas from these examples. + +Detailed instructions for Apache HTTPD + +The information below is based on an article written by Konrad Rosenbaum, +originally found on http://silmor.de/proxysvn.php; +>http://silmor.de/proxysvn.php. Copied with permission. + +The proxy side of Apache requires mod_proxy to work. In many Linux +distributions there are ready-made configuration files that can be activated, +otherwise insert this configuration in httpd.conf: + + +#load the module +LoadModule proxy_module modules/mod_proxy.so +#per default disallow all requests (for security) +ProxyRequests Off +Proxy * + Order deny,allow + Deny from all +/Proxy +ProxyVia On + + +In the VirtualHost directive for the proxying virtual host, configure +requests for your subversion directory (we'll assume it is called svn) to be +relayed to the real subversion server: + + +ProxyPass /svn/ http://realsvnserver/svn/ +Location /svn/ +ProxyPassReverse /svn/ http://realsvnserver/svn/ +Limit OPTIONS PROPFIND GET REPORT MKACTIVITY PROPPATCH PUT CHECKOUT + MKCOL MOVE COPY DELETE LOCK UNLOCK MERGE + Order Deny,Allow + Allow from all + Satisfy Any +/Limit + +RewriteCond %{HTTP:Destination} .+/(svn/.*$) +RewriteRule ^/svn/.* - [E=MyDestination:http://realsvnserver/%1,PT] +RequestHeader set Destination %{MyDestination}e env=MyDestination +/Location + + +The ProxyPass directive tells Apache to redirect requests below /svn to +the subversion-Apache (http://realsvnserver/svn). The ProxyPassReverse +directive tells it to alter the request headers (Location, Content-Location, +and URI) to match the target server depending o
svn propchange: r1910881 - svn:log
Author: dsahlberg Revision: 1910881 Modified property: svn:log Modified: svn:log at Sun Jul 9 19:33:39 2023 -- --- svn:log (original) +++ svn:log Sun Jul 9 19:33:39 2023 @@ -4,7 +4,5 @@ In site/staging: (#reverseproxy): Copy configuration and instructions from http://silmor.de/proxysvn.php -[There should be an email to private@ with the permission to copy, the author -of that e-mail is the same person found on the Impressum page of silmor.de. -However the e-mail has not yet landed in lists.a.o. I'm committing this ahead -of time and intend to update the log entry later on] +Copied with permission, see private@: +https://lists.apache.org/thread/n0mcx2mwjg76q4spyxg60dh14yjt48kr
svn commit: r1910882 - /subversion/site/staging/faq.html
Author: dsahlberg Date: Sat Jul 8 19:12:34 2023 New Revision: 1910882 URL: http://svn.apache.org/viewvc?rev=1910882=rev Log: In site/staging: Follow-up to r1910881 * faq.html (#reverseproxy): Fix faulty html coding. Modified: subversion/site/staging/faq.html Modified: subversion/site/staging/faq.html URL: http://svn.apache.org/viewvc/subversion/site/staging/faq.html?rev=1910882=1910881=1910882=diff == --- subversion/site/staging/faq.html (original) +++ subversion/site/staging/faq.html Sat Jul 8 19:12:34 2023 @@ -1003,7 +1003,7 @@ ProxyPass /svn/ http://realsvnserver/svn /Location -The ProxyPass directive tells Apache to redirect requests below /svn to +The ProxyPass directive tells Apache to redirect requests below /svn to the subversion-Apache (http://realsvnserver/svn). The ProxyPassReverse directive tells it to alter the request headers (Location, Content-Location, and URI) to match the target server - depending on your version of Apache and
svn commit: r1910881 - /subversion/site/staging/faq.html
Author: dsahlberg Date: Sat Jul 8 19:10:45 2023 New Revision: 1910881 URL: http://svn.apache.org/viewvc?rev=1910881=rev Log: In site/staging: * faq.html (#reverseproxy): Copy configuration and instructions from http://silmor.de/proxysvn.php [There should be an email to private@ with the permission to copy, the author of that e-mail is the same person found on the Impressum page of silmor.de. However the e-mail has not yet landed in lists.a.o. I'm committing this ahead of time and intend to update the log entry later on] Modified: subversion/site/staging/faq.html Modified: subversion/site/staging/faq.html URL: http://svn.apache.org/viewvc/subversion/site/staging/faq.html?rev=1910881=1910880=1910881=diff == --- subversion/site/staging/faq.html (original) +++ subversion/site/staging/faq.html Sat Jul 8 19:10:45 2023 @@ -962,8 +962,57 @@ should be fairly easy to copy the ideas Detailed instructions for Apache HTTPD -A very good walkthrough can be found at -http://silmor.de/proxysvn.php;>http://silmor.de/proxysvn.php. +The information below is based on an article written by Konrad Rosenbaum, +originally found on http://silmor.de/proxysvn.php; +>http://silmor.de/proxysvn.php. Copied with permission. + +The proxy side of Apache requires mod_proxy to work. In many Linux +distributions there are ready-made configuration files that can be activated, +otherwise insert this configuration in httpd.conf: + + +#load the module +LoadModule proxy_module modules/mod_proxy.so +#per default disallow all requests (for security) +ProxyRequests Off +Proxy * + Order deny,allow + Deny from all +/Proxy +ProxyVia On + + +In the VirtualHost directive for the proxying virtual host, configure +requests for your subversion directory (we'll assume it is called svn) to be +relayed to the real subversion server: + + +ProxyPass /svn/ http://realsvnserver/svn/ +Location /svn/ +ProxyPassReverse /svn/ http://realsvnserver/svn/ +Limit OPTIONS PROPFIND GET REPORT MKACTIVITY PROPPATCH PUT CHECKOUT + MKCOL MOVE COPY DELETE LOCK UNLOCK MERGE + Order Deny,Allow + Allow from all + Satisfy Any +/Limit + +RewriteCond %{HTTP:Destination} .+/(svn/.*$) +RewriteRule ^/svn/.* - [E=MyDestination:http://realsvnserver/%1,PT] +RequestHeader set Destination %{MyDestination}e env=MyDestination +/Location + + +The ProxyPass directive tells Apache to redirect requests below /svn to +the subversion-Apache (http://realsvnserver/svn). The ProxyPassReverse +directive tells it to alter the request headers (Location, Content-Location, +and URI) to match the target server - depending on your version of Apache and +its configuration you may need to leave out either /svn/ or +http://realsvnserver/svn/. If possible the same path should be used on both +servers (otherwise DAV might make trouble). The Limit directive tells Apache +to let all DAV requests from all clients (Allow) through and let the real +subversion server handle authentication (Satisfy). The Rewrite rules +update the HTTP_DESTINATION header to the corrent server/protocol. Detailed instructions for Microsoft IIS
svn commit: r1910878 - /subversion/site/staging/faq.html
Author: dsahlberg Date: Sat Jul 8 15:41:53 2023 New Revision: 1910878 URL: http://svn.apache.org/viewvc?rev=1910878=rev Log: In site/staging: Follow-up to r1910877. * faq.html (#reverseproxy): Fix some invalid html Modified: subversion/site/staging/faq.html Modified: subversion/site/staging/faq.html URL: http://svn.apache.org/viewvc/subversion/site/staging/faq.html?rev=1910878=1910877=1910878=diff == --- subversion/site/staging/faq.html (original) +++ subversion/site/staging/faq.html Sat Jul 8 15:41:53 2023 @@ -989,39 +989,39 @@ The example below can be copied into web server is running on port 81 on the same computer as IIS. - - - - - - - - - -https://{HTTP_HOST}{REQUEST_URI}"/> - - - - - - - - http://{C:1}; /> - -http://127.0.0.1:81/{R:0}; logRewrittenUrl="true" /> - - - - -http://127.0.0.1:81/{R:0}; logRewrittenUrl="true" /> - - - - - - - - +system.webServer + rewrite + rules + clear / + rule name="ToHttps" stopProcessing="true" +match url="(.*)" / +conditions logicalGrouping="MatchAll" trackAllCaptures="false" + add input="{HTTPS}" pattern="^OFF$" / +/conditions +action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}"/; + /rule + rule name="ProxyWithDestination" enabled="true" patternSyntax="ECMAScript" stopProcessing="true" +match url="(.*)" / +conditions logicalGrouping="MatchAll" trackAllCaptures="false" + add input="{HTTP_DESTINATION}" pattern="https://(.*)"/ +/conditions +serverVariables + set name="HTTP_DESTINATION" value="http://{C:1}; / +/serverVariables +action type="Rewrite" url="http://127.0.0.1:81/{R:0}; logRewrittenUrl="true" / + /rule + rule name="ProxyRest" patternSyntax="ECMAScript" stopProcessing="true" +match url="(.*)" negate="false" / +conditions logicalGrouping="MatchAll" trackAllCaptures="false" / +action type="Rewrite" url="http://127.0.0.1:81/{R:0}; logRewrittenUrl="true" / + /rule + /rules + /rewrite + security + requestFiltering allowDoubleEscaping="true" / + /security +/system.webServer +
svn commit: r1910877 - /subversion/site/staging/faq.html
Author: dsahlberg Date: Sat Jul 8 15:32:30 2023 New Revision: 1910877 URL: http://svn.apache.org/viewvc?rev=1910877=rev Log: In site/staging: * faq.html (#reverseproxy): Add a new section on how to put Subversion behind a reverse proxy. See https://lists.apache.org/thread/j2c0kp4rmsw4rf9y4hw2zntxvd0hy051 The configuration example is my own work. Modified: subversion/site/staging/faq.html Modified: subversion/site/staging/faq.html URL: http://svn.apache.org/viewvc/subversion/site/staging/faq.html?rev=1910877=1910876=1910877=diff == --- subversion/site/staging/faq.html (original) +++ subversion/site/staging/faq.html Sat Jul 8 15:32:30 2023 @@ -77,6 +77,7 @@ For older questions, see How do I convert an existing CVS repository into a Subversion repository? What if I'm behind a proxy? +I need to put Subversion behind a reverse proxy My admins don't want me to have a HTTP server for Subversion. What can I do if I still want remote usage? How do I manage several different projects @@ -937,6 +938,93 @@ running svn --version. + + +I need to put Subversion behind a reverse proxy + + + +A reverse proxy can be used if the Subversion server is not directly +connected to the internet. It will forward HTTP/HTTPS traffic from a public +facing server to the Subversion server, potentially removing HTTPS +encryption. It can also be useful if several different HTTP servers must +to be served on the same port. + +Subversion use a subset of the WebDAV/DeltaV protocol, see this FAQ item for the details. A custom +As far as the proxy server is concerned, Subversion use plain WebDAV +protocol. For the svn copy and svn move commands, an extra +HTTP_DESTINATION header is used, this must be rewritten separately. + +Detailed instructions are provided for a few different proxy servers, it +should be fairly easy to copy the ideas from these examples. + +Detailed instructions for Apache HTTPD + +A very good walkthrough can be found at +http://silmor.de/proxysvn.php;>http://silmor.de/proxysvn.php. + +Detailed instructions for Microsoft IIS + +First download and install the URL Rewrite module from https://www.iis.net/downloads/microsoft/url-rewrite;>iis.net. The +example below has been tested with IIS 10 and URL Rewrite 2.1. +Next configure URL Rewrite to allow the HTTP_DESTINATION server variable: In +IIS Manager under URL Rewrite, in the right hand pane click View Server +Variables and add HTTP_DESTINATION. +Finally create a few rewrite rules: + +"ToHttps", if you would like to ensure all Subversion traffic is +encrypted, this send an HTTP redirect to the client if the request is sent +unencrypted. +"ProxyWithDestination", capturing all requests with the HTTP_DESTINATION +server variable (ie. all svn copy and svn move requests). +The HTTP_DESTINATION header is rewritten and the traffic is forwarded to the +Subversion server. + +"ProxyRest", forwarding all other traffic to the Subversion server. + +The example below can be copied into web.config. It assumes the Subversion +server is running on port 81 on the same computer as IIS. + + + + + + + + + + + +https://{HTTP_HOST}{REQUEST_URI}"/> + + + + + + + + http://{C:1}; /> + +http://127.0.0.1:81/{R:0}; logRewrittenUrl="true" /> + + + + +http://127.0.0.1:81/{R:0}; logRewrittenUrl="true" /> + + + + + + + + + + + My admins don't want me to have a HTTP server for
svn commit: r1910833 - /subversion/trunk/subversion/svn/svn.c
Author: dsahlberg Date: Thu Jul 6 20:47:18 2023 New Revision: 1910833 URL: http://svn.apache.org/viewvc?rev=1910833=rev Log: Follow-up to r1910826: Fix code errors inhibiting compile. * subversion/svn/svn.c: (svn_cl__options declaration): Last commit was lacking a few ) Modified: subversion/trunk/subversion/svn/svn.c Modified: subversion/trunk/subversion/svn/svn.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/svn.c?rev=1910833=1910832=1910833=diff == --- subversion/trunk/subversion/svn/svn.c (original) +++ subversion/trunk/subversion/svn/svn.c Thu Jul 6 20:47:18 2023 @@ -444,7 +444,7 @@ svn_cl__cmd_table_main[] = "\n"), N_( " The selection of items to add may be influenced by the 'ignores' feature.\n" " Properties may be attached to the items as configured by the 'auto-props'\n" - " feature.\n", N_( + " feature.\n"), N_( " If PATH contains an @ character, an additional @ must be specified at the\n" " end of PATH to avoid interpreting the first @ as a peg revision indicator.\n" )}, @@ -520,6 +520,9 @@ svn_cl__cmd_table_main[] = "files.\n" "usage: 1. changelist CLNAME PATH[@]...\n" " 2. changelist --remove PATH[@]...\n" +), N_( + " If PATH contains an @ character, an additional @ must be specified at the\n" + " end of PATH to avoid interpreting the first @ as a peg revision indicator.\n" )}, { 'q', 'R', opt_depth, opt_remove, opt_targets, opt_changelist} }, @@ -542,7 +545,7 @@ svn_cl__cmd_table_main[] = " being the basename of the URL.\n" "\n"), N_( " If PATH contains an @ character, an additional @ must be specified at the\n" - " end of PATH to avoid interpreting the first @ as a peg revision indicator.\n", N_( + " end of PATH to avoid interpreting the first @ as a peg revision indicator.\n"), N_( " If --force is used, unversioned obstructing paths in the working\n" " copy destination do not automatically cause the check out to fail.\n" " If the obstructing path is the same type (file or directory) as the\n" @@ -587,7 +590,7 @@ svn_cl__cmd_table_main[] = "\n"), N_( " 3. If the --vacuum-pristines option is given, remove pristine copies of\n" "files which are stored inside the .svn directory and which are no longer\n" - "referenced by any file in the working copy.\n", N_( + "referenced by any file in the working copy.\n"), N_( " If WCPATH contains an @ character, an additional @ must be specified at the\n" " end of WCPATH to avoid interpreting the first @ as a peg revision indicator.\n" )}, @@ -607,7 +610,7 @@ svn_cl__cmd_table_main[] = "\n"), N_( " If --include-externals is given, also commit file and directory\n" " externals reached by recursion. Do not commit externals with a\n" - " fixed revision.\n", N_( + " fixed revision.\n"), N_( " If PATH contains an @ character, an additional @ must be specified at the\n" " end of PATH to avoid interpreting the first @ as a peg revision indicator.\n" )}, @@ -629,7 +632,7 @@ svn_cl__cmd_table_main[] = " sources, DST must be an existing directory.\n" "\n"), N_( " If DST contains an @ character, an additional @ must be specified at the\n" - " end of DST to avoid interpreting the first @ as a peg revision indicator.\n", N_( + " end of DST to avoid interpreting the first @ as a peg revision indicator.\n"), N_( " WARNING: For compatibility with previous versions of Subversion,\n" " copies performed using two working copy paths (WC -> WC) will not\n" " contact the repository. As such, they may not, by default, be able\n" @@ -652,7 +655,7 @@ svn_cl__cmd_table_main[] = "not be removed unless the --force or --keep-local option is given.\n" "\n"), N_( " 2. Each item specified by a URL is deleted from the repository\n" - "via an immediate commit.\n", N_( + "via an immediate commit.\n"), N_( " If PATH or URL contains an @ character, an additional @ must be specified\n" " at the end of PATH to avoid interpreting the first @ as a peg revision\n" " indicator.\n" @@ -715,13 +718,13 @@ svn_cl__cmd_table_main[] = "\n"), N_( " 2. Exports a clean directory tree from the
svn commit: r1910826 - /subversion/trunk/subversion/svn/svn.c
Author: dsahlberg Date: Thu Jul 6 20:34:52 2023 New Revision: 1910826 URL: http://svn.apache.org/viewvc?rev=1910826=rev Log: First try to document the trailing-@ trick to avoid triggering the peg-revision parser when a path/target/url contains an @ character. * subversion/svn/svn.c: (svn_cl__options declaration): Add [@] and description where needed Discussed on mailing list: https://lists.apache.org/thread/nb8d62wgj0mhlsv39z7qjgvkvp41sslv Modified: subversion/trunk/subversion/svn/svn.c Modified: subversion/trunk/subversion/svn/svn.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/svn.c?rev=1910826=1910825=1910826=diff == --- subversion/trunk/subversion/svn/svn.c (original) +++ subversion/trunk/subversion/svn/svn.c Thu Jul 6 20:34:52 2023 @@ -424,7 +424,7 @@ svn_cl__cmd_table_main[] = { { "add", svn_cl__add, {0}, {N_( "Put new files and directories under version control.\n" - "usage: add PATH...\n" + "usage: add PATH[@]...\n" "\n"), N_( " Schedule unversioned PATHs for addition, so they will become versioned and\n" " be added to the repository in the next commit. Recurse into directories by\n" @@ -444,7 +444,9 @@ svn_cl__cmd_table_main[] = "\n"), N_( " The selection of items to add may be influenced by the 'ignores' feature.\n" " Properties may be attached to the items as configured by the 'auto-props'\n" - " feature.\n" + " feature.\n", N_( + " If PATH contains an @ character, an additional @ must be specified at the\n" + " end of PATH to avoid interpreting the first @ as a peg revision indicator.\n" )}, {opt_targets, 'N', opt_depth, 'q', opt_force, opt_no_ignore, opt_autoprops, opt_no_autoprops, opt_parents }, @@ -516,8 +518,8 @@ svn_cl__cmd_table_main[] = { "changelist", svn_cl__changelist, {"cl"}, {N_( "Associate (or dissociate) changelist CLNAME with the named\n" "files.\n" - "usage: 1. changelist CLNAME PATH...\n" - " 2. changelist --remove PATH...\n" + "usage: 1. changelist CLNAME PATH[@]...\n" + " 2. changelist --remove PATH[@]...\n" )}, { 'q', 'R', opt_depth, opt_remove, opt_targets, opt_changelist} }, @@ -539,6 +541,8 @@ svn_cl__cmd_table_main[] = " out into a sub-directory of PATH, with the name of the sub-directory\n" " being the basename of the URL.\n" "\n"), N_( + " If PATH contains an @ character, an additional @ must be specified at the\n" + " end of PATH to avoid interpreting the first @ as a peg revision indicator.\n", N_( " If --force is used, unversioned obstructing paths in the working\n" " copy destination do not automatically cause the check out to fail.\n" " If the obstructing path is the same type (file or directory) as the\n" @@ -560,10 +564,10 @@ svn_cl__cmd_table_main[] = { "cleanup", svn_cl__cleanup, {0}, {N_( "Either recover from an interrupted operation that left the working\n" "copy locked, or remove unwanted files.\n" - "usage: 1. cleanup [WCPATH...]\n" - " 2. cleanup --remove-unversioned [WCPATH...]\n" - " cleanup --remove-ignored [WCPATH...]\n" - " 3. cleanup --vacuum-pristines [WCPATH...]\n" + "usage: 1. cleanup [WCPATH[@]...]\n" + " 2. cleanup --remove-unversioned [WCPATH[@]...]\n" + " cleanup --remove-ignored [WCPATH[@]...]\n" + " 3. cleanup --vacuum-pristines [WCPATH[@]...]\n" "\n"), N_( " 1. When none of the options --remove-unversioned, --remove-ignored, and\n" "--vacuum-pristines is specified, remove all write locks (shown as 'L' by\n" @@ -583,7 +587,9 @@ svn_cl__cmd_table_main[] = "\n"), N_( " 3. If the --vacuum-pristines option is given, remove pristine copies of\n" "files which are stored inside the .svn directory and which are no longer\n" - "referenced by any file in the working copy.\n" + "referenced by any file in the working copy.\n", N_( + " If WCPATH contains an @ character, an additional @ must be specified at the\n" + " end of WCPATH to avoid interpreting the first @ as a peg revision indicator.\n" )}, { opt_remove_unversioned, opt_remove_ignored, opt_vacuum_pristines, opt_include_externals, 'q', opt_merge_cmd }, @@ -591,7 +597,7 @@ svn_cl__cmd
svn commit: r1910824 - /subversion/site/staging/faq.html
Author: dsahlberg Date: Thu Jul 6 19:59:51 2023 New Revision: 1910824 URL: http://svn.apache.org/viewvc?rev=1910824=rev Log: In site/staging: Remove or update outdated links * faq.html #ssh-auth-cache: mah.everybody.org is NXDOMAIN #vendor-branch: Link to the latest release of the book #vendor-branch: lookfirst.com is NXDOMAIN #bikeshed: Old link was 301, change to new location #cvssv3: Update links to current anchors in the target page Modified: subversion/site/staging/faq.html Modified: subversion/site/staging/faq.html URL: http://svn.apache.org/viewvc/subversion/site/staging/faq.html?rev=1910824=1910823=1910824=diff == --- subversion/site/staging/faq.html (original) +++ subversion/site/staging/faq.html Thu Jul 6 19:59:51 2023 @@ -2062,13 +2062,7 @@ OpenSSH keys and pageant Setting up ssh-agent is outside the scope of this document, but a https://www.google.com/search?hl=enlr=ie=UTF-8q=%22ssh-agent%22; ->Google search for "ssh-agent" will quickly get you answers. Or -if you're really impatient, try this one: - - - http://mah.everybody.org/docs/ssh; - >http://mah.everybody.org/docs/ssh - +>Google search for "ssh-agent" will quickly get you answers. @@ -2642,23 +2636,13 @@ divergent branch, while still incorporat upstream source. This is commonly called a vendor branch (the term long predates Subversion), and the techniques for maintaining one in Subversion are https://svnbook.red-bean.com/en/1.4/svn-book.html#svn.advanced.vendorbr; +href="https://svnbook.red-bean.com/en/1.7/svn-book.html#svn.advanced.vendorbr; >described here. If the vendor code is hosted in a remote Subversion repository, then you can use https://github.com/francois/piston;>Piston to manage your copy of the vendor's code. -As a last resort, if using svn_load_dirs.pl is taking too -much time or you're looking for the lazy solution, see also Jon -Stevens' step-by-step explanation at https://lookfirst.com/2007/11/subversion-vendor-branches-howto.html; ->Subversion Vendor Branches Howto. This solution does not make -use of the space saving features in the Subversion backend when you -copy new code over old code; in this solution, each import of a vendor -code gets an entire new copy and there is no space savings for -identical files. - @@ -4379,7 +4363,7 @@ to 1.9+ servers. title="Link to this section"> -See Poul-Henning Kamp's post to freebsd-hackers: https://www.freebsd.org/doc/en_US.ISO8859-1/books/faq/misc.html#BIKESHED-PAINTING;>https://www.freebsd.org/doc/en_US.ISO8859-1/books/faq/misc.html#BIKESHED-PAINTING. +See Poul-Henning Kamp's post to freebsd-hackers: https://docs.freebsd.org/en/books/faq/#bikeshed-painting;>https://docs.freebsd.org/en/books/faq/#bikeshed-painting. @@ -4471,12 +4455,12 @@ scoring lower and more risky vunerabilit calculated by determining the metrics of the vunerability and then calculating the score based on those metrics. If you want to understand how a score was determined you would need the vector and an understanding of the -https://www.first.org/cvss/specification-document#8-CVSS-v3-0-Equations; +https://www.first.org/cvss/specification-document#CVSS-v3-1-Equations; >formula as specified by the standard. The vector is an -https://www.first.org/cvss/specification-document#6-Vector-String; +https://www.first.org/cvss/specification-document#Vector-String; >abbreviated description of the metrics that apply to the vulnerability.
svn propchange: r1910481 - svn:log
Author: dsahlberg Revision: 1910481 Modified property: svn:log Modified: svn:log at Sun Jun 18 19:31:42 2023 -- --- svn:log (original) +++ svn:log Sun Jun 18 19:31:42 2023 @@ -1,6 +1,6 @@ Revert 1908545 since it broke tests on Windows. The original argument is still sound but it would have to be solved in another way. -* build.conf (wc-queries-test): Don't link SQLite wrapper. +* build.conf (wc-queries-test): Link SQLite wrapper. See dev@ https://lists.apache.org/thread/d527mjkfcb25nvor1wvn1kr4z5q8k8vg
svn propchange: r1908545 - svn:log
Author: dsahlberg Revision: 1908545 Modified property: svn:log Modified: svn:log at Sun Jun 18 19:29:41 2023 -- --- svn:log (original) +++ svn:log Sun Jun 18 19:29:41 2023 @@ -10,3 +10,5 @@ non-amalgamtion builds when only a dummy GCC's santizer detects ODR violations. * build.conf (wc-queries-test): Don't link SQLite wrapper. + +** reverted in r1910481 since it broke tests on Windows **
svn commit: r1910481 - /subversion/trunk/build.conf
Author: dsahlberg Date: Sun Jun 18 19:29:09 2023 New Revision: 1910481 URL: http://svn.apache.org/viewvc?rev=1910481=rev Log: Revert 1908545 since it broke tests on Windows. The original argument is still sound but it would have to be solved in another way. * build.conf (wc-queries-test): Don't link SQLite wrapper. See dev@ https://lists.apache.org/thread/d527mjkfcb25nvor1wvn1kr4z5q8k8vg Modified: subversion/trunk/build.conf Modified: subversion/trunk/build.conf URL: http://svn.apache.org/viewvc/subversion/trunk/build.conf?rev=1910481=1910480=1910481=diff == --- subversion/trunk/build.conf (original) +++ subversion/trunk/build.conf Sun Jun 18 19:29:09 2023 @@ -1337,7 +1337,7 @@ msvc-force-static = yes description = Test Sqlite query evaluation type = exe path = subversion/tests/libsvn_wc -sources = wc-queries-test.c +sources = wc-queries-test.c ../../libsvn_subr/sqlite3wrapper.c install = test libs = libsvn_test libsvn_wc libsvn_subr apriconv apr sqlite
svn commit: r1910264 - /subversion/trunk/subversion/svn/info-cmd.c
Author: dsahlberg Date: Tue Jun 6 18:36:28 2023 New Revision: 1910264 URL: http://svn.apache.org/viewvc?rev=1910264=rev Log: Print path using local style in svn info --show-item wc-root. * svn/info-cmd.c (print_info_item): As above Patch by: Denis Kovalchuk Modified: subversion/trunk/subversion/svn/info-cmd.c Modified: subversion/trunk/subversion/svn/info-cmd.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/info-cmd.c?rev=1910264=1910263=1910264=diff == --- subversion/trunk/subversion/svn/info-cmd.c (original) +++ subversion/trunk/subversion/svn/info-cmd.c Tue Jun 6 18:36:28 2023 @@ -1267,10 +1267,16 @@ print_info_item(void *baton, break; case info_item_wc_root: - SVN_ERR(print_info_item_string( - (info->wc_info && info->wc_info->wcroot_abspath - ? info->wc_info->wcroot_abspath : NULL), - target_path, pool)); + { +const char *wc_root; + +if (info->wc_info && info->wc_info->wcroot_abspath) + wc_root = svn_dirent_local_style(info->wc_info->wcroot_abspath, pool); +else + wc_root = NULL; + +SVN_ERR(print_info_item_string(wc_root, target_path, pool)); + } break; case info_item_schedule:
svn commit: r1910212 - /subversion/trunk/
Author: dsahlberg Date: Sat Jun 3 20:50:28 2023 New Revision: 1910212 URL: http://svn.apache.org/viewvc?rev=1910212=rev Log: TortoiseSVN now supports building on ARM64, so let's help them a little bit by svn:ignore-ing their build output directories (much like debug_x64 etc.) Modified: subversion/trunk/ (props changed) Propchange: subversion/trunk/ -- --- svn:ignore (original) +++ svn:ignore Sat Jun 3 20:50:28 2023 @@ -32,10 +32,12 @@ Release release_win32 release_win32_static release_x64 +release_ARM64 Debug debug_win32 debug_win32_static debug_x64 +debug_ARM64 ipch subversion_msvc.dsw subversion_msvc.ncb
svn commit: r1910112 - /subversion/trunk/subversion/libsvn_client/copy.c
Author: dsahlberg Date: Mon May 29 09:51:14 2023 New Revision: 1910112 URL: http://svn.apache.org/viewvc?rev=1910112=rev Log: Followup to r1909127: fix test failures on Windows * libsvn_client/copy.c (try_copy): Dont convert urls to local_style in error message. Fix inconsistent indentation (tabs/spaces) introduced in r1909127. See dev@ https://lists.apache.org/thread/f0bd030xhk3jtjn3rzk3588qro3f6pts Modified: subversion/trunk/subversion/libsvn_client/copy.c Modified: subversion/trunk/subversion/libsvn_client/copy.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/copy.c?rev=1910112=1910111=1910112=diff == --- subversion/trunk/subversion/libsvn_client/copy.c (original) +++ subversion/trunk/subversion/libsvn_client/copy.c Mon May 29 09:51:14 2023 @@ -3093,10 +3093,14 @@ try_copy(svn_boolean_t *timestamp_sleep, return svn_error_createf (SVN_ERR_UNSUPPORTED_FEATURE, NULL, is_move ? -_("Cannot move path '%s' into its own child '%s'") : -_("Cannot copy path '%s' into its own child '%s'"), - svn_dirent_local_style(pair->src_abspath_or_url, pool), - svn_dirent_local_style(pair->dst_abspath_or_url, pool)); + _("Cannot move path '%s' into its own child '%s'") : + _("Cannot copy path '%s' into its own child '%s'"), + svn_path_is_url(pair->src_abspath_or_url) ? + pair->src_abspath_or_url : + svn_dirent_local_style(pair->src_abspath_or_url, pool), + svn_path_is_url(pair->dst_abspath_or_url) ? + pair->dst_abspath_or_url : + svn_dirent_local_style(pair->dst_abspath_or_url, pool)); } svn_pool_destroy(iterpool);
svn commit: r1910034 - in /subversion/site/publish: ./ packages.html
Author: dsahlberg Date: Wed May 24 20:35:44 2023 New Revision: 1910034 URL: http://svn.apache.org/viewvc?rev=1910034=rev Log: In site/publish: Merge 1910032, 1910033 from site/staging Remove dead links to collab.net and update links to wandisco.com to reflect the fact WANdisco no longer require registration for download. Modified: subversion/site/publish/ (props changed) subversion/site/publish/packages.html Propchange: subversion/site/publish/ -- Merged /subversion/site/staging:r1910032-1910033 Modified: subversion/site/publish/packages.html URL: http://svn.apache.org/viewvc/subversion/site/publish/packages.html?rev=1910034=1910033=1910034=diff == --- subversion/site/publish/packages.html (original) +++ subversion/site/publish/packages.html Wed May 24 20:35:44 2023 @@ -97,15 +97,10 @@ $ yum install subversion $ yum install mod_dav_svn -https://www.collab.net/downloads/subversion/linux.html;> -CollabNet (supported and certified by - https://www.collab.net/subversion; - >CollabNet; requires registration) - -https://www.wandisco.com/subversion/download#centos;> +https://wandisco.com/source-code-management/subversion#linux;> WANdisco (supported and certified by - https://www.wandisco.com/subversion/; - >WANdisco; requires registration) + https://wandisco.com/source-code-management/subversion/; + >WANdisco) @@ -130,10 +125,10 @@ $ yum install mod_dav_svn $ apt-get install subversion $ apt-get install libapache2-mod-svn -https://www.wandisco.com/subversion/download#debian;> +https://wandisco.com/source-code-management/subversion#linux;> WANdisco (supported and certified by - https://www.wandisco.com/subversion/; - >WANdisco; requires registration) + https://wandisco.com/source-code-management/subversion; + >WANdisco) @@ -287,10 +282,10 @@ $ brew install (OPTIONS) subversionhttps://ports.macports.org/port/subversion; >MacPorts (requires https://www.macports.org/;>MacPorts) -https://www.wandisco.com/subversion/download#osx;> +https://wandisco.com/source-code-management/subversion#mac;> WANdisco (client and server; supported and certified by - https://www.wandisco.com/subversion/; - >WANdisco; requires registration) + https://wandisco.com/source-code-management/subversion; + >WANdisco) Older Subversion binaries were provided with Xcode in versions of Mac OS X prior to 10.15 (Catalina). See the @@ -315,15 +310,10 @@ $ brew install (OPTIONS) subversion$ yum install subversion $ yum install mod_dav_svn -https://www.collab.net/downloads/subversion/linux.html;> -CollabNet (supported and certified by - https://www.collab.net/subversion; - >CollabNet; requires registration) - -https://www.wandisco.com/subversion/download#redhat;> +https://wandisco.com/source-code-management/subversion#linux;> WANdisco (supported and certified by - https://www.wandisco.com/subversion/; - >WANdisco; requires registration) + https://wandisco.com/source-code-management/subversion; + >WANdisco) @@ -371,10 +361,10 @@ $ zypper install subversion-server https://software.opensuse.org/download.html?project=devel:tools:scm:svn:1.8package=subversion;> 1.8 series of releases. -https://www.wandisco.com/subversion/download#suse;> +https://wandisco.com/source-code-management/subversion#linux;> WANdisco (supported and certified by - https://www.wandisco.com/subversion/; - >WANdisco; requires registration) + https://wandisco.com/source-code-management/subversion; + >WANdisco) @@ -399,10 +389,10 @@ $ zypper install subversion-server $ apt-get install subversion $ apt-get install libapache2-svn -https://www.wandisco.com/subversion/download#ubuntu;> +https://wandisco.com/source-code-management/subversion#linux;> WANdisco (supported and certified by - https://www.wandisco.com/subversion/; - >WANdisco; requires registration) + https://wandisco.com/source-code-management/subversion; + >WANdisco) @@ -418,11 +408,6 @@ $ apt-get install libapache2-svn -https://www.collab.net/downloads/subversion/; - >CollabNet (supported and certified by - https://www.collab.net/subversion; - >CollabNet; requires registration) - https://www.sliksvn.com/en/download; >SlikSVN (32- and 64-bit (x64 and ARM64) client MSI @@ -437,10 +422,10 @@ $ apt-get install libapache2-svn https://www.visualsvn.com; >VisualSVN) -https://www.wandisco.com/subversion/download#windows; +https://wandisco.com/source-code-management/subversio