From c74ca0028ddad77268e774676369c46bc466ff02 Mon Sep 17 00:00:00 2001 From: febo Date: Thu, 16 May 2024 15:02:59 -0400 Subject: [PATCH 1/4] Fix programs env regex --- template/base/scripts/utils.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template/base/scripts/utils.mjs b/template/base/scripts/utils.mjs index d5c3fc4..56e1440 100644 --- a/template/base/scripts/utils.mjs +++ b/template/base/scripts/utils.mjs @@ -29,7 +29,7 @@ export function getExternalProgramAddresses() { let didWarnAboutMissingPrograms = false; export function getProgramFolders() { const programs = process.env.PROGRAMS - ? process.env.PROGRAMS.split(/\s+/) + ? process.env.PROGRAMS.split(/,/).map((s) => s.replace(/[\[ | \] | \""]/g, "")) : getAllProgramFolders(); const filteredPrograms = programs.filter((program) => fs.existsSync(path.join(workingDirectory, program)) From b982715931a38512517ad91f84dbe9ea285f9296 Mon Sep 17 00:00:00 2001 From: febo Date: Thu, 16 May 2024 15:03:45 -0400 Subject: [PATCH 2/4] Add changeset --- .changeset/blue-fishes-grow.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/blue-fishes-grow.md diff --git a/.changeset/blue-fishes-grow.md b/.changeset/blue-fishes-grow.md new file mode 100644 index 0000000..c5dc0a2 --- /dev/null +++ b/.changeset/blue-fishes-grow.md @@ -0,0 +1,5 @@ +--- +"create-solana-program": patch +--- + +Fix program env variable regex From 5d6a97d4a21c4f9f2877cf103923c8a32a481e02 Mon Sep 17 00:00:00 2001 From: febo Date: Thu, 16 May 2024 15:06:29 -0400 Subject: [PATCH 3/4] Fix lint --- template/base/scripts/utils.mjs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/template/base/scripts/utils.mjs b/template/base/scripts/utils.mjs index 56e1440..9a91dfd 100644 --- a/template/base/scripts/utils.mjs +++ b/template/base/scripts/utils.mjs @@ -29,7 +29,9 @@ export function getExternalProgramAddresses() { let didWarnAboutMissingPrograms = false; export function getProgramFolders() { const programs = process.env.PROGRAMS - ? process.env.PROGRAMS.split(/,/).map((s) => s.replace(/[\[ | \] | \""]/g, "")) + ? process.env.PROGRAMS.split(/,/).map((s) => + s.replace(/[\[ | \] | \""]/g, '') + ) : getAllProgramFolders(); const filteredPrograms = programs.filter((program) => fs.existsSync(path.join(workingDirectory, program)) From 70d4def7ba08b17cb4bde7804cfe3eab9c241eda Mon Sep 17 00:00:00 2001 From: febo Date: Thu, 16 May 2024 16:07:39 -0400 Subject: [PATCH 4/4] Improve env variable parsing --- template/base/scripts/utils.mjs | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/template/base/scripts/utils.mjs b/template/base/scripts/utils.mjs index 9a91dfd..9bbe49b 100644 --- a/template/base/scripts/utils.mjs +++ b/template/base/scripts/utils.mjs @@ -28,11 +28,18 @@ export function getExternalProgramAddresses() { let didWarnAboutMissingPrograms = false; export function getProgramFolders() { - const programs = process.env.PROGRAMS - ? process.env.PROGRAMS.split(/,/).map((s) => - s.replace(/[\[ | \] | \""]/g, '') - ) - : getAllProgramFolders(); + let programs; + + if (process.env.PROGRAMS) { + try { + programs = JSON.parse(process.env.PROGRAMS); + } catch (error) { + programs = process.env.PROGRAMS.split(/\s+/); + } + } else { + programs = getAllProgramFolders(); + } + const filteredPrograms = programs.filter((program) => fs.existsSync(path.join(workingDirectory, program)) );