dankelley / oce

R package for oceanographic processing
http://dankelley.github.io/oce/
GNU General Public License v3.0
145 stars 42 forks source link

findInOrdered() and byteToBinary() should move from "deprecated" to "defunct" #1420

Closed dankelley closed 6 years ago

dankelley commented 6 years ago

Whilst adding to the NEWS file (about the new rotateAboutZ() function), I noticed that several things were marked deprecated in previous CRAN releases, so I plan to make them defunct in the "develop" branch (which means that they will then get removed, 2 CRAN releases from now).

This issue is just a reminder, because I tend to forget about the timetable (which mimics that of the bioconductor project)

0.9-24
- flag improvements
- rotateAboutZ() added
- concatenate() added
- read.woa() added
- colormap() value has new item 'colfunction'

0.9-23
- tidem() permits inferred constituents
- tidem() follows T_TIDE phase convention
- adorn argument removed from plot functions (after being defunct 1+ year)
- deprecate findInOrdered()

0.9-22
- plot,section-method() can use external bathymetry
- lowpass() added
- ctdTrim() can isolate upcasts
- deprecate byteToBinary()
- address a CRAN NOTE about UTF-8 strings in data
dankelley commented 6 years ago

Actually, byteToBinary is still being used in some internal code, so I'll need to fix that (and test it) first.

dankelley commented 6 years ago

There are several others. Over the next week or two, I plan to clean all of this up and set up a more systematic working plan. I will delete them from the text below, as I handle them. The other new thing is that I plan to set up build-tests on the warnings and error messages, so I can be sure that ?'oce-deprecated' produces accurate tables, and also so that I can work in "develop" without much fear of wrecking users' builds.

#' The next CRAN release of \sQuote{oce} will designate these functions as
#' "defunct".
#'
#' \tabular{lll}{
#' \strong{Deprecated}       \tab \strong{Replacement}            \tab \strong{Notes}\cr
## \code{findInOrdered(x,f)} \tab \code{\link{findInterval}(f,x)} \tab Deprecated 2017-09-07\cr
#' \code{byteToBinary}       \tab \code{\link{rawToBits}}         \tab Deprecated in 2016?\cr
#' \code{mapZones}           \tab \code{\link{mapGrid}}           \tab Deprecated 2016-02-13\cr
#' \code{mapZones}           \tab \code{\link{mapGrid}}           \tab Deprecated 2016-02-13\cr
#' \code{mapMeridians}       \tab \code{\link{mapGrid}}           \tab Deprecated 2016-02-13\cr
#' \code{addColumn}          \tab \code{\link{oceSetData}}        \tab Deprecated 2016-08-01\cr
#' \code{oce.magic}          \tab \code{\link{oceMagic}}          \tab Deprecated 2016-09-01\cr
#' \code{ctdAddColumn}       \tab \code{\link{oceSetData}}        \tab Deprecated 2016-11-11\cr
#' \code{oce.as.POSIXlt}     \tab \code{\link[lubridate]{parse_date_time}} \tab Deprecated 2016-12-17\cr
#' }
dankelley commented 6 years ago

Clearly, I had been ignoring these poor old deprecated functions! I made them all defunct, which is according to the plan (and the convention established in the bioconductor system). The changes are in the "develop" branch, commit 24d2014dae63054db2066e378a8e282ba5db221e. An important addition is that we now have tests of the errors from 'Defunct' cases. (There would be tests for warnings from 'Deprecate' cases, except that none exist at the moment.) I think my new way of documenting and testing will encourage sticking to the protocol in the future.