Changelog
Source:NEWS.md
lifecycle 1.0.4
Repeated calls to
deprecate_soft()
anddeprecate_warn()
are faster thanks to some internal refactoring (#177).Switch from
expr_deparse()
todeparse()
. This improves performance considerably and the cost of making some unusual function calls mildly less appealing (#167).
lifecycle 1.0.3
CRAN release: 2022-10-07
The
with
line is now an info bullet. Thedetails
lines are info bullets by default, unless the argument is named.Indirect usages of deprecated features now mention the package that likely used the deprecated feature and recommends contacting the authors (#135).
Indirect usages of
deprecate_warn()
no longer warn repeatedly, even ifalways = TRUE
(#135).In tests,
deprecate_soft()
will only warn if the deprecated function is called directly from the package being tested, not one of its dependencies. This ensures that you only see the warning when it’s your responsibility to do something about it (#134).Soft deprecations now only warn every 8 hours in non-package code (#134).
lifecycle 1.0.2
CRAN release: 2022-09-09
You can now generate arbitrary text in a deprecation message by wrapping
what
orwith
inI()
(#120).deprecate_warn()
gains analways = TRUE
argument to force warnings to occur every time, not every 8 hours. This adds an extra step in betweendeprecate_warn()
anddeprecate_stop()
(#124).signal_stage()
now supportswith
(#116).
lifecycle 1.0.1
CRAN release: 2021-09-24
deprecate_soft()
now follows the verbosity option when called from the global environment (#113).last_warnings()
has been renamed tolast_lifecycle_warnings()
andlast_warning()
has been removed. This is for compatibility with the futurerlang::last_warnings()
function to be released in the next rlang version.
lifecycle 1.0.0
CRAN release: 2021-02-15
-
New vignettes:
-
vignette("stages")
describes the lifecycle stages -
vignette("manage")
teaches you how to manage lifecycle changes in functions you use. -
vignette("communicate")
shows how to use lifecycle in functions that you write.
-
-
In
deprecate_soft()
,deprecate_warn()
, anddeprecate_stop()
:You can deprecate an argument with
foo(arg)
instead offoo(arg =)
(#78). This syntax is similar in spirit to the formal arguments of function definitions.You can deprecate R6 methods by using
class$method()
(#54).A character vector
details
is now converted into a bulleted list (#55).Messages for non-prefix functions (like “
x<-
()” and “%>%
()”) look a little nicer (#95).Manually printed warnings now omit the advice footer (#68).
Experimental
signal_stage()
can be used to signal that a function is experimental or superseded. These signals are not currently hooked up to any behaviour, but we’ll add tools in a future release (#44).lifecycle_cnd_data()
has been removed; as far as I can tell it wasn’t used by anyone.
lifecycle 0.2.0
CRAN release: 2020-03-06
Lifecycle warnings are now displayed once every 8 hours.
Added experimental
signal_experimental()
andsignal_superseded()
functions.Added the “superseded” lifecycle stage to the documentation.
deprecate_stop()
now mentions that function is defunct (#28).New
expect_deprecated()
andexpect_defunct()
functions for testting lifecycle warnings and errors.expect_deprecated()
automatically sets thelifecycle_verbosity
option to"warning"
to enforce warnings at each invokation rather than once per session.New syntax
"foo(arg = 'can\\'t be a baz')"
to describe that specific inputs for an argument are deprecated (#30, @krlmlr).New
is_present()
function to test whether the caller has supplied adeprecated()
function.
lifecycle 0.1.0
CRAN release: 2019-08-01
Deprecated functions under the control of the developer now warn repeatedly in unit tests.
Deprecation warnings now record a backtrace. Call
lifecycle::last_lifecycle_warnings()
andlifecycle::last_warning()
to print the warnings that occurred during the last command, along with their backtraces.-
The naming scheme of signaller functions has been simplified:
-
signal_soft_deprecated()
is nowdeprecate_soft()
. -
warn_deprecated()
is nowdeprecate_warn()
. -
stop_defunct()
is nowdeprecate_stop()
.
-
The signaller functions now take a version and two descriptors for the deprecated feature and its replacement (the latter is optional). The deprecation message is built from these components. You can pass a
details
argument to append additional information to the generated deprecation message.Helpers from rlang’s
compat-lifecycle.R
drop-in file are now exported in this package.