From 3906947225296f38cb4260d66325df2573a9419f Mon Sep 17 00:00:00 2001 From: Bart Jablonski Date: Thu, 9 Apr 2026 12:48:50 +0200 Subject: [PATCH] SAS Packages Framework, version `20260409` SAS Packages Framework, version `20260409` New parameters added to the %installPackage() macro: - githubRepo - githubToken With properly configured fine-grained personal access token for GitHub packages from private repos can be installed now. --- ...(a how to)- Paper 4725-2020 - extended.pdf | Bin 354161 -> 355381 bytes SPF/Macros/bundlePackages.sas | 4 +- SPF/Macros/extendpackagesfileref.sas | 4 +- SPF/Macros/generatepackage.sas | 14 +- SPF/Macros/helppackage.sas | 4 +- SPF/Macros/installpackage.sas | 179 +++++++++++- SPF/Macros/ispackagesfilerefok.sas | 4 +- SPF/Macros/listpackages.sas | 6 +- SPF/Macros/loadpackage.sas | 4 +- SPF/Macros/loadpackageaddcnt.sas | 4 +- SPF/Macros/loadpackages.sas | 4 +- SPF/Macros/previewpackage.sas | 4 +- SPF/Macros/relocatepackage.sas | 4 +- SPF/Macros/saspackagesframeworknotes.sas | 4 +- SPF/Macros/spfint_gnpckg_arch.sas | 2 +- SPF/Macros/spfint_gnpckg_markdown.sas | 4 +- SPF/Macros/spfint_gnpckg_tests.sas | 2 +- SPF/Macros/splitcodeforpackage.sas | 6 +- SPF/Macros/unbundlePackages.sas | 4 +- SPF/Macros/unloadpackage.sas | 4 +- SPF/Macros/verifypackage.sas | 4 +- SPF/SPFinit.md | 56 ++-- SPF/SPFinit.sas | 267 ++++++++++++++---- 23 files changed, 464 insertions(+), 124 deletions(-) diff --git a/SPF/Documentation/SAS(r) packages - the way to share (a how to)- Paper 4725-2020 - extended.pdf b/SPF/Documentation/SAS(r) packages - the way to share (a how to)- Paper 4725-2020 - extended.pdf index 204d9fdd1eead1978da6d719ae23d1d9c710c5b9..27af5bfc98f2beaf470c5919a2feab151d576dfc 100644 GIT binary patch delta 125128 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

