[llvm-dev] Deprecation of the LLVM SVN server

231 views
Skip to first unread message

Mike Edwards via llvm-dev

unread,
Dec 9, 2020, 6:02:15 PM12/9/20
to Clang Dev, clang...@lists.llvm.org, flan...@lists.llvm.org, libc...@lists.llvm.org, Libc++ Dev, LLDB Dev, llvm-dev, openmp-dev (openmp-dev@lists.llvm.org), parallel...@lists.llvm.org
Hi,
This is just a friendly reminder of the upcoming deprecation and shutdown of the SVN server.  As announced during the last US Developers Conference, way back in 2019, the SVN server would remain in a read-only state for 1 year.  It has been more than a year now and it is time to let the server enjoy a well deserved retirement.  We are planning on turning the service off on January 5th, 2021.  Please plan accordingly if, for some reason, you are still reliant on the SVN service being available.  Thanks for your time and attention.  I hope you all are having a nice day and staying safe.

Respectfully,
Mike Edwards

Nathan James via llvm-dev

unread,
Jan 12, 2021, 8:05:36 PM1/12/21
to Mike Edwards, llvm-dev
> _______________________________________________
> LLVM Developers mailing list
> llvm...@lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev

Hi Mike,

Not sure if anyone else has brought this up, but since turning the svn
server off, phab is no longer able to display commit details for older
commits to the svn server.

https://reviews.llvm.org/rL202984
As an example, results in an error like this:
-----------------------------------------------------------------------
Command failed with error #1!
COMMAND
svn --non-interactive --no-auth-cache --trust-server-cert cat
https://llvm.org/svn/llvm-project/llvm/trunk/include/llvm/ADT/IntrusiveRefCntPtr.h@202983

STDOUT
(empty)

STDERR
svn: E170013: Unable to connect to a repository at URL '
https://llvm.org/svn/llvm-project/llvm/trunk/include/llvm/ADT/IntrusiveRefCntPtr.h'
svn: E175013: Access to '/svn/llvm-
project/llvm/trunk/include/llvm/ADT/IntrusiveRefCntPtr.h' forbidden
-----------------------------------------------------------------------

Im guessing this is an issue that needs solving on the phabricator side
of things?

~Nathan James


_______________________________________________
LLVM Developers mailing list
llvm...@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev

Mike Edwards via llvm-dev

unread,
Jan 12, 2021, 10:25:34 PM1/12/21
to Nathan James, llvm-dev
Hi Nathan,

Bummer!  I had no idea Phabricator was connected to the SVN server in this way.  I'll have to see if I can get a conversation going with the Phabricator maintainers and see if there is a way we can address this.  Thanks for the heads up.

-Mike

Mehdi AMINI via llvm-dev

unread,
Jan 12, 2021, 10:57:27 PM1/12/21
to Mike Edwards, llvm-dev, Nathan James
Hi,

Can you clarify why is this important or why is a feature we need to preserve? Are these URLs posted and referenced anywhere?

The whole "LLVM repo" in phabricator is disabled right now and can't be browsed really: https://reviews.llvm.org/diffusion/L/ ; phab only provides a frontend for the repository, not an entire copy of it I believe.

Thanks,

-- 
Mehdi


James Henderson via llvm-dev

unread,
Jan 13, 2021, 3:30:06 AM1/13/21
to Mehdi AMINI, llvm-dev, Nathan James
The key situation where I'd use it is if I'm tracing back the review and commit history of some older change. Often commits will be referenced within Phabricator reviews as rLXXXXXXX, which would previously allow you to click on them to get to the commit (this might in turn have links to other commits/reviews etc). Using the SVN id to look up the git commit is possible, just more time consuming.

James

Nathan James via llvm-dev

