From b4314c03e3ccc16fa828257e4e8098d0ef143461 Mon Sep 17 00:00:00 2001 From: Bart Jablonski Date: Mon, 21 Nov 2022 14:30:47 +0100 Subject: [PATCH] SAS Packages Framework, version 20221121 ## SAS Packages Framework, version 20221121 --- ### New feature of "Cherry picking" added to the SAS Packages Framework. Sometimes a package offers so many features that the number may be "overwhelming". In such case only some of them may be selected for loading. Such process is called a "cherry picking". The feature is provided by the `%loadPackage()` macro which uses a `cherryPick=` parameter (see description below). For example, execution of the following code: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~sas %loadPackage(BasePlus, cherryPick=rainCloudPlot getVars) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ results with loading only the `rainCloudPlot` and the `getVars` elements. If several object types (e.g., a macro and a format) share the same name all will be loaded. What is the trade-off? - Since the cherry picking selects only a part of the package the `SYSloadedPackages` macrovariable is not updated with the package name. - Dependencies i.e., packages from the `ReqPackages` list, are not loaded automatically, so they have to be loaded manually. - The `%unloadPackage()` macro executed on such partially loaded package may issue some (irrelevant) warnings. --- ### Changes in `%loadPackage()` macro: - New `cherryPick=` parameter added to the macro. As a value a *space separated* list of selected elements of the package to be loaded into the SAS session is expected. Default value of an asterisk (`*`) means: "load all elements of the package". Empty list is equivalent to default. - Documentation updated. ### Changes in `%generatePackage()` macro: - Code adjustment for the cherry picking feature. - Minor additional code refactoring. - The `%ICEloadPackage()` macro does not support cherry picking. --- ### The following packages were regenerated with the latest version of the framework: - BasePlus [1.17.2] - DFA [0.5.2] - dynMacroArray [0.2.2] - GSM [0.20.2] - macroArray [1.0.2] - SQLinDS [2.2.2] --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c141173..68c572f 100644 --- a/README.md +++ b/README.md @@ -134,7 +134,7 @@ The SAS Packages Framework [(short) documetation](https://github.com/yabwon/SAS_ ### Updates worth mentioning: -**Update**\[November 21st, 2022\]**:** ` %loadPackage()` **macro allows Cherry Picking of content (see [here]())**. +**Update**\[November 21st, 2022\]**:** ` %loadPackage()` **macro allows Cherry Picking of content (see [here](https://github.com/yabwon/SAS_PACKAGES/releases/tag/20221121 "Cherry Picking"))**. **Update**\[September 30th, 2022\]**:** **New dedicated repository:** *SASPAC - the SAS Packages Archive* **is available as new location for packages storage**. Location of SASPAC is: [`https://github.com/SASPAC`](https://github.com/SASPAC)