diff --git a/NEWS.md b/NEWS.md index 3d6dd558..fa51d2a1 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,76 +1,48 @@ # xportr (development version) -## New Features and Bug Fixes +## New Features +* All core functions can be run together by using new function `xportr()` (#137) * `xportr_metadata()` can set `verbose` for a whole pipeline, i.e. setting `verbose` in `xportr_metadata()` will populate to all `xportr` functions. (#151) - -* All `xportr` functions now have `verbose = NULL` as the default (#151) - -* Bug fix for domain filtering (#137) - -## Documentation - -* Remove unused packages from Suggests (#221) - -* `xportr_write()` now accepts `metadata` argument which can be used to set the dataset label to stay consistent with the other `xportr_*` functions. It is noteworthy that the dataset label set using the `xportr_df_label()` function will be retained during the `xportr_write()`. - -* Exporting a new dataset `dataset_spec` that contains the Dataset Specification for ADSL. (#179) - +* `xportr_split()` is a new function that allows users to split a dataset into multiple output files based on a variable. (#183) +* `xportr_write()` now accepts `metadata` argument which can be used to set the dataset label to stay consistent with the other `xportr_*` functions. It is noteworthy that the dataset label set using the `xportr_df_label()` function will be retained during the `xportr_write()`. (#179) * Added a check for character variable lengths up to 200 bytes in `xpt_validate()`(#91, #189). - * File name check is moved to strict_checks condition to allow underscores in the file name. Underscores are allowed in xpt but not per FDA requirements. (#126) - * It is now possible to get and set the xportr options using the helper function `xportr_options()` (#130) - -* Added `xportr.character_metadata_types` and `xportr.numeric_metadata_types` to list the metadata types that are character or numeric. Updated `xportr.character_types` and `xportr.numeric_types` to list only the R types that are character and the R types that are numeric. This ensures that all R types, including dates, are now managed by xportr_type. If the R type differs from the metadata type, the variable is coerced (#161).. - -* Adds argument assertions to public functions using `{checkmate}` (#175) -* `xportr_split()` is a new function that allows users to split a dataset into multiple output files based on a variable. (#183) - -* `xportr_metadata()` can set `verbose` for a whole pipeline, i.e. setting `verbose` in `xportr_metadata()` will populate to all `xportr` functions. (#151) - -* All `xportr` functions now have `verbose = NULL` as the default. If left `NULL`, the previous default of `getOption("xportr.[fn_name]_verbose")` is used (#151) - -* All core functions can be run together by using new function `xportr()` (#137) - +* Added `xportr.character_metadata_types` and `xportr.numeric_metadata_types` to list the metadata types that are character or numeric. Updated `xportr.character_types` and `xportr.numeric_types` to list only the R types that are character and the R types that are numeric. This ensures that all R types, including dates, are now managed by xportr_type. If the R type differs from the metadata type, the variable is coerced (#161). * New argument in `xportr_length()` allows selection between the length from metadata, as previously done, or from the calculated maximum length per variable when `length_source` is set to “data” (#91) - * Series of basic checks added to the `xportr_format()` function to ensure format lengths, prefixes are accurate for the variable type. Also to ensure that any numeric date/datetime/time variables have a format. (#164) - -* Make `xportr_type()` drop factor levels when coercing variables - * `xportr_length()` assigns the maximum length value instead of 200 for a character variable when the length is missing in the metadata (#207) +## Bug Fixes + +* Bug fix for domain filtering (#137) +* Make `xportr_type()` drop factor levels when coercing variables (#159) ## Deprecation and Breaking Changes * The `domain` argument for xportr functions will no longer be dynamically -determined by the name of the data frame passed as the .df argument. This was +determined by the name of the data frame passed as the `.df` argument. This was done to make the use of xportr functions more explicit. (#182) - -* The `label` argument from the `xportr_write()` function is deprecated in favor of the `metadata` argument. (#179) -* The `metacore` argument, which was renamed to `metadata` in the following six xportr functions: (`xportr_df_label()`, `xportr_format()`, `xportr_label()`, `xportr_length()`, `xportr_order()`, and `xportr_type()`) in version `0.3.0` with a soft deprecation warning, has now been hard deprecated. Please update your code to use the new `metadata` argument in place of `metacore`. - +* The `metacore` argument, which was renamed to `metadata` in the following six xportr functions: (`xportr_df_label()`, `xportr_format()`, `xportr_label()`, `xportr_length()`, `xportr_order()`, and `xportr_type()`) in version `0.3.0` with a soft deprecation warning, has now been hard deprecated. Please update your code to use the new `metadata` argument in place of `metacore`. (#203) * `SASlength` and `SAStype` were removed since they did not have an impact on `xpt_validate` or any other functions (#132) -* Removes `admiral` from suggested dependencies (#237) * `adsl` data object is now called `adsl_xportr` (#237) -* Data objects are no longer lazy loaded, which means that when needed the user must call `data("name_of_object")` first (#237) ## Documentation * Created development version of the website (#187) - * Additional guidance for options added in deep dive vignette (#81) - * Added a vignette about standards in different agencies (#206) - * Removed non-user facing function documentation (#192) - * Added more details about `xportr_length()` and `xportr()` to deep dive vignette (#215, #222) ## Miscellaneous * Tests use `{withr}` to create temporary files that are automatically deleted (#219) +* Remove unused packages from Suggests (#221, #237) +* Exporting a new dataset `dataset_spec` that contains the Dataset Specification for ADSL. (#179) +* Adds argument assertions to public functions using `{checkmate}` (#175) +* Data objects are no longer lazy loaded, which means that when needed the user must call `data("name_of_object")` first (#237) # xportr 0.3.2