Skip to content

[R-pkg-devel] Questions regarding a new (seperated package) and how to submit them to cran

11 messages · Simon Urbanek, Thierry Onkelinx, Ivan Krylov +3 more

#
Hi,

I have a question regarding the separation of a package into smaller pieces (to avoid long testing/installation times and more important to avoid to many dependencies)

I am the maintainer of an R package (dartR) which has grown and is now at the limit in terms of testing/run time and also dependencies. To further develop the package we started to break the package into smaller packages namely


Two core packages (dartR.base and dartR.data) and here dartR.base has dartR.data in the depends. (dartR.base is 60% of the previous package) and dartR.data is our data.package for test data (dartR.data is already on CRAN)




Next to the two core packages we also have 3 more addon packages that deal with specialised analysis

dartR.sim
dartR.spatial
dartR.popgenomics.

Those packages depend on dartR.base and dartR.data.

All addon packages and core packages should have the other addon packages as suggests, hence here comes the question.


How do I submit the packages?  All of them at once? Or step by step.

If I submit step by step (e.g. dartR.base) it obviously cannot have the other dartR addon packages as suggests (cannot be tested and will break the CRAN tests).

So would be the correct way to:
Submit dartR.base (without dartR.sim, dartR.spatial and dartR.popgenomics in the suggest.)
Then submit dartR.sim, then dartR.spatial and finally dartR.popgenomics (all without suggests of the other packages)

And finally update all packages (only their description file and add the suggests once they are on CRAN).

Hope that makes sense and thanks in advance,

Bernd





==============================================================================
Dr Bernd Gruber                                              )/_
                                                         _.--..---"-,--c_
