From 3e3d8c490f8eef69b019e789ceb2c59aed11eab8 Mon Sep 17 00:00:00 2001
From: Florian Meriaux <florian.meriaux@ext.leroymerlin.fr>
Date: Wed, 25 May 2022 11:39:10 +0200
Subject: [PATCH 1/5] sbt-cache: don't cache some files.

---
 dist/cleanup/index.js | 5 ++++-
 dist/setup/index.js   | 5 ++++-
 src/cache.ts          | 5 ++++-
 3 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js
index cfa2fb8..235d0c3 100644
--- a/dist/cleanup/index.js
+++ b/dist/cleanup/index.js
@@ -65448,7 +65448,10 @@ const supportedPackageManager = [
         path: [
             path_1.join(os_1.default.homedir(), '.ivy2', 'cache'),
             path_1.join(os_1.default.homedir(), '.sbt'),
-            getCoursierCachePath()
+            getCoursierCachePath(),
+            //TODO: comment the reason of exclusions
+            '!' + path_1.join(os_1.default.homedir(), '.sbt', '*.lock'),
+            '!' + path_1.join(os_1.default.homedir(), '**', 'ivydata-*.properties')
         ],
         pattern: ['**/*.sbt', '**/project/build.properties', '**/project/**.{scala,sbt}']
     }
diff --git a/dist/setup/index.js b/dist/setup/index.js
index f2a2170..0703230 100644
--- a/dist/setup/index.js
+++ b/dist/setup/index.js
@@ -100653,7 +100653,10 @@ const supportedPackageManager = [
         path: [
             path_1.join(os_1.default.homedir(), '.ivy2', 'cache'),
             path_1.join(os_1.default.homedir(), '.sbt'),
-            getCoursierCachePath()
+            getCoursierCachePath(),
+            //TODO: comment the reason of exclusions
+            '!' + path_1.join(os_1.default.homedir(), '.sbt', '*.lock'),
+            '!' + path_1.join(os_1.default.homedir(), '**', 'ivydata-*.properties')
         ],
         pattern: ['**/*.sbt', '**/project/build.properties', '**/project/**.{scala,sbt}']
     }
diff --git a/src/cache.ts b/src/cache.ts
index 0ddc426..e73d078 100644
--- a/src/cache.ts
+++ b/src/cache.ts
@@ -38,7 +38,10 @@ const supportedPackageManager: PackageManager[] = [
     path: [
       join(os.homedir(), '.ivy2', 'cache'),
       join(os.homedir(), '.sbt'),
-      getCoursierCachePath()
+      getCoursierCachePath(),
+      //TODO: comment the reason of exclusions
+      '!' + join(os.homedir(), '.sbt', '*.lock'),
+      '!' + join(os.homedir(), '**', 'ivydata-*.properties')
     ],
     pattern: ['**/*.sbt', '**/project/build.properties', '**/project/**.{scala,sbt}']
   }

From fa01820a3b46185b6e37266c5c6a2777e04297a5 Mon Sep 17 00:00:00 2001
From: Florian Meriaux <florian.meriaux@ext.leroymerlin.fr>
Date: Wed, 15 Jun 2022 08:10:31 +0200
Subject: [PATCH 2/5] add documentation notes

---
 dist/cleanup/index.js | 2 +-
 dist/setup/index.js   | 2 +-
 src/cache.ts          | 6 +++---
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js
index 235d0c3..3f419ec 100644
--- a/dist/cleanup/index.js
+++ b/dist/cleanup/index.js
@@ -65449,8 +65449,8 @@ const supportedPackageManager = [
             path_1.join(os_1.default.homedir(), '.ivy2', 'cache'),
             path_1.join(os_1.default.homedir(), '.sbt'),
             getCoursierCachePath(),
-            //TODO: comment the reason of exclusions
             '!' + path_1.join(os_1.default.homedir(), '.sbt', '*.lock'),
+            // Avoid SNAPSHOT resolution problems by forcing the deletion of these files (due to ideological gaps in maven/ivy).
             '!' + path_1.join(os_1.default.homedir(), '**', 'ivydata-*.properties')
         ],
         pattern: ['**/*.sbt', '**/project/build.properties', '**/project/**.{scala,sbt}']
diff --git a/dist/setup/index.js b/dist/setup/index.js
index 0703230..2bfd791 100644
--- a/dist/setup/index.js
+++ b/dist/setup/index.js
@@ -100654,8 +100654,8 @@ const supportedPackageManager = [
             path_1.join(os_1.default.homedir(), '.ivy2', 'cache'),
             path_1.join(os_1.default.homedir(), '.sbt'),
             getCoursierCachePath(),
-            //TODO: comment the reason of exclusions
             '!' + path_1.join(os_1.default.homedir(), '.sbt', '*.lock'),
+            // Avoid SNAPSHOT resolution problems by forcing the deletion of these files (due to ideological gaps in maven/ivy).
             '!' + path_1.join(os_1.default.homedir(), '**', 'ivydata-*.properties')
         ],
         pattern: ['**/*.sbt', '**/project/build.properties', '**/project/**.{scala,sbt}']
