Subversion plugin quality

53 views
Skip to first unread message

James Dumay

unread,
May 24, 2017, 8:02:11 PM5/24/17
to Jenkins Developers
Hi all,

I've had a number of requests to integrate Subversion into Blue Ocean (specifically for pipeline creation and editing). On review there seem to be a number of blocker or critical bugs in JIRA assigned to the subversion-plugin which isn't giving me much optimism that if we integrate this with Blue Ocean that users are going to have a good experience with it. Though digging through the tickets there seem to be a number of blockers/critical open that have very few votes for their age (for example, this ticket that has zero votes and has had no activity since 2008). The situation might not be that bad after all.

My question is: are there any active maintainers for this plugin and would they be OK if I triaged the outstanding tickets? I'd love to whittle down what are real outstanding issues and what are not.

Cheers,

Jesse Glick

unread,
May 25, 2017, 9:01:13 AM5/25/17
to Jenkins Dev
On Wed, May 24, 2017 at 8:02 PM, James Dumay <jdu...@cloudbees.com> wrote:
> are there any active maintainers for this plugin

Not that I am aware of.

> OK if I triaged the outstanding tickets?

I cannot imagine anyone objecting to your volunteering such work.

The broader issue I see is JENKINS-28251: the SVNKit-based
implementation is the source of countless problems, and given limited
development resources there is no way they will all get fixed. IMO the
only sustainable path for this plugin would be to deprecate that mode
and switch by default to a command-line implementation, as the Git
plugin does. This would involve a block of significant effort, but
after that further problems in the execution of SCM operations (the
main source of complaints for the plugin) would reduce to checking
whether the plugin is running the right command or not, a much more
approachable question for casual contributors. (The situation is
trickier for multibranch operations in `SubversionSCMSource`: we would
need to decide whether indexing operations should remain on SVNKit, or
whether the master would be required to have `svn` installed. The Git
plugin takes the former approach, the Mercurial plugin the latter.)

By the way in your message I think you were attempting to post a
search link, but it did not come out that way.

Slide

unread,
May 25, 2017, 12:00:27 PM5/25/17
to Jenkins Dev
I'd like to help triage these as well, the subversion plugin was on my priority list for the Bug Triage Team since it was second only to core in terms of open issues. 

Would JavaHL [1] be a solution that could cut down on the amount of parsing that would need to be done by the plugin? It would still require a native subversion (library) to be on the system.


--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-de...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CANfRfr0MxXEzjHsLGHWBHpQQEhC6AKVLwgzW-X4cwg6GD5rDUw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Jesse Glick

unread,
May 25, 2017, 2:06:48 PM5/25/17
to Jenkins Dev
On Thu, May 25, 2017 at 12:00 PM, Slide <slide...@gmail.com> wrote:
> Would JavaHL be a solution that could cut down on the amount of parsing
> that would need to be done by the plugin?

Sounds like even more trouble than SVNKit—native code, including
possible JVM corruption issues, *and* platform dependencies.

Parsing per se is not an issue since you can pass `--xml` to every command.

Slide

unread,
May 25, 2017, 3:28:25 PM5/25/17
to Jenkins Dev
Oh, that makes it much nicer. I didn't know about the --xml option. I would say going the parsing route would be awesome. It would be great to have the ability to see the commands that are being executed, I believe the git plugin does this and it's very useful.

--
You received this message because you are subscribed to the Google Groups "Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-de...@googlegroups.com.

Oleg Nenashev

unread,
May 26, 2017, 4:39:42 AM5/26/17
to Jenkins Developers, Manuel Jesús Recena Soto
Hi,

I have added Manuel Recena to Cc. He was the last one who claimed ownership of the SVN plugin, and AFAIK he has not formally transferred the ownership or marked the plugin for adoption. So he is a nominal maintainer now.

Generally the plugin is in the pretty unhealthy state now. It requires man-months just to address bleeding issues in JIRA. Regarding the redesign, it could be a good option if somebody is ready to invest significant amount of time into it. I'm not (at least personal time). Not sure if we still have many active committers using SVN.

BR, Oleg

четверг, 25 мая 2017 г., 21:28:25 UTC+2 пользователь slide написал:

James Dumay

unread,
May 28, 2017, 7:34:42 PM5/28/17
to Jenkins Developers
When I was working on the other CI system we had very good support for Subversion through SVNKit. I'd be very surprised if the quality issues stem from this component.

James Dumay

unread,
May 28, 2017, 7:34:59 PM5/28/17
to Jenkins Developers

James Dumay

unread,
May 28, 2017, 11:50:50 PM5/28/17
to Jenkins Developers
I started closing out some of the most ancient or inactive tickets, asking for people to reopen with reproduction instructions after having tested on the latest versions.

Would anyone be able to help triage the more recent ones? Filter can be found at https://issues.jenkins-ci.org/issues/?filter=17441 

James Dumay

unread,
May 29, 2017, 12:29:48 AM5/29/17
to Jenkins Developers, rec...@gmail.com
Would appreciate a review of https://github.com/jenkinsci/subversion-plugin/pull/184 to fix a critical file handle leak. Fix was simple enough.

Oleg Nenashev

unread,
May 29, 2017, 2:41:06 AM5/29/17
to JenkinsCI Developers, Manuel Jesús Recena Soto
When I was working on the other CI system we had very good support for Subversion through SVNKit. I'd be very surprised if the quality issues stem from this component.

There are some problems with SVNKit, but I'd say the most of the issues with it come from the lack of expertise with this lib. Occasional contributors sometimes misuse API (e.g. connection leaks you've fixed), but there is no maintainer who would notice ad fix that. So it still falls into the "we need a maintainer" area :(


 

--
You received this message because you are subscribed to a topic in the Google Groups "Jenkins Developers" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/jenkinsci-dev/JUAzYLfuMhw/unsubscribe.
To unsubscribe from this group and all its topics, send an email to jenkinsci-dev+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/40087858-b64b-4df7-9ab6-7f83f02a6ce7%40googlegroups.com.

Oleg Nenashev

unread,
Jun 8, 2017, 6:27:07 AM6/8/17
to Jenkins Developers, rec...@gmail.com
I contacted Manuel Recena directly and got his approval to mark this plugin for adoption.
Anyone can take the ownership now: https://wiki.jenkins-ci.org/display/JENKINS/Adopt+a+Plugin

BR, Oleg

P.S: Will add the label once I manage to login into Confluence

понедельник, 29 мая 2017 г., 8:41:06 UTC+2 пользователь Oleg Nenashev написал:
Reply all
Reply to author
Forward
0 new messages