Hrz+C{{Sc8a}!_#O%~oK#3=i^XPig#lbBWO$v^ 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�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

fk{ChhfbqJ$-{wMue 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 WEnl>F06P2V7!4RQq;>lE0sjMxe!Bz! diff --git a/SPF/Macros/bundlePackages.sas b/SPF/Macros/bundlePackages.sas index bf67b6f..cfda90e 100644 --- a/SPF/Macros/bundlePackages.sas +++ b/SPF/Macros/bundlePackages.sas @@ -8,7 +8,7 @@ ,packagesRef=packages ,ods= /* data set for report file */ )/ -des='Macro to create a bundle of SAS packages, version 20260216. Run %bundlePackages(HELP) for help info.' +des='Macro to create a bundle of SAS packages, version 20260409. Run %bundlePackages(HELP) for help info.' secure minoperator ; @@ -25,7 +25,7 @@ secure minoperator %put ### This is short help information for the `bundlePackages` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *create bundles* of SAS packages, version `20260216` #; + %put # Macro to *create bundles* of SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/extendpackagesfileref.sas b/SPF/Macros/extendpackagesfileref.sas index 31d6e4a..3d6c842 100644 --- a/SPF/Macros/extendpackagesfileref.sas +++ b/SPF/Macros/extendpackagesfileref.sas @@ -6,7 +6,7 @@ when empty the "packages" value is used */ )/secure /*** HELP END ***/ -des = 'Macro to list directories pointed by "packages" fileref, version 20260216. Run %extendPackagesFileref(HELP) for help info.' +des = 'Macro to list directories pointed by "packages" fileref, version 20260409. Run %extendPackagesFileref(HELP) for help info.' ; %if %QUPCASE(&packages.) = HELP %then @@ -22,7 +22,7 @@ des = 'Macro to list directories pointed by "packages" fileref, version 20260216 %put ### This is short help information for the `extendPackagesFileref` macro #; %put #-----------------------------------------------------------------------------------------#;; %put # #; - %put # Macro to list directories pointed by 'packages' fileref, version `20260216` #; + %put # Macro to list directories pointed by 'packages' fileref, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/generatepackage.sas b/SPF/Macros/generatepackage.sas index bfdad1a..4f4a560 100644 --- a/SPF/Macros/generatepackage.sas +++ b/SPF/Macros/generatepackage.sas @@ -3,7 +3,7 @@ Macro to generate SAS packages. - Version 20260216 + Version 20260409 A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -53,7 +53,7 @@ when empty takes buildLocation */ )/ secure minoperator /*** HELP END ***/ -des = 'Macro to generate SAS packages, version 20260216. Run %generatePackage() for help info.' +des = 'Macro to generate SAS packages, version 20260409. Run %generatePackage() for help info.' ; %if (%superq(filesLocation) = ) OR (%qupcase(&filesLocation.) = HELP) %then %do; @@ -68,7 +68,7 @@ des = 'Macro to generate SAS packages, version 20260216. Run %generatePackage() %put ### This is short help information for the `generatePackage` macro #; %put #------------------------------------------------------------------------------------#; %put # #; - %put # Macro to generate SAS packages, version `20260216` #; + %put # Macro to generate SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -950,7 +950,7 @@ title6 "MD5 hashed fileref of package lowcase name: &_PackageFileref_."; title&_titleNumber_. "Package ZIP file location is: &buildLocation."; %end; -footnote1 "SAS Packages Framework, version 20260216"; +footnote1 "SAS Packages Framework, version 20260409"; proc print data = &filesWithCodes.(drop=base build folderRef fileRef rc folderid _abort_ fileId additionalContent) @@ -1775,7 +1775,7 @@ data _null_; %end; put +(-1) '`.;''' / ' !! '' %put The macro generated: '' !! put(dtCASLudf, E8601DT19.-L) !! ";"' - / ' !! '' %put with the SAS Packages Framework version 20260216.;''' + / ' !! '' %put with the SAS Packages Framework version 20260409.;''' / ' !! '' %put ****************************************************************************;''' / ' !! '' %GOTO theEndOfTheMacro;''' / ' !! '' %end;''' ; @@ -1939,7 +1939,7 @@ data _null_; %end; put +(-1) '`.; '' !!' / ''' %put The macro generated: ''' " !! put(dtIML, E8601DT19.-L) !! " '''; '' !! ' / - ''' %put with the SAS Packages Framework version 20260216.; '' !! ' / + ''' %put with the SAS Packages Framework version 20260409.; '' !! ' / ''' %put ****************************************************************************; '' !! ' / ''' %GOTO theEndOfTheMacro; '' !! ' / ''' %end; '' !! ' / @@ -2811,7 +2811,7 @@ data _null_; %end; put 'put " " / @3 "---------------------------------------------------------------------" / " ";' - / 'put @3 "*SAS package generated by SAS Package Framework, version `20260216`*";' + / 'put @3 "*SAS package generated by SAS Package Framework, version `20260409`*";' / "put @3 '*under `&sysscp.`(`&sysscpl.`) operating system,*';" / "put @3 '*using SAS release: `&sysvlong4.`.*';" / 'put " " / @3 "---------------------------------------------------------------------";'; diff --git a/SPF/Macros/helppackage.sas b/SPF/Macros/helppackage.sas index 83e507d..b663f3f 100644 --- a/SPF/Macros/helppackage.sas +++ b/SPF/Macros/helppackage.sas @@ -28,7 +28,7 @@ */ )/secure /*** HELP END ***/ -des = 'Macro to get help about SAS package, version 20260216. Run %helpPackage() for help info.' +des = 'Macro to get help about SAS package, version 20260409. Run %helpPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -43,7 +43,7 @@ des = 'Macro to get help about SAS package, version 20260216. Run %helpPackage() %put ### This is short help information for the `helpPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to get help about SAS packages, version `20260216` #; + %put # Macro to get help about SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/installpackage.sas b/SPF/Macros/installpackage.sas index 84961cd..17ee7f8 100644 --- a/SPF/Macros/installpackage.sas +++ b/SPF/Macros/installpackage.sas @@ -1,5 +1,5 @@ /*+installPackage+*/ -/* Macros to install SAS packages, version 20260216 */ +/* Macros to install SAS packages, version 20260409 */ /* 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 @@ -22,11 +22,14 @@ default is 0 - means No, 1 means Yes */ , SFRCVN = /* name of a macro variable to store success-failure return code value */ , github = /* name of a user or an organization in GitHub, all characters except [A-z0-9_.-] are compressed */ +, githubRepo = %sysfunc(lowcase(&packageName.)) /* repo name to be used, by default it is the package name, but can be altered */ +, githubToken = /* user's github fine-grained personal access token */ +, githubTokenDebug = 0 /* debug values: 0,1,2,3 */ ) /secure minoperator /*** HELP END ***/ -des = 'Macro to install SAS package, version 20260216. Run %%installPackage() for help info.' +des = 'Macro to install SAS package, version 20260409. Run %%installPackage() for help info.' ; %if (%superq(packagesNames) = ) OR (%qupcase(&packagesNames.) = HELP) %then %do; @@ -41,7 +44,7 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo %put ### This is short help information for the `installPackage` macro #; %put #--------------------------------------------------------------------------------------------#;; %put # #; - %put # Macro to install SAS packages, version `20260216` #; + %put # Macro to install SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -119,9 +122,27 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo %put # #; %put # - `github=` *Optional.* A name of a user or an organization in GitHub. #; %put # Allows an easy set of the search path for packages available on GitHub: #; - %put # `https://github.com///raw/.../` #; + %put # `https://github.com///raw/.../` #; %put # All characters except `[A-z0-9_.-]` are compressed. #; %put # #; + %put # - `githubRepo=` *Optional.* A name of a repository in GitHub. #; + %put # Allows an easy set of the search path for packages available on GitHub: #; + %put # `https://github.com///raw/.../` #; + %put # By default lowercase name of installed package is used. #; + %put # #; + %put # - `githubToken=` *Optional.* A fine-grained personal access token for GitHub. #; + %put # When the value is non-missing it triggers GitHub API access to #; + %put # private repositories. Of course the token used has to be configured #; + %put # properly for the access. #; + %put # Read GitHub documentation to learn how to create and setup your token: #; + %put # `https://docs.github.com/en/authentication/ #; + %put # keeping-your-account-and-data-secure/ #; + %put # managing-your-personal-access-tokens #; + %put # #creating-a-fine-grained-personal-access-token` #; + %put # (lines break added for easier reading) #; + %put # Public repos do not need authentication. #; + %put # [NOTE!] This feature is experimental in this release. #; + %put # #; %put #--------------------------------------------------------------------------------------------#; %put # #; %put # Visit: `https://github.com/yabwon/SAS_PACKAGES/tree/main/SPF/Documentation` #; @@ -259,7 +280,7 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo %do; %let SPFinitMirror = https://raw.githubusercontent.com/yabwon/SAS_PACKAGES/main/SPF/SPFinit.sas; %let SPFinitMirrorMD = https://raw.githubusercontent.com/yabwon/SAS_PACKAGES/main/SPF/SPFinit.md; - /* ingnore version support for pharmaForest for now */ + /* ingnore version support for github for now */ %let github = %sysfunc(compress(%superq(github),%str(,.-),KAD)); %put INFO: GitHub location used is: %superq(github).; %let sourcePath = https://github.com/&github./; /*users content*/ @@ -340,7 +361,7 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo %let SPFinitMirror = https://raw.githubusercontent.com/yabwon/SAS_PACKAGES/&vers./SPF/SPFinit.sas; %let SPFinitMirrorMD = https://raw.githubusercontent.com/yabwon/SAS_PACKAGES/&vers./SPF/SPFinit.md; %end; - %if %superq(mirror) > 1 %then + %if NOT (%superq(mirror) in (0 1 4)) %then %put %str( )Mirror %superq(mirror) does not support versioning.; /* source code file */ @@ -363,12 +384,12 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo %do; %if %superq(mirror) IN (0 3 4) %then /* SASPAC or PharmaForest or an arbitrary GitHub repo */ %do; - %let packageSubDir = %sysfunc(lowcase(&packageName.))/raw/main/; + %let packageSubDir = &githubRepo./raw/main/; %if %superq(vers) ne %then %do; /*%let packageSubDir = %sysfunc(lowcase(&packageName.))/main/hist/&version./;*/ - %let packageSubDir = %sysfunc(lowcase(&packageName.))/raw/&vers./; + %let packageSubDir = &githubRepo./raw/&vers./; %end; %end; %else @@ -405,6 +426,13 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo /* copy the file byte-by-byte */ %local installationRC; %let installationRC=1; + + %if (%superq(githubToken)= ) + OR + (%upcase(&packageName.) in (SPFINIT SASPACKAGEFRAMEWORK SASPACKAGESFRAMEWORK)) + %then + %do; + /* public repo, location with URL access, or SPFinit */ data _null_; length filein fileinMD 8 out_path in_path out_pathMD in_pathMD rcTXT $ 4096 @@ -495,7 +523,140 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo put @2 "Package documentation in markdown format not available." ; /* / out_pathMD / in_pathMD;*/ end; run; - + /************************************************************************************************************/ + %end; + %else + %do; + /* when githubToken= is not null then a "private repo" case is assumed */ + /* except for SPFinit.sas that is always installed from SAS_PACKAGES public repo */ + + %put [NOTE!] This feature is experimental in this release!; + %local ref notRunHTTP; + %let notRunHTTP=1; + %if %superq(vers)= %then %let ref = main; + %else %let ref = &vers.; + + %if NOT(%superq(githubTokenDebug) in (0 1 2 3)) %then %let githubTokenDebug = 0; + + %if %sysfunc(FEXIST(&out.)) = 0 %then + %do; + %put %str( )Installing the &packageName. package; + %put %str( )in the &firstPackagesPath. directory.; + %let notRunHTTP=0; + %end; + %else + %do; + %if 1=&replace. %then + %do; + %put %str( )The following file will be replaced during; + %put %str( )installation of the &packageName. package:; + %put %str( )%sysfunc(pathname(&out.)); + %let notRunHTTP = %sysfunc(FDELETE(&out.)); + %put %sysfunc(sysmsg()); + %end; + %else + %do; + %put %str( )The following file will NOT be replaced:; + %put %str( )%sysfunc(pathname(&out.)); + %let notRunHTTP = 1; + %end; + %end; + + %if %superq(githubToken) NE %qsysfunc(compress(%superq(githubToken),%str( _),KAD)) %then + %do; + %put WARNING: The githubToken= parameter contains illegal symbols; + %put WARNING- Allowed symbols are letters A to Z and a to z, digits 0 to 9, and underscore(_); + %put WARNING- Verify your token. Installation aborted.; + %let notRunHTTP = 1; + %end; + + %if ¬RunHTTP.=0 %then + %do; + %put %str( )URL called by PROC HTTP is:; + %put %str( )"https://api.github.com/repos/&github./&githubRepo./contents/%sysfunc(lowcase(&packageName.)).zip?ref=&ref."; + %put %str( )Headers:; + %put %str( )Accept=application/vnd.github.raw+json; + %put %str( )X-GitHub-Api-Version=2026-03-10; + %put %str( )Authorization=Bearer *****************; + %put %str( ); + + + /* proc http setup based on: + https://docs.github.com/en/rest/repos/contents?apiVersion=2026-03-10#get-repository-content + */ + proc http + method="GET" + out=&out. + URL= + "https://api.github.com/repos/&github./&githubRepo./contents/%sysfunc(lowcase(&packageName.)).zip?ref=&ref." + CLEAR_CACHE + ; + headers + "Accept"="application/vnd.github.raw+json" + "X-GitHub-Api-Version"="2026-03-10" + "Authorization"="Bearer &githubToken." + ; + debug level=&githubTokenDebug.; + run; + + %if %sysfunc(FEXIST(&out.)) AND &SYS_PROCHTTP_STATUS_CODE.=200 %then + %do; + %let installationRC=0; + %put %str( )Done with return code rc=0 (zero = success); + %end; + %else + %do; + %let installationRC=1; + %put %str( )Done with return code rc=&SYS_PROCHTTP_STATUS_CODE. (zero = success); + %put %str( )Message: &SYS_PROCHTTP_STATUS_PHRASE.; + %end; + + %let notRunHTTP=1; + %if 1=&instDoc. AND 0=&installationRC. %then + %do; + %if %sysfunc(FEXIST(&outMD.)) = 0 %then + %do; + %put %str( )Package documentation installation on request:; + %let notRunHTTP = 0; + %end; + %else %if 1=&replace. %then + %do; + %put %str( )Package documentation installation on demand:; + %let notRunHTTP = %sysfunc(FDELETE(&outMD.)); + %if ¬RunHTTP. %then %put %sysfunc(sysmsg()); + %end; + + %if ¬RunHTTP.=0 %then + %do; + proc http + method="GET" + out=&outMD. + URL= + "https://api.github.com/repos/&github./&githubRepo./contents/%sysfunc(lowcase(&packageName.)).md?ref=&ref." + CLEAR_CACHE + ; + headers + "Accept"="application/vnd.github.raw+json" + "X-GitHub-Api-Version"="2026-03-10" + "Authorization"="Bearer &githubToken." + ; + debug level=&githubTokenDebug.; + run; + %if %sysfunc(FEXIST(&outMD.)) AND &SYS_PROCHTTP_STATUS_CODE.=200 + %then %put %str( )status successful!; + %else %put %str( )status unsuccessful!; + + %end; + %end; + %end; + %else + %do; + %let installationRC=1; + %put %str( )Done with return code rc=1 (zero = success); + %end; + /************************************************************************************************************/ + %end; + filename &in. clear; filename &out. clear; filename &inMD. clear; diff --git a/SPF/Macros/ispackagesfilerefok.sas b/SPF/Macros/ispackagesfilerefok.sas index 57562c7..4849c7b 100644 --- a/SPF/Macros/ispackagesfilerefok.sas +++ b/SPF/Macros/ispackagesfilerefok.sas @@ -4,7 +4,7 @@ vERRb /* indicates if macro should be verbose and report errors */ ) / minoperator PARMBUFF -des = 'Macro to check if the PACKAGES fileref is "correct", type %isPackagesFilerefOK(HELP) for help, version 20260216.' +des = 'Macro to check if the PACKAGES fileref is "correct", type %isPackagesFilerefOK(HELP) for help, version 20260409.' ; /*** HELP END ***/ %if %QUPCASE(&SYSPBUFF.) = %str(%(HELP%)) %then @@ -20,7 +20,7 @@ des = 'Macro to check if the PACKAGES fileref is "correct", type %isPackagesFile %put ### This is short help information for the `isPackagesFilerefOK` macro #; %put #-----------------------------------------------------------------------------------------#;; %put # #; - %put # Macro to check if the `packages` fileref is "correct", version `20260216` #; + %put # Macro to check if the `packages` fileref is "correct", version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/listpackages.sas b/SPF/Macros/listpackages.sas index 3cb08fd..3b00f6b 100644 --- a/SPF/Macros/listpackages.sas +++ b/SPF/Macros/listpackages.sas @@ -3,7 +3,7 @@ Macro to list SAS packages in packages folder. - Version 20260216 + Version 20260409 A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -25,7 +25,7 @@ listDataSet /* Name of a data set to save results */ , quiet = 0 /* Indicate if results should be printed in log */ )/secure parmbuff -des = 'Macro to list SAS packages from `packages` fileref, type %listPackages(HELP) for help, version 20260216.' +des = 'Macro to list SAS packages from `packages` fileref, type %listPackages(HELP) for help, version 20260409.' ; %if (%QUPCASE(&listDataSet.) = HELP) %then %do; @@ -40,7 +40,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 `20260216` #; + %put # Macro to list available SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/loadpackage.sas b/SPF/Macros/loadpackage.sas index f663804..58bfade 100644 --- a/SPF/Macros/loadpackage.sas +++ b/SPF/Macros/loadpackage.sas @@ -36,7 +36,7 @@ */ )/secure /*** HELP END ***/ -des = 'Macro to load SAS package, version 20260216. Run %loadPackage() for help info.' +des = 'Macro to load SAS package, version 20260409. Run %loadPackage() for help info.' minoperator ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then @@ -52,7 +52,7 @@ minoperator %put ### This is short help information for the `loadPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *load* SAS packages, version `20260216` #; + %put # Macro to *load* SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/loadpackageaddcnt.sas b/SPF/Macros/loadpackageaddcnt.sas index 44988e9..9f32200 100644 --- a/SPF/Macros/loadpackageaddcnt.sas +++ b/SPF/Macros/loadpackageaddcnt.sas @@ -19,7 +19,7 @@ is provided in required version */ )/secure /*** HELP END ***/ -des = 'Macro to load additional content for a SAS package, version 20260216. Run %loadPackageAddCnt() for help info.' +des = 'Macro to load additional content for a SAS package, version 20260409. Run %loadPackageAddCnt() for help info.' minoperator ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then @@ -35,7 +35,7 @@ minoperator %put ### This is short help information for the `loadPackageAddCnt` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *load* additional content for a SAS package, version `20260216` #; + %put # Macro to *load* additional content for a SAS package, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/loadpackages.sas b/SPF/Macros/loadpackages.sas index 72eedc9..639b238 100644 --- a/SPF/Macros/loadpackages.sas +++ b/SPF/Macros/loadpackages.sas @@ -11,7 +11,7 @@ */ )/secure /*** HELP END ***/ -des = 'Macro to load multiple SAS packages at one run, version 20260216. Run %loadPackages() for help info.' +des = 'Macro to load multiple SAS packages at one run, version 20260409. Run %loadPackages() for help info.' parmbuff ; %if (%superq(packagesNames) = ) OR (%qupcase(&packagesNames.) = HELP) %then @@ -27,7 +27,7 @@ parmbuff %put ### This is short help information for the `loadPackageS` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro wrapper for the loadPackage macro, version `20260216` #; + %put # Macro wrapper for the loadPackage macro, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/previewpackage.sas b/SPF/Macros/previewpackage.sas index 314c96c..6073021 100644 --- a/SPF/Macros/previewpackage.sas +++ b/SPF/Macros/previewpackage.sas @@ -23,7 +23,7 @@ */ )/secure /*** HELP END ***/ -des = 'Macro to preview content of a SAS package, version 20260216. Run %previewPackage() for help info.' +des = 'Macro to preview content of a SAS package, version 20260409. Run %previewPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -38,7 +38,7 @@ des = 'Macro to preview content of a SAS package, version 20260216. Run %preview %put ### This is short help information for the `previewPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to get preview of a SAS packages, version `20260216` #; + %put # Macro to get preview of a SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/relocatepackage.sas b/SPF/Macros/relocatepackage.sas index 9b4c961..3cdcde7 100644 --- a/SPF/Macros/relocatepackage.sas +++ b/SPF/Macros/relocatepackage.sas @@ -15,7 +15,7 @@ ,psMAX=MAX /* pageSise in case executed inside DoSubL() */ ,ods= /* a data set for results, e.g., work.relocatePackageReport */ ) -/ des = 'Utility macro that locally Copies or Moves Packages, version 20260216. Run %relocatePackage() for help info.' +/ des = 'Utility macro that locally Copies or Moves Packages, version 20260409. Run %relocatePackage() for help info.' secure minoperator ; @@ -33,7 +33,7 @@ %put ### This is short help information for the `relocatePackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *locally copy or move* (relocate) SAS packages, version `20260216` #; + %put # Macro to *locally copy or move* (relocate) SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/saspackagesframeworknotes.sas b/SPF/Macros/saspackagesframeworknotes.sas index c02c199..f4349a3 100644 --- a/SPF/Macros/saspackagesframeworknotes.sas +++ b/SPF/Macros/saspackagesframeworknotes.sas @@ -5,7 +5,7 @@ SPFmacroName /* space separated list of names */ / minoperator secure -des = 'Macro to provide help notes about SAS Packages Framework macros, version 20260216. Run %SasPackagesFrameworkNotes(HELP) for help info.' +des = 'Macro to provide help notes about SAS Packages Framework macros, version 20260409. Run %SasPackagesFrameworkNotes(HELP) for help info.' ; %local list N i element; %let list= @@ -51,7 +51,7 @@ SasPackagesFrameworkNotes %put ### This is short help information for the `SasPackagesFrameworkNotes` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro prints help notes for SAS Packages Framework macros, version `20260216` #; + %put # Macro prints help notes for SAS Packages Framework macros, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/spfint_gnpckg_arch.sas b/SPF/Macros/spfint_gnpckg_arch.sas index 15d8aaf..89bf18d 100644 --- a/SPF/Macros/spfint_gnpckg_arch.sas +++ b/SPF/Macros/spfint_gnpckg_arch.sas @@ -1,6 +1,6 @@ /*+SPFint_gnPckg_arch+*/ %macro SPFint_gnPckg_arch()/secure minoperator -des='SAS Packages Framework internal macro. Executable only inside the %generatePackage() macro. The macro encapsulates the archive version generation part of the process. Version 20260216.'; +des='SAS Packages Framework internal macro. Executable only inside the %generatePackage() macro. The macro encapsulates the archive version generation part of the process. Version 20260409.'; /* macro picks up all macrovariables from external scope, so from the %generatePackage() macro */ %if %sysmexecname(%sysmexecdepth-1) in (GENERATEPACKAGE) %then %do; diff --git a/SPF/Macros/spfint_gnpckg_markdown.sas b/SPF/Macros/spfint_gnpckg_markdown.sas index 2a61b1b..43a6039 100644 --- a/SPF/Macros/spfint_gnpckg_markdown.sas +++ b/SPF/Macros/spfint_gnpckg_markdown.sas @@ -1,6 +1,6 @@ /*+SPFint_gnPckg_markdown+*/ %macro SPFint_gnPckg_markdown()/secure minoperator -des='SAS Packages Framework internal macro. Executable only inside the %generatePackage() macro. The macro encapsulates the markdown documentation part of the process. Version 20260216.'; +des='SAS Packages Framework internal macro. Executable only inside the %generatePackage() macro. The macro encapsulates the markdown documentation part of the process. Version 20260409.'; /* macro picks up all macrovariables from external scope, so from the %generatePackage() macro */ %if %sysmexecname(%sysmexecdepth-1) in (GENERATEPACKAGE) %then %do; @@ -112,7 +112,7 @@ data &filesWithCodes.markdown; %end; put " " / "---------------------------------------------------------------------" / " " - / "*SAS package generated by SAS Package Framework, version `20260216`,*" + / "*SAS package generated by SAS Package Framework, version `20260409`,*" / "*under `&sysscp.`(`&sysscpl.`) operating system,*" / "*using SAS release: `&sysvlong4.`.*" / " " / "---------------------------------------------------------------------" / " "; diff --git a/SPF/Macros/spfint_gnpckg_tests.sas b/SPF/Macros/spfint_gnpckg_tests.sas index d6bfddf..7fa27ad 100644 --- a/SPF/Macros/spfint_gnpckg_tests.sas +++ b/SPF/Macros/spfint_gnpckg_tests.sas @@ -1,6 +1,6 @@ /*+SPFint_gnPckg_tests+*/ %macro SPFint_gnPckg_tests()/secure minoperator -des='SAS Packages Framework internal macro. Executable only inside the %generatePackage() macro. The macro encapsulates the test part of the process. Version 20260216.'; +des='SAS Packages Framework internal macro. Executable only inside the %generatePackage() macro. The macro encapsulates the test part of the process. Version 20260409.'; /* macro picks up all macrovariables from external scope, so from the %generatePackage() macro */ %if %sysmexecname(%sysmexecdepth-1) in (GENERATEPACKAGE) %then %do; diff --git a/SPF/Macros/splitcodeforpackage.sas b/SPF/Macros/splitcodeforpackage.sas index a7d7546..dc9af2a 100644 --- a/SPF/Macros/splitcodeforpackage.sas +++ b/SPF/Macros/splitcodeforpackage.sas @@ -8,7 +8,7 @@ ,nobs=0 /* technical parameter */ ) /*** HELP END ***/ -/ des = 'Utility macro to split "one big" code into multiple files for a SAS package, version 20260216. Run %splitCodeForPackage() for help info.' +/ des = 'Utility macro to split "one big" code into multiple files for a SAS package, version 20260409. Run %splitCodeForPackage() for help info.' ; %if (%superq(codeFile) = ) OR (%qupcase(&codeFile.) = HELP) %then %do; @@ -24,7 +24,7 @@ %put #-------------------------------------------------------------------------------#; %put # #; %put # Utility macro to *split* single file with SAS package code into multiple #; - %put # files with separate snippets, version `20260216` #; + %put # files with separate snippets, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -400,7 +400,7 @@ options nomprint nosymbolgen nomlogic notes source ls=MAX ps=MAX msglevel=N ; */ if firstLine[j] then do; - put '/* File generated with help of SAS Packages Framework, version 20260216. */'; + put '/* File generated with help of SAS Packages Framework, version 20260409. */'; firstLine[j]=0; end; put _infile_; diff --git a/SPF/Macros/unbundlePackages.sas b/SPF/Macros/unbundlePackages.sas index ed66a96..d2afade 100644 --- a/SPF/Macros/unbundlePackages.sas +++ b/SPF/Macros/unbundlePackages.sas @@ -8,7 +8,7 @@ ,ods= /* data set for report file */ ,verify=0 )/ -des='Macro to extract a bundle of SAS packages, version 20260216. Run %unbundlePackages(HELP) for help info.' +des='Macro to extract a bundle of SAS packages, version 20260409. Run %unbundlePackages(HELP) for help info.' secure minoperator ; @@ -26,7 +26,7 @@ minoperator %put ### This is short help information for the `unbundlePackages` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *extract* SAS packages from a bundle, version `20260216` #; + %put # Macro to *extract* SAS packages from a bundle, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/unloadpackage.sas b/SPF/Macros/unloadpackage.sas index ef745e1..b5d52d4 100644 --- a/SPF/Macros/unloadpackage.sas +++ b/SPF/Macros/unloadpackage.sas @@ -20,7 +20,7 @@ */ )/secure /*** HELP END ***/ -des = 'Macro to unload SAS package, version 20260216. Run %unloadPackage() for help info.' +des = 'Macro to unload SAS package, version 20260409. Run %unloadPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -35,7 +35,7 @@ des = 'Macro to unload SAS package, version 20260216. Run %unloadPackage() for h %put ### This is short help information for the `unloadPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to unload SAS packages, version `20260216` #; + %put # Macro to unload SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/Macros/verifypackage.sas b/SPF/Macros/verifypackage.sas index d2c7113..438a22e 100644 --- a/SPF/Macros/verifypackage.sas +++ b/SPF/Macros/verifypackage.sas @@ -13,7 +13,7 @@ hashing_file() function, SAS 9.4M6 */ )/secure /*** HELP END ***/ -des = 'Macro to verify SAS package with the hash digest, version 20260216. Run %verifyPackage() for help info.' +des = 'Macro to verify SAS package with the hash digest, version 20260409. Run %verifyPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -28,7 +28,7 @@ des = 'Macro to verify SAS package with the hash digest, version 20260216. Run % %put ### This is short help information for the `verifyPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to verify SAS package with it hash digest, version `20260216` #; + %put # Macro to verify SAS package with it hash digest, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; diff --git a/SPF/SPFinit.md b/SPF/SPFinit.md index ec355e9..b5915e0 100644 --- a/SPF/SPFinit.md +++ b/SPF/SPFinit.md @@ -1,7 +1,7 @@ --- -# SAS Packages Framework, version `20260216` +# SAS Packages Framework, version `20260409` --- @@ -34,7 +34,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 **`20260216`**. +In this repository we are presenting the **SAS Packages Framework** which allows to develop and use SAS packages. The latest version of SPF is **`20260409`**. **To get started with SAS Packages** try this [**`Introduction to SAS Packages`**](https://youtube.com/playlist?list=PLeMzGEImIT5eV13IGXQIgWmTFCJt_cLZG&si=ElQm0_ifq76mvUbq "Introduction to SAS Packages video series") video series or [**`Getting Started with SAS Packages`**](https://github.com/yabwon/SAS_PACKAGES/blob/main/SPF/Documentation/Getting_Started_with_SAS_Packages.pdf "Getting Started with SAS Packages") presentation (see the `./SPF/Documentation` directory). @@ -57,7 +57,7 @@ them using the SPF can be found [**HERE**](https://github.com/yabwon/HoW-SASPack ## This is short help information for the `installPackage` macro -------------------------------------------------------------------------------------------- - Macro to install SAS packages, version `20260216` + Macro to install SAS packages, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -137,6 +137,24 @@ them using the SPF can be found [**HERE**](https://github.com/yabwon/HoW-SASPack `https://github.com///raw/.../` All characters except `[A-z0-9_.-]` are compressed. + - `githubRepo=` *Optional.* A name of a repository in GitHub. + Allows an easy set of the search path for packages available on GitHub: + `https://github.com///raw/.../` + By default lowercase name of installed package is used. + + - `githubToken=` *Optional.* A fine-grained personal access token for GitHub. + When the value is non-missing it triggers GitHub API access to + private repositories. Of course the token used has to be configured + properly for the access. + Read GitHub documentation to learn how to create and setup your token: + `https://docs.github.com/en/authentication/` + `keeping-your-account-and-data-secure/` + `managing-your-personal-access-tokens` + `#creating-a-fine-grained-personal-access-token` + (lines break added for easier reading) + Public repos do not need authentication. + [NOTE!] This feature is experimental in this release. + -------------------------------------------------------------------------------------------- Visit: `https://github.com/yabwon/SAS_PACKAGES/tree/main/SPF/Documentation` to learn more. @@ -185,7 +203,7 @@ filename packages "C:/SAS_PACKAGES"; ## This is short help information for the `helpPackage` macro ------------------------------------------------------------------------------- - Macro to get help about SAS packages, version `20260216` + Macro to get help about SAS packages, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -263,7 +281,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `loadPackage` macro ------------------------------------------------------------------------------- - Macro to *load* SAS packages, version `20260216` + Macro to *load* SAS packages, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -421,7 +439,7 @@ If created, those macros are automatically deleted when the `%unloadPackage()` m ## This is short help information for the `loadPackageS` macro ------------------------------------------------------------------------------- - Macro wrapper for the loadPackage macro, version `20260216` + Macro wrapper for the loadPackage macro, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -472,7 +490,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `unloadPackage` macro ------------------------------------------------------------------------------- - Macro to unload SAS packages, version `20260216` + Macro to unload SAS packages, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -539,7 +557,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `listPackages` macro ----------------------------------------------------------------------------------------- - Macro to list available SAS packages, version `20260216` + Macro to list available SAS packages, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -588,7 +606,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `verifyPackage` macro ------------------------------------------------------------------------------- - Macro to verify SAS package with it hash digest, version `20260216` + Macro to verify SAS package with it hash digest, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -644,7 +662,7 @@ filename packages "C:/SAS_PACKAGES"; %* set-up a directory for packages; ## This is short help information for the `previewPackage` macro ------------------------------------------------------------------------------- - Macro to get preview of a SAS packages, version `20260216` + Macro to get preview of a SAS packages, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -713,7 +731,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `generatePackage` macro ------------------------------------------------------------------------------- - Macro to generate SAS packages, version `20260216` + Macro to generate SAS packages, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -946,7 +964,7 @@ All files have to have `.sas` extension. Other files are ignored. ## This is short help information for the `extendPackagesFileref` macro ----------------------------------------------------------------------------------------- - Macro to list directories pointed by 'packages' fileref, version `20260216` + Macro to list directories pointed by 'packages' fileref, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -988,7 +1006,7 @@ filename packages ("D:/NEW_DIR" %extendPackagesFileref()); %* add new directory; ## This is short help information for the `loadPackageAddCnt` macro ------------------------------------------------------------------------------- - Macro to load *additional content* for a SAS package, version `20260216` + Macro to load *additional content* for a SAS package, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -1082,7 +1100,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ------------------------------------------------------------------------------- Utility macro to *split* single file with SAS package code into multiple - files with separate snippets, version `20260216` + files with separate snippets, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -1163,7 +1181,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `relocatePackage` macro ------------------------------------------------------------------------------- - Macro to *locally copy or move* (relocate) SAS packages, version `20260216` + Macro to *locally copy or move* (relocate) SAS packages, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -1275,7 +1293,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `isPackagesFilerefOK` macro ----------------------------------------------------------------------------------------- - Macro to check if the `packages` fileref is "correct", version `20260216` + Macro to check if the `packages` fileref is "correct", version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -1326,7 +1344,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `SasPackagesFrameworkNotes` macro ------------------------------------------------------------------------------- - Macro prints help notes for SAS Packages Framework macros, version `20260216` + Macro prints help notes for SAS Packages Framework macros, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -1376,7 +1394,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `bundlePackages` macro ------------------------------------------------------------------------------- - Macro to *create bundles* of SAS packages, version `20260216` + Macro to *create bundles* of SAS packages, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -1445,7 +1463,7 @@ filename packages "C:/SAS_PACKAGES"; %* setup a directory for packages; ## This is short help information for the `unbundlePackages` macro ------------------------------------------------------------------------------- - Macro to *extract* SAS packages from a bundle, version `20260216` + Macro to *extract* SAS packages from a bundle, version `20260409` A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating diff --git a/SPF/SPFinit.sas b/SPF/SPFinit.sas index 7c21b97..35dce29 100644 --- a/SPF/SPFinit.sas +++ b/SPF/SPFinit.sas @@ -43,7 +43,7 @@ - to unload, or - to generate SAS packages. - Version 20260216. + Version 20260409. See examples below. A SAS package is a zip file containing a group of files @@ -101,7 +101,7 @@ Contributors: */ )/secure /*** HELP END ***/ -des = 'Macro to load SAS package, version 20260216. Run %loadPackage() for help info.' +des = 'Macro to load SAS package, version 20260409. Run %loadPackage() for help info.' minoperator ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then @@ -117,7 +117,7 @@ minoperator %put ### This is short help information for the `loadPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *load* SAS packages, version `20260216` #; + %put # Macro to *load* SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -398,7 +398,7 @@ minoperator */ )/secure /*** HELP END ***/ -des = 'Macro to unload SAS package, version 20260216. Run %unloadPackage() for help info.' +des = 'Macro to unload SAS package, version 20260409. Run %unloadPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -413,7 +413,7 @@ des = 'Macro to unload SAS package, version 20260216. Run %unloadPackage() for h %put ### This is short help information for the `unloadPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to unload SAS packages, version `20260216` #; + %put # Macro to unload SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -568,7 +568,7 @@ des = 'Macro to unload SAS package, version 20260216. Run %unloadPackage() for h */ )/secure /*** HELP END ***/ -des = 'Macro to get help about SAS package, version 20260216. Run %helpPackage() for help info.' +des = 'Macro to get help about SAS package, version 20260409. Run %helpPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -583,7 +583,7 @@ des = 'Macro to get help about SAS package, version 20260216. Run %helpPackage() %put ### This is short help information for the `helpPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to get help about SAS packages, version `20260216` #; + %put # Macro to get help about SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -728,7 +728,7 @@ TODO: */ /*+installPackage+*/ -/* Macros to install SAS packages, version 20260216 */ +/* Macros to install SAS packages, version 20260409 */ /* 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 @@ -751,11 +751,14 @@ TODO: default is 0 - means No, 1 means Yes */ , SFRCVN = /* name of a macro variable to store success-failure return code value */ , github = /* name of a user or an organization in GitHub, all characters except [A-z0-9_.-] are compressed */ +, githubRepo = %sysfunc(lowcase(&packageName.)) /* repo name to be used, by default it is the package name, but can be altered */ +, githubToken = /* user's github fine-grained personal access token */ +, githubTokenDebug = 0 /* debug values: 0,1,2,3 */ ) /secure minoperator /*** HELP END ***/ -des = 'Macro to install SAS package, version 20260216. Run %%installPackage() for help info.' +des = 'Macro to install SAS package, version 20260409. Run %%installPackage() for help info.' ; %if (%superq(packagesNames) = ) OR (%qupcase(&packagesNames.) = HELP) %then %do; @@ -770,7 +773,7 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo %put ### This is short help information for the `installPackage` macro #; %put #--------------------------------------------------------------------------------------------#;; %put # #; - %put # Macro to install SAS packages, version `20260216` #; + %put # Macro to install SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -848,9 +851,27 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo %put # #; %put # - `github=` *Optional.* A name of a user or an organization in GitHub. #; %put # Allows an easy set of the search path for packages available on GitHub: #; - %put # `https://github.com///raw/.../` #; + %put # `https://github.com///raw/.../` #; %put # All characters except `[A-z0-9_.-]` are compressed. #; %put # #; + %put # - `githubRepo=` *Optional.* A name of a repository in GitHub. #; + %put # Allows an easy set of the search path for packages available on GitHub: #; + %put # `https://github.com///raw/.../` #; + %put # By default lowercase name of installed package is used. #; + %put # #; + %put # - `githubToken=` *Optional.* A fine-grained personal access token for GitHub. #; + %put # When the value is non-missing it triggers GitHub API access to #; + %put # private repositories. Of course the token used has to be configured #; + %put # properly for the access. #; + %put # Read GitHub documentation to learn how to create and setup your token: #; + %put # `https://docs.github.com/en/authentication/ #; + %put # keeping-your-account-and-data-secure/ #; + %put # managing-your-personal-access-tokens #; + %put # #creating-a-fine-grained-personal-access-token` #; + %put # (lines break added for easier reading) #; + %put # Public repos do not need authentication. #; + %put # [NOTE!] This feature is experimental in this release. #; + %put # #; %put #--------------------------------------------------------------------------------------------#; %put # #; %put # Visit: `https://github.com/yabwon/SAS_PACKAGES/tree/main/SPF/Documentation` #; @@ -988,7 +1009,7 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo %do; %let SPFinitMirror = https://raw.githubusercontent.com/yabwon/SAS_PACKAGES/main/SPF/SPFinit.sas; %let SPFinitMirrorMD = https://raw.githubusercontent.com/yabwon/SAS_PACKAGES/main/SPF/SPFinit.md; - /* ingnore version support for pharmaForest for now */ + /* ingnore version support for github for now */ %let github = %sysfunc(compress(%superq(github),%str(,.-),KAD)); %put INFO: GitHub location used is: %superq(github).; %let sourcePath = https://github.com/&github./; /*users content*/ @@ -1069,7 +1090,7 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo %let SPFinitMirror = https://raw.githubusercontent.com/yabwon/SAS_PACKAGES/&vers./SPF/SPFinit.sas; %let SPFinitMirrorMD = https://raw.githubusercontent.com/yabwon/SAS_PACKAGES/&vers./SPF/SPFinit.md; %end; - %if %superq(mirror) > 1 %then + %if NOT (%superq(mirror) in (0 1 4)) %then %put %str( )Mirror %superq(mirror) does not support versioning.; /* source code file */ @@ -1092,12 +1113,12 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo %do; %if %superq(mirror) IN (0 3 4) %then /* SASPAC or PharmaForest or an arbitrary GitHub repo */ %do; - %let packageSubDir = %sysfunc(lowcase(&packageName.))/raw/main/; + %let packageSubDir = &githubRepo./raw/main/; %if %superq(vers) ne %then %do; /*%let packageSubDir = %sysfunc(lowcase(&packageName.))/main/hist/&version./;*/ - %let packageSubDir = %sysfunc(lowcase(&packageName.))/raw/&vers./; + %let packageSubDir = &githubRepo./raw/&vers./; %end; %end; %else @@ -1134,6 +1155,13 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo /* copy the file byte-by-byte */ %local installationRC; %let installationRC=1; + + %if (%superq(githubToken)= ) + OR + (%upcase(&packageName.) in (SPFINIT SASPACKAGEFRAMEWORK SASPACKAGESFRAMEWORK)) + %then + %do; + /* public repo, location with URL access, or SPFinit */ data _null_; length filein fileinMD 8 out_path in_path out_pathMD in_pathMD rcTXT $ 4096 @@ -1224,7 +1252,140 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo put @2 "Package documentation in markdown format not available." ; /* / out_pathMD / in_pathMD;*/ end; run; - + /************************************************************************************************************/ + %end; + %else + %do; + /* when githubToken= is not null then a "private repo" case is assumed */ + /* except for SPFinit.sas that is always installed from SAS_PACKAGES public repo */ + + %put [NOTE!] This feature is experimental in this release!; + %local ref notRunHTTP; + %let notRunHTTP=1; + %if %superq(vers)= %then %let ref = main; + %else %let ref = &vers.; + + %if NOT(%superq(githubTokenDebug) in (0 1 2 3)) %then %let githubTokenDebug = 0; + + %if %sysfunc(FEXIST(&out.)) = 0 %then + %do; + %put %str( )Installing the &packageName. package; + %put %str( )in the &firstPackagesPath. directory.; + %let notRunHTTP=0; + %end; + %else + %do; + %if 1=&replace. %then + %do; + %put %str( )The following file will be replaced during; + %put %str( )installation of the &packageName. package:; + %put %str( )%sysfunc(pathname(&out.)); + %let notRunHTTP = %sysfunc(FDELETE(&out.)); + %put %sysfunc(sysmsg()); + %end; + %else + %do; + %put %str( )The following file will NOT be replaced:; + %put %str( )%sysfunc(pathname(&out.)); + %let notRunHTTP = 1; + %end; + %end; + + %if %superq(githubToken) NE %qsysfunc(compress(%superq(githubToken),%str( _),KAD)) %then + %do; + %put WARNING: The githubToken= parameter contains illegal symbols; + %put WARNING- Allowed symbols are letters A to Z and a to z, digits 0 to 9, and underscore(_); + %put WARNING- Verify your token. Installation aborted.; + %let notRunHTTP = 1; + %end; + + %if ¬RunHTTP.=0 %then + %do; + %put %str( )URL called by PROC HTTP is:; + %put %str( )"https://api.github.com/repos/&github./&githubRepo./contents/%sysfunc(lowcase(&packageName.)).zip?ref=&ref."; + %put %str( )Headers:; + %put %str( )Accept=application/vnd.github.raw+json; + %put %str( )X-GitHub-Api-Version=2026-03-10; + %put %str( )Authorization=Bearer *****************; + %put %str( ); + + + /* proc http setup based on: + https://docs.github.com/en/rest/repos/contents?apiVersion=2026-03-10#get-repository-content + */ + proc http + method="GET" + out=&out. + URL= + "https://api.github.com/repos/&github./&githubRepo./contents/%sysfunc(lowcase(&packageName.)).zip?ref=&ref." + CLEAR_CACHE + ; + headers + "Accept"="application/vnd.github.raw+json" + "X-GitHub-Api-Version"="2026-03-10" + "Authorization"="Bearer &githubToken." + ; + debug level=&githubTokenDebug.; + run; + + %if %sysfunc(FEXIST(&out.)) AND &SYS_PROCHTTP_STATUS_CODE.=200 %then + %do; + %let installationRC=0; + %put %str( )Done with return code rc=0 (zero = success); + %end; + %else + %do; + %let installationRC=1; + %put %str( )Done with return code rc=&SYS_PROCHTTP_STATUS_CODE. (zero = success); + %put %str( )Message: &SYS_PROCHTTP_STATUS_PHRASE.; + %end; + + %let notRunHTTP=1; + %if 1=&instDoc. AND 0=&installationRC. %then + %do; + %if %sysfunc(FEXIST(&outMD.)) = 0 %then + %do; + %put %str( )Package documentation installation on request:; + %let notRunHTTP = 0; + %end; + %else %if 1=&replace. %then + %do; + %put %str( )Package documentation installation on demand:; + %let notRunHTTP = %sysfunc(FDELETE(&outMD.)); + %if ¬RunHTTP. %then %put %sysfunc(sysmsg()); + %end; + + %if ¬RunHTTP.=0 %then + %do; + proc http + method="GET" + out=&outMD. + URL= + "https://api.github.com/repos/&github./&githubRepo./contents/%sysfunc(lowcase(&packageName.)).md?ref=&ref." + CLEAR_CACHE + ; + headers + "Accept"="application/vnd.github.raw+json" + "X-GitHub-Api-Version"="2026-03-10" + "Authorization"="Bearer &githubToken." + ; + debug level=&githubTokenDebug.; + run; + %if %sysfunc(FEXIST(&outMD.)) AND &SYS_PROCHTTP_STATUS_CODE.=200 + %then %put %str( )status successful!; + %else %put %str( )status unsuccessful!; + + %end; + %end; + %end; + %else + %do; + %let installationRC=1; + %put %str( )Done with return code rc=1 (zero = success); + %end; + /************************************************************************************************************/ + %end; + filename &in. clear; filename &out. clear; filename &inMD. clear; @@ -1422,7 +1583,7 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo Macro to list SAS packages in packages folder. - Version 20260216 + Version 20260409 A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -1444,7 +1605,7 @@ des = 'Macro to install SAS package, version 20260216. Run %%installPackage() fo listDataSet /* Name of a data set to save results */ , quiet = 0 /* Indicate if results should be printed in log */ )/secure parmbuff -des = 'Macro to list SAS packages from `packages` fileref, type %listPackages(HELP) for help, version 20260216.' +des = 'Macro to list SAS packages from `packages` fileref, type %listPackages(HELP) for help, version 20260409.' ; %if (%QUPCASE(&listDataSet.) = HELP) %then %do; @@ -1459,7 +1620,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 `20260216` #; + %put # Macro to list available SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -1685,7 +1846,7 @@ options ls = &ls_tmp. ps = &ps_tmp. ¬es_tmp. &source_tmp.; Macro to generate SAS packages. - Version 20260216 + Version 20260409 A SAS package is a zip file containing a group of SAS codes (macros, functions, data steps generating @@ -1735,7 +1896,7 @@ options ls = &ls_tmp. ps = &ps_tmp. ¬es_tmp. &source_tmp.; when empty takes buildLocation */ )/ secure minoperator /*** HELP END ***/ -des = 'Macro to generate SAS packages, version 20260216. Run %generatePackage() for help info.' +des = 'Macro to generate SAS packages, version 20260409. Run %generatePackage() for help info.' ; %if (%superq(filesLocation) = ) OR (%qupcase(&filesLocation.) = HELP) %then %do; @@ -1750,7 +1911,7 @@ des = 'Macro to generate SAS packages, version 20260216. Run %generatePackage() %put ### This is short help information for the `generatePackage` macro #; %put #------------------------------------------------------------------------------------#; %put # #; - %put # Macro to generate SAS packages, version `20260216` #; + %put # Macro to generate SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -2632,7 +2793,7 @@ title6 "MD5 hashed fileref of package lowcase name: &_PackageFileref_."; title&_titleNumber_. "Package ZIP file location is: &buildLocation."; %end; -footnote1 "SAS Packages Framework, version 20260216"; +footnote1 "SAS Packages Framework, version 20260409"; proc print data = &filesWithCodes.(drop=base build folderRef fileRef rc folderid _abort_ fileId additionalContent) @@ -3457,7 +3618,7 @@ data _null_; %end; put +(-1) '`.;''' / ' !! '' %put The macro generated: '' !! put(dtCASLudf, E8601DT19.-L) !! ";"' - / ' !! '' %put with the SAS Packages Framework version 20260216.;''' + / ' !! '' %put with the SAS Packages Framework version 20260409.;''' / ' !! '' %put ****************************************************************************;''' / ' !! '' %GOTO theEndOfTheMacro;''' / ' !! '' %end;''' ; @@ -3621,7 +3782,7 @@ data _null_; %end; put +(-1) '`.; '' !!' / ''' %put The macro generated: ''' " !! put(dtIML, E8601DT19.-L) !! " '''; '' !! ' / - ''' %put with the SAS Packages Framework version 20260216.; '' !! ' / + ''' %put with the SAS Packages Framework version 20260409.; '' !! ' / ''' %put ****************************************************************************; '' !! ' / ''' %GOTO theEndOfTheMacro; '' !! ' / ''' %end; '' !! ' / @@ -4493,7 +4654,7 @@ data _null_; %end; put 'put " " / @3 "---------------------------------------------------------------------" / " ";' - / 'put @3 "*SAS package generated by SAS Package Framework, version `20260216`*";' + / 'put @3 "*SAS package generated by SAS Package Framework, version `20260409`*";' / "put @3 '*under `&sysscp.`(`&sysscpl.`) operating system,*';" / "put @3 '*using SAS release: `&sysvlong4.`.*';" / 'put " " / @3 "---------------------------------------------------------------------";'; @@ -4932,7 +5093,7 @@ options &qlenmax_fstimer_tmp.; /*+SPFint_gnPckg_tests+*/ %macro SPFint_gnPckg_tests()/secure minoperator -des='SAS Packages Framework internal macro. Executable only inside the %generatePackage() macro. The macro encapsulates the test part of the process. Version 20260216.'; +des='SAS Packages Framework internal macro. Executable only inside the %generatePackage() macro. The macro encapsulates the test part of the process. Version 20260409.'; /* macro picks up all macrovariables from external scope, so from the %generatePackage() macro */ %if %sysmexecname(%sysmexecdepth-1) in (GENERATEPACKAGE) %then %do; @@ -5614,7 +5775,7 @@ options "elenmax_tmp.; /*+SPFint_gnPckg_markdown+*/ %macro SPFint_gnPckg_markdown()/secure minoperator -des='SAS Packages Framework internal macro. Executable only inside the %generatePackage() macro. The macro encapsulates the markdown documentation part of the process. Version 20260216.'; +des='SAS Packages Framework internal macro. Executable only inside the %generatePackage() macro. The macro encapsulates the markdown documentation part of the process. Version 20260409.'; /* macro picks up all macrovariables from external scope, so from the %generatePackage() macro */ %if %sysmexecname(%sysmexecdepth-1) in (GENERATEPACKAGE) %then %do; @@ -5726,7 +5887,7 @@ data &filesWithCodes.markdown; %end; put " " / "---------------------------------------------------------------------" / " " - / "*SAS package generated by SAS Package Framework, version `20260216`,*" + / "*SAS package generated by SAS Package Framework, version `20260409`,*" / "*under `&sysscp.`(`&sysscpl.`) operating system,*" / "*using SAS release: `&sysvlong4.`.*" / " " / "---------------------------------------------------------------------" / " "; @@ -5867,7 +6028,7 @@ options &MarkDownOptionsTmp.; /*+SPFint_gnPckg_arch+*/ %macro SPFint_gnPckg_arch()/secure minoperator -des='SAS Packages Framework internal macro. Executable only inside the %generatePackage() macro. The macro encapsulates the archive version generation part of the process. Version 20260216.'; +des='SAS Packages Framework internal macro. Executable only inside the %generatePackage() macro. The macro encapsulates the archive version generation part of the process. Version 20260409.'; /* macro picks up all macrovariables from external scope, so from the %generatePackage() macro */ %if %sysmexecname(%sysmexecdepth-1) in (GENERATEPACKAGE) %then %do; @@ -6034,7 +6195,7 @@ TODO: (in Polish) */ )/secure /*** HELP END ***/ -des = 'Macro to load multiple SAS packages at one run, version 20260216. Run %loadPackages() for help info.' +des = 'Macro to load multiple SAS packages at one run, version 20260409. Run %loadPackages() for help info.' parmbuff ; %if (%superq(packagesNames) = ) OR (%qupcase(&packagesNames.) = HELP) %then @@ -6050,7 +6211,7 @@ parmbuff %put ### This is short help information for the `loadPackageS` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro wrapper for the loadPackage macro, version `20260216` #; + %put # Macro wrapper for the loadPackage macro, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -6148,7 +6309,7 @@ parmbuff hashing_file() function, SAS 9.4M6 */ )/secure /*** HELP END ***/ -des = 'Macro to verify SAS package with the hash digest, version 20260216. Run %verifyPackage() for help info.' +des = 'Macro to verify SAS package with the hash digest, version 20260409. Run %verifyPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -6163,7 +6324,7 @@ des = 'Macro to verify SAS package with the hash digest, version 20260216. Run % %put ### This is short help information for the `verifyPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to verify SAS package with it hash digest, version `20260216` #; + %put # Macro to verify SAS package with it hash digest, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -6379,7 +6540,7 @@ des = 'Macro to verify SAS package with the hash digest, version 20260216. Run % */ )/secure /*** HELP END ***/ -des = 'Macro to preview content of a SAS package, version 20260216. Run %previewPackage() for help info.' +des = 'Macro to preview content of a SAS package, version 20260409. Run %previewPackage() for help info.' ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then %do; @@ -6394,7 +6555,7 @@ des = 'Macro to preview content of a SAS package, version 20260216. Run %preview %put ### This is short help information for the `previewPackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to get preview of a SAS packages, version `20260216` #; + %put # Macro to get preview of a SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -6528,7 +6689,7 @@ des = 'Macro to preview content of a SAS package, version 20260216. Run %preview when empty the "packages" value is used */ )/secure /*** HELP END ***/ -des = 'Macro to list directories pointed by "packages" fileref, version 20260216. Run %extendPackagesFileref(HELP) for help info.' +des = 'Macro to list directories pointed by "packages" fileref, version 20260409. Run %extendPackagesFileref(HELP) for help info.' ; %if %QUPCASE(&packages.) = HELP %then @@ -6544,7 +6705,7 @@ des = 'Macro to list directories pointed by "packages" fileref, version 20260216 %put ### This is short help information for the `extendPackagesFileref` macro #; %put #-----------------------------------------------------------------------------------------#;; %put # #; - %put # Macro to list directories pointed by 'packages' fileref, version `20260216` #; + %put # Macro to list directories pointed by 'packages' fileref, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -6646,7 +6807,7 @@ filename packages list; is provided in required version */ )/secure /*** HELP END ***/ -des = 'Macro to load additional content for a SAS package, version 20260216. Run %loadPackageAddCnt() for help info.' +des = 'Macro to load additional content for a SAS package, version 20260409. Run %loadPackageAddCnt() for help info.' minoperator ; %if (%superq(packageName) = ) OR (%qupcase(&packageName.) = HELP) %then @@ -6662,7 +6823,7 @@ minoperator %put ### This is short help information for the `loadPackageAddCnt` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *load* additional content for a SAS package, version `20260216` #; + %put # Macro to *load* additional content for a SAS package, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -7033,7 +7194,7 @@ minoperator ,nobs=0 /* technical parameter */ ) /*** HELP END ***/ -/ des = 'Utility macro to split "one big" code into multiple files for a SAS package, version 20260216. Run %splitCodeForPackage() for help info.' +/ des = 'Utility macro to split "one big" code into multiple files for a SAS package, version 20260409. Run %splitCodeForPackage() for help info.' ; %if (%superq(codeFile) = ) OR (%qupcase(&codeFile.) = HELP) %then %do; @@ -7049,7 +7210,7 @@ minoperator %put #-------------------------------------------------------------------------------#; %put # #; %put # Utility macro to *split* single file with SAS package code into multiple #; - %put # files with separate snippets, version `20260216` #; + %put # files with separate snippets, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -7425,7 +7586,7 @@ options nomprint nosymbolgen nomlogic notes source ls=MAX ps=MAX msglevel=N ; */ if firstLine[j] then do; - put '/* File generated with help of SAS Packages Framework, version 20260216. */'; + put '/* File generated with help of SAS Packages Framework, version 20260409. */'; firstLine[j]=0; end; put _infile_; @@ -7458,7 +7619,7 @@ options &options_tmp2.; ,psMAX=MAX /* pageSise in case executed inside DoSubL() */ ,ods= /* a data set for results, e.g., work.relocatePackageReport */ ) -/ des = 'Utility macro that locally Copies or Moves Packages, version 20260216. Run %relocatePackage() for help info.' +/ des = 'Utility macro that locally Copies or Moves Packages, version 20260409. Run %relocatePackage() for help info.' secure minoperator ; @@ -7476,7 +7637,7 @@ options &options_tmp2.; %put ### This is short help information for the `relocatePackage` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *locally copy or move* (relocate) SAS packages, version `20260216` #; + %put # Macro to *locally copy or move* (relocate) SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -8134,7 +8295,7 @@ filename PACKAGES ("R:\testPackages2" "R:\testPackages1"); vERRb /* indicates if macro should be verbose and report errors */ ) / minoperator PARMBUFF -des = 'Macro to check if the PACKAGES fileref is "correct", type %isPackagesFilerefOK(HELP) for help, version 20260216.' +des = 'Macro to check if the PACKAGES fileref is "correct", type %isPackagesFilerefOK(HELP) for help, version 20260409.' ; /*** HELP END ***/ %if %QUPCASE(&SYSPBUFF.) = %str(%(HELP%)) %then @@ -8150,7 +8311,7 @@ des = 'Macro to check if the PACKAGES fileref is "correct", type %isPackagesFile %put ### This is short help information for the `isPackagesFilerefOK` macro #; %put #-----------------------------------------------------------------------------------------#;; %put # #; - %put # Macro to check if the `packages` fileref is "correct", version `20260216` #; + %put # Macro to check if the `packages` fileref is "correct", version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -8284,7 +8445,7 @@ SPFmacroName /* space separated list of names */ / minoperator secure -des = 'Macro to provide help notes about SAS Packages Framework macros, version 20260216. Run %SasPackagesFrameworkNotes(HELP) for help info.' +des = 'Macro to provide help notes about SAS Packages Framework macros, version 20260409. Run %SasPackagesFrameworkNotes(HELP) for help info.' ; %local list N i element; %let list= @@ -8330,7 +8491,7 @@ SasPackagesFrameworkNotes %put ### This is short help information for the `SasPackagesFrameworkNotes` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro prints help notes for SAS Packages Framework macros, version `20260216` #; + %put # Macro prints help notes for SAS Packages Framework macros, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -8453,7 +8614,7 @@ options mlogic symbolgen; ,packagesRef=packages ,ods= /* data set for report file */ )/ -des='Macro to create a bundle of SAS packages, version 20260216. Run %bundlePackages(HELP) for help info.' +des='Macro to create a bundle of SAS packages, version 20260409. Run %bundlePackages(HELP) for help info.' secure minoperator ; @@ -8470,7 +8631,7 @@ secure minoperator %put ### This is short help information for the `bundlePackages` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *create bundles* of SAS packages, version `20260216` #; + %put # Macro to *create bundles* of SAS packages, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #; @@ -8955,7 +9116,7 @@ filename p2 "R:/dontexist"; ,ods= /* data set for report file */ ,verify=0 )/ -des='Macro to extract a bundle of SAS packages, version 20260216. Run %unbundlePackages(HELP) for help info.' +des='Macro to extract a bundle of SAS packages, version 20260409. Run %unbundlePackages(HELP) for help info.' secure minoperator ; @@ -8973,7 +9134,7 @@ minoperator %put ### This is short help information for the `unbundlePackages` macro #; %put #-------------------------------------------------------------------------------#; %put # #; - %put # Macro to *extract* SAS packages from a bundle, version `20260216` #; + %put # Macro to *extract* SAS packages from a bundle, version `20260409` #; %put # #; %put # A SAS package is a zip file containing a group #; %put # of SAS codes (macros, functions, data steps generating #;