unread,
Jan 13, 2021, 6:48:57 AM1/13/21
to jh737...@my.bristol.ac.uk, Mehdi AMINI, llvm-dev
On Wed, 2021-01-13 at 08:29 +0000, James Henderson via llvm-dev wrote:
> The key situation where I'd use it is if I'm tracing back the review
> and commit history of some older change. Often commits will be
> referenced within Phabricator reviews as rLXXXXXXX, which would
> previously allow you to click on them to get to the commit (this
> might in turn have links to other commits/reviews etc). Using the SVN
> id to look up the git commit is possible, just more time consuming.
>
> James

Thats my reasoning for raising this. It just makes life simpler when
referencing those older commits.

~Nathan

>
> On Wed, 13 Jan 2021 at 03:57, Mehdi AMINI via llvm-dev <
> llvm...@lists.llvm.org> wrote:
> > Hi,
> >
> > Can you clarify why is this important or why is a feature we need
> > to preserve? Are these URLs posted and referenced anywhere?
> >
> > The whole "LLVM repo" in phabricator is disabled right now and
> > can't be browsed really: https://reviews.llvm.org/diffusion/L/ ;
> > phab only provides a frontend for the repository, not an entire
> > copy of it I believe.
> >
> > Thanks,
> >
> > --
> > Mehdi

via llvm-dev

unread,
Jan 13, 2021, 12:57:54 PM1/13/21
to joke...@gmail.com, jh737...@my.bristol.ac.uk, llvm...@lists.llvm.org, n.ja...@hotmail.co.uk
+1

________________________________________
From: llvm-dev <llvm-dev...@lists.llvm.org> on behalf of James Henderson via llvm-dev <llvm...@lists.llvm.org>
Sent: Wednesday, January 13, 2021 12:29 AM
To: Mehdi AMINI
Cc: llvm-dev; Nathan James
Subject: Re: [llvm-dev] Deprecation of the LLVM SVN server

The key situation where I'd use it is if I'm tracing back the review and commit history of some older change. Often commits will be referenced within Phabricator reviews as rLXXXXXXX, which would previously allow you to click on them to get to the commit (this might in turn have links to other commits/reviews etc). Using the SVN id to look up the git commit is possible, just more time consuming.

James

On Wed, 13 Jan 2021 at 03:57, Mehdi AMINI via llvm-dev <llvm...@lists.llvm.org<mailto:llvm...@lists.llvm.org>> wrote:
Hi,

Can you clarify why is this important or why is a feature we need to preserve? Are these URLs posted and referenced anywhere?

The whole "LLVM repo" in phabricator is disabled right now and can't be browsed really: https://reviews.llvm.org/diffusion/L/ ; phab only provides a frontend for the repository, not an entire copy of it I believe.

Thanks,

--
Mehdi

On Tue, Jan 12, 2021 at 7:25 PM Mike Edwards <mi...@sqlby.me<mailto:mi...@sqlby.me>> wrote:
Hi Nathan,

Bummer! I had no idea Phabricator was connected to the SVN server in this way. I'll have to see if I can get a conversation going with the Phabricator maintainers and see if there is a way we can address this. Thanks for the heads up.

-Mike

On Tue, Jan 12, 2021 at 5:05 PM Nathan James <n.ja...@hotmail.co.uk<mailto:n.ja...@hotmail.co.uk>> wrote:
On Wed, 2020-12-09 at 15:01 -0800, Mike Edwards via llvm-dev wrote:
> Hi,
> This is just a friendly reminder of the upcoming deprecation and
> shutdown of the SVN server. As announced during the last US
> Developers Conference, way back in 2019, the SVN server would remain
> in a read-only state for 1 year. It has been more than a year now
> and it is time to let the server enjoy a well deserved retirement.
> We are planning on turning the service off on January 5th, 2021.
> Please plan accordingly if, for some reason, you are still reliant on
> the SVN service being available. Thanks for your time and
> attention. I hope you all are having a nice day and staying safe.
>
> Respectfully,
> Mike Edwards
> _______________________________________________
> LLVM Developers mailing list

