-
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.
-
New vignettes:
vignette("stages")
describes the lifecycle stagesvignette("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 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.
-
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.