Note that I explicitly do not want to require or depend on the
presence of
BiocInstaller. Depending on BiocInstaller would prevent switchr from
allowing context switching between Bioc versions, which is a major
use-case
for the software.
Something as simple as a web service which accepts an R version
string and
spits out the Bioc release number would be sufficient, though a way
to get
the full repo URLs would be a nice bonus
#2: A crandb-like database of Bioc package version releases.
The queries that I would specifically like, in the context of
reproducibility with my switchr package, are:
- Which exact package versions were available on a specific date
- Start and end dates for a given release of bioc
- What date was a specific package version first released, and the
span
dates it was available via (a) repo
- Dependency and reverse dependency information for each release
of each
package
- Given a package version, the smallest set of packages necessary
to
install the package, and the versions of those dependencies that
were
concurrent with the initial release, midpoint, and last moment
before being
superceded for the package in question. (crandb does not offer
this; I can
do it with many seperate calls, but it seems like the computation
should be
server-side for this). Peferably with or without including
Suggests.
Depending on implementation this could be completely or partially
pre-computed for efficiency.
- A mapping from package versions in repositories to SVN branch
and
commit, if possible.
- Possibly other stuff crandb tracks.
Would one or both of these be possible?
I looked at using the crandb code directly, but it pulls from
<cranmirror>/src/contrib/Meta/archive.rds to get all of this
information,
and that file either doesn't exist or isn't readable in the Bioc
repositories. If we were to change that, I think a lot of what
crandb
offers would come nearly for free, the only work being adding things
that
crandb doesn't offer (the tree-shaking and version to svn mapping,
for
example).