Re: [Bioc-devel] BiocCheck and version requirement

2021-04-08 Thread Henrik Bengtsson
On Thu, Apr 8, 2021 at 11:22 AM Kasper Daniel Hansen
 wrote:
>
> R CMD check sometimes wants dependency on specific R versions, for example 
> when the file format changed (forgot which version .. was it 3.6). But that 
> warning is emitted when it tests the package utilizes version-specific stuff.

Yes, serialization format v3 was introduced in R 3.5.0.  If there are
R binary files with that version, then 'R CMD build' will check and
warning about this, and automatically inject an explicit Depends: R
(>= 3.5.0) in the built tarball. Example:

$ R CMD build teeny
...
* checking for empty or unneeded directories
  NB: this package now depends on R (>= 3.5.0)
  WARNING: Added dependency on R >= 3.5.0 because serialized objects
in  serialize/load version 3 cannot be read in older versions of R.
File(s) containing such objects: ‘teeny/inst/pi.rds’
* building ‘teeny_0.1.0.tar.gz’

But that's not a *check* error.  If you'd submit to CRAN, they would
not notice because it's fixed in the source tarball.  On Bioconductor,
you'd see it in the build logs, because that builds from the package
source folder.  I don't know if there are additional checks for this
in 'R CMD check' - could be - but I guess you would have to do some
tricks to circumvent 'R CMD build' in order to get a source tarball
without the dependency.

Note that if the R binary files are in serialization version 2, then
there is no such warning.  In other words, a package developer can
very well keep their package backward compatible with R (< 3.5.0) by
not updating/resaving/regenerating binary files in version 3.  To stay
with version 2, one can use, e.g. saveRDS(x, file, version=2).

/Henrik

>
> I get that Bioc doesn't check under older versions. That is intentional. But 
> that is different from the check asking for a specific version for no 
> particular reason (as far as I can ascertain).
>
> Best,
> Kasper
>
> On Thu, Apr 8, 2021 at 8:13 PM Henrik Bengtsson  
> wrote:
>>
>> > I believe in the past we tried suggesting removing a R dependency 
>> > altogether but that R CMD check complained not having an R dependency?  
>> > Maybe someone remembers more about this.
>>
>> There are no such requirements in 'R CMD check'.  The only requirement
>> around 'Depends: R (>= x.y.z)', if specified, is with 'R CMD check
>> --as-cran' that requires z == 0. In other words, you can submit a
>> package to CRAN that depends on a specific patch version, e.g. either
>> R (>= 4.0.0) or R (>= 4.1.0) but not say R (>= 4.0.2) resulting in:
>>
>> * checking DESCRIPTION meta-information ... WARNING
>> Dependence on R version ‘4.0.2’ not with patchlevel 0
>>
>>
>> In the bigger picture: I argue that Bioconductor's dependency on R
>> version is a major, unnecessary(*) disadvantage and adds barriers
>> between the Bioconductor community and the rest of the R community
>> resulting in many lost opportunities and cross-pollination. (*) I know
>> the arguments, but I think there are better solutions already
>> available that do not enforce specific R versions on users and thereby
>> limit them, e.g. when they want to a single Bioconductor package with
>> zero dependencies in their workflow.  As a way forward, I'd suggest
>> that Bioconductor makes it a long-term target to make it possible for
>> any R user to install Bioc packages with a regular install.packages()
>> call - I think that can be achieved.
>>
>> /Henrik
>>
>> On Thu, Apr 8, 2021 at 10:39 AM Kern, Lori
>>  wrote:
>> >
>> > From a Bioconductor R perspective, we can't tell if the package would work 
>> > with a lesser version of R or lower versions of any package dependencies.  
>> > We accept packages and have requirements to ensure packages can run.
>> > You can always have another github branch
>> >
>> > I believe in the past we tried suggesting removing a R dependency 
>> > altogether but that R CMD check complained not having an R dependency?  
>> > Maybe someone remembers more about this.
>> >
>> >
>> >
>> >
>> > Lori Shepherd
>> >
>> > Bioconductor Core Team
>> >
>> > Roswell Park Comprehensive Cancer Center
>> >
>> > Department of Biostatistics & Bioinformatics
>> >
>> > Elm & Carlton Streets
>> >
>> > Buffalo, New York 14263
>> >
>> > 
>> > From: Kasper Daniel Hansen 
>> > Sent: Thursday, April 8, 2021 1:33 PM
>> > To: Kern, Lori 
>> >

