TEOS-10 / GSW-R

R implementation of the Thermodynamic Equation Of Seawater - 2010 (TEOS-10)
http://teos-10.github.io/GSW-R/
Other
8 stars 5 forks source link

CRAN release of 1.0-0 #59

Closed dankelley closed 1 year ago

dankelley commented 1 year ago

Discussion of this was started in #58 but it's quite confusing, having comments about the old code mixed in with comments about the new code. Only developers will care about the details found near the end of #58, which do relate to the release I'm talking about here. The main item here is the checklist.

Please note that there are user-visible changes (see NEWS.md) and so I am bumping the version number from 1.0-x to 1.1-0

dankelley commented 1 year ago

@richardsc I am inclined to change my two-week-cooling-period rule because the last time I did that, I forgot for half a year! The tests done by check_package.R are really quite extensive, being based on what devtools::release() requires for submission, and I see no problems in any test.

The docs have been updated for new test values, and NEWS.md makes note of the changed function return values for the 4 functions that are different from before. Users might want those functions to give correct values, so the change is not a small matter.

Given all of this, I think I ought to go ahead and make a release. @richardsc do you object to that? To be concrete, I propose to release it over the weekend.

richardsc commented 1 year ago

I agree, we shouldn't wait a long time. A weekend release to CRAN sounds good to me.

dankelley commented 1 year ago

Submitted. Normally it takes an hour or two for some initial tests that represent the first hurdle of the QC process. I'll post again when I hear back.

``` [This was generated from [CRAN.R-project.org/submit.html](http://cran.r-project.org/submit.html)] The following package was uploaded to CRAN: =========================================== Package Information: Package: gsw Version: 1.1-0 Title: Gibbs Sea Water Functions Author(s): Dan Kelley [aut, cre, cph] (), Clark Richards [aut, cph] (), WG127 SCOR/IAPSO [aut, cph] (Original 'Matlab' and derived code) Maintainer: Dan Kelley <[dan.kelley@dal.ca](mailto:dan.kelley@dal.ca)> Depends: R (>= 3.5.0), Suggests: knitr, rmarkdown, testthat Description: Provides an interface to the Gibbs 'SeaWater' ('TEOS-10') C library, version 3.06-16-0 (commit '657216dd4f5ea079b5f0e021a4163e2d26893371', dated 2022-10-11, available at , which stems from 'Matlab' and other code written by members of Working Group 127 of 'SCOR'/'IAPSO' (Scientific Committee on Oceanic Research / International Association for the Physical Sciences of the Oceans). License: GPL (>= 2) | file LICENSE The maintainer confirms that he or she has read and agrees to the CRAN policies. Submitter's comment: # Submission of 1.1-0 This updates to an up-to-date version of the underlying C code and 'SAAR' file. Four functions now produce different results from the previous version, and in two of those cases the changes are large enough to merit close perusal by analysts. # Tests ## Local Tests * No problems on macOS (12.5 beta, intel) with R-4.2.1 (2022-06-23). ## Remote tests * No problems on win-builder (devel and release). # No problems on Github R-CMD-check action tests. ================================================= Original content of DESCRIPTION file: Package: gsw Version: 1.1-0 Title: Gibbs Sea Water Functions Authors@R: c( person(given="Dan", family="Kelley", email="[dan.kelley@dal.ca](mailto:dan.kelley@dal.ca)", role=c("aut","cre","cph"), comment=c(ORCID="https://orcid.org/0000-0001-7808-5911")), person(given="Clark", family="Richards", email="[clark.richards@gmail.com](mailto:clark.richards@gmail.com)", role=c("aut","cph"), comment=c(ORCID="https://orcid.org/0000-0002-7833-206X")), person(given="WG127", family="SCOR/IAPSO", role=c("aut","cph"), comment="Original 'Matlab' and derived code")) Copyright: Original algorithms and 'Matlab'/C library (c) 2015-2022 WG127 SCOR/IAPSO (Scientific Committee on Oceanic Research / International Association for the Physical Sciences of the Oceans, Working Group 127); C wrapper code and R code (c) 2015-2021 Dan Kelley and Clark Richards Maintainer: Dan Kelley <[dan.kelley@dal.ca](mailto:dan.kelley@dal.ca)> Depends: R (>= 3.5.0), Suggests: knitr, rmarkdown, testthat BugReports: https://github.com/TEOS-10/GSW-R/issues Description: Provides an interface to the Gibbs 'SeaWater' ('TEOS-10') C library, version 3.06-16-0 (commit '657216dd4f5ea079b5f0e021a4163e2d26893371', dated 2022-10-11, available at , which stems from 'Matlab' and other code written by members of Working Group 127 of 'SCOR'/'IAPSO' (Scientific Committee on Oceanic Research / International Association for the Physical Sciences of the Oceans). URL: http://teos-10.github.io/GSW-R/ License: GPL (>= 2) | file LICENSE LazyLoad: yes LazyData: no Packaged: 2022-10-15 11:07:43 UTC; kelley Encoding: UTF-8 RoxygenNote: 7.2.1 BuildVignettes: true VignetteBuilder: knitr NeedsCompilation: yes Author: Dan Kelley [aut, cre, cph] (), Clark Richards [aut, cph] (), WG127 SCOR/IAPSO [aut, cph] (Original 'Matlab' and derived code) ```
dankelley commented 1 year ago

I see that it's in "pretest" at https://r-hub.github.io/cransays/articles/dashboard.html, and that this queue has some packages that have been there a few days.