Professor Ecological Modelling                      \|..'           ._O__)_
Tel: (02) 6206 3804                         ,=.    _.+   _ \..--( /
Fax: (02) 6201 2328                           \\.-''_.-' \ (     \_
Institute for Applied Ecology                  `'''       `\__   /\
Faculty of Science and Technology                          ')
University of Canberra   ACT 2601 AUSTRALIA
Email: bernd.gruber at canberra.edu.au<mailto:bernd.gruber at canberra.edu.au>
WWW: bernd-gruber<https://researchprofiles.canberra.edu.au/en/persons/bernd-gruber>

Australian Government Higher Education Provider Number CRICOS #00212K
NOTICE & DISCLAIMER: This email and any files transmitted with it may contain
confidential or copyright material and are for the attention of the addressee
only. If you have received this email in error please notify us by email
reply and delete it from your system. The University of Canberra accepts
no liability for any damage caused by any virus transmitted by this email.
==============================================================================

[UC Logo]<http://www.canberra.edu.au>

[It's Not Too Late to Start Early, Mid-Year Classes starts August]<https://www.canberra.edu.au/>



The Ngunnawal people are the Traditional Custodians of the ACT where UC's Bruce Campus is situated and are an integral and celebrated part of UC's culture. We also acknowledge other First Nations Peoples.

Australian Government Higher Education Registered Provider (CRICOS) #00212K. TEQSA Provider ID: PRV12003 (Australian University)
Email Disclaimer<https://www.canberra.edu.au/about-uc/disclaimer-copyright-privacy-accessibility>

[UC Facebook]<https://www.facebook.com/UniversityOfCanberra>    [UC Twitter] <https://twitter.com/UniCanberra>     [UC Instagram] <https://www.instagram.com/unicanberra/>     [UC Linkedin] <https://au.linkedin.com/school/university-of-canberra/>     [UC Youtube] <https://www.youtube.com/user/uniofcanberra>     [University of Canberra] <http://www.canberra.edu.au>
#
Bernd,

the sequence in which you submit doesn't matter - the packages have to work regardless of the sequence. Suggests means that the dependency is optional, not that it can break tests. You have to skip the tests that cannot be run due to missing dependencies (see 1.1.3.1 in R-exts)

Cheers,
Simon
#
Dear Bernd,

You could contact the maintainer of the spatstat package. They did the same
thing (splitting a large package into several smaller ones) a few years ago.

Having the base package suggesting an add-on and the add-on depending on or
suggesting the base package might create an unwanted loop.

Best regards,

ir. Thierry Onkelinx
Statisticus / Statistician

Vlaamse Overheid / Government of Flanders
INSTITUUT VOOR NATUUR- EN BOSONDERZOEK / RESEARCH INSTITUTE FOR NATURE AND
FOREST
Team Biometrie & Kwaliteitszorg / Team Biometrics & Quality Assurance
thierry.onkelinx at inbo.be
Havenlaan 88 bus 73, 1000 Brussel
www.inbo.be

///////////////////////////////////////////////////////////////////////////////////////////
To call in the statistician after the experiment is done may be no more
than asking him to perform a post-mortem examination: he may be able to say
what the experiment died of. ~ Sir Ronald Aylmer Fisher
The plural of anecdote is not data. ~ Roger Brinner
The combination of some data and an aching desire for an answer does not
ensure that a reasonable answer can be extracted from a given body of data.
~ John Tukey
///////////////////////////////////////////////////////////////////////////////////////////

<https://www.inbo.be>


Op vr 23 jun 2023 om 06:52 schreef Simon Urbanek <
simon.urbanek at r-project.org>:

  
  
1 day later
#
Hi,
I know that sounds like a useless feature, but it happens that people are better in recognising names than numbers.

And here is the question. I read in some stackexchange answers that it is possible to add the keyword

Nickname:

to the description file. It works fine when I check the package but winbuilder comes back with a note:

Unknown, possibly misspelled, fields in DESCRIPTION:
  'Nickname'

So the question is, is there a way to have a nickname for a version of an R package and if so, how would that be done.

Thanks in advance


==============================================================================
Dr Bernd Gruber                                              )/_
                                                         _.--..---"-,--c_
Professor Ecological Modelling                      \|..'           ._O__)_
Tel: (02) 6206 3804                         ,=.    _.+   _ \..--( /
Fax: (02) 6201 2328                           \\.-''_.-<file://.-''_.->' \ (     \_
Institute for Applied Ecology                  `'''       `\__   /\
Faculty of Science and Technology                          ')
University of Canberra   ACT 2601 AUSTRALIA
Email: bernd.gruber at canberra.edu.au<mailto:bernd.gruber at canberra.edu.au>
WWW: bernd-gruber<https://researchprofiles.canberra.edu.au/en/persons/bernd-gruber>

Australian Government Higher Education Provider Number CRICOS #00212K
NOTICE & DISCLAIMER: This email and any files transmitted with it may contain
confidential or copyright material and are for the attention of the addressee
only. If you have received this email in error please notify us by email
reply and delete it from your system. The University of Canberra accepts
no liability for any damage caused by any virus transmitted by this email.
==============================================================================

[UC Logo]<http://www.canberra.edu.au>

[It's Not Too Late to Start Early, Mid-Year Classes starts August]<https://www.canberra.edu.au/>



The Ngunnawal people are the Traditional Custodians of the ACT where UC's Bruce Campus is situated and are an integral and celebrated part of UC's culture. We also acknowledge other First Nations Peoples.

Australian Government Higher Education Registered Provider (CRICOS) #00212K. TEQSA Provider ID: PRV12003 (Australian University)
Email Disclaimer<https://www.canberra.edu.au/about-uc/disclaimer-copyright-privacy-accessibility>

[UC Facebook]<https://www.facebook.com/UniversityOfCanberra>    [UC Twitter] <https://twitter.com/UniCanberra>     [UC Instagram] <https://www.instagram.com/unicanberra/>     [UC Linkedin] <https://au.linkedin.com/school/university-of-canberra/>     [UC Youtube] <https://www.youtube.com/user/uniofcanberra>     [University of Canberra] <http://www.canberra.edu.au>
#
Hi,

Thanks for the advice.

Still not 100% sure if that is okay to submit to CRAN.

As mentioned I have new packages that have others in the suggest (and yes the examples/tests run fine by making the dependent),

But if I have a package that is not yet on CRAN in the suggest I see that running winbuilder.

Suggests or Enhances not in mainstream repositories:
  dartR.sim

* checking package namespace information ... OK
* checking package dependencies ... NOTE
Package suggested but not available for checking: 'dartR.sim'





Can I explain when I submit that  dartR.sim will be there (as mentioned the examples run fine), but obviously is not yet on CRAN.

I assume the same would happen if I put the new packages in Enhances?

Regards, Bernd




From: Thierry Onkelinx <thierry.onkelinx at inbo.be>
Sent: Friday, June 23, 2023 5:51 PM
To: Simon Urbanek <simon.urbanek at r-project.org>
Cc: Bernd.Gruber <Bernd.Gruber at canberra.edu.au>; r-package-devel at r-project.org
Subject: Re: [R-pkg-devel] Questions regarding a new (seperated package) and how to submit them to cran

Dear Bernd,

You could contact the maintainer of the spatstat package. They did the same thing (splitting a large package into several smaller ones) a few years ago.

Having the base package suggesting an add-on and the add-on depending on or suggesting the base package might create an unwanted loop.

Best regards,

ir. Thierry Onkelinx
Statisticus / Statistician

Vlaamse Overheid / Government of Flanders
INSTITUUT VOOR NATUUR- EN BOSONDERZOEK / RESEARCH INSTITUTE FOR NATURE AND FOREST
Team Biometrie & Kwaliteitszorg / Team Biometrics & Quality Assurance
thierry.onkelinx at inbo.be<mailto:thierry.onkelinx at inbo.be>
Havenlaan 88 bus 73, 1000 Brussel
www.inbo.be<http://www.inbo.be>
///////////////////////////////////////////////////////////////////////////////////////////
To call in the statistician after the experiment is done may be no more than asking him to perform a post-mortem examination: he may be able to say what the experiment died of. ~ Sir Ronald Aylmer Fisher
The plural of anecdote is not data. ~ Roger Brinner
The combination of some data and an aching desire for an answer does not ensure that a reasonable answer can be extracted from a given body of data. ~ John Tukey
///////////////////////////////////////////////////////////////////////////////////////////

[https://inbo-website-prd-532750756126.s3-eu-west-1.amazonaws.com/inbologoleeuw_nl.png]<https://www.inbo.be>


Op vr 23 jun 2023 om 06:52 schreef Simon Urbanek <simon.urbanek at r-project.org<mailto:simon.urbanek at r-project.org>>:
Bernd,

the sequence in which you submit doesn't matter - the packages have to work regardless of the sequence. Suggests means that the dependency is optional, not that it can break tests. You have to skip the tests that cannot be run due to missing dependencies (see 1.1.3.1<http://1.1.3.1> in R-exts)

Cheers,
Simon
______________________________________________
R-package-devel at r-project.org<mailto:R-package-devel at r-project.org> mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel<https://stat.ethz.ch/mailman/listinfo/r-package-devel>
#
? Sun, 25 Jun 2023 06:30:39 +0000
Bernd.Gruber <Bernd.Gruber at canberra.edu.au> ?????:
I'm afraid it's not exactly documented (and therefore may be subject to
change), but this NOTE is currently produced for every DESCRIPTION field
unless it's mentioned in tools:::.get_standard_DESCRIPTION_fields() or
starts with a number of prefixes (such as X-CRAN, X-schema.org,
Repository/R-Forge, VCS/, and Config/).

I see "Revision" in the list of standard DESCRIPTION fields.
Conveniently, it doesn't seem to be used by base R packages. Would it
be acceptable to use "Revision" instead of "Nickname"?

An alternative option would be to file a wishlist ticket asking for
"Nickname" to be added to the list, but then your package will have to
wait until that change propagates to the next release of R.
#
On 25.06.2023 09:00, Bernd.Gruber wrote:
If it is not in a mainstream repo, you can declare where users can get 
it from, see the explanation in the CRAN policies how to declare it.
This is OK, once the former is explained.

Best,
Uwe Ligges
#
Thanks for the advice. Revision sounds perfectly plausible to me. I will test via winbuilder and may use it.

Regards, Bernd


==============================================================================
Dr Bernd Gruber                                              )/_          
                                                         _.--..---"-,--c_     
Professor Ecological Modelling                      \|..'           ._O__)_      
Tel: (02) 6206 3804                         ,=.    _.+   _ \..--( /           
Fax: (02) 6201 2328                           \\.-''_.-' \ (     \_           
Institute for Applied Ecology                  `'''       `\__   /\           
Faculty?of Science and Technology                          ')                 
University of Canberra?? ACT 2601 AUSTRALIA
Email: bernd.gruber at canberra.edu.au
WWW: bernd-gruber

Australian Government Higher Education Provider Number CRICOS #00212K?
NOTICE & DISCLAIMER: This email and any files transmitted with it may contain 
confidential or copyright material and are for the attention of the addressee 
only. If you have received this email in error please notify us by email 
reply and delete it from your system. The University of Canberra accepts 
no liability for any damage caused by any virus transmitted by this email.
==============================================================================

-----Original Message-----
From: Ivan Krylov <krylov.r00t at gmail.com> 
Sent: Sunday, 25 June 2023 17:35
To: Bernd.Gruber <Bernd.Gruber at canberra.edu.au>
Cc: r-package-devel at r-project.org
Subject: Re: [R-pkg-devel] Nickname allowed in description when submitting to CRAN?

? Sun, 25 Jun 2023 06:30:39 +0000
Bernd.Gruber <Bernd.Gruber at canberra.edu.au> ?????:
I'm afraid it's not exactly documented (and therefore may be subject to change), but this NOTE is currently produced for every DESCRIPTION field unless it's mentioned in tools:::.get_standard_DESCRIPTION_fields() or starts with a number of prefixes (such as X-CRAN, X-schema.org, Repository/R-Forge, VCS/, and Config/).

I see "Revision" in the list of standard DESCRIPTION fields.
Conveniently, it doesn't seem to be used by base R packages. Would it be acceptable to use "Revision" instead of "Nickname"?

An alternative option would be to file a wishlist ticket asking for "Nickname" to be added to the list, but then your package will have to wait until that change propagates to the next release of R.

--
Best regards,
Ivan
#
Thanks, just to make sure:

In the policy I find the entry:

Additional_repositories:

The ?Additional_repositories? field is a comma-separated list of repository URLs where the packages named in the other fields may be found. It is currently used by R CMD check to check that the packages can be found, at least as source packages (which can be installed on any platform).

And here I would have to provide an url that links to the tar.gz file of the package, or can I also provide

The ?Additional_repositories? field is a comma-separated list of repository URLs where the packages named in the other fields may be found. It is currently used by R CMD check to check that the packages can be found, at least as source packages (which can be installed on any platform).

github::green-striped-gecko/dartR.popgenomics

similar to the Remotes: field (which I think is not possible to use).

Thanks,


==============================================================================
Dr Bernd Gruber                                              )/_
                                                         _.--..---"-,--c_
Professor Ecological Modelling                      \|..'           ._O__)_
Tel: (02) 6206 3804                         ,=.    _.+   _ \..--( /
Fax: (02) 6201 2328                           \\.-''_.-' \ (     \_
Institute for Applied Ecology                  `'''       `\__   /\
Faculty of Science and Technology                          ')
University of Canberra   ACT 2601 AUSTRALIA
Email: bernd.gruber at canberra.edu.au<mailto:bernd.gruber at canberra.edu.au>
WWW: bernd-gruber<https://researchprofiles.canberra.edu.au/en/persons/bernd-gruber>

Australian Government Higher Education Provider Number CRICOS #00212K
NOTICE & DISCLAIMER: This email and any files transmitted with it may contain
confidential or copyright material and are for the attention of the addressee
only. If you have received this email in error please notify us by email
reply and delete it from your system. The University of Canberra accepts
no liability for any damage caused by any virus transmitted by this email.
==============================================================================

From: Uwe Ligges <ligges at statistik.tu-dortmund.de>
Sent: Sunday, 25 June 2023 20:51
To: Bernd.Gruber <Bernd.Gruber at canberra.edu.au>
Cc: r-package-devel at r-project.org
Subject: Re: [R-pkg-devel] Questions regarding a new (seperated package) and how to submit them to cran
On 25.06.2023 09:00, Bernd.Gruber wrote:
If it is not in a mainstream repo, you can declare where users can get
it from, see the explanation in the CRAN policies how to declare it.
This is OK, once the former is explained.

Best,
Uwe Ligges

  
  
#
On 26.06.2023 02:52, Bernd.Gruber wrote:
You can use this for CRAN-style repositories. Not for other inds of 
storage. In that case you need to decalre it as written text in the 
Description field.

Best,
Uwe Ligges
#
On 26 June 2023 at 21:03, Uwe Ligges wrote:
| On 26.06.2023 02:52, Bernd.Gruber wrote:
| > Thanks, just to make sure:
| > 
| > In the policy I find the entry:
| > 
| > Additional_repositories:
| 
| You can use this for CRAN-style repositories. Not for other inds of 
| storage. In that case you need to decalre it as written text in the 
| Description field.

And the drat package [1] helps in setting up such CRAN-style repos and has a
few vignettes with details. Several CRAN packages use it for such off-CRAN
extensions. We also have a detailed write-up in the R Journal [2] about using
this scheme for data packages (which of course also works for code packages).

Dirk

[1] https://cloud.r-project.org/package=drat
[2] https://doi.org/10.32614/RJ-2017-026