diff --git a/actions-cache-3.0.1.tgz b/actions-cache-3.0.1.tgz new file mode 100644 index 0000000..5bc5a94 Binary files /dev/null and b/actions-cache-3.0.1.tgz differ diff --git a/dist/restore/index.js b/dist/restore/index.js index cc1c684..4d827b4 100644 --- a/dist/restore/index.js +++ b/dist/restore/index.js @@ -1113,7 +1113,13 @@ function resolvePaths(patterns) { .replace(new RegExp(`\\${path.sep}`, 'g'), '/'); core.debug(`Matched: ${relativeFile}`); // Paths are made relative so the tar entries are all relative to the root of the workspace. - paths.push(`${relativeFile}`); + if (relativeFile === '') { + // path.relative returns empty string if workspace and file are equal + paths.push('.'); + } + else { + paths.push(`${relativeFile}`); + } } } catch (e_1_1) { e_1 = { error: e_1_1 }; } @@ -5464,6 +5470,7 @@ const buffer = __importStar(__webpack_require__(293)); const fs = __importStar(__webpack_require__(747)); const stream = __importStar(__webpack_require__(794)); const util = __importStar(__webpack_require__(669)); +const timer = __importStar(__webpack_require__(581)); const utils = __importStar(__webpack_require__(15)); const constants_1 = __webpack_require__(931); const requestUtils_1 = __webpack_require__(899); @@ -5654,10 +5661,14 @@ function downloadCacheStorageSDK(archiveLocation, archivePath, options) { const segmentStart = downloadProgress.segmentOffset + downloadProgress.segmentSize; const segmentSize = Math.min(maxSegmentSize, contentLength - segmentStart); downloadProgress.nextSegment(segmentSize); - const result = yield client.downloadToBuffer(segmentStart, segmentSize, { - concurrency: options.downloadConcurrency, - onProgress: downloadProgress.onProgress() - }); + const result = yield Promise.race([client.downloadToBuffer(segmentStart, segmentSize, { + concurrency: options.downloadConcurrency, + onProgress: downloadProgress.onProgress() + }), + timer.setTimeout(60 * 60 * 1000, 'timeout')]); + if (result === 'timeout') { + throw new Error("Segment download timed out"); + } fs.writeFileSync(fd, result); } } @@ -37272,9 +37283,9 @@ function extractTar(archivePath, compressionMethod) { function getCompressionProgram() { switch (compressionMethod) { case constants_1.CompressionMethod.Zstd: - return ['--use-compress-program', 'zstd -d --long=30']; + return ['--use-compress-program', 'unzstd --long=30']; case constants_1.CompressionMethod.ZstdWithoutLong: - return ['--use-compress-program', 'zstd -d']; + return ['--use-compress-program', 'unzstd']; default: return ['-z']; } @@ -37305,9 +37316,9 @@ function createTar(archiveFolder, sourceDirectories, compressionMethod) { function getCompressionProgram() { switch (compressionMethod) { case constants_1.CompressionMethod.Zstd: - return ['--use-compress-program', 'zstd -T0 --long=30']; + return ['--use-compress-program', 'zstdmt --long=30']; case constants_1.CompressionMethod.ZstdWithoutLong: - return ['--use-compress-program', 'zstd -T0']; + return ['--use-compress-program', 'zstdmt']; default: return ['-z']; } @@ -37338,9 +37349,9 @@ function listTar(archivePath, compressionMethod) { function getCompressionProgram() { switch (compressionMethod) { case constants_1.CompressionMethod.Zstd: - return ['--use-compress-program', 'zstd -d --long=30']; + return ['--use-compress-program', 'unzstd --long=30']; case constants_1.CompressionMethod.ZstdWithoutLong: - return ['--use-compress-program', 'zstd -d']; + return ['--use-compress-program', 'unzstd']; default: return ['-z']; } @@ -42343,7 +42354,12 @@ function clean(key) /* 578 */, /* 579 */, /* 580 */, -/* 581 */, +/* 581 */ +/***/ (function(module) { + +module.exports = require("timers/promises"); + +/***/ }), /* 582 */ /***/ (function(module) { diff --git a/dist/save/index.js b/dist/save/index.js index b0f3e41..0b632a3 100644 --- a/dist/save/index.js +++ b/dist/save/index.js @@ -1113,7 +1113,13 @@ function resolvePaths(patterns) { .replace(new RegExp(`\\${path.sep}`, 'g'), '/'); core.debug(`Matched: ${relativeFile}`); // Paths are made relative so the tar entries are all relative to the root of the workspace. - paths.push(`${relativeFile}`); + if (relativeFile === '') { + // path.relative returns empty string if workspace and file are equal + paths.push('.'); + } + else { + paths.push(`${relativeFile}`); + } } } catch (e_1_1) { e_1 = { error: e_1_1 }; } @@ -5464,6 +5470,7 @@ const buffer = __importStar(__webpack_require__(293)); const fs = __importStar(__webpack_require__(747)); const stream = __importStar(__webpack_require__(794)); const util = __importStar(__webpack_require__(669)); +const timer = __importStar(__webpack_require__(581)); const utils = __importStar(__webpack_require__(15)); const constants_1 = __webpack_require__(931); const requestUtils_1 = __webpack_require__(899); @@ -5654,10 +5661,14 @@ function downloadCacheStorageSDK(archiveLocation, archivePath, options) { const segmentStart = downloadProgress.segmentOffset + downloadProgress.segmentSize; const segmentSize = Math.min(maxSegmentSize, contentLength - segmentStart); downloadProgress.nextSegment(segmentSize); - const result = yield client.downloadToBuffer(segmentStart, segmentSize, { - concurrency: options.downloadConcurrency, - onProgress: downloadProgress.onProgress() - }); + const result = yield Promise.race([client.downloadToBuffer(segmentStart, segmentSize, { + concurrency: options.downloadConcurrency, + onProgress: downloadProgress.onProgress() + }), + timer.setTimeout(60 * 60 * 1000, 'timeout')]); + if (result === 'timeout') { + throw new Error("Segment download timed out"); + } fs.writeFileSync(fd, result); } } @@ -37272,9 +37283,9 @@ function extractTar(archivePath, compressionMethod) { function getCompressionProgram() { switch (compressionMethod) { case constants_1.CompressionMethod.Zstd: - return ['--use-compress-program', 'zstd -d --long=30']; + return ['--use-compress-program', 'unzstd --long=30']; case constants_1.CompressionMethod.ZstdWithoutLong: - return ['--use-compress-program', 'zstd -d']; + return ['--use-compress-program', 'unzstd']; default: return ['-z']; } @@ -37305,9 +37316,9 @@ function createTar(archiveFolder, sourceDirectories, compressionMethod) { function getCompressionProgram() { switch (compressionMethod) { case constants_1.CompressionMethod.Zstd: - return ['--use-compress-program', 'zstd -T0 --long=30']; + return ['--use-compress-program', 'zstdmt --long=30']; case constants_1.CompressionMethod.ZstdWithoutLong: - return ['--use-compress-program', 'zstd -T0']; + return ['--use-compress-program', 'zstdmt']; default: return ['-z']; } @@ -37338,9 +37349,9 @@ function listTar(archivePath, compressionMethod) { function getCompressionProgram() { switch (compressionMethod) { case constants_1.CompressionMethod.Zstd: - return ['--use-compress-program', 'zstd -d --long=30']; + return ['--use-compress-program', 'unzstd --long=30']; case constants_1.CompressionMethod.ZstdWithoutLong: - return ['--use-compress-program', 'zstd -d']; + return ['--use-compress-program', 'unzstd']; default: return ['-z']; } @@ -42343,7 +42354,12 @@ function clean(key) /* 578 */, /* 579 */, /* 580 */, -/* 581 */, +/* 581 */ +/***/ (function(module) { + +module.exports = require("timers/promises"); + +/***/ }), /* 582 */ /***/ (function(module) { diff --git a/package-lock.json b/package-lock.json index 5eb9b43..a9e8bb5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "3.0.5", "license": "MIT", "dependencies": { - "@actions/cache": "^3.0.0", + "@actions/cache": "file:actions-cache-3.0.1.tgz", "@actions/core": "^1.7.0", "@actions/exec": "^1.1.1", "@actions/io": "^1.1.2" @@ -36,9 +36,10 @@ } }, "node_modules/@actions/cache": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@actions/cache/-/cache-3.0.0.tgz", - "integrity": "sha512-GL9CT1Fnu+pqs8TTB621q8Xa8Cilw2n9MwvbgMedetH7L1q2n6jY61gzbwGbKgtVbp3gVJ12aNMi4osSGXx3KQ==", + "version": "3.0.1", + "resolved": "file:actions-cache-3.0.1.tgz", + "integrity": "sha512-ucvw0xvFpe0/vfNQ/rc11ste0nidCdBAJ5j5F01BxBqjxmGH2doVzfPlqSIGhcN7wKI074x2ATb9+7HSrTqGHg==", + "license": "MIT", "dependencies": { "@actions/core": "^1.2.6", "@actions/exec": "^1.0.1", @@ -9533,9 +9534,8 @@ }, "dependencies": { "@actions/cache": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@actions/cache/-/cache-3.0.0.tgz", - "integrity": "sha512-GL9CT1Fnu+pqs8TTB621q8Xa8Cilw2n9MwvbgMedetH7L1q2n6jY61gzbwGbKgtVbp3gVJ12aNMi4osSGXx3KQ==", + "version": "file:actions-cache-3.0.1.tgz", + "integrity": "sha512-ucvw0xvFpe0/vfNQ/rc11ste0nidCdBAJ5j5F01BxBqjxmGH2doVzfPlqSIGhcN7wKI074x2ATb9+7HSrTqGHg==", "requires": { "@actions/core": "^1.2.6", "@actions/exec": "^1.0.1", diff --git a/package.json b/package.json index ffc8fc8..5263f98 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "author": "GitHub", "license": "MIT", "dependencies": { - "@actions/cache": "^3.0.0", + "@actions/cache": "file:actions-cache-3.0.1.tgz", "@actions/core": "^1.7.0", "@actions/exec": "^1.1.1", "@actions/io": "^1.1.2"