Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

as.hms should be able to parse if no seconds #30

Closed
hadley opened this issue Apr 23, 2017 · 4 comments
Closed

as.hms should be able to parse if no seconds #30

hadley opened this issue Apr 23, 2017 · 4 comments

Comments

@hadley
Copy link
Member

hadley commented Apr 23, 2017

> hms::as.hms("05:00")
NA
@krlmlr
Copy link
Member

krlmlr commented Apr 25, 2017

We could support as.hms("05:00", "%H:%M"), but I'm not sure we should accept this unconditionally.?

@hadley
Copy link
Member Author

hadley commented Apr 25, 2017

Unconditionally seems reasonable to me

@krlmlr krlmlr closed this as completed in f46cad7 Apr 25, 2017
@krlmlr
Copy link
Member

krlmlr commented Apr 25, 2017

Added parse_hm() and parse_hms(), because I think it's better to be explicit. as.hms() forwards to parse_hms().

krlmlr added a commit that referenced this issue Apr 25, 2017
- New `round_hms()` and `trunc_hms()` for rounding or truncating to a given multiple of seconds (#31).
- New `parse_hms()` and `parse_hm()` to parse strings in "HH:MM:SS" and "HH:MM" formats (#30).
- Documentation is in Markdown format now.
- Improved error message if calling `hms()` with a character argument (#29).
krlmlr added a commit that referenced this issue Nov 23, 2017
Breaking changes
----------------

- `as.hms.POSIXt()` now defaults to the current time zone, the previous default was `"UTC"` and can be restored by calling `pkgconfig::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()` and `trunc_hms()` for rounding or truncating to a given multiple of seconds (#31).
- New `parse_hms()` and `parse_hm()` to parse strings in "HH:MM:SS" and "HH:MM" formats (#30).
- `as.hms.POSIXt()` gains `tz` argument, default `"UTC"` (#28).
- `as.hms.character()` and `parse_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 class `hms` that prints as `"hms()"`.
- `hms(integer())` and `as.hms(integer())` both work and are identical to `hms()`.
- 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).
@github-actions
Copy link
Contributor

This old thread has been automatically locked. If you think you have found something related to this, please open a new issue and link to this old issue if necessary.

@github-actions github-actions bot locked and limited conversation to collaborators Dec 23, 2020
# for free to subscribe to this conversation on GitHub. Already have an account? #.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants