# hardhat 0.1.5 Unreleased

• use_modeling_files() (and therefore, create_modeling_package()) now ensures that all generated functions are templated on the model name. This makes it easier to add multiple models to the same package (#152).

• All preprocessors can now mold() and forge() predictors to one of three output formats (either tibble, matrix, or dgCMatrix sparse matrix) via the composition argument of a blueprint (#100, #150).

# hardhat 0.1.4 2020-07-02

• Setting indicators = "none" in default_formula_blueprint() no longer accidentally expands character columns into dummy variable columns. They are now left completely untouched and pass through as characters. When indicators = "traditional" or indicators = "one_hot", character columns are treated as unordered factors (#139).

• The indicators argument of default_formula_blueprint() now takes character input rather than logical. To update:

indicators = TRUE  -> indicators = "traditional"

indicators = FALSE -> indicators = "none"

Logical input for indicators will continue to work, with a warning, until hardhat 0.1.6, where it will be formally deprecated.

There is also a new indicators = "one_hot" option which expands all factor columns into K dummy variable columns corresponding to the K levels of that factor, rather than the more traditional K - 1 expansion.

# hardhat 0.1.3 2020-05-20

• Updated to stay current with the latest vctrs 0.3.0 conventions.

• scream() is now stricter when checking ordered factor levels in new data against the ptype used at training time. Ordered factors must now have exactly the same set of levels at training and prediction time. See ?scream for a new graphic outlining how factor levels are handled (#132).

• The novel factor level check in scream() no longer throws a novel level warning on NA values (#131).

# hardhat 0.1.2 2020-02-28

• default_recipe_blueprint() now defaults to prepping recipes with fresh = TRUE. This is a safer default, and guards the user against accidentally skipping this preprocessing step when tuning (#122).

• model_matrix() now correctly strips all attributes from the result of the internal call to model.matrix().

# hardhat 0.1.1 2020-01-08

• forge() now works correctly when used with a recipe that has a predictor with multiple roles (#120).

• Require recipes 0.1.8 to incorporate an important bug fix with juice() and 0-column selections.

# hardhat 0.1.0 2019-12-16

• Added a NEWS.md file to track changes to the package.