Releases: tidyverse/hms
Releases · tidyverse/hms
hms 0.4.0
Breaking changes
as.hms.POSIXt()
now defaults to the current time zone, the previous default was"UTC"
and can be restored by callingpkgconfig::set_config("hms::default_tz", "UTC")
.
New features
- Pillar support, will display
hms
columns in tibbles in color on terminals
that support it (#43). - New
round_hms()
andtrunc_hms()
for rounding or truncating to a given multiple of seconds (#31). - New
parse_hms()
andparse_hm()
to parse strings in "HH:MM:SS" and "HH:MM" formats (#30). as.hms.POSIXt()
gainstz
argument, default"UTC"
(#28).as.hms.character()
andparse_hms()
accept fractional seconds (#33).
Bug fixes
hms()
now works correctly if all four components (days, hours, minutes, seconds) are passed (#49).hms()
creates a zero-length object of classhms
that prints as"hms()"
.hms(integer())
andas.hms(integer())
both work and are identical tohms()
.- Values with durations of over 10000 hours are now printed correctly (#48).
c()
now returns a hms (#41, @qgeissmann).
Documentation and error messages
- Fix and enhance examples in
?hms
. - Documentation is in Markdown format now.
- Improved error message if calling
hms()
with a character argument (#29).
v0.3
v0.2
Minor fixes and improvements.
- Subsetting keeps
hms
class (#16). format.hms()
right-justifies the output by padding with spaces from the left,as.character.hms()
remains unchanged.- Times larger than 24 hours or with split seconds are now formatted correctly (#12, #13).
- Sub-second part is printed with up to six digits, for even smaller values trailing zeros are shown (#17).
v0.1
First CRAN release.
- Values are stored as a numeric vector that contains the number of seconds
since midnight.- Inherits from
difftime
class. - Updating units is a no-op, anything different from
"secs"
issues a warning.
- Inherits from
- Supports construction from time values, coercion to and from various data
types, and formatting.- Conversion from numeric treats input as seconds.
- Negative times are formatted with a leading
-
.
- Can be used as a regular column in a data frame.
- Full test coverage.
- Test for arithmetic with
Date
,POSIXt
andhms
classes. - Test basic compatibility with
lubridate
package (#5).
- Test for arithmetic with
- Interface:
hms()
(with rigorous argument checks)as.hms()
forcharacter
,numeric
,POSIXct
andPOSIXlt
as.xxx.hms()
forcharacter
,numeric
(implicitly),POSIXct
and
POSIXlt
is.hms()
as.data.frame.hms()
(forwards toas.data.frame.difftime()
)format.hms()
print.hms()
(returns unchanged input invisibly)