diff --git a/DESCRIPTION b/DESCRIPTION index 7e248c8..8ccdcc3 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,7 +1,7 @@ Package: uscogdata Type: Package Title: Curated Reader for the Civilytics US Census of Governments Finance Corpus -Version: 0.1.0 +Version: 0.2.0 Authors@R: person("Civilytics", , , "jknowles@gmail.com", role = c("aut", "cre")) Description: Curated R verbs over the Civilytics US Census of Governments diff --git a/NEWS.md b/NEWS.md index 6e3b47d..31492fc 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,31 @@ +# uscogdata 0.2.0 + +## New features + +* `cog_spending()` and `cog_revenue()` accept the reserved category + `"All Categories"`, returning one summed row per + `(year, canonical_govid, subtype)` across every category inside the + requested concept's subtype scope. Combine with `subtype = "operations"` + for an operating-expenditure total. `cog_geographic_rollup()` inherits it, + which is the efficient way to build a geographic total — previously a + caller had to issue one rollup per category and sum the results + (cog-api#37). + + `"All Categories"` is not the same thing as `expenditure_concept = "total"`. + The concept chooses which subtypes are in scope; `"All Categories"` chooses + whether the rows inside that scope are broken out or summed. + +* `cog_categories()` advertises `"All Categories"` for the expenditure and + revenue vocabularies, so the reserved value is discoverable. + +## Documentation + +* `cog_geographic_rollup()` and `cog_peer_compare()` now document that + `provenance$coverage`'s `n_units_reporting` is **category-conditional** and + is not a response rate: a government that was surveyed and genuinely spends + nothing in the requested category is indistinguishable from one never + surveyed (uscogdata#36). + # uscogdata 0.1.0 (development) ## Signposting now catches partially-suppressed categories