> llvm...@lists.llvm.org<mailto:llvm...@lists.llvm.org>
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev

Hi Mike,

STDOUT
(empty)

~Nathan James

llvm...@lists.llvm.org<mailto:llvm...@lists.llvm.org>
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev

Reid Kleckner via llvm-dev

unread,
Jan 13, 2021, 2:07:57 PM1/13/21
to Mehdi AMINI, llvm-dev, Nathan James
Could we copy the entire SVN repo into the Phab instance, so it can satisfy its svn queries from the local filesystem?

Mehdi AMINI via llvm-dev

unread,
Jan 13, 2021, 4:29:58 PM1/13/21
to Reid Kleckner, llvm-dev, Nathan James
I generated apache2 rewrite rules for these URLs to redirect to the monorepo equivalent:

$ git rev-list 40c47680eb2a1cb9bb7f8598c319335731bd5204  | while read commit ; do SVNREV=$(git log --format=%B -n 1 $commit | grep '^llvm-svn: [0-9]*$' | awk '{print $2 }') ; [[ ! -z "$SVNREV" ]] && echo "RewriteRule ^/rL$SVNREV /rG$commit [R=301,L]" ;  done 
RewriteRule ^/rL375504 /rG40c47680eb2a1cb9bb7f8598c319335731bd5204 [R=301,L]
RewriteRule ^/rL375503 /rG3ef017d0669e0dfa7e34a6e58d80c8f307db6d8c [R=301,L]
RewriteRule ^/rL375502 /rG95290827d7d01c63ac57b2cf5204215ba4ee4b06 [R=301,L]
RewriteRule ^/rL375501 /rGe4af9de36ca60483040af381edd10e716e7b077d [R=301,L]
RewriteRule ^/rL375500 /rGe5dd30f77e10b3fa3395312045c06e5e15f9620e [R=301,L]
RewriteRule ^/rL375499 /rG5b99c189b3bfc0faa157f7ca39652c0bb8c315a7 [R=301,L]
RewriteRule ^/rL375498 /rG734c74ba14be0f4421ccd9f720e5b9309248e0f7 [R=301,L]
RewriteRule ^/rL375497 /rGf2c8f3b181e1a0f1a45e6893d15317386bf73977 [R=301,L]
...


It's in place now on phabricator.

-- 
Mehdi

Michael Kruse via llvm-dev

unread,
Jan 13, 2021, 7:31:54 PM1/13/21
to Mehdi AMINI, llvm-dev, Nathan James
This is a good solution. Thank you. Although I wonder how well Apache
can copy with that many rewrite rules.

Michael

Am Mi., 13. Jan. 2021 um 15:30 Uhr schrieb Mehdi AMINI via llvm-dev
<llvm...@lists.llvm.org>:

Mehdi AMINI via llvm-dev

unread,
Jan 13, 2021, 8:06:58 PM1/13/21
to Michael Kruse, llvm-dev, Nathan James
On Wed, Jan 13, 2021 at 4:31 PM Michael Kruse <llv...@meinersbur.de> wrote:
This is a good solution. Thank you. Although I wonder how well Apache
can copy with that many rewrite rules.

I don't know, I'll keep an eye on the load, so far so good (see below).

Note that:
1) The rules are loaded in the apache2 config and not in the .htaccess (I'm not sure but I'd suspect the later to may incur some cost on a per-request basis?)
2) I first match negatively match the pattern (the common case), before going through the huge amount of individual rules:

RewriteCond %{REQUEST_URI} !^/rL[0-9]*$ RewriteRule ^(.*)$ /index.php?__path__=$1 [B,L,QSA] # Config for SVN -> GIT url rewrite Include ...../svn_url_rewrite.apache.conf
Screen Shot 2021-01-13 at 5.01.58 PM.png

Best,

-- 
Mehdi
Reply all
Reply to author
Forward
0 new messages