• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

zkat / cacache
94%
latest: 89%

Build:
Build:
LAST BUILD BRANCH: greenkeeper/tap-14.4.0
DEFAULT BRANCH: latest
Repo Added 05 Dec 2016 12:55AM UTC
Files 22
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH zkat/integrity
branch: zkat/integrity
CHANGE BRANCH
x
Reset
  • zkat/integrity
  • docs/contributing
  • documentation/refactor-label
  • fix/use_strict
  • greenkeeper/benchmark-2.1.4
  • greenkeeper/bluebird-3.5.0
  • greenkeeper/bluebird-3.5.3
  • greenkeeper/bluebird-3.5.4
  • greenkeeper/bluebird-3.5.5
  • greenkeeper/bluebird-pin-3.5.3
  • greenkeeper/chalk-2.0.0
  • greenkeeper/chalk-2.0.1
  • greenkeeper/chalk-2.4.2
  • greenkeeper/chalk-pin-2.4.1
  • greenkeeper/checksum-stream-1.0.3
  • greenkeeper/chownr-1.1.0
  • greenkeeper/chownr-1.1.1
  • greenkeeper/chownr-pin-1.0.1
  • greenkeeper/cross-env-5.0.1
  • greenkeeper/cross-env-pin-5.0.0
  • greenkeeper/glob-7.1.4
  • greenkeeper/glob-pin-7.1.3
  • greenkeeper/graceful-fs-4.1.12
  • greenkeeper/graceful-fs-4.1.13
  • greenkeeper/graceful-fs-4.1.14
  • greenkeeper/graceful-fs-4.1.15
  • greenkeeper/graceful-fs-4.2.0
  • greenkeeper/lockfile-1.0.3
  • greenkeeper/lru-cache-4.1.0
  • greenkeeper/lru-cache-4.1.1
  • greenkeeper/lru-cache-4.1.4
  • greenkeeper/lru-cache-5.0.0
  • greenkeeper/lru-cache-5.0.1
  • greenkeeper/lru-cache-5.1.0
  • greenkeeper/lru-cache-5.1.1
  • greenkeeper/lru-cache-pin-4.0.2
  • greenkeeper/lru-cache-pin-4.1.3
  • greenkeeper/mississippi-1.3.0
  • greenkeeper/mississippi-2.0.0
  • greenkeeper/mississippi-3.0.0
  • greenkeeper/mississippi-4.0.0
  • greenkeeper/nyc-10.1.0
  • greenkeeper/nyc-10.1.2
  • greenkeeper/nyc-10.2.0
  • greenkeeper/nyc-10.3.0
  • greenkeeper/nyc-10.3.2
  • greenkeeper/nyc-11.0.0
  • greenkeeper/nyc-11.0.1
  • greenkeeper/nyc-11.0.2
  • greenkeeper/require-inject-1.4.4
  • greenkeeper/require-inject-pin-1.4.3
  • greenkeeper/rimraf-2.6.0
  • greenkeeper/rimraf-2.6.1
  • greenkeeper/rimraf-2.6.3
  • greenkeeper/rimraf-pin-2.6.0
  • greenkeeper/rimraf-pin-2.6.2
  • greenkeeper/safe-buffer-5.1.0
  • greenkeeper/safe-buffer-pin-5.0.1
  • greenkeeper/ssri-4.1.0
  • greenkeeper/ssri-4.1.1
  • greenkeeper/ssri-4.1.3
  • greenkeeper/ssri-4.1.4
  • greenkeeper/ssri-4.1.5
  • greenkeeper/ssri-4.1.6
  • greenkeeper/ssri-6.0.0
  • greenkeeper/ssri-pin-4.1.1
  • greenkeeper/ssri-pin-4.1.2
  • greenkeeper/ssri-pin-4.1.4
  • greenkeeper/standard-10.0.0
  • greenkeeper/standard-10.0.1
  • greenkeeper/standard-10.0.2
  • greenkeeper/standard-9.0.0
  • greenkeeper/standard-9.0.2
  • greenkeeper/standard-version-5.0.0
  • greenkeeper/standard-version-5.0.1
  • greenkeeper/standard-version-5.0.2
  • greenkeeper/standard-version-6.0.1
  • greenkeeper/tacks-1.2.3
  • greenkeeper/tacks-1.2.4
  • greenkeeper/tacks-1.2.5
  • greenkeeper/tacks-1.2.6
  • greenkeeper/tacks-1.3.0
  • greenkeeper/tacks-pin-1.2.7
  • greenkeeper/tap-10.1.0
  • greenkeeper/tap-10.1.1
  • greenkeeper/tap-10.1.2
  • greenkeeper/tap-10.2.0
  • greenkeeper/tap-10.2.1
  • greenkeeper/tap-10.2.2
  • greenkeeper/tap-10.3.1
  • greenkeeper/tap-10.3.2
  • greenkeeper/tap-10.3.3
  • greenkeeper/tap-10.3.4
  • greenkeeper/tap-11.0.0
  • greenkeeper/tap-11.0.1
  • greenkeeper/tap-11.1.0
  • greenkeeper/tap-12.0.0
  • greenkeeper/tap-12.0.1
  • greenkeeper/tap-12.0.2
  • greenkeeper/tap-12.1.0
  • greenkeeper/tap-12.1.1
  • greenkeeper/tap-12.1.2
  • greenkeeper/tap-12.1.3
  • greenkeeper/tap-12.1.4
  • greenkeeper/tap-12.2.0
  • greenkeeper/tap-12.2.1
  • greenkeeper/tap-12.3.0
  • greenkeeper/tap-12.4.0
  • greenkeeper/tap-12.4.1
  • greenkeeper/tap-12.5.0
  • greenkeeper/tap-12.5.1
  • greenkeeper/tap-12.5.2
  • greenkeeper/tap-12.5.3
  • greenkeeper/tap-12.6.0
  • greenkeeper/tap-12.6.1
  • greenkeeper/tap-12.6.2
  • greenkeeper/tap-12.6.3
  • greenkeeper/tap-12.6.4
  • greenkeeper/tap-12.6.5
  • greenkeeper/tap-13.0.1
  • greenkeeper/tap-13.0.3
  • greenkeeper/tap-13.0.4
  • greenkeeper/tap-13.1.0
  • greenkeeper/tap-13.1.1
  • greenkeeper/tap-13.1.10
  • greenkeeper/tap-13.1.11
  • greenkeeper/tap-13.1.2
  • greenkeeper/tap-13.1.3
  • greenkeeper/tap-13.1.4
  • greenkeeper/tap-13.1.5
  • greenkeeper/tap-13.1.6
  • greenkeeper/tap-13.1.7
  • greenkeeper/tap-13.1.8
  • greenkeeper/tap-13.1.9
  • greenkeeper/tap-14.0.0
  • greenkeeper/tap-14.1.0
  • greenkeeper/tap-14.1.1
  • greenkeeper/tap-14.1.10
  • greenkeeper/tap-14.1.11
  • greenkeeper/tap-14.1.2
  • greenkeeper/tap-14.1.3
  • greenkeeper/tap-14.1.4
  • greenkeeper/tap-14.1.6
  • greenkeeper/tap-14.1.7
  • greenkeeper/tap-14.1.8
  • greenkeeper/tap-14.1.9
  • greenkeeper/tap-14.2.0
  • greenkeeper/tap-14.2.1
  • greenkeeper/tap-14.2.2
  • greenkeeper/tap-14.2.3
  • greenkeeper/tap-14.2.4
  • greenkeeper/tap-14.2.5
  • greenkeeper/tap-14.3.0
  • greenkeeper/tap-14.3.1
  • greenkeeper/tap-14.4.0
  • greenkeeper/tap-9.0.0
  • greenkeeper/tap-9.0.2
  • greenkeeper/tap-9.0.3
  • greenkeeper/tap-pin-10.1.1
  • greenkeeper/tap-pin-10.3.3
  • greenkeeper/tap-pin-12.0.1
  • greenkeeper/unique-filename-1.1.1
  • greenkeeper/unique-filename-pin-1.1.0
  • greenkeeper/update-all
  • greenkeeper/update-to-node-10
  • greenkeeper/weallbehave-1.0.2
  • greenkeeper/weallbehave-1.0.3
  • greenkeeper/weallbehave-1.2.0
  • greenkeeper/weallbehave-pin-1.0.3
  • greenkeeper/weallcontribute-1.0.8
  • greenkeeper/weallcontribute-1.0.9
  • greenkeeper/weallcontribute-pin-1.0.7
  • greenkeeper/weallcontribute-pin-1.0.8
  • greenkeeper/y18n-4.0.0
  • iarna/move-concurrently
  • latest
  • v10.0.0
  • v10.0.1
  • v10.0.2
  • v10.0.3
  • v10.0.4
  • v11.0.0
  • v11.0.1
  • v11.0.2
  • v11.0.3
  • v11.1.0
  • v11.2.0
  • v11.3.0
  • v11.3.1
  • v11.3.2
  • v11.3.3
  • v4.0.0
  • v4.0.1
  • v5.0.0
  • v5.0.1
  • v5.0.2
  • v5.0.3
  • v6.0.0
  • v6.0.1
  • v6.0.2
  • v6.1.0
  • v6.1.1
  • v6.1.2
  • v6.2.0
  • v6.3.0
  • v7.0.0
  • v7.0.1
  • v7.0.2
  • v7.0.3
  • v7.0.4
  • v7.0.5
  • v7.1.0
  • v8.0.0
  • v9.0.0
  • v9.1.0
  • v9.2.0
  • v9.2.1
  • v9.2.2
  • v9.2.3
  • v9.2.4
  • v9.2.5
  • v9.2.6
  • v9.2.7
  • v9.2.8
  • v9.2.9
  • v9.3.0
  • zkat/benchmarks
  • zkat/bufferjunk
  • zkat/bulk-get
  • zkat/bulk-index-read
  • zkat/bulk-put
  • zkat/bulk-read
  • zkat/cache-versioning
  • zkat/checksum-stream-dep
  • zkat/coc-and-contrib
  • zkat/collated-content
  • zkat/contributing-docs-fix
  • zkat/copy-file
  • zkat/everythingispants
  • zkat/figgy
  • zkat/fix-rm
  • zkat/hashed-entries
  • zkat/hashindex
  • zkat/i18n
  • zkat/injectable-memoization
  • zkat/lru-cache
  • zkat/ls-tests
  • zkat/memoization
  • zkat/mirrors
  • zkat/moveit
  • zkat/parallel-tests
  • zkat/promisify
  • zkat/read-coverage
  • zkat/relicense
  • zkat/sha512
  • zkat/siphash
  • zkat/sizing
  • zkat/slocket
  • zkat/standard-version
  • zkat/stat
  • zkat/tmpdir-util
  • zkat/travis-os
  • zkat/verify-coverage
  • zkat/vetterverify
  • zkat/windows-test-fi

