From 252c15b1c36ec30edc060f9f6fc4e6185d383c5c Mon Sep 17 00:00:00 2001 From: yabwon Date: Wed, 14 Oct 2020 15:06:09 +0200 Subject: [PATCH] SAS Packages Framework, version 20201014 **SAS Packages Framework**, version 20201014: - Small change in displaying help information in the log. Packages recompiled with new version of SAS Packages Framework: - `SQLinDS` (version 2.2) - `macroArray` (version 0.5) - `DFA` (version 0.2) - `BasePlus` (version 0.7) - `dynMacroArray` (version 0.2) --- README.md | 12 +++---- SPF/SPFinit.md | 2 +- SPF/SPFinit.sas | 56 +++++++++++++++---------------- packages/README.md | 10 +++--- packages/SHA256_for_packages.txt | 8 ++++- packages/baseplus.md | 2 +- packages/baseplus.zip | Bin 43665 -> 43666 bytes packages/dfa.zip | Bin 28778 -> 28782 bytes packages/dynmacroarray.zip | Bin 11731 -> 11738 bytes packages/macroarray.md | 2 +- packages/macroarray.zip | Bin 28711 -> 28718 bytes packages/sqlinds.md | 2 +- packages/sqlinds.zip | Bin 11624 -> 11633 bytes 13 files changed, 50 insertions(+), 44 deletions(-) diff --git a/README.md b/README.md index bcf7019..c948aa3 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ A **SAS package** is an automatically generated, single, stand alone *zip* file The *purpose of a package* is to be a simple, and easy to access, code sharing medium, which will allow: on the one hand, to separate the code complex dependencies created by the developer from the user experience with the final product and, on the other hand, reduce developer's and user's unnecessary frustration related to a remote deployment process. -In this repository we are presenting the **SAS Packages Framework** which allows to develop and use SAS packages. The latest version of SPF is **`20201010`**. +In this repository we are presenting the **SAS Packages Framework** which allows to develop and use SAS packages. The latest version of SPF is **`20201014`**. To get started with SAS Packages try this [**`Getting Started with SAS Packages`**](https://github.com/yabwon/SAS_PACKAGES/blob/master/SPF/Documentation/Getting_Started_with_SAS_Packages.pdf "Getting Started with SAS Packages") presentation (see the `./SPF/Documentation` directory). @@ -79,13 +79,13 @@ Currently the following packages are available (see the `./packages` directory): set %SQL(select * from sashelp.class order by age); run; ``` -SHA256 digest for SQLinDS: D76B85EFF129678B45233FB397A2BDB8D23F234013BD821D55141CA18DD5589E +SHA256 digest for SQLinDS: F070926B26504F9F65384EE3FB84E2E54B223FDAB71EDD61B11B865262C2E5DD [Documentation for SQLinDS](https://github.com/yabwon/SAS_PACKAGES/blob/master/packages/sqlinds.md "Documentation for SQLinDS") - **DFA** (Dynamic Function Arrays)\[0.2\], contains set of macros and FCMP functions which implement: a dynamically allocated array, a stack, a fifo queue, an ordered stack, and a priority queue, run `%helpPackage(DFA,createDFArray)` to find examples. -SHA256 digest for DFA: 43AE8BB0FC7D2121AABDD8DB8AD2C3F226C7D2699CAACC171FCB72B75D9141FA +SHA256 digest for DFA: 7E9042867ED9C4BD2F27B3CD9180701CE619E301C13F5BD82DB46547616D17DF - **macroArray**\[0.5\], implementation of an array concept in a macrolanguage, e.g. @@ -107,7 +107,7 @@ SHA256 digest for DFA: 43AE8BB0FC7D2121AABDD8DB8AD2C3F226C7D2699CAACC171FCB72B75 which = 1:H:2 ); ``` -SHA256 digest for macroArray: 085A0F3D544EAF01378BB6C6B4F429123F8BFEEFC76013D1B05DFADFEE3FA661 +SHA256 digest for macroArray: 519B1CE64F66F8498B10F5EB253BB45FC860E3F7868FCEB97ABF45C96F30716D [Documentation for macroArray](https://github.com/yabwon/SAS_PACKAGES/blob/master/packages/macroarray.md "Documentation for macroArray") @@ -126,12 +126,12 @@ format x bool.; %put %getVars(sashelp.class, pattern = ght$, sep = +, varRange = _numeric_); ``` -SHA256 digest for BasePlus: 54232DA5E253EB58E49A09DD0DF244F433B61983D921E27F2E4FFB1EA73A5C6D +SHA256 digest for BasePlus: 75B8D2BF718E035FEFC0D24504A6EBB9893883E2DF5D0FCD2D8ADD28456CFEBD [Documentation for BasePlus](https://github.com/yabwon/SAS_PACKAGES/blob/master/packages/baseplus.md "Documentation for BasePlus") - **dynMacroArray**\[0.2\], set of macros (wrappers for a hash table) emulating dynamic array in the data step (macro predecessor of DFA) -SHA256 digest for dynMacroArray: 281D9493564A8185B858D9525AA7D9D5343E42414AAB1D8A00AE85AB80882661 +SHA256 digest for dynMacroArray: FF111DA330ACE57BAE8C9B7890839045B691A17414AE04CBD49C66BCD9663B21 ### ====== diff --git a/SPF/SPFinit.md b/SPF/SPFinit.md index 65ea6d6..77c6f5b 100644 --- a/SPF/SPFinit.md +++ b/SPF/SPFinit.md @@ -4,7 +4,7 @@ A **SAS package** is an automatically generated, single, stand alone *zip* file The *purpose of a package* is to be a simple, and easy to access, code sharing medium, which will allow: on the one hand, to separate the code complex dependencies created by the developer from the user experience with the final product and, on the other hand, reduce developer's and user's unnecessary frustration related to a remote deployment process. -In this repository we are presenting the **SAS Packages Framework** which allows to develop and use SAS packages. The latest version of SPF is **`20201010`**. +In this repository we are presenting the **SAS Packages Framework** which allows to develop and use SAS packages. The latest version of SPF is **`20201014`**. To get started with SAS Packages try this [**`Getting Started with SAS Packages`**](https://github.com/yabwon/SAS_PACKAGES/blob/master/SPF/Documentation/Getting_Started_with_SAS_Packages.pdf "Getting Started with SAS Packages") presentation (see the `./SPF/Documentation` directory). diff --git a/SPF/SPFinit.sas b/SPF/SPFinit.sas index 7323717..4beb4e9 100644 --- a/SPF/SPFinit.sas +++ b/SPF/SPFinit.sas @@ -42,7 +42,7 @@ - to unload, or - to generate SAS packages. - Version 20201010. + Version 20201014. See examples below. A SAS package is a zip file containing a group of files @@ -81,7 +81,7 @@ */ )/secure /*** HELP END ***/ -des = 'Macro to load SAS package, version 20201010. Run %loadPackage() for help info.' +des = 'Macro to load SAS package, version 20201014. Run %loadPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -96,7 +96,7 @@ des = 'Macro to load SAS package, version 20201010. Run %loadPackage() for help %put ### This is short help information for the `loadPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *load* SAS packages, version `20201010` #; + %put # Macro to *load* SAS packages, version `20201014` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -250,7 +250,7 @@ des = 'Macro to load SAS package, version 20201010. Run %loadPackage() for help */ )/secure /*** HELP END ***/ -des = 'Macro to unload SAS package, version 20201010. Run %unloadPackage() for help info.' +des = 'Macro to unload SAS package, version 20201014. Run %unloadPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -265,7 +265,7 @@ des = 'Macro to unload SAS package, version 20201010. Run %unloadPackage() for h %put ### This is short help information for the `unloadPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to unload SAS packages, version `20201010` #; + %put # Macro to unload SAS packages, version `20201014` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -388,7 +388,7 @@ des = 'Macro to unload SAS package, version 20201010. Run %unloadPackage() for h */ )/secure /*** HELP END ***/ -des = 'Macro to get help about SAS package, version 20201010. Run %helpPackage() for help info.' +des = 'Macro to get help about SAS package, version 20201014. Run %helpPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -403,7 +403,7 @@ des = 'Macro to get help about SAS package, version 20201010. Run %helpPackage() %put ### This is short help information for the `helpPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to get help about SAS packages, version `20201010` #; + %put # Macro to get help about SAS packages, version `20201014` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -512,7 +512,7 @@ TODO: - add MD5(&packageName.) value hash instead "package" word in filenames [DONE] */ -/* Macros to install SAS packages, version 20201010 */ +/* Macros to install SAS packages, version 20201014 */ /* A SAS package is a zip file containing a group of files with SAS code (macros, functions, data steps generating data, etc.) wrapped up together and %INCLUDEed by @@ -528,7 +528,7 @@ TODO: /secure minoperator /*** HELP END ***/ -des = 'Macro to install SAS package, version 20201010. Run %%installPackage() for help info.' +des = 'Macro to install SAS package, version 20201014. Run %%installPackage() for help info.' ; %if (%superq(packagesNames) = ) OR (%qupcase(&packagesNames.) = HELP) %then %do; @@ -543,7 +543,7 @@ des = 'Macro to install SAS package, version 20201010. Run %%installPackage() fo %put ### This is short help information for the `installPackage` macro #; %put #--------------------------------------------------------------------------------------------#;; %put # #; - %put # Macro to install SAS packages, version `20201010` #; + %put # Macro to install SAS packages, version `20201014` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -836,7 +836,7 @@ des = 'Macro to install SAS package, version 20201010. Run %%installPackage() fo /* Macro to list SAS packages in packages folder. - Version 20201010 + Version 20201014 A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -856,7 +856,7 @@ des = 'Macro to install SAS package, version 20201010. Run %%installPackage() fo %macro listPackages()/PARMBUFF -des = 'Macro to list SAS packages from `packages` fileref, type %listPackages(HELP) for help, version 20201010.' +des = 'Macro to list SAS packages from `packages` fileref, type %listPackages(HELP) for help, version 20201014.' ; %if %QUPCASE(&SYSPBUFF.) = %str(%(HELP%)) %then %do; @@ -871,7 +871,7 @@ des = 'Macro to list SAS packages from `packages` fileref, type %listPackages(HE %put ### This is short help information for the `listPackages` macro #; %put #-----------------------------------------------------------------------------------------#;; %put # #; - %put # Macro to list available SAS packages, version `20201010` #; + %put # Macro to list available SAS packages, version `20201014` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -1002,7 +1002,7 @@ options ls = &ls_tmp. ps = &ps_tmp. ¬es_tmp. &source_tmp.; /* Macro to generate SAS packages. - Version 20201010 + Version 20201014 A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -1025,7 +1025,7 @@ options ls = &ls_tmp. ps = &ps_tmp. ¬es_tmp. &source_tmp.; dependencies in loading */ )/secure /*** HELP END ***/ -des = 'Macro to generate SAS packages, version 20201010. Run %generatePackage() for help info.' +des = 'Macro to generate SAS packages, version 20201014. Run %generatePackage() for help info.' minoperator ; %if (%superq(filesLocation) = ) OR (%qupcase(&filesLocation.) = HELP) %then @@ -1041,7 +1041,7 @@ minoperator %put ### This is short help information for the `generatePackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to generate SAS packages, version `20201010` #; + %put # Macro to generate SAS packages, version `20201014` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -1234,18 +1234,18 @@ filename &zipReferrence. ZIP "&filesLocation./%lowcase(&packageName.).zip"; /*** HELP START ***/ /* - Locate all files with code in base folder (i.e. at filesLocation directory) + Locate all files with code in base folder, i.e. at `filesLocation` directory. */ /* - Remember to prepare the description.sas file for you package. + Remember to prepare the `description.sas` file for you package. The colon (:) is a field separator and is restricted in lines of the header part. The file should contain the following obligatory information: -------------------------------------------------------------------------------------------- >> **HEADER** << Type: Package -Package: ShortPackageName -Title: A title/brief info for log note about your packages +Package: PackageName +Title: A title/brief info for log note about your packages. Version: X.Y Author: Firstname1 Lastname1 (xxxxxx1@yyyyy.com), Firstname2 Lastname2 (xxxxxx2@yyyyy.com) Maintainer: Firstname Lastname (xxxxxx@yyyyy.com) @@ -1264,9 +1264,9 @@ DESCRIPTION START: DESCRIPTION END: -------------------------------------------------------------------------------------------- - Name of the 'type' of folder and files.sas inside must be in _low_ case letters. + Name of the `type` of folder and `files.sas` inside must be in the _low_ case letters. - If order of loading is important, the 'sequential number' + If order of loading is important, the sequential number can be used to order multiple types in the way you wish. The "tree structure" of the folder could be for example as follows: @@ -2280,7 +2280,7 @@ data _null_; put ' end ; '; %end; - put 'put "***"; put "* SAS package generated by generatePackage, version 20201010 *"; put "***";'; + put 'put "***"; put "* SAS package generated by generatePackage, version 20201014 *"; put "***";'; put 'run; ' /; @@ -2353,7 +2353,7 @@ data _null_; put ' call execute(" input; ");'; put ' call execute(" if upcase(strip(_infile_)) '; put ' = ''/*** HELP END ***/'' then printer = 0; ");'; - put ' call execute(" if printer then put @1 _infile_; ");'; + put ' call execute(" if printer then put ""| "" _infile_; ");'; put ' call execute(" if upcase(strip(_infile_)) '; put ' = ''/*** HELP START ***/'' then printer = 1; ");'; put ' call execute(" end; ");'; @@ -2808,7 +2808,7 @@ TODO: (in Polish) */ )/secure /*** HELP END ***/ -des = 'Macro to load multiple SAS packages at one run, version 20201010. Run %loadPackages() for help info.' +des = 'Macro to load multiple SAS packages at one run, version 20201014. Run %loadPackages() for help info.' parmbuff ; %if (%superq(packagesNames) = ) OR (%qupcase(&packagesNames.) = HELP) %then @@ -2824,7 +2824,7 @@ parmbuff %put ### This is short help information for the `loadPackageS` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro wrapper for the loadPackage macro, version `20201010` #; + %put # Macro wrapper for the loadPackage macro, version `20201014` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -2908,7 +2908,7 @@ parmbuff hashing_file() function, SAS 9.4M6 */ )/secure /*** HELP END ***/ -des = 'Macro to verify SAS package with the hash digest, version 20201010. Run %verifyPackage() for help info.' +des = 'Macro to verify SAS package with the hash digest, version 20201014. Run %verifyPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -2923,7 +2923,7 @@ des = 'Macro to verify SAS package with the hash digest, version 20201010. Run % %put ### This is short help information for the `verifyPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to verify SAS package with it hash digest, version `20201010` #; + %put # Macro to verify SAS package with it hash digest, version `20201014` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/packages/README.md b/packages/README.md index eaa8489..7f44d28 100644 --- a/packages/README.md +++ b/packages/README.md @@ -18,7 +18,7 @@ data class; WH = weight + height; run; ``` -SHA256 digest for SQLinDS: D76B85EFF129678B45233FB397A2BDB8D23F234013BD821D55141CA18DD5589E +SHA256 digest for SQLinDS: F070926B26504F9F65384EE3FB84E2E54B223FDAB71EDD61B11B865262C2E5DD [Documentation for SQLinDS](https://github.com/yabwon/SAS_PACKAGES/blob/master/packages/sqlinds.md "Documentation for SQLinDS") @@ -51,7 +51,7 @@ data _null_; end; run; ``` -SHA256 digest for DFA: 43AE8BB0FC7D2121AABDD8DB8AD2C3F226C7D2699CAACC171FCB72B75D9141FA +SHA256 digest for DFA: 7E9042867ED9C4BD2F27B3CD9180701CE619E301C13F5BD82DB46547616D17DF --- @@ -74,7 +74,7 @@ SHA256 digest for DFA: 43AE8BB0FC7D2121AABDD8DB8AD2C3F226C7D2699CAACC171FCB72B75 which = 1:H:2 ); ``` -SHA256 digest for macroArray: 085A0F3D544EAF01378BB6C6B4F429123F8BFEEFC76013D1B05DFADFEE3FA661 +SHA256 digest for macroArray: 519B1CE64F66F8498B10F5EB253BB45FC860E3F7868FCEB97ABF45C96F30716D [Documentation for macroArray](https://github.com/yabwon/SAS_PACKAGES/blob/master/packages/macroarray.md "Documentation for macroArray") @@ -94,7 +94,7 @@ format x bool.; %put %getVars(sashelp.class, pattern = ght$, sep = +, varRange = _numeric_); ``` -SHA256 digest for BasePlus: 54232DA5E253EB58E49A09DD0DF244F433B61983D921E27F2E4FFB1EA73A5C6D +SHA256 digest for BasePlus: 75B8D2BF718E035FEFC0D24504A6EBB9893883E2DF5D0FCD2D8ADD28456CFEBD [Documentation for BasePlus](https://github.com/yabwon/SAS_PACKAGES/blob/master/packages/baseplus.md "Documentation for BasePlus") @@ -102,6 +102,6 @@ SHA256 digest for BasePlus: 54232DA5E253EB58E49A09DD0DF244F433B61983D921E27F2E4F - **dynMacroArray**\[0.2\], set of macros (wrappers for a hash table) emulating dynamic array in the data step (macro predecessor of DFA) -SHA256 digest for dynMacroArray: 281D9493564A8185B858D9525AA7D9D5343E42414AAB1D8A00AE85AB80882661 +SHA256 digest for dynMacroArray: FF111DA330ACE57BAE8C9B7890839045B691A17414AE04CBD49C66BCD9663B21 --- diff --git a/packages/SHA256_for_packages.txt b/packages/SHA256_for_packages.txt index 4871ce9..1127574 100644 --- a/packages/SHA256_for_packages.txt +++ b/packages/SHA256_for_packages.txt @@ -1,3 +1,10 @@ +/* 20201014 */ +BasePlus: 75B8D2BF718E035FEFC0D24504A6EBB9893883E2DF5D0FCD2D8ADD28456CFEBD +DFA: 7E9042867ED9C4BD2F27B3CD9180701CE619E301C13F5BD82DB46547616D17DF +dynMacroArray: FF111DA330ACE57BAE8C9B7890839045B691A17414AE04CBD49C66BCD9663B21 +macroArray: 519B1CE64F66F8498B10F5EB253BB45FC860E3F7868FCEB97ABF45C96F30716D +SQLinDS: F070926B26504F9F65384EE3FB84E2E54B223FDAB71EDD61B11B865262C2E5DD + /* 20201010 */ SQLinDS: D76B85EFF129678B45233FB397A2BDB8D23F234013BD821D55141CA18DD5589E DFA: 43AE8BB0FC7D2121AABDD8DB8AD2C3F226C7D2699CAACC171FCB72B75D9141FA @@ -5,7 +12,6 @@ macroArray: 085A0F3D544EAF01378BB6C6B4F429123F8BFEEFC76013D1B05DFADFEE3FA661 BasePlus: 54232DA5E253EB58E49A09DD0DF244F433B61983D921E27F2E4FFB1EA73A5C6D dynMacroArray: 281D9493564A8185B858D9525AA7D9D5343E42414AAB1D8A00AE85AB80882661 - /* 20201007 */ BasePlus: 884BAD527DE77A9AF4325053BF42B3B2FCD3DB1239B63D70B1198064095E1A6D DFA: 57944FF5ABC7A9879C402412DA0C18C38206301930DC834BC7DD3E968E283D1E diff --git a/packages/baseplus.md b/packages/baseplus.md index 81c6916..b7dba02 100644 --- a/packages/baseplus.md +++ b/packages/baseplus.md @@ -186,7 +186,7 @@ Package contains: *SAS package generated by generatePackage, version 20201001* The SHA256 hash digest for package BasePlus: -`54232DA5E253EB58E49A09DD0DF244F433B61983D921E27F2E4FFB1EA73A5C6D` +`75B8D2BF718E035FEFC0D24504A6EBB9893883E2DF5D0FCD2D8ADD28456CFEBD` --- # Content description ############################################################################################ diff --git a/packages/baseplus.zip b/packages/baseplus.zip index 8f4aaf06062c411d9d6f0a8b39c2c8d6773ef77a..e1223c6daa30717460936b0f5d59298d834c20e3 100644 GIT binary patch delta 4976 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 I$vhSLA2DIYCIA2c delta 4955 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 B;OPJW diff --git a/packages/dfa.zip b/packages/dfa.zip index 50b240f6f552f3b614e8424500be7062311407d1..d6811b97d42e7315c1e093fd23994b77f86244f5 100644 GIT binary patch delta 4414 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 delta 4376 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 R$pXwrpCDnx9qxZ!{|Ca7%2faW diff --git a/packages/sqlinds.md b/packages/sqlinds.md index 95cf652..821aced 100644 --- a/packages/sqlinds.md +++ b/packages/sqlinds.md @@ -49,7 +49,7 @@ Required SAS Components: *SAS package generated by generatePackage, version 20200911* The SHA256 hash digest for package SQLinDS: -`D76B85EFF129678B45233FB397A2BDB8D23F234013BD821D55141CA18DD5589E` +`F070926B26504F9F65384EE3FB84E2E54B223FDAB71EDD61B11B865262C2E5DD` --- # Content description ############################################################################################ diff --git a/packages/sqlinds.zip b/packages/sqlinds.zip index 4ab046c3f195423d4c924248854cb8f3a8fc2ce2..ccc9eeff64078d485da169baa219db93950e36e0 100644 GIT binary patch delta 4143 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 YoV3)sn%FqMK}5gqw_hy2Jinv=1M)GR3;+NC delta 4112 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