Bug 253566

Summary: devel/subversion-lts: update port to next LTS version: 1.14.2
Product: Ports & Packages Reporter: Michael Osipov <michael.osipov>
Component: Individual Port(s)Assignee: Michael Osipov <michaelo>
Status: Closed FIXED    
Severity: Affects Some People CC: michael.osipov, michaelo
Priority: --- Flags: michael.osipov: maintainer-feedback-
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
Git-formatted patch
none
Git-formatted patch (cleanup)
none
Git-formatted patch
none
Git-formatted patch
none
Git-formatted patch (gzip-compressed) none

Description Michael Osipov 2021-02-16 19:07:30 UTC
A new LTS version is out, but 1.10 is still supported. Either this port is moved to 1.14.1 or this will be split in two ports subversion-lts-110 and subversion-lts-114 and subversion-lts will point to subversion-lts-114.
Comment 1 Lev A. Serebryakov freebsd_committer freebsd_triage 2021-02-16 20:47:16 UTC
I don't see any profit to have subversion-lts and subversion both pointing to same version.

My plan is to have subversion-lts as 1.10.x till 1.15 will be released and then move subversion-lts to 1.14.x (and drop 1.10.x completely).
Comment 2 Lev A. Serebryakov freebsd_committer freebsd_triage 2021-02-16 20:58:36 UTC
And, no, I WILL NOT add one more subversion port.

