mirror of
				https://gitea.com/actions/cache.git
				synced 2025-11-02 07:47:08 +00:00 
			
		
		
		
	Compare commits
	
		
			11 Commits
		
	
	
		
			tiwarishub
			...
			vsvipul/ne
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					50a4a3a126 | ||
| 
						 | 
					56461b9eb0 | ||
| 
						 | 
					f85d12c3b2 | ||
| 
						 | 
					98044e486f | ||
| 
						 | 
					edc49897ec | ||
| 
						 | 
					68d96986b5 | ||
| 
						 | 
					ac8075791e | ||
| 
						 | 
					0ff0597934 | ||
| 
						 | 
					12681847c6 | ||
| 
						 | 
					3238536a48 | ||
| 
						 | 
					1a78ace131 | 
@@ -6,7 +6,7 @@ This action allows caching dependencies and build outputs to improve workflow ex
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
## Documentation
 | 
					## Documentation
 | 
				
			||||||
 | 
					
 | 
				
			||||||
See ["Caching dependencies to speed up workflows"](https://help.github.com/github/automating-your-workflow-with-github-actions/caching-dependencies-to-speed-up-workflows).
 | 
					See ["Caching dependencies to speed up workflows"](https://docs.github.com/en/actions/using-workflows/caching-dependencies-to-speed-up-workflows).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## What's New
 | 
					## What's New
 | 
				
			||||||
### v3
 | 
					### v3
 | 
				
			||||||
@@ -34,7 +34,7 @@ If you are using this inside a container, a POSIX-compliant `tar` needs to be in
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
* `path` - A list of files, directories, and wildcard patterns to cache and restore. See [`@actions/glob`](https://github.com/actions/toolkit/tree/main/packages/glob) for supported patterns.
 | 
					* `path` - A list of files, directories, and wildcard patterns to cache and restore. See [`@actions/glob`](https://github.com/actions/toolkit/tree/main/packages/glob) for supported patterns.
 | 
				
			||||||
* `key` - An explicit key for restoring and saving the cache
 | 
					* `key` - An explicit key for restoring and saving the cache
 | 
				
			||||||
* `restore-keys` - An ordered list of keys to use for restoring stale cache if no cache hit occurred for key. Note
 | 
					* `restore-keys` - An ordered list of prefix-matched keys to use for restoring stale cache if no cache hit occurred for key. Note
 | 
				
			||||||
`cache-hit` returns false in this case.
 | 
					`cache-hit` returns false in this case.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#### Environment Variables
 | 
					#### Environment Variables
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -29,3 +29,10 @@
 | 
				
			|||||||
### 3.0.8
 | 
					### 3.0.8
 | 
				
			||||||
- Fix zstd not working for windows on gnu tar in issues [#888](https://github.com/actions/cache/issues/888) and [#891](https://github.com/actions/cache/issues/891).
 | 
					- Fix zstd not working for windows on gnu tar in issues [#888](https://github.com/actions/cache/issues/888) and [#891](https://github.com/actions/cache/issues/891).
 | 
				
			||||||
- Allowing users to provide a custom timeout as input for aborting download of a cache segment using an environment variable `SEGMENT_DOWNLOAD_TIMEOUT_MIN`. Default is 60 minutes.
 | 
					- Allowing users to provide a custom timeout as input for aborting download of a cache segment using an environment variable `SEGMENT_DOWNLOAD_TIMEOUT_MIN`. Default is 60 minutes.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 3.0.9
 | 
				
			||||||
 | 
					- Enhanced the warning message for cache unavailablity in case of GHES.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 3.0.10
 | 
				
			||||||
 | 
					- Fix a bug with sorting inputs.
 | 
				
			||||||
 | 
					- Update definition for restore-keys in README.md
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -215,23 +215,6 @@ test("getInputAsArray handles empty lines correctly", () => {
 | 
				
			|||||||
    expect(actionUtils.getInputAsArray("foo")).toEqual(["bar", "baz"]);
 | 
					    expect(actionUtils.getInputAsArray("foo")).toEqual(["bar", "baz"]);
 | 
				
			||||||
});
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
test("getInputAsArray sorts files correctly", () => {
 | 
					 | 
				
			||||||
    testUtils.setInput(
 | 
					 | 
				
			||||||
        "foo",
 | 
					 | 
				
			||||||
        "bar\n!baz\nwaldo\nqux\nquux\ncorge\ngrault\ngarply"
 | 
					 | 
				
			||||||
    );
 | 
					 | 
				
			||||||
    expect(actionUtils.getInputAsArray("foo")).toEqual([
 | 
					 | 
				
			||||||
        "!baz",
 | 
					 | 
				
			||||||
        "bar",
 | 
					 | 
				
			||||||
        "corge",
 | 
					 | 
				
			||||||
        "garply",
 | 
					 | 
				
			||||||
        "grault",
 | 
					 | 
				
			||||||
        "quux",
 | 
					 | 
				
			||||||
        "qux",
 | 
					 | 
				
			||||||
        "waldo"
 | 
					 | 
				
			||||||
    ]);
 | 
					 | 
				
			||||||
});
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
test("getInputAsArray removes spaces after ! at the beginning", () => {
 | 
					test("getInputAsArray removes spaces after ! at the beginning", () => {
 | 
				
			||||||
    testUtils.setInput(
 | 
					    testUtils.setInput(
 | 
				
			||||||
        "foo",
 | 
					        "foo",
 | 
				
			||||||
@@ -240,11 +223,11 @@ test("getInputAsArray removes spaces after ! at the beginning", () => {
 | 
				
			|||||||
    expect(actionUtils.getInputAsArray("foo")).toEqual([
 | 
					    expect(actionUtils.getInputAsArray("foo")).toEqual([
 | 
				
			||||||
        "!bar",
 | 
					        "!bar",
 | 
				
			||||||
        "!baz",
 | 
					        "!baz",
 | 
				
			||||||
        "!quux",
 | 
					 | 
				
			||||||
        "!qux",
 | 
					        "!qux",
 | 
				
			||||||
        "!waldo",
 | 
					        "!quux",
 | 
				
			||||||
        "corge",
 | 
					        "corge",
 | 
				
			||||||
        "grault! garply"
 | 
					        "grault! garply",
 | 
				
			||||||
 | 
					        "!waldo"
 | 
				
			||||||
    ]);
 | 
					    ]);
 | 
				
			||||||
});
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -147,7 +147,7 @@ test("restore with no key", async () => {
 | 
				
			|||||||
test("restore with too many keys should fail", async () => {
 | 
					test("restore with too many keys should fail", async () => {
 | 
				
			||||||
    const path = "node_modules";
 | 
					    const path = "node_modules";
 | 
				
			||||||
    const key = "node-test";
 | 
					    const key = "node-test";
 | 
				
			||||||
    const restoreKeys = [...Array(20).keys()].map(x => x.toString()).sort();
 | 
					    const restoreKeys = [...Array(20).keys()].map(x => x.toString());
 | 
				
			||||||
    testUtils.setInputs({
 | 
					    testUtils.setInputs({
 | 
				
			||||||
        path: path,
 | 
					        path: path,
 | 
				
			||||||
        key,
 | 
					        key,
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										3
									
								
								dist/restore/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								dist/restore/index.js
									
									
									
									
										vendored
									
									
								
							@@ -38437,8 +38437,7 @@ function getInputAsArray(name, options) {
 | 
				
			|||||||
        .getInput(name, options)
 | 
					        .getInput(name, options)
 | 
				
			||||||
        .split("\n")
 | 
					        .split("\n")
 | 
				
			||||||
        .map(s => s.replace(/^!\s+/, "!").trim())
 | 
					        .map(s => s.replace(/^!\s+/, "!").trim())
 | 
				
			||||||
        .filter(x => x !== "")
 | 
					        .filter(x => x !== "");
 | 
				
			||||||
        .sort();
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
exports.getInputAsArray = getInputAsArray;
 | 
					exports.getInputAsArray = getInputAsArray;
 | 
				
			||||||
function getInputAsInt(name, options) {
 | 
					function getInputAsInt(name, options) {
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										3
									
								
								dist/save/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								dist/save/index.js
									
									
									
									
										vendored
									
									
								
							@@ -38437,8 +38437,7 @@ function getInputAsArray(name, options) {
 | 
				
			|||||||
        .getInput(name, options)
 | 
					        .getInput(name, options)
 | 
				
			||||||
        .split("\n")
 | 
					        .split("\n")
 | 
				
			||||||
        .map(s => s.replace(/^!\s+/, "!").trim())
 | 
					        .map(s => s.replace(/^!\s+/, "!").trim())
 | 
				
			||||||
        .filter(x => x !== "")
 | 
					        .filter(x => x !== "");
 | 
				
			||||||
        .sort();
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
exports.getInputAsArray = getInputAsArray;
 | 
					exports.getInputAsArray = getInputAsArray;
 | 
				
			||||||
function getInputAsInt(name, options) {
 | 
					function getInputAsInt(name, options) {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -332,7 +332,7 @@ If using `npm config` to retrieve the cache directory, ensure you run [actions/s
 | 
				
			|||||||
- name: restore lerna
 | 
					- name: restore lerna
 | 
				
			||||||
  uses: actions/cache@v3
 | 
					  uses: actions/cache@v3
 | 
				
			||||||
  with:
 | 
					  with:
 | 
				
			||||||
    path: **/node_modules
 | 
					    path: '**/node_modules'
 | 
				
			||||||
    key: ${{ runner.os }}-${{ hashFiles('**/yarn.lock') }}
 | 
					    key: ${{ runner.os }}-${{ hashFiles('**/yarn.lock') }}
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										4
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										4
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							@@ -1,12 +1,12 @@
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
  "name": "cache",
 | 
					  "name": "cache",
 | 
				
			||||||
  "version": "3.0.8",
 | 
					  "version": "3.0.10",
 | 
				
			||||||
  "lockfileVersion": 2,
 | 
					  "lockfileVersion": 2,
 | 
				
			||||||
  "requires": true,
 | 
					  "requires": true,
 | 
				
			||||||
  "packages": {
 | 
					  "packages": {
 | 
				
			||||||
    "": {
 | 
					    "": {
 | 
				
			||||||
      "name": "cache",
 | 
					      "name": "cache",
 | 
				
			||||||
      "version": "3.0.8",
 | 
					      "version": "3.0.10",
 | 
				
			||||||
      "license": "MIT",
 | 
					      "license": "MIT",
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "@actions/cache": "^3.0.4",
 | 
					        "@actions/cache": "^3.0.4",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,6 @@
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
  "name": "cache",
 | 
					  "name": "cache",
 | 
				
			||||||
  "version": "3.0.8",
 | 
					  "version": "3.0.10",
 | 
				
			||||||
  "private": true,
 | 
					  "private": true,
 | 
				
			||||||
  "description": "Cache dependencies and build outputs",
 | 
					  "description": "Cache dependencies and build outputs",
 | 
				
			||||||
  "main": "dist/restore/index.js",
 | 
					  "main": "dist/restore/index.js",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -62,8 +62,7 @@ export function getInputAsArray(
 | 
				
			|||||||
        .getInput(name, options)
 | 
					        .getInput(name, options)
 | 
				
			||||||
        .split("\n")
 | 
					        .split("\n")
 | 
				
			||||||
        .map(s => s.replace(/^!\s+/, "!").trim())
 | 
					        .map(s => s.replace(/^!\s+/, "!").trim())
 | 
				
			||||||
        .filter(x => x !== "")
 | 
					        .filter(x => x !== "");
 | 
				
			||||||
        .sort();
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export function getInputAsInt(
 | 
					export function getInputAsInt(
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user