The system will build up the new and old versions of gsw, and then test them with oce and other dependent packages to make sure that no new problems have been created. An oce build+test can take half an hour on my unloaded machine, and perhaps 3X that on a loaded CRAN machine, so the process will take a while, even once the focus turns to gsw.

My guess is that it won't be until tomorrow that it passes over the test-against-dependencies hurdle. After that -- and again this is if things go well -- it will start appearing as prebuilt packages for various machine types and R versions. Completing this process usually takes about a week for oce; I don't release gsw often enough to recall how long it takes for it.

dankelley commented 1 year ago

Oh, there's a problem (see below, an email from CRAN). I'll look at this today.

Dear maintainer, package gsw_1.1-0.tar.gz does not pass the incoming checks automatically, please see the following pre-tests: Windows: Status: OK Debian: Status: 1 WARNING, 1 NOTE Last released version's CRAN status: OK: 8, NOTE: 1, WARNING: 4 See: CRAN Web: Please fix all problems and resubmit a fixed version via the webform. If you are not sure how to fix the problems shown, please ask for help on the R-package-devel mailing list: If you are fairly certain the rejection is a false positive, please reply-all to this message and explain. More details are given in the directory: The files will be removed after roughly 7 days. *** Strong rev. depends ***: oce seacarb vprr Best regards, CRAN teams' auto-check service Flavor: r-devel-windows-x86_64 Check: CRAN incoming feasibility, Result: Note_to_CRAN_maintainers Maintainer: 'Dan Kelley <[dan.kelley@dal.ca](mailto:dan.kelley@dal.ca)>' Flavor: r-devel-linux-x86_64-debian-gcc Check: CRAN incoming feasibility, Result: NOTE Maintainer: 'Dan Kelley <[dan.kelley@dal.ca](mailto:dan.kelley@dal.ca)>' Found the following (possibly) invalid URLs: URL: http://www.ocean-sci.net/7/1/2011/os-7-1-2011.pdf From: inst/doc/gsw.html Status: Error Message: server certificate verification failed. CAfile: none CRLfile: none (Status without verification: OK) Flavor: r-devel-linux-x86_64-debian-gcc Check: whether package can be installed, Result: WARNING Found the following significant warnings: wrappers.c:67:6: warning: function declaration isn't a prototype [-Wstrict-prototypes] See '/srv/hornik/tmp/CRAN/gsw.Rcheck/00install.out' for details.
dankelley commented 1 year ago

There are two problems. One is a link that doesn't work, and (as per oce policy, which we may as well copy here) I will simply unlink that text. The other is a problem with the following C code

void clear_gsw_data()
{
...

which I suppose the compiler is requiring being written

void clear_gsw_data(void)
{
dankelley commented 1 year ago

I think I've fixed the NOTE and WARNING in "main" commit f2e0dcf69c1fb445e4d9774af62161f35ce558ac.

I have redone codemeta, rebuilt the webpages, changed DESCRIPTION, NEWS.md and cran-comments.md, and done the other fiddly bits as usual.

I am not going to wait a few hours for the remote tests that all passed without problems yesterday because, one can only assume, those remote tests are not aligned with the CRAN machines. But I will note here that it really is a bit annoying that the check from below did not uncover the WARNING that the CRAN test machine of that type uncovered. I guess CRAN is using stricter warning specifications, or maybe it has a newer version of C than the platform used in the following. I've seen several times before that the remote tests don't uncover the problems that CRAN finds.

rhub::check(platform="debian-clang-devel", show_status=FALSE)
dankelley commented 1 year ago

PS. I am doing the rhub::check listed above, and also doing a local revdepcheck and build+test+check. The local tests will likely finish before the rhub::check. What I am not doing is to wait a few hours (yesterday one took over 8 hours) for the full suite of remote checks that I know will not uncover the problem with the C code, unless the compilers have been updated overnight.

dankelley commented 1 year ago

I just submitted using devtools::release(). Depending on how long the CRAN test queue is today, we may have results in a few hours or perhaps tomorrow or Tuesday.

dankelley commented 1 year ago

Lovely -- we're past the first gate.

Dear maintainer, package gsw_1.1-1.tar.gz has been auto-processed and is pending an automated reverse dependency check. This service will typically respond to you within the next day. For technical reasons you may receive a second copy of this message when a team member triggers a new check. Log dir: The files will be removed after roughly 7 days. Installation time in seconds: 32 Check time in seconds: 184 R Under development (unstable) (2022-10-11 r83083 ucrt) Pretests results: Windows: Status: OK Debian: Status: OK Last released version's CRAN status: OK: 8, NOTE: 1, WARNING: 4 See: CRAN Web: *** Strong rev. depends ***: oce seacarb vprr Best regards, CRAN teams' auto-check service Flavor: r-devel-linux-x86_64-debian-gcc, r-devel-windows-x86_64 Check: CRAN incoming feasibility, Result: Note_to_CRAN_maintainers Maintainer: 'Dan Kelley <[dan.kelley@dal.ca](mailto:dan.kelley@dal.ca)>'
dankelley commented 1 year ago

Making fast progress today.

Dear maintainer, thanks, package gsw_1.1-1.tar.gz is on its way to CRAN. Best regards, CRAN teams' auto-check service Package check result: OK No changes to worse in reverse depends.
dankelley commented 1 year ago

I'm closing this because gsw has been updated on CRAN. That does not mean that everyone reading this will see it on whatever CRAN mirror they use, but they will, within a day or so.

When I say updated, I refer to the source package. It will take days, maybe a week, for all the binary packages to be updated. But leaving issues open helps nobody. (See a note I just made on #55, which was open for so long that I entirely forgot about it, partly because I turned off the auto-close feature, so I didn't get a reminder that it was aging.)