IMHO, -lts version is too much as it is.
Comment 3 Michael Osipov 2021-02-16 21:00:14 UTC
(In reply to Lev A. Serebryakov from comment #2)

I agree with that. It was just an idea.
Comment 4 Michael Osipov 2021-02-16 21:01:20 UTC
(In reply to Lev A. Serebryakov from comment #1)

This makes sense. I don't now when 1.15 will land, but 1.10.x port relies on Python 2.7 which is annoying to see the expired everyday. For compilation this is not required. Do you see a way to remove it from the port until 1.15 lands?
Comment 5 Lev A. Serebryakov freebsd_committer freebsd_triage 2021-02-16 21:14:21 UTC
(In reply to Michael Osipov from comment #4)
I see. I'll think, what could be done with this python situation.
Comment 6 Michael Osipov 2021-12-21 13:25:28 UTC
Until 1.14.2 is available I have applied a naive patch to Python 3:

> # diff /tmp/Makefile Makefile
> --- /tmp/Makefile       2021-12-21 14:22:39.843596000 +0100
> +++ Makefile    2021-12-21 14:22:50.218496000 +0100
> @@ -41,7 +41,7 @@
>  FREEBSD_TEMPLATE_EXTRA_PATCHES=        ${PATCHDIR}/extra-patch-fbsd-template
>  SVNSERVE_WRAPPER_EXTRA_PATCHES=        ${PATCHDIR}/extra-patch-svnserve-wrapper
> 
> -USES+=                 shebangfix python:env
> +USES+=                 shebangfix python:2.7,env
>  python_OLD_CMD+=       "/bin/env python"
>  SHEBANG_REGEX=         ./tools/.*
> 
> @@ -220,7 +220,7 @@
> 
>  svn-build-outputs-hack:
>         (cd ${WRKSRC} && ${PATCH} ${PATCH_DIST_ARGS} -p0 < ${PATCHDIR}/extra-patch-build.conf)
> -       (cd ${WRKSRC} && ${PYTHON_CMD} gen-make.py --release --installed-libs libsvn_client,libsvn_delta,libsvn_diff,libsvn_fs,libsvn_fs_x,libsvn_ra,libsvn_repos,libsvn_subr,libsvn_wc)
> +       (cd ${WRKSRC} && python2.7 gen-make.py --release --installed-libs libsvn_client,libsvn_delta,libsvn_diff,libsvn_fs,libsvn_fs_x,libsvn_ra,libsvn_repos,libsvn_subr,libsvn_wc)
>         ${MV} ${WRKSRC}/build-outputs.mk ${FILESDIR}/build-outputs.mk.addons
> 
>  .include <bsd.port.post.mk>
> 


Summary of test results:
  2412 tests PASSED
  95 tests SKIPPED
  57 tests XFAILED (1 WORK-IN-PROGRESS)
  6 tests FAILED
SUMMARY: Some tests failed.


Do you think this could be applied to the port? I haven't tried Python scripts which may be used additionally: https://subversion.apache.org/docs/release-notes/1.14.html#pythonoptional
Comment 7 Michael Osipov 2022-11-15 10:20:19 UTC
Lev, do you want to pick this up this year?
Comment 8 commit-hook freebsd_committer freebsd_triage 2022-11-17 17:42:06 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=a367af193aac558dc3eb91852c697125ca43707c

commit a367af193aac558dc3eb91852c697125ca43707c
Author:     Lev A. Serebryakov <lev@FreeBSD.org>
AuthorDate: 2022-11-17 17:38:44 +0000
Commit:     Lev A. Serebryakov <lev@FreeBSD.org>
CommitDate: 2022-11-17 17:38:44 +0000

    devel/subversion-lts: Depends on python 2.7

     This old version must use pyhton2.7 explicitly.

    PR:             253566

 devel/subversion-lts/Makefile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
Comment 9 Lev A. Serebryakov freebsd_committer freebsd_triage 2022-11-17 17:42:41 UTC
Committed, thnx!
Comment 10 Michael Osipov 2022-11-17 17:51:26 UTC
(In reply to Lev A. Serebryakov from comment #9)

Appreciated, but the actual issue isn't solved: 1.14.2 LTS still not in the tree ;-)

See: http://svn.apache.org/viewvc/subversion/branches/1.10.x/STATUS?view=markup
1.10.x is EOL
Comment 11 Lev A. Serebryakov freebsd_committer freebsd_triage 2022-11-22 08:49:27 UTC
Looks like we've discussed this in second and third comment, haven't we?
Comment 12 Lev A. Serebryakov freebsd_committer freebsd_triage 2022-11-22 08:50:56 UTC
But EOL of 1.10.x changes situation, you are right.
I need to think what is better.
Comment 13 Michael Osipov 2022-11-22 09:05:29 UTC
(In reply to Lev A. Serebryakov from comment #11)

Yes, this is why I referenced the official EOL of 1.10.x to provide you justification.
Comment 14 Michael Osipov 2022-11-22 15:05:01 UTC
Poudriere now gives me:
> [00:00:30] Ignoring devel/subversion-lts | subversion-lts-1.10.8_2: uses unknown USES=python arguments: env:2.7

Should I be worried? Make the patch isn't compatible anymore?
Comment 15 Michael Osipov 2022-11-23 08:08:22 UTC
Here is a patch:

diff --git a/devel/subversion-lts/Makefile b/devel/subversion-lts/Makefile
index c51403be3159..2907669ed657 100644
--- a/devel/subversion-lts/Makefile
+++ b/devel/subversion-lts/Makefile
@@ -38,7 +38,7 @@ TOOLS_DESC=       Install several tools
 FREEBSD_TEMPLATE_EXTRA_PATCHES=    ${PATCHDIR}/extra-patch-fbsd-template
 SVNSERVE_WRAPPER_EXTRA_PATCHES=    ${PATCHDIR}/extra-patch-svnserve-wrapper

-USES+=         shebangfix python:env:2.7,env
+USES+=         shebangfix python:2.7,env
 python_OLD_CMD+=   "/bin/env python"
 SHEBANG_REGEX=     ./tools/.*


Please apply
Comment 16 Michael Osipov 2022-12-20 16:08:12 UTC
I am reopening this bug because the actual request has not been performed: upgrade to 1.14.2
Comment 17 Michael Osipov 2023-03-28 13:21:18 UTC
Can I help here by providing a patch based on devel/subversion?
Comment 18 Michael Osipov 2023-06-06 09:01:02 UTC
It would be good to finally move the port to 1.14 in LTS for the next quarterly...
Comment 19 Michael Osipov 2023-09-20 13:37:25 UTC
Created attachment 245053 [details]
Git-formatted patch

Here is patch. Tested in poudriere as well a QA jail where devel/subversion and www/mod_dav_svn updated smooothly.
Comment 20 Michael Osipov 2023-09-20 13:38:11 UTC
Created attachment 245054 [details]
Git-formatted patch (cleanup)

Here is another patch to clean up ports with outdated Subversion versions.
Comment 21 Michael Osipov 2023-09-22 08:21:24 UTC
Created attachment 245110 [details]
Git-formatted patch

Add entry to UPDATING that the version changes in the LTS port.
Comment 22 Michael Osipov 2023-09-22 09:47:32 UTC
https://subversion.apache.org/download.cgi says:

The latest and recommended LTS (long-term support) release of Apache Subversion is: 1.14
Comment 23 Michael Osipov 2023-09-25 20:53:25 UTC
It is now official, 1.10.x is EOL: https://lists.apache.org/thread/3xp6hrrxtl6jws6o2wyy8vjbd2x73nz2
Comment 24 Michael Osipov freebsd_committer freebsd_triage 2023-10-27 08:48:39 UTC
Created attachment 245911 [details]
Git-formatted patch
Comment 25 Michael Osipov freebsd_committer freebsd_triage 2023-10-27 08:49:16 UTC
Requesting an exp-run since I want to see whether any port might be affected by this.
Comment 26 Antoine Brodin freebsd_committer freebsd_triage 2023-10-27 09:10:29 UTC
Only py27-subversion-lts depends on subversion-lts.
And your patch is unreadable.
Comment 27 Michael Osipov freebsd_committer freebsd_triage 2023-10-27 09:12:50 UTC
Created attachment 245913 [details]
Git-formatted patch (gzip-compressed)
Comment 28 Michael Osipov freebsd_committer freebsd_triage 2023-10-27 09:14:22 UTC
(In reply to Antoine Brodin from comment #26)

My patch was incorrectly attributed. GZIP compressed, now fixed. Not just this port depends on it. With the make.conf switch WITH_SUBVERSION_VER you can select LTS or 114 w/o changing the Makefiles. Please reconsider the exp-run.
Comment 29 Michael Osipov freebsd_committer freebsd_triage 2023-10-27 11:53:45 UTC
Re-requesting the exp-run since the patch is compressed and the this change affects more than one port. If you think it is not worth it, I am fine with committing without an exp-run.
Comment 30 Antoine Brodin freebsd_committer freebsd_triage 2023-10-27 12:00:43 UTC
(In reply to Michael Osipov from comment #29)
Only the py27 flavor of devel/py-subversion depends on subversion-lts.
Did you test it?
Comment 31 Michael Osipov freebsd_committer freebsd_triage 2023-10-27 12:10:26 UTC
(In reply to Antoine Brodin from comment #30)

Let me double check a few things here and get back to you.
Comment 32 Michael Osipov freebsd_committer freebsd_triage 2023-10-27 13:10:34 UTC
(In reply to Michael Osipov from comment #28)

I need to revoke parts of these statement. The make.conf knob only works if the port evaluates it. But your invention pointed me to these which I will check as well:
osipovmi@deblndw011x:~/var/Projekte/freebsd/ports (pr-253566)
$ grep -r ../../devel/subversion/Makefile.addons .
./devel/p5-subversion/Makefile:.include "${.CURDIR}/../../devel/subversion/Makefile.addons"
./devel/py-subversion/Makefile:.include "${.CURDIR}/../../devel/subversion/Makefile.addons"
./devel/ruby-subversion/Makefile:.include "${.CURDIR}/../../devel/subversion/Makefile.addons"
./java/java-subversion/Makefile:.include "${.CURDIR}/../../devel/subversion/Makefile.addons"
./security/subversion-gnome-keyring/Makefile:.include "${.CURDIR}/../../devel/subversion/Makefile.addons"
./www/mod_dav_svn/Makefile:.include "${.CURDIR}/../../devel/subversion/Makefile.addons"

Thanks for being vigilant. I will get back to you.
Comment 33 commit-hook freebsd_committer freebsd_triage 2023-10-27 13:46:10 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=528f7fc28f2577981432f9ab30ed47bbc82ba506

commit 528f7fc28f2577981432f9ab30ed47bbc82ba506
Author:     Michael Osipov <michaelo@FreeBSD.org>
AuthorDate: 2023-10-24 11:28:19 +0000
Commit:     Michael Osipov <michaelo@FreeBSD.org>
CommitDate: 2023-10-27 13:45:06 +0000

    cleanup: set generic version for devel/subversion

    PR:     253566
    Approved by:    jrm (mentor), maintainer timeout
    Differential Revision: https://reviews.freebsd.org/D42349

 devel/p5-SVN-Hooks/Makefile | 2 +-
 devel/p5-SVN-Look/Makefile  | 2 +-
 devel/statsvn/Makefile      | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)
Comment 34 Michael Osipov freebsd_committer freebsd_triage 2023-10-27 15:14:06 UTC
(In reply to Antoine Brodin from comment #30)

I have picked up your critique and ran poudriere bulk again. Please join the review: https://reviews.freebsd.org/D42348#967039

So yes, I did now run the build you have desired and cleaned up the Makefile as well.
Comment 35 Antoine Brodin freebsd_committer freebsd_triage 2023-10-27 16:23:19 UTC
I don't think an exp-run is needed.
Comment 36 Michael Osipov freebsd_committer freebsd_triage 2023-10-27 16:24:50 UTC
(In reply to Antoine Brodin from comment #35)

Thanks. On this I can agree. I will wait for thers to review and approve.
Comment 37 commit-hook freebsd_committer freebsd_triage 2023-10-31 12:53:26 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=914eca41bf74707f7c59ee8958861b12e77e2243

commit 914eca41bf74707f7c59ee8958861b12e77e2243
Author:     Michael Osipov <michaelo@FreeBSD.org>
AuthorDate: 2023-10-24 11:28:46 +0000
Commit:     Michael Osipov <michaelo@FreeBSD.org>
CommitDate: 2023-10-31 12:52:15 +0000

    devel/subversion-lts: update port to next LTS version: 1.14.2

    PR:             253566
    Approved by:    jrm (mentor), otis (mentor), lev
    Release Notes:  https://subversion.apache.org/docs/release-notes/1.14
    Differential Revision:  https://reviews.freebsd.org/D42348

 UPDATING                                           |    9 +
 devel/py-subversion/Makefile                       |    8 +-
 devel/subversion-lts/Makefile                      |   36 +-
 devel/subversion-lts/Makefile.common               |    2 +-
 devel/subversion-lts/distinfo                      |    6 +-
 devel/subversion-lts/files/build-outputs.mk.addons | 1908 ++++++++++----------
 devel/subversion-lts/files/patch-Makefile.in       |   16 +-
 .../{extra-patch-build.conf => patch-build.conf}   |    6 +-
 devel/subversion-lts/pkg-descr                     |    2 +-
 devel/subversion-lts/pkg-plist                     |   25 +-
 devel/subversion/Makefile.addons                   |    2 +-
 www/mod_dav_svn/Makefile                           |    3 +
 12 files changed, 989 insertions(+), 1034 deletions(-)
Comment 38 Michael Osipov freebsd_committer freebsd_triage 2023-10-31 12:56:28 UTC
Finally updated with Lev's approval.