Skip to content

[Bioc-devel] Gviz Abandonware

6 messages · Dario Strbenac, Martin Morgan

#
Hello,

Gviz hasn't been updated for the past two months but has a CHECK warning and there are almost no answered questions on the support website in the past three months. Is it worthwhile developing plotting functions based on Gviz if it is likely to become defunct next year?

--------------------------------------
Dario Strbenac
University of Sydney
Camperdown NSW 2050
Australia
#
On 10/20/2017 03:00 AM, Dario Strbenac wrote:
The title of your post is inappropriate.

Gviz is an excellent, well-maintained, and widely used package. The 
maintainer is highly skilled, in the top tier of Bioconductor 
developers. There is no reason for it to be withdrawn from Bioconductor.

Part of the joy of open-source software is participating in support and 
maintenance -- why not tackle unanswered questions with your own best 
effort? I find that answering questions is a great way to understand the 
software I'm working with, especially if I intend to extend it.

Martin
This email message may contain legally privileged and/or...{{dropped:2}}
#
Hello,

I noticed that October 24 is "Deadline for packages passing ??R CMD build?? and ??R CMD check?? without errors or warnings." and "Identify packages to be ?deprecated? in the new devel, Bioconductor 3.7." and "... or those with errors and unresponsive maintainers." If the Release Schedule document at https://www.bioconductor.org/developers/release-schedule/ is accurate, then there is some uncertainty as to whether Gviz would fall into this category. That deadline is only 4 days away.
Indeed, this is an advantage of open-source software, but if on the support website, questions have been unanswered in the past 3 months, would a pull request have any effect or also be ignored?

--------------------------------------
Dario Strbenac
University of Sydney
Camperdown NSW 2050
Australia
#
On 10/20/2017 07:00 PM, Dario Strbenac wrote:
Take a look at the build report for devel

   http://bioconductor.org/checkResults/3.6/bioc-LATEST/

and note that there are >150 packages with WARNINGS (and that Friday was 
another bad day for Windows!); many of the packages maintained by the 
core have warnings similar to the one that concerns you -- missing and 
largely redundant documentation entries.

Look also at the list of packages removed from Bioconductor

   http://bioconductor.org/about/removed-packages/

to get a sense for how often packages are removed.

Look at the package download stats

   http://bioconductor.org/packages/stats/

and note the relative position of packages (and removed packages, if 
removed recently) to get a sense of how often heavily used packages are 
removed.

See the approach to package end-of-life that we try to follow, when possible

   http://bioconductor.org/developers/package-end-of-life/

to get a sense of how we try to limit the consequences of package 
deprecation for both users and developers. Developers have 6 months 
warning, e.g,. to step forward and take over a central package, or to 
identify other solutions; users have a full 12 months before seeing the 
consequences of package deprecation.

The core team reaches out to maintainers multiple times before 
end-of-life starts, to make sure they are aware of the situation.

The core team tries to triage support site questions; if they are 
important enough [e.g., a package is broken because of changes in a 
dependent package] we send email to the maintainer.

We try to 'carry a big stick' to motivate developers to stay on top of 
their package, but exercise sensible discretion in light of the 
realities of software development and user needs.
It's easy to find questions that have a green 'unanswered' field for 
packages from all walks of Bioconductor life; it would be great if all 
maintainers were named Lun, or that Lun answered all types of questions, 
but that's just not realistic.

A pull request means that you know the answer, so posting an answer to 
the support site would be helpful to the individual posting the 
question, and to others with similar problems, even if the answer is 
'this is the problem and you'll need to wait for the maintainer to 
respond', and even if the pull request were ignored by the maintainer.

When bioc help was a mailing list, a common practice would be to respond 
to the list and cc the maintainer, so the personal email rose above the 
day-to-day traffic; grabbing the link to your support site response and 
sending a brief email to maintainer("some package") has similar effect.

It is humbling to try and answer a question. You realize how challenging 
it is to understand and replicate the basic problem, and how much time 
it takes to provide a reasonably sensible answer to even a well-posed 
question with a simple answer; I doubt that even the shortest of my 
replies take less than 15 minutes to compose.

Documentation shortcomings are often the simplest to fix and an easy way 
to participate in open-source development.

If you'd like to continue this discussion in general terms, then start a 
thread with a more sensible title and of a general nature.

Gviz is a great package in no danger of being abandoned, by the 
maintainer or by the Bioconductor community.

Martin
This email message may contain legally privileged and/or...{{dropped:2}}
#
Good day,

Thanks for the clarification. I appreciate your regular insights on the support forum over the years. It seems that Gviz will be stable enough to use, although the same maintainer's domainsignatures package has strikethrough across its name in the 3.6 build report, indicating its deprecation from Bioconductor. domainsignatures has no NEWS file explaining why it is being deprecated, so the deprecation seems unplanned and unintentional, so end-users of it would have no advance notice if it later became defunct until they were faced with failed biocLite installation command. I simply wish to avoid that situation with genomic plotting. Indeed, I wouldn't be as cautious if I was considering csaw, for example, and noticed build system warnings close to the deadline.

--------------------------------------
Dario Strbenac
University of Sydney
Camperdown NSW 2050
Australia
#
On 10/20/2017 09:00 PM, Dario Strbenac wrote:
domainsignatures is a pretty reasonable example of the deprecation 
process. The core team noted that it had intermittent build failures, 
the code was quite old, it was no longer used extensively, it relied on 
flaky web services not under the maintainer's control -- it was an old 
horse that had provided many years of service, but was now clearly on 
it's last legs.

I initiated an email exchange with the maintainer about the status of 
the package, and I suggested it should be deprecated. The maintainer 
responded promptly (within 24 hours) and agreed with my suggestion. The 
package was marked as deprecated in the 'devel' branch a few days later 
by one of the core team members. There was a public announcement once 
the candidates for deprecation were identified

   https://stat.ethz.ch/pipermail/bioc-devel/2017-September/011522.html

and the build report was marked appropriately. Developers were now 
equipped with the information to act if they wished to further maintain 
the package; no one has stepped forward.

NEWS files are optional, so it's absence is not relevant or surprising, 
especially in older packages.

Loading deprecated packages results in a message

 > suppressPackageStartupMessages(library(domainsignatures))
Warning message:
Package 'domainsignatures' is deprecated and will be removed from
   Bioconductor version 3.7

so users and developers are informed of the problem in a fairly forceful 
way.

Actually, though, a deprecated package has to build and check to 
propagate for downloading via biocLite(), and from the build report

 
http://bioconductor.org/checkResults/3.6/bioc-LATEST/domainsignatures/malbec1-buildsrc.html

we see that it is failing to build -- because the addition of the 
deprecation message by the core team broke it!

We all make mistakes, and this one is on us. Oops.

This has been fixed, the package will perhaps now propagate (though the 
intermittent failures are likely to persist, and my attempts to build 
the  package just now were unsuccessful because of failed web service 
calls) and the message will be seen by users.

Sometimes there are more significant problems with deprecated packages, 
and they don't build and check at all. We're then stuck without a 
package to release, and of course users and developers are taken by 
surprise. This can occur abruptly and due to reasons outside the control 
of the maintainer.

I personally would choose Gviz rather than csaw to build genomic 
visualizations around ;) And csaw has an ERROR on Windows in today's 
builds (though through no fault of it's own...)

Martin
This email message may contain legally privileged and/or...{{dropped:2}}