## SAS Packages Framework, version `20231107`
Minor fix. An ugly note in log removed for `%loadPackageAddCnt()` macro.
## The BasePlus package [ver. 1.33.0]
- New macro [`%unzipArch()`](https://github.com/SASPAC/baseplus/blob/main/baseplus.md#unziparch-macro) added. The macro allows to extract ZIP archive file from SAS session and does not need `XCMD` (is OS independent).
- Documentation updated.
## The GSM package [ver. 0.22.0]
- Article explaining details of "macro hiding" added as an additional content to the package.
## The macroArray package [ver. 1.2.0]
- New parameters added to the [`%mcDictionary()`](https://github.com/SASPAC/macroarray/blob/main/macroarray.md#mcdictionary-macro) macro which allows to populate dictionary directly from a data set (see the last example in doc.).
- Documentation updated.
## SAS Packages Framework, version `20230904`
---
New features in this release are:
- in `%generatePackage()` macro - test for check of duplicated names of the same type was added to the package generation process.
- in `%loadPackage()` macro - User can now suppress running the `exec` type files during the loading process. Parameter name is `suppressExec=`.
- in `%helpPackage()` macro - User can now generate dataset `work.packageName_content` containing list of the package elements similar to the one printed in the log. Parameter name is `packageContentDS=`.
Documentation updated.
---
Packages regenerated with new version of the SPF:
- BasePlus package [ver. `1.29.1`]
- DFA package [ver. `0.5.6`]
- GSM package [ver. `0.21.1`]
- macroArray package [ver. `1.0.6`]
- SQLinDS package [ver. `2.2.7`]
- dynMacroArray package [ver. `0.2.6`]
The GSM package [ver. 0.21.0]
Changes:
- new debugging parameter `encrypt` added to the `%GSM()` macro
- annoying note on "automatic type conversion" fixed
SAS Packages Framework, version 20221215
Changes in the framework:
- Bug fix for `formats` and `proto` with cherry picking.
- Packages regenerated with the latest framework version:
- SQLinDS [2.2.4]
- DFA [0.5.4]
- macroArray [1.0.4]
- BasePlus [1.18.4]
- GSM [0.20.4]
- dynMacroArray [0.2.4]
- New macro `%bpPIPE()` in BasePlus package.
- Documentation updated.
## SAS Packages Framework, version 20221125
---
### Changes in `%generatePackage()` macro:
- Bug fix on the edge between cherry picking feature and loading required packages.
- Documentation updated.
---
### The following packages were regenerated with the latest version of the SAS Packages Framework:
- BasePlus [1.17.3]
- DFA [0.5.3]
- dynMacroArray [0.2.3]
- GSM [0.20.3]
- macroArray [1.0.3]
- SQLinDS [2.2.3]
## 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]
SAS Packages Framework, ver. 20221112
Changes in `%generatePackage()` macro:
- refactoring of package metadata extraction and metadata file preparation,
- in a package folder all subfolders which name starts with `!` are ignored in the package generation process,
- in a package folder all subfolders with unknown code types are ignored in the package generation process,
- bug fix in package version extraction for required package list,
- new test added to loading test,
- documentation updated.
---
The following packages were regenerated:
- BasePlus [1.17.1]
- DFA [0.5.1]
- dynMacroArray [0.2.1]
- GSM [0.20.1]
- macroArray [1.0.1]
- SQLinDS [2.2.1]
The SAS Packages Framework, version 20220830:
- New metadata checks added for required SAS components and required SAS packages.
- New parameter `delTestWork` in `%generatePackage()` macro added. It indicates if `WORK` directories generated by user tests should be deleted, i.e. the (NO)WORKTERM option is set.
- Log aesthetics and readability improved in the `%generatePackages()` macro:
- subtitles added in the log,
- `stimer` turned off,
- some notes turned off.
- Generation of table with tests results updated.
- Documentation updated.
Packages regenerated with the new version of SPF:
- BasePlus
- SQLinDS
- macroArray
- DFA
- dynMacroArray
- GSM
**SAS Packages Framework**, version 20220420
- Changes in the `%GeneratePackage()` macro:
- check for driving files existence added,
- local `createPackageContentStatus` macro variable added,
- if `createPackageContentStatus` is not zero an _ERROR _is printed and tests are not executed,
- The `kscanx()` function and `kcountw()` function used in macros of the Framework,
- Doc. updated.
- Packages regenerated with new version of the SAS Packages Framework:
- BasePlus
- SQLinDS
- macroArray
- DFA
- dynMacroArray
- GSM
The `GSM` package [ver. 0.19]
- The code file parsing modified.
- A `lineEnd=` parameter added.
- The `trim=` parameter deprecated.
- A warning about the `/*%` text changed into a note.
- Documentation updated.
hash: F63B8C602C1DB02F4107D9AF78182D87CD64AEA6521163067B7EB6D5C1B368AF
**SAS Packages Framework**, version 20211111:
- The `packages` fileref can point to multiple directories now, e.g. `filename packages ("/dir/nr/one" "/dir/nr/two");`
- New macro `%extendPackagesFileref()` added,
- Help updated,
- Packages regenerated with new version of SPF:
- DFA,
- GSM,
- MacroArray,
- BasePlus,
- dynMacroArray,
- SQLinDS.
**GSM** (Generate Secure Macros) package, version 0.13
Doc. updated.
The Package allows to create secured macros stored in SAS Proc FCMP functions. The dataset with functions can be shared between different operating systems and allows to generate macros on site without showing their code.
**GSM** (Generate Secure Macros) package, version 0.13
Bug fix.
The Package allows to create secured macros stored in SAS Proc FCMP functions. The dataset with functions can be shared between different operating systems and allows to generate macros on site without showing their code.
**GSM** (Generate Secure Macros) package, version 0.12
The Package allows to create secured macros stored in SAS Proc FCMP functions. The dataset with functions can be shared between different operating systems and allows to generate macros on site without showing their code.
**GSM** (Generate Secure Macros) package, version 0.11
The Package allows to create secured macros stored in SAS Proc FCMP functions. The dataset with functions can be shared between different operating systems and allows to generate macros on site without showing their code.
**GSM** (Generate Secure Macros) package, version 0.1
The Package allows to create secured macros stored in SAS Proc FCMP functions. The dataset with functions can be shared between different operating systems and allows to generate macros on site without showing their code.