Skip to content

SAS Packages Framework, version 20221121

Compare
Choose a tag to compare
@yabwon yabwon released this 21 Nov 13:29
· 77 commits to main since this release

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:

 %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 sometimes 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]