Re: [Bioc-devel] BiocCheck and version requirement

2021-04-08 Thread Kasper Daniel Hansen
R CMD check sometimes wants dependency on specific R versions, for example
when the file format changed (forgot which version .. was it 3.6). But that
warning is emitted when it tests the package utilizes version-specific
stuff.

I get that Bioc doesn't check under older versions. That is intentional.
But that is different from the check asking for a specific version for no
particular reason (as far as I can ascertain).

Best,
Kasper

On Thu, Apr 8, 2021 at 8:13 PM Henrik Bengtsson 
wrote:

> > I believe in the past we tried suggesting removing a R dependency
> altogether but that R CMD check complained not having an R dependency?
> Maybe someone remembers more about this.
>
> There are no such requirements in 'R CMD check'.  The only requirement
> around 'Depends: R (>= x.y.z)', if specified, is with 'R CMD check
> --as-cran' that requires z == 0. In other words, you can submit a
> package to CRAN that depends on a specific patch version, e.g. either
> R (>= 4.0.0) or R (>= 4.1.0) but not say R (>= 4.0.2) resulting in:
>
> * checking DESCRIPTION meta-information ... WARNING
> Dependence on R version ‘4.0.2’ not with patchlevel 0
>
>
> In the bigger picture: I argue that Bioconductor's dependency on R
> version is a major, unnecessary(*) disadvantage and adds barriers
> between the Bioconductor community and the rest of the R community
> resulting in many lost opportunities and cross-pollination. (*) I know
> the arguments, but I think there are better solutions already
> available that do not enforce specific R versions on users and thereby
> limit them, e.g. when they want to a single Bioconductor package with
> zero dependencies in their workflow.  As a way forward, I'd suggest
> that Bioconductor makes it a long-term target to make it possible for
> any R user to install Bioc packages with a regular install.packages()
> call - I think that can be achieved.
>
> /Henrik
>
> On Thu, Apr 8, 2021 at 10:39 AM Kern, Lori
>  wrote:
> >
> > From a Bioconductor R perspective, we can't tell if the package would
> work with a lesser version of R or lower versions of any package
> dependencies.  We accept packages and have requirements to ensure packages
> can run.
> > You can always have another github branch
> >
> > I believe in the past we tried suggesting removing a R dependency
> altogether but that R CMD check complained not having an R dependency?
> Maybe someone remembers more about this.
> >
> >
> >
> >
> > Lori Shepherd
> >
> > Bioconductor Core Team
> >
> > Roswell Park Comprehensive Cancer Center
> >
> > Department of Biostatistics & Bioinformatics
> >
> > Elm & Carlton Streets
> >
> > Buffalo, New York 14263
> >
> > 
> > From: Kasper Daniel Hansen 
> > Sent: Thursday, April 8, 2021 1:33 PM
> > To: Kern, Lori 
> > Cc: bioc-devel 
> > Subject: Re: [Bioc-devel] BiocCheck and version requirement
> >
> > But why is it even a warning? The submission policy is that warnings are
> discouraged. This means that developers will adapt to this warning.
> >
> > The check is also against the policies on the website which state you
> don't need a formal dependency.
> >
> > Best,
> > Kasper
> >
> > On Thu, Apr 8, 2021 at 3:53 PM Kern, Lori  <mailto:lori.sheph...@roswellpark.org>> wrote:
> > This requirement has been around for awhile.  New package submissions
> are checked against the devel version of Bioconductor. At the moment this
> is R devel (R 4.1) and Bioconductor packages in devel for 3.13.  Given that
> Bioconductor releases are closely tied to a R release,  and changes in R
> can (and have) had great consequences for package functionality, we can not
> guarantee a package will work on any previous version of R or with previous
> versions of packages.
> > It is why it is a warning and not an error
> >
> >
> > Lori Shepherd
> >
> > Bioconductor Core Team
> >
> > Roswell Park Comprehensive Cancer Center
> >
> > Department of Biostatistics & Bioinformatics
> >
> > Elm & Carlton Streets
> >
> > Buffalo, New York 14263
> >
> > 
> > From: Bioc-devel  bioc-devel-boun...@r-project.org>> on behalf of Kasper Daniel Hansen <
> kasperdanielhan...@gmail.com<mailto:kasperdanielhan...@gmail.com>>
> > Sent: Thursday, April 8, 2021 9:44 AM
> > To: bioc-devel mailto:bioc-devel@r-project.org
> >>
> > Subject: [Bioc-deve

Re: [Bioc-devel] BiocCheck and version requirement

2021-04-08 Thread Henrik Bengtsson
> I believe in the past we tried suggesting removing a R dependency altogether 
> but that R CMD check complained not having an R dependency?  Maybe someone 
> remembers more about this.

There are no such requirements in 'R CMD check'.  The only requirement
around 'Depends: R (>= x.y.z)', if specified, is with 'R CMD check
--as-cran' that requires z == 0. In other words, you can submit a
package to CRAN that depends on a specific patch version, e.g. either
R (>= 4.0.0) or R (>= 4.1.0) but not say R (>= 4.0.2) resulting in:

* checking DESCRIPTION meta-information ... WARNING
Dependence on R version ‘4.0.2’ not with patchlevel 0


In the bigger picture: I argue that Bioconductor's dependency on R
version is a major, unnecessary(*) disadvantage and adds barriers
between the Bioconductor community and the rest of the R community
resulting in many lost opportunities and cross-pollination. (*) I know
the arguments, but I think there are better solutions already
available that do not enforce specific R versions on users and thereby
limit them, e.g. when they want to a single Bioconductor package with
zero dependencies in their workflow.  As a way forward, I'd suggest
that Bioconductor makes it a long-term target to make it possible for
any R user to install Bioc packages with a regular install.packages()
call - I think that can be achieved.

/Henrik

On Thu, Apr 8, 2021 at 10:39 AM Kern, Lori
 wrote:
>
> From a Bioconductor R perspective, we can't tell if the package would work 
> with a lesser version of R or lower versions of any package dependencies.  We 
> accept packages and have requirements to ensure packages can run.
> You can always have another github branch
>
> I believe in the past we tried suggesting removing a R dependency altogether 
> but that R CMD check complained not having an R dependency?  Maybe someone 
> remembers more about this.
>
>
>
>
> Lori Shepherd
>
> Bioconductor Core Team
>
> Roswell Park Comprehensive Cancer Center
>
> Department of Biostatistics & Bioinformatics
>
> Elm & Carlton Streets
>
> Buffalo, New York 14263
>
> ________________
> From: Kasper Daniel Hansen 
> Sent: Thursday, April 8, 2021 1:33 PM
> To: Kern, Lori 
> Cc: bioc-devel 
> Subject: Re: [Bioc-devel] BiocCheck and version requirement
>
> But why is it even a warning? The submission policy is that warnings are 
> discouraged. This means that developers will adapt to this warning.
>
> The check is also against the policies on the website which state you don't 
> need a formal dependency.
>
> Best,
> Kasper
>
> On Thu, Apr 8, 2021 at 3:53 PM Kern, Lori 
> mailto:lori.sheph...@roswellpark.org>> wrote:
> This requirement has been around for awhile.  New package submissions are 
> checked against the devel version of Bioconductor. At the moment this is R 
> devel (R 4.1) and Bioconductor packages in devel for 3.13.  Given that 
> Bioconductor releases are closely tied to a R release,  and changes in R can 
> (and have) had great consequences for package functionality, we can not 
> guarantee a package will work on any previous version of R or with previous 
> versions of packages.
> It is why it is a warning and not an error
>
>
> Lori Shepherd
>
> Bioconductor Core Team
>
> Roswell Park Comprehensive Cancer Center
>
> Department of Biostatistics & Bioinformatics
>
> Elm & Carlton Streets
>
> Buffalo, New York 14263
>
> ____________
> From: Bioc-devel 
> mailto:bioc-devel-boun...@r-project.org>> 
> on behalf of Kasper Daniel Hansen 
> mailto:kasperdanielhan...@gmail.com>>
> Sent: Thursday, April 8, 2021 9:44 AM
> To: bioc-devel mailto:bioc-devel@r-project.org>>
> Subject: [Bioc-devel] BiocCheck and version requirement
>
> The latest BiocCheck (well, it may have been around for a bit) _requires_
> the package to have a R >= 4.1 dependency.
>
> That seems new to me. Right now it's a bit irritating, because if you're
> submitting a package that works with latest stable release, you are now
> prohibited from installing it from Github into your stable Bioc version.
>
> Traditionally, we have not enforced this I think, even though we all know
> of the implicit dependency.
>
> --
> Best,
> Kasper
>
> [[alternative HTML version deleted]]
>
> ___
> Bioc-devel@r-project.org<mailto:Bioc-devel@r-project.org> mailing list
> https://secure-web.cisco.com/1Zqtuoo0O2aKBea_yHofM_QCv72B3JNIupD47xAVitntUD9FgXVvT4yX66u57RWFhMonvou61R_vk6u1LgIM5J8qpHXw4gXWyAxGlZFJEH--5tT-UESMe6_L4bbB6jIcOfYl0J5FI0gucNH0boaxPdv4-It-V5j3TPd2bd5Er3K7MHNVFhqgA5bs84n

Re: [Bioc-devel] BiocCheck and version requirement

2021-04-08 Thread Kern, Lori
>From a Bioconductor R perspective, we can't tell if the package would work 
>with a lesser version of R or lower versions of any package dependencies.  We 
>accept packages and have requirements to ensure packages can run.
You can always have another github branch

I believe in the past we tried suggesting removing a R dependency altogether 
but that R CMD check complained not having an R dependency?  Maybe someone 
remembers more about this.




Lori Shepherd

Bioconductor Core Team

Roswell Park Comprehensive Cancer Center

Department of Biostatistics & Bioinformatics

Elm & Carlton Streets

Buffalo, New York 14263


From: Kasper Daniel Hansen 
Sent: Thursday, April 8, 2021 1:33 PM
To: Kern, Lori 
Cc: bioc-devel 
Subject: Re: [Bioc-devel] BiocCheck and version requirement

But why is it even a warning? The submission policy is that warnings are 
discouraged. This means that developers will adapt to this warning.

The check is also against the policies on the website which state you don't 
need a formal dependency.

Best,
Kasper

On Thu, Apr 8, 2021 at 3:53 PM Kern, Lori 
mailto:lori.sheph...@roswellpark.org>> wrote:
This requirement has been around for awhile.  New package submissions are 
checked against the devel version of Bioconductor. At the moment this is R 
devel (R 4.1) and Bioconductor packages in devel for 3.13.  Given that 
Bioconductor releases are closely tied to a R release,  and changes in R can 
(and have) had great consequences for package functionality, we can not 
guarantee a package will work on any previous version of R or with previous 
versions of packages.
It is why it is a warning and not an error


Lori Shepherd

Bioconductor Core Team

Roswell Park Comprehensive Cancer Center

Department of Biostatistics & Bioinformatics

Elm & Carlton Streets

Buffalo, New York 14263


From: Bioc-devel 
mailto:bioc-devel-boun...@r-project.org>> on 
behalf of Kasper Daniel Hansen 
mailto:kasperdanielhan...@gmail.com>>
Sent: Thursday, April 8, 2021 9:44 AM
To: bioc-devel mailto:bioc-devel@r-project.org>>
Subject: [Bioc-devel] BiocCheck and version requirement

The latest BiocCheck (well, it may have been around for a bit) _requires_
the package to have a R >= 4.1 dependency.

That seems new to me. Right now it's a bit irritating, because if you're
submitting a package that works with latest stable release, you are now
prohibited from installing it from Github into your stable Bioc version.

Traditionally, we have not enforced this I think, even though we all know
of the implicit dependency.

--
Best,
Kasper

[[alternative HTML version deleted]]

___
Bioc-devel@r-project.org<mailto:Bioc-devel@r-project.org> mailing list
https://secure-web.cisco.com/1Zqtuoo0O2aKBea_yHofM_QCv72B3JNIupD47xAVitntUD9FgXVvT4yX66u57RWFhMonvou61R_vk6u1LgIM5J8qpHXw4gXWyAxGlZFJEH--5tT-UESMe6_L4bbB6jIcOfYl0J5FI0gucNH0boaxPdv4-It-V5j3TPd2bd5Er3K7MHNVFhqgA5bs84nYYGnvBuOVns86_d2q_mkKzVTHay7GQUxlJhDGVxQbxlwyKvaVPNraVZJKI3lQzwTpavNpm7CpFuIOaDv9a9-euSOlKn3NYMdkPxNfAHv3u2sI1vZ_1ww4KU4c5TgGsp-ard5Ix/https%3A%2F%2Fstat.ethz.ch%2Fmailman%2Flistinfo%2Fbioc-devel


This email message may contain legally privileged and/or confidential 
information. If you are not the intended recipient(s), or the employee or agent 
responsible for the delivery of this message to the intended recipient(s), you 
are hereby notified that any disclosure, copying, distribution, or use of this 
email message is prohibited. If you have received this message in error, please 
notify the sender immediately by e-mail and delete this email message from your 
computer. Thank you.


--
Best,
Kasper


This email message may contain legally privileged and/or confidential 
information.  If you are not the intended recipient(s), or the employee or 
agent responsible for the delivery of this message to the intended 
recipient(s), you are hereby notified that any disclosure, copying, 
distribution, or use of this email message is prohibited.  If you have received 
this message in error, please notify the sender immediately by e-mail and 
delete this email message from your computer. Thank you.
[[alternative HTML version deleted]]

___
Bioc-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel


Re: [Bioc-devel] BiocCheck and version requirement

2021-04-08 Thread Kasper Daniel Hansen
But why is it even a warning? The submission policy is that warnings are
discouraged. This means that developers will adapt to this warning.

The check is also against the policies on the website which state you don't
need a formal dependency.

Best,
Kasper

On Thu, Apr 8, 2021 at 3:53 PM Kern, Lori 
wrote:

> This requirement has been around for awhile.  New package submissions are
> checked against the devel version of Bioconductor. At the moment this is R
> devel (R 4.1) and Bioconductor packages in devel for 3.13.  Given that
> Bioconductor releases are closely tied to a R release,  and changes in R
> can (and have) had great consequences for package functionality, we can not
> guarantee a package will work on any previous version of R or with previous
> versions of packages.
> It is why it is a warning and not an error
>
> Lori Shepherd
>
> Bioconductor Core Team
>
> Roswell Park Comprehensive Cancer Center
>
> Department of Biostatistics & Bioinformatics
>
> Elm & Carlton Streets
>
> Buffalo, New York 14263
> --
> *From:* Bioc-devel  on behalf of Kasper
> Daniel Hansen 
> *Sent:* Thursday, April 8, 2021 9:44 AM
> *To:* bioc-devel 
> *Subject:* [Bioc-devel] BiocCheck and version requirement
>
> The latest BiocCheck (well, it may have been around for a bit) _requires_
> the package to have a R >= 4.1 dependency.
>
> That seems new to me. Right now it's a bit irritating, because if you're
> submitting a package that works with latest stable release, you are now
> prohibited from installing it from Github into your stable Bioc version.
>
> Traditionally, we have not enforced this I think, even though we all know
> of the implicit dependency.
>
> --
> Best,
> Kasper
>
> [[alternative HTML version deleted]]
>
> ___
> Bioc-devel@r-project.org mailing list
>
> https://secure-web.cisco.com/1Zqtuoo0O2aKBea_yHofM_QCv72B3JNIupD47xAVitntUD9FgXVvT4yX66u57RWFhMonvou61R_vk6u1LgIM5J8qpHXw4gXWyAxGlZFJEH--5tT-UESMe6_L4bbB6jIcOfYl0J5FI0gucNH0boaxPdv4-It-V5j3TPd2bd5Er3K7MHNVFhqgA5bs84nYYGnvBuOVns86_d2q_mkKzVTHay7GQUxlJhDGVxQbxlwyKvaVPNraVZJKI3lQzwTpavNpm7CpFuIOaDv9a9-euSOlKn3NYMdkPxNfAHv3u2sI1vZ_1ww4KU4c5TgGsp-ard5Ix/https%3A%2F%2Fstat.ethz.ch%2Fmailman%2Flistinfo%2Fbioc-devel
>
>
> This email message may contain legally privileged and/or confidential
> information. If you are not the intended recipient(s), or the employee or
> agent responsible for the delivery of this message to the intended
> recipient(s), you are hereby notified that any disclosure, copying,
> distribution, or use of this email message is prohibited. If you have
> received this message in error, please notify the sender immediately by
> e-mail and delete this email message from your computer. Thank you.



-- 
Best,
Kasper

[[alternative HTML version deleted]]

___
Bioc-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel


Re: [Bioc-devel] BiocCheck and version requirement

2021-04-08 Thread Kern, Lori
This requirement has been around for awhile.  New package submissions are 
checked against the devel version of Bioconductor. At the moment this is R 
devel (R 4.1) and Bioconductor packages in devel for 3.13.  Given that 
Bioconductor releases are closely tied to a R release,  and changes in R can 
(and have) had great consequences for package functionality, we can not 
guarantee a package will work on any previous version of R or with previous 
versions of packages.
It is why it is a warning and not an error


Lori Shepherd

Bioconductor Core Team

Roswell Park Comprehensive Cancer Center

Department of Biostatistics & Bioinformatics

Elm & Carlton Streets

Buffalo, New York 14263


From: Bioc-devel  on behalf of Kasper Daniel 
Hansen 
Sent: Thursday, April 8, 2021 9:44 AM
To: bioc-devel 
Subject: [Bioc-devel] BiocCheck and version requirement

The latest BiocCheck (well, it may have been around for a bit) _requires_
the package to have a R >= 4.1 dependency.

That seems new to me. Right now it's a bit irritating, because if you're
submitting a package that works with latest stable release, you are now
prohibited from installing it from Github into your stable Bioc version.

Traditionally, we have not enforced this I think, even though we all know
of the implicit dependency.

--
Best,
Kasper

[[alternative HTML version deleted]]

___
Bioc-devel@r-project.org mailing list
https://secure-web.cisco.com/1Zqtuoo0O2aKBea_yHofM_QCv72B3JNIupD47xAVitntUD9FgXVvT4yX66u57RWFhMonvou61R_vk6u1LgIM5J8qpHXw4gXWyAxGlZFJEH--5tT-UESMe6_L4bbB6jIcOfYl0J5FI0gucNH0boaxPdv4-It-V5j3TPd2bd5Er3K7MHNVFhqgA5bs84nYYGnvBuOVns86_d2q_mkKzVTHay7GQUxlJhDGVxQbxlwyKvaVPNraVZJKI3lQzwTpavNpm7CpFuIOaDv9a9-euSOlKn3NYMdkPxNfAHv3u2sI1vZ_1ww4KU4c5TgGsp-ard5Ix/https%3A%2F%2Fstat.ethz.ch%2Fmailman%2Flistinfo%2Fbioc-devel



This email message may contain legally privileged and/or confidential 
information.  If you are not the intended recipient(s), or the employee or 
agent responsible for the delivery of this message to the intended 
recipient(s), you are hereby notified that any disclosure, copying, 
distribution, or use of this email message is prohibited.  If you have received 
this message in error, please notify the sender immediately by e-mail and 
delete this email message from your computer. Thank you.
[[alternative HTML version deleted]]

___
Bioc-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel


[Bioc-devel] BiocCheck and version requirement

2021-04-08 Thread Kasper Daniel Hansen
The latest BiocCheck (well, it may have been around for a bit) _requires_
the package to have a R >= 4.1 dependency.

That seems new to me. Right now it's a bit irritating, because if you're
submitting a package that works with latest stable release, you are now
prohibited from installing it from Github into your stable Bioc version.

Traditionally, we have not enforced this I think, even though we all know
of the implicit dependency.

-- 
Best,
Kasper

[[alternative HTML version deleted]]

___
Bioc-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel