99 Commits

Author SHA1 Message Date
Sylvestre Ledru
89e9040de8 new upstream release 2024-06-17 13:38:29 +02:00
Sylvestre Ledru
e87392bdf6 prepare sccache-action 0.0.5 2024-06-17 13:17:49 +02:00
Sylvestre Ledru
b4427f4656 Merge pull request #121 from Mozilla-Actions/dependabot/npm_and_yarn/prettier-3.3.2
Bump prettier from 3.2.5 to 3.3.2
2024-06-17 13:11:41 +02:00
dependabot[bot]
e759f84286 Bump prettier from 3.2.5 to 3.3.2
Bumps [prettier](https://github.com/prettier/prettier) from 3.2.5 to 3.3.2.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.2.5...3.3.2)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-17 09:59:17 +00:00
Sylvestre Ledru
b12911431e Merge pull request #118 from Mozilla-Actions/dependabot/npm_and_yarn/ts-jest-29.1.4
Bump ts-jest from 29.1.2 to 29.1.4
2024-06-17 11:58:17 +02:00
Sylvestre Ledru
fb41e19ae3 Merge pull request #120 from Mozilla-Actions/dependabot/npm_and_yarn/braces-3.0.3
Bump braces from 3.0.2 to 3.0.3
2024-06-17 11:58:10 +02:00
dependabot[bot]
83e296b04b Bump braces from 3.0.2 to 3.0.3
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-17 09:56:37 +00:00
Sylvestre Ledru
511fd3c7f0 Merge pull request #117 from Mozilla-Actions/dependabot/npm_and_yarn/typescript-eslint/parser-7.11.0
Bump @typescript-eslint/parser from 7.8.0 to 7.11.0
2024-06-17 11:56:19 +02:00
Sylvestre Ledru
d4fcccfce3 Merge pull request #115 from Mozilla-Actions/dependabot/npm_and_yarn/types/node-20.13.0
Bump @types/node from 20.12.11 to 20.13.0
2024-06-17 11:56:11 +02:00
Sylvestre Ledru
aece89f750 Merge pull request #113 from orf/add-notice-output
Output sccache stats as a notice and a summary table
2024-06-17 11:55:57 +02:00
dependabot[bot]
0c4d1a08d8 Bump ts-jest from 29.1.2 to 29.1.4
Bumps [ts-jest](https://github.com/kulshekhar/ts-jest) from 29.1.2 to 29.1.4.
- [Release notes](https://github.com/kulshekhar/ts-jest/releases)
- [Changelog](https://github.com/kulshekhar/ts-jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/kulshekhar/ts-jest/compare/v29.1.2...v29.1.4)

---
updated-dependencies:
- dependency-name: ts-jest
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-01 22:50:03 +00:00
dependabot[bot]
103918ffd4 Bump @typescript-eslint/parser from 7.8.0 to 7.11.0
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 7.8.0 to 7.11.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v7.11.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-01 22:49:55 +00:00
dependabot[bot]
aa6abb83bc Bump @types/node from 20.12.11 to 20.13.0
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.12.11 to 20.13.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-01 22:49:34 +00:00
Thomas Forbes
ab76965574 Add % to cache hit table 2024-05-12 22:05:24 +01:00
Thomas Forbes
2f1ba39e7a Calculate percentage, add JSON stats output 2024-05-12 21:00:34 +01:00
Tom Forbes
d947000745 Output sccache stats as a notice and a summary table 2024-05-12 20:19:14 +01:00
Sylvestre Ledru
f2edb47f42 Merge pull request #114 from orf/bump-dependencies
Bump outdated CI workflows and packages
2024-05-12 21:06:22 +02:00
Tom Forbes
1e8091c415 Bump outdated CI workflows and packages 2024-05-12 13:07:40 +01:00
Sylvestre Ledru
9c0df0382a Merge pull request #109 from Alphare/my-first-contribution
chore: fix a typo in a comment
2024-04-23 11:19:42 +02:00
Raphaël Gomès
8ebd5a4380 chore: fix a typo in a comment 2024-04-23 11:04:15 +02:00
Sylvestre Ledru
7d0144b782 Merge pull request #103 from altendky/add_quotes
add missing quotes to `configure` example in readme
2024-03-05 15:19:48 +01:00
Kyle Altendorf
8272dac7aa add missing quotes to configure example in readme 2024-03-05 09:16:15 -05:00
dependabot[bot]
e1a9194714 Bump undici from 5.28.2 to 5.28.3 (#99)
Bumps [undici](https://github.com/nodejs/undici) from 5.28.2 to 5.28.3.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v5.28.2...v5.28.3)

---
updated-dependencies:
- dependency-name: undici
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-03 01:01:27 +08:00
dependabot[bot]
27a476c863 Bump eslint-plugin-jest from 27.6.0 to 27.9.0 (#101)
Bumps [eslint-plugin-jest](https://github.com/jest-community/eslint-plugin-jest) from 27.6.0 to 27.9.0.
- [Release notes](https://github.com/jest-community/eslint-plugin-jest/releases)
- [Changelog](https://github.com/jest-community/eslint-plugin-jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jest-community/eslint-plugin-jest/compare/v27.6.0...v27.9.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-jest
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-03 00:58:25 +08:00
dependabot[bot]
b3f939aca5 Bump @types/node from 20.10.6 to 20.11.24 (#102)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.10.6 to 20.11.24.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-03 00:58:18 +08:00
Sylvestre Ledru
6c6e91ca40 Merge pull request #97 from Mozilla-Actions/dependabot/npm_and_yarn/actions/github-6.0.0
Bump @actions/github from 5.1.1 to 6.0.0
2024-02-02 09:27:15 +01:00
dependabot[bot]
5320dad1f6 Bump @actions/github from 5.1.1 to 6.0.0
Bumps [@actions/github](https://github.com/actions/toolkit/tree/HEAD/packages/github) from 5.1.1 to 6.0.0.
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/github/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/github)

---
updated-dependencies:
- dependency-name: "@actions/github"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-02 07:54:10 +00:00
Sylvestre Ledru
9bdd511a9c Merge pull request #96 from Mozilla-Actions/dependabot/npm_and_yarn/eslint-config-prettier-9.1.0
Bump eslint-config-prettier from 9.0.0 to 9.1.0
2024-02-02 08:52:54 +01:00
Sylvestre Ledru
5b7824cab2 Merge pull request #95 from Mozilla-Actions/dependabot/npm_and_yarn/actions/core-1.10.1
Bump @actions/core from 1.10.0 to 1.10.1
2024-02-02 08:52:29 +01:00
dependabot[bot]
aff01f2a9b Bump eslint-config-prettier from 9.0.0 to 9.1.0
Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) from 9.0.0 to 9.1.0.
- [Changelog](https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-config-prettier/compare/v9.0.0...v9.1.0)

---
updated-dependencies:
- dependency-name: eslint-config-prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-01 22:51:49 +00:00
dependabot[bot]
fb137f92c9 Bump @actions/core from 1.10.0 to 1.10.1
Bumps [@actions/core](https://github.com/actions/toolkit/tree/HEAD/packages/core) from 1.10.0 to 1.10.1.
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/core/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/core)

---
updated-dependencies:
- dependency-name: "@actions/core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-01 22:51:19 +00:00
Sylvestre Ledru
2e7f9ec792 Merge pull request #87 from Mozilla-Actions/dependabot/npm_and_yarn/types/node-20.10.6
Bump @types/node from 20.5.8 to 20.10.6
2024-01-26 15:26:01 +01:00
Sylvestre Ledru
23439b739d Merge pull request #85 from Mozilla-Actions/dependabot/npm_and_yarn/vercel/ncc-0.38.1
Bump @vercel/ncc from 0.36.1 to 0.38.1
2024-01-26 15:25:57 +01:00
Sylvestre Ledru
fce2fb6943 Merge pull request #88 from Mozilla-Actions/dependabot/npm_and_yarn/eslint-plugin-import-2.29.1
Bump eslint-plugin-import from 2.27.5 to 2.29.1
2024-01-26 15:25:47 +01:00
Sylvestre Ledru
323784ef1b Merge pull request #91 from cakebaker/bump_to_node20
Bump to `node20`
2024-01-26 15:25:00 +01:00
Daniel Hofstetter
d86fe94d33 Bump to node20
node16 is deprecated, see https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/
2024-01-26 15:06:32 +01:00
dependabot[bot]
b4fe875dd5 Bump eslint-plugin-import from 2.27.5 to 2.29.1
Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.27.5 to 2.29.1.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.27.5...v2.29.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-01 22:42:38 +00:00
dependabot[bot]
21a0d0809e Bump @types/node from 20.5.8 to 20.10.6
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.5.8 to 20.10.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-01 22:41:49 +00:00
dependabot[bot]
0d25c1a7c7 Bump @vercel/ncc from 0.36.1 to 0.38.1
Bumps [@vercel/ncc](https://github.com/vercel/ncc) from 0.36.1 to 0.38.1.
- [Release notes](https://github.com/vercel/ncc/releases)
- [Commits](https://github.com/vercel/ncc/compare/0.36.1...0.38.1)

---
updated-dependencies:
- dependency-name: "@vercel/ncc"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-01 22:39:55 +00:00
Sylvestre Ledru
1e15924c00 Merge pull request #76 from nyurik/patch-1
Show conditional enabling of caching
2023-11-28 10:35:22 +01:00
Sylvestre Ledru
88c8fa114c Merge pull request #72 from Mozilla-Actions/dependabot/npm_and_yarn/jest-circus-29.7.0
Bump jest-circus from 29.5.0 to 29.7.0
2023-11-28 10:34:57 +01:00
Sylvestre Ledru
c18c46d0d7 Merge pull request #77 from Mozilla-Actions/dependabot/npm_and_yarn/babel/traverse-7.23.2
Bump @babel/traverse from 7.20.12 to 7.23.2
2023-11-28 10:34:46 +01:00
Sylvestre Ledru
c255d852d7 Merge pull request #80 from Mozilla-Actions/dependabot/npm_and_yarn/eslint-plugin-jest-27.6.0
Bump eslint-plugin-jest from 27.2.3 to 27.6.0
2023-11-28 10:34:24 +01:00
Sylvestre Ledru
44305b1b8e update of the version in the doc 2023-11-28 10:34:08 +01:00
dependabot[bot]
d669e98c70 Bump eslint-plugin-jest from 27.2.3 to 27.6.0
Bumps [eslint-plugin-jest](https://github.com/jest-community/eslint-plugin-jest) from 27.2.3 to 27.6.0.
- [Release notes](https://github.com/jest-community/eslint-plugin-jest/releases)
- [Changelog](https://github.com/jest-community/eslint-plugin-jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jest-community/eslint-plugin-jest/compare/v27.2.3...v27.6.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-jest
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-01 22:27:09 +00:00
dependabot[bot]
7c319969e2 Bump @babel/traverse from 7.20.12 to 7.23.2
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.20.12 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-18 16:26:38 +00:00
Yuri Astrakhan
01a89c6f36 Show conditional enabling of caching
It took me a while to figure out how to use caching system on a condition, and set the relevant env vars.  Initially, I thought those env vars had to be set on the caching action itself, not on all the other actions -- this should be clarified too
2023-10-17 20:49:25 -04:00
dependabot[bot]
1d3904e27f Bump jest-circus from 29.5.0 to 29.7.0
Bumps [jest-circus](https://github.com/jestjs/jest/tree/HEAD/packages/jest-circus) from 29.5.0 to 29.7.0.
- [Release notes](https://github.com/jestjs/jest/releases)
- [Changelog](https://github.com/jestjs/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jestjs/jest/commits/v29.7.0/packages/jest-circus)

---
updated-dependencies:
- dependency-name: jest-circus
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-01 22:06:01 +00:00
Sylvestre Ledru
42989ab5d5 Merge pull request #67 from Mozilla-Actions/dependabot/npm_and_yarn/types/node-20.5.8
Bump @types/node from 20.3.3 to 20.5.8
2023-09-04 20:11:02 +02:00
Sylvestre Ledru
f068537b11 Merge pull request #64 from Mozilla-Actions/dependabot/npm_and_yarn/eslint-plugin-jest-27.2.3
Bump eslint-plugin-jest from 27.2.2 to 27.2.3
2023-09-04 20:10:53 +02:00
Sylvestre Ledru
ea0443cf17 Merge pull request #69 from Mozilla-Actions/dependabot/npm_and_yarn/eslint-config-prettier-9.0.0
Bump eslint-config-prettier from 8.8.0 to 9.0.0
2023-09-04 20:10:49 +02:00
dependabot[bot]
da260886a4 Bump eslint-config-prettier from 8.8.0 to 9.0.0
Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) from 8.8.0 to 9.0.0.
- [Changelog](https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-config-prettier/compare/v8.8.0...v9.0.0)

---
updated-dependencies:
- dependency-name: eslint-config-prettier
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-01 22:33:24 +00:00
dependabot[bot]
adaee86b7e Bump @types/node from 20.3.3 to 20.5.8
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.3.3 to 20.5.8.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-01 22:32:37 +00:00
dependabot[bot]
7fc1598ba7 Bump eslint-plugin-jest from 27.2.2 to 27.2.3
Bumps [eslint-plugin-jest](https://github.com/jest-community/eslint-plugin-jest) from 27.2.2 to 27.2.3.
- [Release notes](https://github.com/jest-community/eslint-plugin-jest/releases)
- [Changelog](https://github.com/jest-community/eslint-plugin-jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jest-community/eslint-plugin-jest/compare/v27.2.2...v27.2.3)

---
updated-dependencies:
- dependency-name: eslint-plugin-jest
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-01 22:23:43 +00:00
dependabot[bot]
774b16e376 Bump eslint-plugin-jest from 27.2.1 to 27.2.2 (#53)
Bumps [eslint-plugin-jest](https://github.com/jest-community/eslint-plugin-jest) from 27.2.1 to 27.2.2.
- [Release notes](https://github.com/jest-community/eslint-plugin-jest/releases)
- [Changelog](https://github.com/jest-community/eslint-plugin-jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jest-community/eslint-plugin-jest/compare/v27.2.1...v27.2.2)

---
updated-dependencies:
- dependency-name: eslint-plugin-jest
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-20 12:29:29 +08:00
dependabot[bot]
cd82d33c7f Bump @types/node from 20.2.5 to 20.3.3 (#56)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.2.5 to 20.3.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-20 12:28:44 +08:00
dependabot[bot]
60dbcfaf03 Bump tough-cookie from 4.1.2 to 4.1.3 (#57)
Bumps [tough-cookie](https://github.com/salesforce/tough-cookie) from 4.1.2 to 4.1.3.
- [Release notes](https://github.com/salesforce/tough-cookie/releases)
- [Changelog](https://github.com/salesforce/tough-cookie/blob/master/CHANGELOG.md)
- [Commits](https://github.com/salesforce/tough-cookie/compare/v4.1.2...v4.1.3)

---
updated-dependencies:
- dependency-name: tough-cookie
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-20 12:27:55 +08:00
dependabot[bot]
0dad365f18 Bump semver from 6.3.0 to 6.3.1 (#58)
Bumps [semver](https://github.com/npm/node-semver) from 6.3.0 to 6.3.1.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/v6.3.1/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v6.3.0...v6.3.1)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-20 12:27:45 +08:00
dependabot[bot]
3ffa7f2739 Bump word-wrap from 1.2.3 to 1.2.4 (#59)
Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap) from 1.2.3 to 1.2.4.
- [Release notes](https://github.com/jonschlinkert/word-wrap/releases)
- [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.4)

---
updated-dependencies:
- dependency-name: word-wrap
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-20 12:27:19 +08:00
dependabot[bot]
33b4920ca9 Bump @typescript-eslint/parser from 5.59.5 to 5.59.9 (#51)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.59.5 to 5.59.9.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.59.9/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-08 21:01:18 +08:00
dependabot[bot]
fd38c5b044 Bump @typescript-eslint/eslint-plugin from 5.59.2 to 5.59.9 (#52)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 5.59.2 to 5.59.9.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.59.9/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-08 20:57:55 +08:00
dependabot[bot]
371ee17811 Bump @types/node from 20.1.4 to 20.2.5 (#49)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.1.4 to 20.2.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-08 20:55:48 +08:00
Sylvestre Ledru
ff569e9dad Update of the version in the example 2023-06-03 11:23:13 +02:00
Sylvestre Ledru
2060212363 Merge pull request #44 from Mozilla-Actions/dependabot/npm_and_yarn/typescript-eslint/parser-5.59.5
Bump @typescript-eslint/parser from 5.57.0 to 5.59.5
2023-05-15 11:54:56 +02:00
dependabot[bot]
5007f9947f Bump @typescript-eslint/parser from 5.57.0 to 5.59.5
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.57.0 to 5.59.5.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.59.5/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-15 09:49:57 +00:00
Sylvestre Ledru
d75bd29020 Merge pull request #45 from Mozilla-Actions/dependabot/npm_and_yarn/types/node-20.1.4
Bump @types/node from 18.15.11 to 20.1.4
2023-05-15 11:48:58 +02:00
dependabot[bot]
7c09cf84df Bump @types/node from 18.15.11 to 20.1.4
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 18.15.11 to 20.1.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-15 09:47:06 +00:00
Sylvestre Ledru
3259508554 Merge pull request #39 from Mozilla-Actions/dependabot/npm_and_yarn/prettier-2.8.8
Bump prettier from 2.8.7 to 2.8.8
2023-05-15 11:46:15 +02:00
Sylvestre Ledru
c2e2e5c8e4 Merge pull request #37 from Mozilla-Actions/dependabot/npm_and_yarn/typescript-eslint/eslint-plugin-5.59.2
Bump @typescript-eslint/eslint-plugin from 5.54.1 to 5.59.2
2023-05-15 11:46:02 +02:00
dependabot[bot]
02967188df Bump prettier from 2.8.7 to 2.8.8
Bumps [prettier](https://github.com/prettier/prettier) from 2.8.7 to 2.8.8.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.8.7...2.8.8)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-01 23:00:55 +00:00
dependabot[bot]
aefdada430 Bump @typescript-eslint/eslint-plugin from 5.54.1 to 5.59.2
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 5.54.1 to 5.59.2.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.59.2/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-01 22:59:53 +00:00
Sylvestre Ledru
9a68c4d04b Fix a typo in the readme 2023-04-14 13:53:37 +02:00
dependabot[bot]
77c1aa945b Bump @types/node from 18.14.6 to 18.15.11 (#35)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 18.14.6 to 18.15.11.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-02 08:24:04 +08:00
dependabot[bot]
87b953d7aa Bump eslint-config-prettier from 8.7.0 to 8.8.0 (#34)
Bumps [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) from 8.7.0 to 8.8.0.
- [Release notes](https://github.com/prettier/eslint-config-prettier/releases)
- [Changelog](https://github.com/prettier/eslint-config-prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/eslint-config-prettier/compare/v8.7.0...v8.8.0)

---
updated-dependencies:
- dependency-name: eslint-config-prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-02 08:23:56 +08:00
dependabot[bot]
295ac10273 Bump prettier from 2.8.4 to 2.8.7 (#33)
Bumps [prettier](https://github.com/prettier/prettier) from 2.8.4 to 2.8.7.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.8.4...2.8.7)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-02 08:23:49 +08:00
dependabot[bot]
4ad3be85ad Bump @actions/io from 1.1.2 to 1.1.3 (#32)
Bumps [@actions/io](https://github.com/actions/toolkit/tree/HEAD/packages/io) from 1.1.2 to 1.1.3.
- [Release notes](https://github.com/actions/toolkit/releases)
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/io/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/io)

---
updated-dependencies:
- dependency-name: "@actions/io"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-02 08:23:41 +08:00
dependabot[bot]
13cf7b2ba9 Bump @typescript-eslint/parser from 5.54.1 to 5.57.0 (#31)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.54.1 to 5.57.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.57.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-02 08:23:31 +08:00
Sylvestre Ledru
8417cffc2e update version to 0.0.3 2023-03-23 10:21:51 +01:00
Sylvestre Ledru
cc6b259f50 update of the version in doc 2023-03-23 10:18:07 +01:00
Sylvestre Ledru
548630134d update version to 0.0.3 2023-03-23 10:15:23 +01:00
Sylvestre Ledru
634be340e7 Simplify the checksum check code a bit (#29) 2023-03-22 22:02:25 +08:00
Sylvestre Ledru
5e615649da Document how to use sccache action for C/C++ (#28) 2023-03-22 19:08:12 +08:00
miles
36cc091a25 Use the latest version of sccache if no version is specified (#27) 2023-03-22 18:37:23 +08:00
Sylvestre Ledru
af5524e1c3 Merge pull request #26 from sylvestre/checksum
verify the checksum
2023-03-22 10:49:50 +01:00
Sylvestre Ledru
d6e55aff39 Update the test to use 0.4.0 (#24) 2023-03-22 08:45:32 +08:00
Sylvestre Ledru
27ad55f054 verify the checksum 2023-03-21 23:12:21 +01:00
Sylvestre Ledru
019ccc051d we published 0.4.0 2023-03-21 11:50:36 +01:00
Sylvestre Ledru
e51482ff63 v0.4.0-pre.10 => v0.4.0-pre.11 2023-03-18 16:50:59 +01:00
Sylvestre Ledru
419f3acf2e update of the doc 2023-03-18 16:01:04 +01:00
Sylvestre Ledru
c3f47d0aa9 update of the sccache version 2023-03-18 15:58:28 +01:00
Sylvestre Ledru
232a105d2d Improvement of the doc 2023-03-09 08:14:58 +01:00
Sylvestre Ledru
8c0ea93975 Document Rust usage 2023-03-08 23:21:35 +01:00
Sylvestre Ledru
e042060788 propose a more recent version 2023-03-08 23:04:47 +01:00
Sylvestre Ledru
7b7cc03629 Remove the example because it doesn't work yet 2023-03-08 23:04:38 +01:00
Sylvestre Ledru
5eedbfb0f0 update to 0.0.2 2023-03-08 22:56:08 +01:00
Sylvestre Ledru
dd95d78c93 document how to update a release 2023-03-08 22:55:59 +01:00
Sylvestre Ledru
78aedbbd3e adjust the URLs 2023-03-08 22:51:33 +01:00
Sylvestre Ledru
56233b6236 Fix the url to the action in the doc 2023-03-08 22:45:33 +01:00
Sylvestre Ledru
4c556aab0a Document the behavior without the version set 2023-03-08 22:02:23 +01:00
9 changed files with 2695 additions and 10384 deletions

View File

@@ -21,11 +21,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Node.js 16.x
uses: actions/setup-node@v3
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 16.x
node-version: 18.x
cache: npm
- name: npm install
@@ -37,8 +37,8 @@ jobs:
- name: Build & Test
run: npm run test
test_v0_3_3:
name: Test version 0.3.3
test:
name: Test version
runs-on: ${{ matrix.os }}
strategy:
matrix:
@@ -46,15 +46,18 @@ jobs:
- ubuntu-latest
- windows-latest
- macos-latest
version:
- ""
- v0.4.0
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Set Node.js 16.x
uses: actions/setup-node@v3
- name: Set Node.js
uses: actions/setup-node@v4
with:
node-version: 16.x
node-version: 18.x
cache: npm
- name: npm install
@@ -63,7 +66,7 @@ jobs:
- name: Run sccache-cache
uses: ./
with:
version: "v0.3.3"
version: ${{ matrix.version }}
- name: Run sccache for check
shell: bash

View File

@@ -3,22 +3,96 @@
The [sccache](https://github.com/mozilla/sccache/
) action can be used in GitHub Actions workflows to integrate sccache into the build process. The sccache action is a step in a workflow that can be used to cache compilation results for subsequent builds, reducing the build time and speeding up the overall development process.
sccache can easily use GitHub actions cache with almost no configuration.
This action is available on:
https://github.com/marketplace/actions/sccache-action
## Usage
Just copy and paste the following in your GitHub action:
### Use the latest version of sccache if no version is specified
```
- name: Run sccache-cache
uses: mozilla/sccache-action@v0.0.1
with:
version: "v0.3.3"
uses: mozilla-actions/sccache-action@v0.0.3
```
### Conditionally run cache and enable it
```
- name: Run sccache-cache only on non-release runs
if: github.event_name != 'release' && github.event_name != 'workflow_dispatch'
uses: mozilla-actions/sccache-action@v0.0.3
- name: Set Rust caching env vars only on non-release runs
if: github.event_name != 'release' && github.event_name != 'workflow_dispatch'
run: |
echo "SCCACHE_GHA_ENABLED=true" >> $GITHUB_ENV
echo "RUSTC_WRAPPER=sccache" >> $GITHUB_ENV
```
### Specify a given version of sccache
```
- name: Run sccache-cache
uses: mozilla-actions/sccache-action@v0.0.3
with:
version: "v0.7.4"
```
### To get the execution stats
Note that using the previous declaration will automatically create a
`Post Run sccache-cache` task.
```
- name: Run sccache stat for check
shell: bash
run: ${SCCACHE_PATH} --show-stats
```
### Rust code
For Rust code, the following environment variables should be set:
```
env:
SCCACHE_GHA_ENABLED: "true"
RUSTC_WRAPPER: "sccache"
```
### C/C++ code
For C/C++ code, the following environment variables should be set:
```
env:
SCCACHE_GHA_ENABLED: "true"
```
With cmake, add the following argument:
```
-DCMAKE_C_COMPILER_LAUNCHER=sccache
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache
```
With configure, call it with:
```
# With gcc
./configure CC="sccache gcc" CXX="sccache gcc"
# With clang
./configure CC="sccache clang" CXX="sccache clang"
```
## Prepare a new release
1. Update the example in README.md
1. Update version in `package.json`
1. Run `npm i --package-lock-only`
1. Tag a new release
## License
Apache-2.0 (just like sccache)

View File

@@ -4,10 +4,12 @@ description: "Setup sccache action"
author: "mozilla"
inputs:
version:
description: "The installed sccache version."
required: true
description: "The installed sccache version. Use the latest version of sccache if not specified."
token:
description: "Used to pull the latest release from sccache. When running this action outside of github.com, you have to pass a personal access token for github.com."
default: ${{ github.server_url == 'https://github.com' && github.token || '' }}
runs:
using: "node16"
using: "node20"
main: "dist/setup/index.js"
post: "dist/show_stats/index.js"
branding:

4
dist/setup/index.js vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

12723
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,8 +1,11 @@
{
"name": "sccache-action",
"version": "0.0.1",
"version": "0.0.5",
"description": "Github Action for Sccache",
"main": "dist/setup/index.js",
"engines": {
"node": ">=16"
},
"scripts": {
"build-dist": "ncc build lib/setup.js -m -o dist/setup/ && ncc build lib/show_stats.js -m -o dist/show_stats",
"build": "prettier --write **/*.ts && tsc && npm run build-dist",
@@ -13,7 +16,7 @@
},
"repository": {
"type": "git",
"url": "git+https://github.com/mozilla/sccache-action.git"
"url": "git+https://github.com/mozilla-actions/sccache-action.git"
},
"keywords": [
"sccache"
@@ -21,28 +24,29 @@
"author": "",
"license": "Apache-2.0",
"bugs": {
"url": "https://github.com/mozilla/sccache-action/issues"
"url": "https://github.com/mozilla-actions/sccache-action/issues"
},
"homepage": "https://github.com/mozilla/sccache-action#readme",
"homepage": "https://github.com/mozilla-actions/sccache-action#readme",
"dependencies": {
"@actions/core": "^1.10.0",
"@actions/io": "^1.1.2",
"@actions/core": "^1.10.1",
"@actions/github": "^6.0.0",
"@actions/io": "^1.1.3",
"@actions/tool-cache": "^2.0.1"
},
"devDependencies": {
"@types/jest": "^27.4.1",
"@types/node": "^18.14.6",
"@vercel/ncc": "^0.36.1",
"jest": "^27.5.1",
"jest-circus": "^29.5.0",
"prettier": "^2.8.4",
"ts-jest": "^27.1.4",
"typescript": "^4.9.5",
"@typescript-eslint/eslint-plugin": "^5.54.1",
"@typescript-eslint/parser": "^5.54.1",
"eslint-config-prettier": "^8.7.0",
"eslint-plugin-import": "^2.27.5",
"eslint-plugin-jest": "^27.2.1",
"eslint-plugin-prettier": "^4.2.1"
"@types/jest": "^29.5.12",
"@types/node": "^20.13.0",
"@typescript-eslint/eslint-plugin": "^7.8.0",
"@typescript-eslint/parser": "^7.11.0",
"@vercel/ncc": "^0.38.1",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-jest": "^28.5.0",
"eslint-plugin-prettier": "^5.1.3",
"jest": "^29.7.0",
"jest-circus": "^29.7.0",
"prettier": "^3.3.2",
"ts-jest": "^29.1.4",
"typescript": "^5.4.5"
}
}

View File

@@ -19,21 +19,54 @@ import {
extractZip,
cacheDir
} from '@actions/tool-cache';
import {getOctokit} from '@actions/github';
import * as fs from 'fs';
import * as crypto from 'crypto';
async function setup() {
// TODO: we can support install latest version by default if version
// is not input.
const version = core.getInput('version');
core.info(`try to setup sccache version: ${version}'`);
let version = core.getInput('version');
if (version.length === 0) {
// If no version is specified, the latest version is used by default.
const token = core.getInput('token', {required: true});
const octokit = getOctokit(token);
const release = await octokit.rest.repos.getLatestRelease({
owner: 'mozilla',
repo: 'sccache'
});
version = release.data.tag_name;
}
core.info(`try to setup sccache version: ${version}`);
const filename = getFilename(version);
const dirname = getDirname(version);
const downloadUrl = `https://github.com/mozilla/sccache/releases/download/${version}/${filename}`;
const sha256Url = `${downloadUrl}.sha256`;
core.info(`sccache download from url: ${downloadUrl}`);
// Download and extract.
const sccachePackage = await downloadTool(downloadUrl);
const sha256File = await downloadTool(sha256Url);
// Calculate the SHA256 checksum of the downloaded file.
const fileBuffer = await fs.promises.readFile(sccachePackage);
const hash = crypto.createHash('sha256');
hash.update(fileBuffer);
const calculatedChecksum = hash.digest('hex');
// Read the provided checksum from the .sha256 file.
const providedChecksum = (await fs.promises.readFile(sha256File))
.toString()
.trim();
// Compare the checksums.
if (calculatedChecksum !== providedChecksum) {
core.setFailed('Checksum verification failed');
return;
}
core.info(`Correct checksum: ${calculatedChecksum}`);
let sccachePath;
if (getExtension() == 'zip') {
@@ -56,7 +89,7 @@ async function setup() {
// Expose the sccache path as env.
core.exportVariable('SCCACHE_PATH', `${sccacheHome}/sccache`);
// Expose the gha cache related variable to make users easier to
// Expose the gha cache related variable to make it easier for users to
// integrate with gha support.
core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || '');
core.exportVariable(

View File

@@ -14,24 +14,150 @@
import * as core from '@actions/core';
import * as exec from '@actions/exec';
import {SummaryTableRow} from '@actions/core/lib/summary';
async function get_output(command: string, args: string[]): Promise<string> {
core.debug(`get_output: ${command} ${args.join(' ')}`);
const output = await exec.getExecOutput(command, args);
// --stats-format=json does not emit a newline, which messes up group
// processing. Here we add a newline if it's missing.
if (!output.stdout.endsWith('\n')) {
process.stdout.write('\n');
}
return output.stdout.toString();
}
async function show_stats() {
core.debug('start sccache show starts');
const defaultListener = {
stdout: (data: Buffer) => {
stdout.push(data.toString());
}
};
const stdout: string[] = [];
await exec.getExecOutput(`${process.env.SCCACHE_PATH}`, ['--show-stats'], {
listeners: defaultListener
const human_stats = await core.group('Get human-readable stats', async () => {
return get_output(`${process.env.SCCACHE_PATH}`, ['--show-stats']);
});
const json_stats = await core.group('Get JSON stats', async () => {
return get_output(`${process.env.SCCACHE_PATH}`, [
'--show-stats',
'--stats-format=json'
]);
});
const stats: Stats = JSON.parse(json_stats);
const formatted_stats = format_json_stats(stats);
core.notice(formatted_stats.notice, {
title: 'sccache stats'
});
core.info('\nFull human-readable stats:');
core.info(human_stats);
core.summary.addHeading('sccache stats', 2);
core.summary.addTable(formatted_stats.table);
core.summary.addDetails(
'Full human-readable stats',
'\n\n```\n' + human_stats + '\n```\n\n'
);
core.summary.addDetails(
'Full JSON Stats',
'\n\n```json\n' + JSON.stringify(stats, null, 2) + '\n```\n\n'
);
await core.summary.write();
}
show_stats().catch(err => {
core.error(err);
core.setFailed(err.message);
});
interface Duration {
secs: number;
nanos: number;
}
interface Counter {
counts: {
[key: string]: number;
};
adv_counts: {
[key: string]: number;
};
}
interface Stats {
stats: {
compile_requests: number;
requests_executed: number;
cache_errors: Counter;
cache_hits: Counter;
cache_misses: Counter;
cache_write_errors: number;
cache_writes: number;
cache_write_duration: Duration;
cache_read_hit_duration: Duration;
compiler_write_duration: Duration;
};
}
function sum_stats(stats: Counter): number {
return Object.values(stats.counts).reduce((acc, val) => acc + val, 0);
}
function format_duration(duration: Duration): string {
const ms = duration.nanos / 1e6;
return `${duration.secs}s ${ms}ms`;
}
function format_json_stats(stats: Stats): {
table: SummaryTableRow[];
notice: string;
} {
const cache_error_count = sum_stats(stats.stats.cache_errors);
const cache_hit_count = sum_stats(stats.stats.cache_hits);
const cache_miss_count = sum_stats(stats.stats.cache_misses);
const total_hits = cache_hit_count + cache_miss_count + cache_error_count;
const ratio = percentage(cache_hit_count, total_hits);
const write_duration = format_duration(stats.stats.cache_write_duration);
const read_duration = format_duration(stats.stats.cache_read_hit_duration);
const compiler_duration = format_duration(
stats.stats.compiler_write_duration
);
const notice = `${ratio}% - ${cache_hit_count} hits, ${cache_miss_count} misses, ${cache_error_count} errors`;
const table = [
[{data: 'Cache hit %', header: true}, {data: `${ratio}%`}],
[{data: 'Cache hits', header: true}, {data: cache_hit_count.toString()}],
[{data: 'Cache misses', header: true}, {data: cache_miss_count.toString()}],
[
{data: 'Cache errors', header: true},
{data: cache_error_count.toString()}
],
[
{data: 'Compile requests', header: true},
{data: stats.stats.compile_requests.toString()}
],
[
{data: 'Requests executed', header: true},
{data: stats.stats.requests_executed.toString()}
],
[
{data: 'Cache writes', header: true},
{data: stats.stats.cache_writes.toString()}
],
[
{data: 'Cache write errors', header: true},
{data: stats.stats.cache_write_errors.toString()}
],
[{data: 'Cache write duration', header: true}, {data: write_duration}],
[{data: 'Cache read hit duration', header: true}, {data: read_duration}],
[{data: 'Compiler write duration', header: true}, {data: compiler_duration}]
];
return {table, notice};
}
function percentage(x: number, y: number): number {
return Math.round((x / y) * 100 || 0);
}