NEWS.md
schema_builder(): an interactive Shiny app that guides users through building a schema description step by step, with a live grid preview and code downloadsetIDVar, setObsVar, setCluster, setFilter, setFormat, setGroups) now emit explicit, instructive error or warning messages for every detectable misspecification, replacing opaque checkmate assertions and cryptic downstream crashesvalidateSchema() now catches a further 23 schema problems before reorganise() is called, covering missing variables, out-of-bounds column/row references, incoherent cluster and key/value specifications, and contradictory argument combinationsvalidateInput() gains @details and @examples documentationsetFormat() again, which enables providing tables where the column names are in the header, where they will be spliced into the table.setGroups(), which allows to summarize columns and/or rows according to a function. The positions and summarise function here are provided via the new function .sum().find, group or position parameters..finding based on several character strings (that can themselves be regular expressions).setFilter().setHeader(), as these information are now automatically extracted from the functionsrow = in setObsVar() to top =, because this is represents a clearer meaning of what this argument describes.find() now also allows functions that evaluate to TRUE/FALSE.find().setFilter to provide which columns/rows should be ignored by a schema.find_col and find_row to .find and handle it based on the context it’s called in.setCluster(..., group = "grouping_variable", member = c(1, 1, 2, ...)).setCluster, setHeader,setFormat, setIDVar and setObsVar for easier schema setup.