diff --git a/src/cache.ts b/src/cache.ts
index e73d078..4f920c0 100644
--- a/src/cache.ts
+++ b/src/cache.ts
@@ -39,7 +39,8 @@ const supportedPackageManager: PackageManager[] = [
       join(os.homedir(), '.ivy2', 'cache'),
       join(os.homedir(), '.sbt'),
       getCoursierCachePath(),
-      //TODO: comment the reason of exclusions
+      // Some files should not be cached to avoid resolution problems.
+      // In particular the resolution of snapshots (ideological gap between maven/ivy).
       '!' + join(os.homedir(), '.sbt', '*.lock'),
       '!' + join(os.homedir(), '**', 'ivydata-*.properties')
     ],
@@ -84,8 +85,7 @@ export async function restore(id: string) {
   core.saveState(STATE_CACHE_PRIMARY_KEY, primaryKey);
   if (primaryKey.endsWith('-')) {
     throw new Error(
-      `No file in ${process.cwd()} matched to [${
-        packageManager.pattern
+      `No file in ${process.cwd()} matched to [${packageManager.pattern
       }], make sure you have checked out the target repository`
     );
   }

From 48576e577eb8199add8f0dacd8086683cd4b33a7 Mon Sep 17 00:00:00 2001
From: Florian Meriaux <florian.meriaux@ext.leroymerlin.fr>
Date: Wed, 15 Jun 2022 08:19:27 +0200
Subject: [PATCH 3/5] npm run release

---
 dist/cleanup/index.js | 3 ++-
 dist/setup/index.js   | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/dist/cleanup/index.js b/dist/cleanup/index.js
index 3f419ec..a96f297 100644
--- a/dist/cleanup/index.js
+++ b/dist/cleanup/index.js
@@ -65449,8 +65449,9 @@ const supportedPackageManager = [
             path_1.join(os_1.default.homedir(), '.ivy2', 'cache'),
             path_1.join(os_1.default.homedir(), '.sbt'),
             getCoursierCachePath(),
+            // Some files should not be cached to avoid resolution problems.
+            // In particular the resolution of snapshots (ideological gap between maven/ivy).
             '!' + path_1.join(os_1.default.homedir(), '.sbt', '*.lock'),
-            // Avoid SNAPSHOT resolution problems by forcing the deletion of these files (due to ideological gaps in maven/ivy).
             '!' + path_1.join(os_1.default.homedir(), '**', 'ivydata-*.properties')
         ],
         pattern: ['**/*.sbt', '**/project/build.properties', '**/project/**.{scala,sbt}']
diff --git a/dist/setup/index.js b/dist/setup/index.js
index 2bfd791..df75cfb 100644
--- a/dist/setup/index.js
+++ b/dist/setup/index.js
@@ -100654,8 +100654,9 @@ const supportedPackageManager = [
             path_1.join(os_1.default.homedir(), '.ivy2', 'cache'),
             path_1.join(os_1.default.homedir(), '.sbt'),
             getCoursierCachePath(),
+            // Some files should not be cached to avoid resolution problems.
+            // In particular the resolution of snapshots (ideological gap between maven/ivy).
             '!' + path_1.join(os_1.default.homedir(), '.sbt', '*.lock'),
-            // Avoid SNAPSHOT resolution problems by forcing the deletion of these files (due to ideological gaps in maven/ivy).
             '!' + path_1.join(os_1.default.homedir(), '**', 'ivydata-*.properties')
         ],
         pattern: ['**/*.sbt', '**/project/build.properties', '**/project/**.{scala,sbt}']

From 187f735c38a0242a92486f37331d269d49e4f1ff Mon Sep 17 00:00:00 2001
From: Florian Meriaux <florian.meriaux@ext.leroymerlin.fr>
Date: Wed, 15 Jun 2022 08:23:10 +0200
Subject: [PATCH 4/5] npm run format

---
 src/cache.ts | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/cache.ts b/src/cache.ts
index 4f920c0..b8c87d8 100644
--- a/src/cache.ts
+++ b/src/cache.ts
@@ -85,7 +85,8 @@ export async function restore(id: string) {
   core.saveState(STATE_CACHE_PRIMARY_KEY, primaryKey);
   if (primaryKey.endsWith('-')) {
     throw new Error(
-      `No file in ${process.cwd()} matched to [${packageManager.pattern
+      `No file in ${process.cwd()} matched to [${
+        packageManager.pattern
       }], make sure you have checked out the target repository`
     );
   }

From 7b469c48c4eab9f7176be4e91a7a5f9cf25e1af1 Mon Sep 17 00:00:00 2001
From: PJ Fanning <pjfanning@users.noreply.github.com>
Date: Thu, 16 Jun 2022 21:47:05 +0100
Subject: [PATCH 5/5] sbt is a valid cache option value

---
 action.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/action.yml b/action.yml
index c6af975..ec05f65 100644
--- a/action.yml
+++ b/action.yml
@@ -54,7 +54,7 @@ inputs:
        $GPG_PASSPHRASE.'
     required: false
   cache:
-    description: 'Name of the build platform to cache dependencies. It can be "maven" or "gradle".'
+    description: 'Name of the build platform to cache dependencies. It can be "maven", "gradle" or "sbt".'
     required: false
   job-status:
     description: 'Workaround to pass job status to post job step. This variable is not intended for manual setting'