pending completion
415

push

travis-ci

zkat
feat(integrity): subresource integrity support

BREAKING CHANGE: The entire API has been overhauled to use SRI hashes instead of digest/hashAlgorithm pairs. SRI hashes follow the Subresource Integrity standard and support strings and objects compatible with [`ssri`](https://npm.im/ssri).

* This change bumps the index version, which will invalidate all previous index entries. Content entries will remain intact, and existing caches will automatically reuse any content from before this breaking change.

* `cacache.get.info()`, `cacache.ls(), and `cacache.ls.stream()` will now return objects that looks like this:

```
{
  key: String,
  integrity: '<algorithm>-<base64hash>',
  path: ContentPath,
  time: Date<ms>,
  metadata: Any
}
```

* `opts.digest` and `opts.hashAlgorithm` are obsolete for any API calls that used them.

* Anywhere `opts.digest` was accepted, `opts.integrity` is now an option. Any valid SRI hash is accepted here -- multiple hash entries will be resolved according to the standard: first, the "strongest" hash algorithm will be picked, and then each of the entries for that algorithm will be matched against the content. Content will be validated if *any* of the entries match (so, a single integrity string can be used for multiple "versions" of the same document/data).

* `put.byDigest()`, `put.stream.byDigest`, `get.byDigest()` and `get.stream.byDigest() now expect an SRI instead of a `digest` + `opts.hashAlgorithm` pairing.

* `get.hasContent()` now expects an integrity hash instead of a digest. If content exists, it will return the specific single integrity hash that was found in the cache.

* `verify()` has learned to handle integrity-based caches, and forgotten how to handle old-style cache indices due to the format change.

* `cacache.rm.content()` now expects an integrity hash instead of a hex digest.

204 of 258 branches covered (79.07%)

94 of 94 new or added lines in 10 files covered. (100.0%)

542 of 578 relevant lines covered (93.77%)

38.78 hits per line

Relevant lines Covered
Build:
Build:
578 RELEVANT LINES 542 COVERED LINES
38.78 HITS PER LINE
Source Files on zkat/integrity
  • List 0
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
415 zkat/integrity feat(integrity): subresource integrity support BREAKING CHANGE: The entire API has been overhauled to use SRI hashes instead of digest/hashAlgorithm pairs. SRI hashes follow the Subresource Integrity standard and support strings and objects compa... push 03 Apr 2017 07:27AM UTC zkat travis-ci pending completion  
413 zkat/integrity fix(read): skip reading the filesystem if our integrity hash is single-entry push 03 Apr 2017 05:10AM UTC zkat travis-ci pending completion  
411 zkat/integrity docs: removed references to hexToIntegrity and integrityToHex push 03 Apr 2017 04:52AM UTC zkat travis-ci pending completion  
401 zkat/integrity docs: document new integrity api push 22 Mar 2017 09:10PM UTC zkat travis-ci pending completion  
See All Builds (638)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc