A Flexible Class for Messy Dates
Overview
Contains a set of tools for constructing and coercing into and from the "mdate" class. This date class implements ISO 8601-2:2019(E) and allows regular dates and times to be annotated to express unspecified date or time components, approximate or uncertain components, ranges, and sets of dates. The package therefore retains, represents, and reasons about data and time imprecision, resolving to a single data/time only on demand. This is useful for describing and analysing temporal information, whether historical or recent, where date or time precision may vary.
Package
- Added a reverse dependency job to the PR checks workflow
Coercion
- Added parsing of a day of the year, e.g. "the 103rd day of 2026" (closes #97)
- Gives
"2026-04-13";"2026-103"notation is still rejected as ambiguous - Added parsing of a week of the year, e.g. "the 5th week of 2026" (closes #96)
- Gives the range
"2026-01-26..2026-02-01" - Weeks follow ISO 8601, so week 1 can start in December of the year before
"2026-W05"and"2026-W05-3"are read too, but recorded as dates/ranges- Updated the documentation of seasons in prose, e.g. "summer 2026" (closes #98)
- Gives the northern-hemisphere month range
"2026-06..2026-08" "2026-22"season codes are still rejected as ambiguous
Show all changes in 1.1.1Hide the rest of the changes in 1.1.1
- Improved the errors for ordinal dates and season codes to name the prose form
- Fixed "before" and "after" keeping both bounds of a range that followed
- "before summer 2026" gave
"..2026-06..2026-08"and now gives"..2026-06" - Fixed prose naming an impossible date becoming
NAwithout a warning - "the 53rd week of 2025" now warns, as other unparseable text does
From NEWS.md in the release
Install
Health
- OK13 OK2026-08-05
- NOTE12 OK, 1 NOTE2026-08-01
- OK13 OK2026-06-09
- ERROR12 OK, 1 ERROR2026-06-08
- OK13 OK2026-05-08
Show 2 earlier changesHide 2 earlier changes
- WARNING12 OK, 1 WARNING2026-05-07
- OK14 OK2026-03-10
Documentation
- Help pages
- 21 (2 internal)
- Examples that run
- 95%18 run in a plain check · 1 only when donttest examples are enabled (R CMD check --as-cran)
- Exported functions with examples
- 87%
- Documented parameters
- 83%
- Return-value docs
- 77%
- Help pages citing references
- 0%
Downloads
Repository
- PRs merged (all time)
- 97%
- Median days to close, 50 most recently updated closed issues
- 78
- Median days to close, 50 most recently updated closed PRs
- 0
Stars over time
Forks over time
Releases over time
Issues over time
PRs over time
Commits over time
Commit identities over time
15 development-tooling and community-health practices detected across 7 families in the upstream repository
Checks run against github.com/globalgov/messydates on 2026-10-11.
The R CMD check workflow runs on Linux, macOS and Windows
GitHub Pages site last deployed 2026-09-01 · The repository has a site deploy workflow
pkgdown site last built 2026-09-01
Show all practicesHide 3 practices
This repository shows signs of AI coding tools.
- Claude Codefirst seen 2026-07-02Named in .Rbuildignore: .claude, CLAUDE.mdNamed in .gitignore: CLAUDE.md
- GitHub Copilotfirst seen 2026-07-03Commits: 1 by its own account
Dependencies
Installing messydates adds 5 packages (3 with compiled code, 12 MB of source tarballs). Heaviest: stringi 11 MB, lubridate 420 KB, cpp11 298 KB.
Code & Tests
Datasets
People & History
Pick two releases to compare their code metrics.
- 1.1.1Latest
- 1.1.0
- 1.0.02026-07-16 · diff ↗ ·
added 8 exports
approximate, hour, make_messyduration, mday, minute, second, tz, uncertain - RR 4.6.0 released · 2026-04-24
- 0.5.42025-06-02 · diff ↗
- RR 4.5.0 released · 2025-04-11
- 0.5.32025-03-20 · diff ↗
- 0.5.22025-03-07 · diff ↗ ·
removed 1 export
mreportadded 7 exports
is_bce, vmax, vmean, vmedian, vmin, vmodal, vrandom - RR 4.4.0 released · 2024-04-24
- 0.4.12024-04-19 · diff ↗ ·
removed 1 export
NA_mdate_added 13 exports
%><%, %>=<%, %g%, %ge%, %intersect%, %l%, %le%, %union%, is_subset, mdate, messyduration, new_messyduration, validate_messyduration - RR 4.3.0 released · 2023-04-21
- 0.3.52023-01-20 · diff ↗
- 0.3.32022-12-21 · diff ↗
- 0.3.12022-07-21 · diff ↗ ·
removed 2 exports
maxmax, minminadded 3 exports
is_approximate, is_uncertain, mreport - 0.3.02022-06-02 · diff ↗ ·
removed 3 exports
NA_messydt_, interleave, resequenceadded 4 exports
NA_mdate_, is_precise, maxmax, minmin - RR 4.2.0 released · 2022-04-22
Package metadata
- First published
- 2021-07-19
- Total releases
- 14 / 5 yrs
- License
- MIT + file LICENSE OSI
- Minimum R
- ≥ 4.1
- Bundled data
- 0.8 KB / 1 file
- Download size
- 3.6 MB
Cite
Cite this package
Run in R for the authors' entry:
citation("messydates")The package provides a citation file, so citation() returns the authors' own entry.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-19, which the citation names so these numbers can be found later. More on citing and the projects behind them.