Projekt

Obecné

Profil

Stáhnout (22.4 KB) Statistiky
| Větev: | Revize:
1
# Changelog
2

    
3
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4

    
5
### [12.0.4](https://github.com/npm/cacache/compare/v12.0.3...v12.0.4) (2020-03-24)
6

    
7

    
8

    
9
### [12.0.3](https://github.com/npm/cacache/compare/v12.0.2...v12.0.3) (2019-08-19)
10

    
11

    
12
### Bug Fixes
13

    
14
* do not chown if not running as root ([2d80af9](https://github.com/npm/cacache/commit/2d80af9))
15

    
16

    
17

    
18
### [12.0.2](https://github.com/npm/cacache/compare/v12.0.1...v12.0.2) (2019-07-19)
19

    
20

    
21

    
22
### [12.0.1](https://github.com/npm/cacache/compare/v12.0.0...v12.0.1) (2019-07-19)
23

    
24
* **deps** Abstracted out `lib/util/infer-owner.js` to
25
  [@npmcli/infer-owner](https://www.npmjs.com/package/@npmcli/infer-owner)
26
  so that it could be more easily used in other parts of the npm CLI.
27

    
28

    
29
## [12.0.0](https://github.com/npm/cacache/compare/v11.3.3...v12.0.0) (2019-07-15)
30

    
31

    
32
### Features
33

    
34
* infer uid/gid instead of accepting as options ([ac84d14](https://github.com/npm/cacache/commit/ac84d14))
35
* **i18n:** add another error message ([676cb32](https://github.com/npm/cacache/commit/676cb32))
36

    
37

    
38
### BREAKING CHANGES
39

    
40
* the uid gid options are no longer respected or
41
necessary.  As of this change, cacache will always match the cache
42
contents to the ownership of the cache directory (or its parent
43
directory), regardless of what the caller passes in.
44

    
45
Reasoning:
46

    
47
The number one reason to use a uid or gid option was to keep root-owned
48
files from causing problems in the cache.  In npm's case, this meant
49
that CLI's ./lib/command.js had to work out the appropriate uid and gid,
50
then pass it to the libnpmcommand module, which had to in turn pass the
51
uid and gid to npm-registry-fetch, which then passed it to
52
make-fetch-happen, which passed it to cacache.  (For package fetching,
53
pacote would be in that mix as well.)
54

    
55
Added to that, `cacache.rm()` will actually _write_ a file into the
56
cache index, but has no way to accept an option so that its call to
57
entry-index.js will write the index with the appropriate uid/gid.
58
Little ownership bugs were all over the place, and tricky to trace
59
through.  (Why should make-fetch-happen even care about accepting or
60
passing uids and gids?  It's an http library.)
61

    
62
This change allows us to keep the cache from having mixed ownership in
63
any situation.
64

    
65
Of course, this _does_ mean that if you have a root-owned but
66
user-writable folder (for example, `/tmp`), then the cache will try to
67
chown everything to root.
68

    
69
The solution is for the user to create a folder, make it user-owned, and
70
use that, rather than relying on cacache to create the root cache folder.
71

    
72
If we decide to restore the uid/gid opts, and use ownership inferrence
73
only when uid/gid are unset, then take care to also make rm take an
74
option object, and pass it through to entry-index.js.
75

    
76

    
77

    
78
### [11.3.3](https://github.com/npm/cacache/compare/v11.3.2...v11.3.3) (2019-06-17)
79

    
80

    
81
### Bug Fixes
82

    
83
* **audit:** npm audit fix ([200a6d5](https://github.com/npm/cacache/commit/200a6d5))
84
* **config:** Add ssri config 'error' option ([#146](https://github.com/npm/cacache/issues/146)) ([47de8f5](https://github.com/npm/cacache/commit/47de8f5))
85
* **deps:** npm audit fix ([481a7dc](https://github.com/npm/cacache/commit/481a7dc))
86
* **standard:** standard --fix ([7799149](https://github.com/npm/cacache/commit/7799149))
87
* **write:** avoid another cb never called situation ([5156561](https://github.com/npm/cacache/commit/5156561))
88

    
89

    
90

    
91
<a name="11.3.2"></a>
92
## [11.3.2](https://github.com/npm/cacache/compare/v11.3.1...v11.3.2) (2018-12-21)
93

    
94

    
95
### Bug Fixes
96

    
97
* **get:** make sure to handle errors in the .then ([b10bcd0](https://github.com/npm/cacache/commit/b10bcd0))
98

    
99

    
100

    
101
<a name="11.3.1"></a>
102
## [11.3.1](https://github.com/npm/cacache/compare/v11.3.0...v11.3.1) (2018-11-05)
103

    
104

    
105
### Bug Fixes
106

    
107
* **get:** export hasContent.sync properly ([d76c920](https://github.com/npm/cacache/commit/d76c920))
108

    
109

    
110

    
111
<a name="11.3.0"></a>
112
# [11.3.0](https://github.com/npm/cacache/compare/v11.2.0...v11.3.0) (2018-11-05)
113

    
114

    
115
### Features
116

    
117
* **get:** add sync API for reading ([db1e094](https://github.com/npm/cacache/commit/db1e094))
118

    
119

    
120

    
121
<a name="11.2.0"></a>
122
# [11.2.0](https://github.com/npm/cacache/compare/v11.1.0...v11.2.0) (2018-08-08)
123

    
124

    
125
### Features
126

    
127
* **read:** add sync support to other internal read.js fns ([fe638b6](https://github.com/npm/cacache/commit/fe638b6))
128

    
129

    
130

    
131
<a name="11.1.0"></a>
132
# [11.1.0](https://github.com/npm/cacache/compare/v11.0.3...v11.1.0) (2018-08-01)
133

    
134

    
135
### Features
136

    
137
* **read:** add sync support for low-level content read ([b43af83](https://github.com/npm/cacache/commit/b43af83))
138

    
139

    
140

    
141
<a name="11.0.3"></a>
142
## [11.0.3](https://github.com/npm/cacache/compare/v11.0.2...v11.0.3) (2018-08-01)
143

    
144

    
145
### Bug Fixes
146

    
147
* **config:** add ssri config options ([#136](https://github.com/npm/cacache/issues/136)) ([10d5d9a](https://github.com/npm/cacache/commit/10d5d9a))
148
* **perf:** refactor content.read to avoid lstats ([c5ac10e](https://github.com/npm/cacache/commit/c5ac10e))
149
* **test:** oops when removing safe-buffer ([1950490](https://github.com/npm/cacache/commit/1950490))
150

    
151

    
152

    
153
<a name="11.0.2"></a>
154
## [11.0.2](https://github.com/npm/cacache/compare/v11.0.1...v11.0.2) (2018-05-07)
155

    
156

    
157
### Bug Fixes
158

    
159
* **verify:** size param no longer lost in a verify ([#131](https://github.com/npm/cacache/issues/131)) ([c614a19](https://github.com/npm/cacache/commit/c614a19)), closes [#130](https://github.com/npm/cacache/issues/130)
160

    
161

    
162

    
163
<a name="11.0.1"></a>
164
## [11.0.1](https://github.com/npm/cacache/compare/v11.0.0...v11.0.1) (2018-04-10)
165

    
166

    
167

    
168
<a name="11.0.0"></a>
169
# [11.0.0](https://github.com/npm/cacache/compare/v10.0.4...v11.0.0) (2018-04-09)
170

    
171

    
172
### Features
173

    
174
* **opts:** use figgy-pudding for opts ([#128](https://github.com/npm/cacache/issues/128)) ([33d4eed](https://github.com/npm/cacache/commit/33d4eed))
175

    
176

    
177
### meta
178

    
179
* drop support for node@4 ([529f347](https://github.com/npm/cacache/commit/529f347))
180

    
181

    
182
### BREAKING CHANGES
183

    
184
* node@4 is no longer supported
185

    
186

    
187

    
188
<a name="10.0.4"></a>
189
## [10.0.4](https://github.com/npm/cacache/compare/v10.0.3...v10.0.4) (2018-02-16)
190

    
191

    
192

    
193
<a name="10.0.3"></a>
194
## [10.0.3](https://github.com/npm/cacache/compare/v10.0.2...v10.0.3) (2018-02-16)
195

    
196

    
197
### Bug Fixes
198

    
199
* **content:** rethrow aggregate errors as ENOENT ([fa918f5](https://github.com/npm/cacache/commit/fa918f5))
200

    
201

    
202

    
203
<a name="10.0.2"></a>
204
## [10.0.2](https://github.com/npm/cacache/compare/v10.0.1...v10.0.2) (2018-01-07)
205

    
206

    
207
### Bug Fixes
208

    
209
* **ls:** deleted entries could cause a premature stream EOF ([347dc36](https://github.com/npm/cacache/commit/347dc36))
210

    
211

    
212

    
213
<a name="10.0.1"></a>
214
## [10.0.1](https://github.com/npm/cacache/compare/v10.0.0...v10.0.1) (2017-11-15)
215

    
216

    
217
### Bug Fixes
218

    
219
* **move-file:** actually use the fallback to `move-concurrently` (#110) ([073fbe1](https://github.com/npm/cacache/commit/073fbe1))
220

    
221

    
222

    
223
<a name="10.0.0"></a>
224
# [10.0.0](https://github.com/npm/cacache/compare/v9.3.0...v10.0.0) (2017-10-23)
225

    
226

    
227
### Features
228

    
229
* **license:** relicense to ISC (#111) ([fdbb4e5](https://github.com/npm/cacache/commit/fdbb4e5))
230

    
231

    
232
### Performance Improvements
233

    
234
* more copyFile benchmarks ([63787bb](https://github.com/npm/cacache/commit/63787bb))
235

    
236

    
237
### BREAKING CHANGES
238

    
239
* **license:** the license has been changed from CC0-1.0 to ISC.
240

    
241

    
242

    
243
<a name="9.3.0"></a>
244
# [9.3.0](https://github.com/npm/cacache/compare/v9.2.9...v9.3.0) (2017-10-07)
245

    
246

    
247
### Features
248

    
249
* **copy:** added cacache.get.copy api for fast copies (#107) ([067b5f6](https://github.com/npm/cacache/commit/067b5f6))
250

    
251

    
252

    
253
<a name="9.2.9"></a>
254
## [9.2.9](https://github.com/npm/cacache/compare/v9.2.8...v9.2.9) (2017-06-17)
255

    
256

    
257

    
258
<a name="9.2.8"></a>
259
## [9.2.8](https://github.com/npm/cacache/compare/v9.2.7...v9.2.8) (2017-06-05)
260

    
261

    
262
### Bug Fixes
263

    
264
* **ssri:** bump ssri for bugfix ([c3232ea](https://github.com/npm/cacache/commit/c3232ea))
265

    
266

    
267

    
268
<a name="9.2.7"></a>
269
## [9.2.7](https://github.com/npm/cacache/compare/v9.2.6...v9.2.7) (2017-06-05)
270

    
271

    
272
### Bug Fixes
273

    
274
* **content:** make verified content completely read-only (#96) ([4131196](https://github.com/npm/cacache/commit/4131196))
275

    
276

    
277

    
278
<a name="9.2.6"></a>
279
## [9.2.6](https://github.com/npm/cacache/compare/v9.2.5...v9.2.6) (2017-05-31)
280

    
281

    
282
### Bug Fixes
283

    
284
* **node:** update ssri to prevent old node 4 crash ([5209ffe](https://github.com/npm/cacache/commit/5209ffe))
285

    
286

    
287

    
288
<a name="9.2.5"></a>
289
## [9.2.5](https://github.com/npm/cacache/compare/v9.2.4...v9.2.5) (2017-05-25)
290

    
291

    
292
### Bug Fixes
293

    
294
* **deps:** fix lockfile issues and bump ssri ([84e1d7e](https://github.com/npm/cacache/commit/84e1d7e))
295

    
296

    
297

    
298
<a name="9.2.4"></a>
299
## [9.2.4](https://github.com/npm/cacache/compare/v9.2.3...v9.2.4) (2017-05-24)
300

    
301

    
302
### Bug Fixes
303

    
304
* **deps:** bumping deps ([bbccb12](https://github.com/npm/cacache/commit/bbccb12))
305

    
306

    
307

    
308
<a name="9.2.3"></a>
309
## [9.2.3](https://github.com/npm/cacache/compare/v9.2.2...v9.2.3) (2017-05-24)
310

    
311

    
312
### Bug Fixes
313

    
314
* **rm:** stop crashing if content is missing on rm ([ac90bc0](https://github.com/npm/cacache/commit/ac90bc0))
315

    
316

    
317

    
318
<a name="9.2.2"></a>
319
## [9.2.2](https://github.com/npm/cacache/compare/v9.2.1...v9.2.2) (2017-05-14)
320

    
321

    
322
### Bug Fixes
323

    
324
* **i18n:** lets pretend this didn't happen ([519b4ee](https://github.com/npm/cacache/commit/519b4ee))
325

    
326

    
327

    
328
<a name="9.2.1"></a>
329
## [9.2.1](https://github.com/npm/cacache/compare/v9.2.0...v9.2.1) (2017-05-14)
330

    
331

    
332
### Bug Fixes
333

    
334
* **docs:** fixing translation messup ([bb9e4f9](https://github.com/npm/cacache/commit/bb9e4f9))
335

    
336

    
337

    
338
<a name="9.2.0"></a>
339
# [9.2.0](https://github.com/npm/cacache/compare/v9.1.0...v9.2.0) (2017-05-14)
340

    
341

    
342
### Features
343

    
344
* **i18n:** add Spanish translation for API ([531f9a4](https://github.com/npm/cacache/commit/531f9a4))
345

    
346

    
347

    
348
<a name="9.1.0"></a>
349
# [9.1.0](https://github.com/npm/cacache/compare/v9.0.0...v9.1.0) (2017-05-14)
350

    
351

    
352
### Features
353

    
354
* **i18n:** Add Spanish translation and i18n setup (#91) ([323b90c](https://github.com/npm/cacache/commit/323b90c))
355

    
356

    
357

    
358
<a name="9.0.0"></a>
359
# [9.0.0](https://github.com/npm/cacache/compare/v8.0.0...v9.0.0) (2017-04-28)
360

    
361

    
362
### Bug Fixes
363

    
364
* **memoization:** actually use the LRU ([0e55dc9](https://github.com/npm/cacache/commit/0e55dc9))
365

    
366

    
367
### Features
368

    
369
* **memoization:** memoizers can be injected through opts.memoize (#90) ([e5614c7](https://github.com/npm/cacache/commit/e5614c7))
370

    
371

    
372
### BREAKING CHANGES
373

    
374
* **memoization:** If you were passing an object to opts.memoize, it will now be used as an injected memoization object. If you were only passing booleans and other non-objects through that option, no changes are needed.
375

    
376

    
377

    
378
<a name="8.0.0"></a>
379
# [8.0.0](https://github.com/npm/cacache/compare/v7.1.0...v8.0.0) (2017-04-22)
380

    
381

    
382
### Features
383

    
384
* **read:** change hasContent to return {sri, size} (#88) ([bad6c49](https://github.com/npm/cacache/commit/bad6c49)), closes [#87](https://github.com/npm/cacache/issues/87)
385

    
386

    
387
### BREAKING CHANGES
388

    
389
* **read:** hasContent now returns an object with `{sri, size}` instead of `sri`. Use `result.sri` anywhere that needed the old return value.
390

    
391

    
392

    
393
<a name="7.1.0"></a>
394
# [7.1.0](https://github.com/npm/cacache/compare/v7.0.5...v7.1.0) (2017-04-20)
395

    
396

    
397
### Features
398

    
399
* **size:** handle content size info (#49) ([91230af](https://github.com/npm/cacache/commit/91230af))
400

    
401

    
402

    
403
<a name="7.0.5"></a>
404
## [7.0.5](https://github.com/npm/cacache/compare/v7.0.4...v7.0.5) (2017-04-18)
405

    
406

    
407
### Bug Fixes
408

    
409
* **integrity:** new ssri with fixed integrity stream ([6d13e8e](https://github.com/npm/cacache/commit/6d13e8e))
410
* **write:** wrap stuff in promises to improve errors ([3624fc5](https://github.com/npm/cacache/commit/3624fc5))
411

    
412

    
413

    
414
<a name="7.0.4"></a>
415
## [7.0.4](https://github.com/npm/cacache/compare/v7.0.3...v7.0.4) (2017-04-15)
416

    
417

    
418
### Bug Fixes
419

    
420
* **fix-owner:** throw away ENOENTs on chownr ([d49bbcd](https://github.com/npm/cacache/commit/d49bbcd))
421

    
422

    
423

    
424
<a name="7.0.3"></a>
425
## [7.0.3](https://github.com/npm/cacache/compare/v7.0.2...v7.0.3) (2017-04-05)
426

    
427

    
428
### Bug Fixes
429

    
430
* **read:** fixing error message for integrity verification failures ([9d4f0a5](https://github.com/npm/cacache/commit/9d4f0a5))
431

    
432

    
433

    
434
<a name="7.0.2"></a>
435
## [7.0.2](https://github.com/npm/cacache/compare/v7.0.1...v7.0.2) (2017-04-03)
436

    
437

    
438
### Bug Fixes
439

    
440
* **integrity:** use EINTEGRITY error code and update ssri ([8dc2e62](https://github.com/npm/cacache/commit/8dc2e62))
441

    
442

    
443

    
444
<a name="7.0.1"></a>
445
## [7.0.1](https://github.com/npm/cacache/compare/v7.0.0...v7.0.1) (2017-04-03)
446

    
447

    
448
### Bug Fixes
449

    
450
* **docs:** fix header name conflict in readme ([afcd456](https://github.com/npm/cacache/commit/afcd456))
451

    
452

    
453

    
454
<a name="7.0.0"></a>
455
# [7.0.0](https://github.com/npm/cacache/compare/v6.3.0...v7.0.0) (2017-04-03)
456

    
457

    
458
### Bug Fixes
459

    
460
* **test:** fix content.write tests when running in docker ([d2e9b6a](https://github.com/npm/cacache/commit/d2e9b6a))
461

    
462

    
463
### Features
464

    
465
* **integrity:** subresource integrity support (#78) ([b1e731f](https://github.com/npm/cacache/commit/b1e731f))
466

    
467

    
468
### BREAKING CHANGES
469

    
470
* **integrity:** 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).
471

    
472
* 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.
473

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

    
476
```
477
{
478
  key: String,
479
  integrity: '<algorithm>-<base64hash>',
480
  path: ContentPath,
481
  time: Date<ms>,
482
  metadata: Any
483
}
484
```
485

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

    
488
* 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).
489

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

    
492
* `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.
493

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

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

    
498

    
499

    
500
<a name="6.3.0"></a>
501
# [6.3.0](https://github.com/npm/cacache/compare/v6.2.0...v6.3.0) (2017-04-01)
502

    
503

    
504
### Bug Fixes
505

    
506
* **fixOwner:** ignore EEXIST race condition from mkdirp ([4670e9b](https://github.com/npm/cacache/commit/4670e9b))
507
* **index:** ignore index removal races when inserting ([b9d2fa2](https://github.com/npm/cacache/commit/b9d2fa2))
508
* **memo:** use lru-cache for better mem management (#75) ([d8ac5aa](https://github.com/npm/cacache/commit/d8ac5aa))
509

    
510

    
511
### Features
512

    
513
* **dependencies:** Switch to move-concurrently (#77) ([dc6482d](https://github.com/npm/cacache/commit/dc6482d))
514

    
515

    
516

    
517
<a name="6.2.0"></a>
518
# [6.2.0](https://github.com/npm/cacache/compare/v6.1.2...v6.2.0) (2017-03-15)
519

    
520

    
521
### Bug Fixes
522

    
523
* **index:** additional bucket entry verification with checksum (#72) ([f8e0f25](https://github.com/npm/cacache/commit/f8e0f25))
524
* **verify:** return fixOwner.chownr promise ([6818521](https://github.com/npm/cacache/commit/6818521))
525

    
526

    
527
### Features
528

    
529
* **tmp:** safe tmp dir creation/management util (#73) ([c42da71](https://github.com/npm/cacache/commit/c42da71))
530

    
531

    
532

    
533
<a name="6.1.2"></a>
534
## [6.1.2](https://github.com/npm/cacache/compare/v6.1.1...v6.1.2) (2017-03-13)
535

    
536

    
537
### Bug Fixes
538

    
539
* **index:** set default hashAlgorithm ([d6eb2f0](https://github.com/npm/cacache/commit/d6eb2f0))
540

    
541

    
542

    
543
<a name="6.1.1"></a>
544
## [6.1.1](https://github.com/npm/cacache/compare/v6.1.0...v6.1.1) (2017-03-13)
545

    
546

    
547
### Bug Fixes
548

    
549
* **coverage:** bumping coverage for verify (#71) ([0b7faf6](https://github.com/npm/cacache/commit/0b7faf6))
550
* **deps:** glob should have been a regular dep :< ([0640bc4](https://github.com/npm/cacache/commit/0640bc4))
551

    
552

    
553

    
554
<a name="6.1.0"></a>
555
# [6.1.0](https://github.com/npm/cacache/compare/v6.0.2...v6.1.0) (2017-03-12)
556

    
557

    
558
### Bug Fixes
559

    
560
* **coverage:** more coverage for content reads (#70) ([ef4f70a](https://github.com/npm/cacache/commit/ef4f70a))
561
* **tests:** use safe-buffer because omfg (#69) ([6ab8132](https://github.com/npm/cacache/commit/6ab8132))
562

    
563

    
564
### Features
565

    
566
* **rm:** limited rm.all and fixed bugs (#66) ([d5d25ba](https://github.com/npm/cacache/commit/d5d25ba)), closes [#66](https://github.com/npm/cacache/issues/66)
567
* **verify:** tested, working cache verifier/gc (#68) ([45ad77a](https://github.com/npm/cacache/commit/45ad77a))
568

    
569

    
570

    
571
<a name="6.0.2"></a>
572
## [6.0.2](https://github.com/npm/cacache/compare/v6.0.1...v6.0.2) (2017-03-11)
573

    
574

    
575
### Bug Fixes
576

    
577
* **index:** segment cache items with another subbucket (#64) ([c3644e5](https://github.com/npm/cacache/commit/c3644e5))
578

    
579

    
580

    
581
<a name="6.0.1"></a>
582
## [6.0.1](https://github.com/npm/cacache/compare/v6.0.0...v6.0.1) (2017-03-05)
583

    
584

    
585
### Bug Fixes
586

    
587
* **docs:** Missed spots in README ([8ffb7fa](https://github.com/npm/cacache/commit/8ffb7fa))
588

    
589

    
590

    
591
<a name="6.0.0"></a>
592
# [6.0.0](https://github.com/npm/cacache/compare/v5.0.3...v6.0.0) (2017-03-05)
593

    
594

    
595
### Bug Fixes
596

    
597
* **api:** keep memo cache mostly-internal ([2f72d0a](https://github.com/npm/cacache/commit/2f72d0a))
598
* **content:** use the rest of the string, not the whole string ([fa8f3c3](https://github.com/npm/cacache/commit/fa8f3c3))
599
* **deps:** removed `format-number@2.0.2` ([1187791](https://github.com/npm/cacache/commit/1187791))
600
* **deps:** removed inflight@1.0.6 ([0d1819c](https://github.com/npm/cacache/commit/0d1819c))
601
* **deps:** rimraf@2.6.1 ([9efab6b](https://github.com/npm/cacache/commit/9efab6b))
602
* **deps:** standard@9.0.0 ([4202cba](https://github.com/npm/cacache/commit/4202cba))
603
* **deps:** tap@10.3.0 ([aa03088](https://github.com/npm/cacache/commit/aa03088))
604
* **deps:** weallcontribute@1.0.8 ([ad4f4dc](https://github.com/npm/cacache/commit/ad4f4dc))
605
* **docs:** add security note to hashKey ([03f81ba](https://github.com/npm/cacache/commit/03f81ba))
606
* **hashes:** change default hashAlgorithm to sha512 ([ea00ba6](https://github.com/npm/cacache/commit/ea00ba6))
607
* **hashes:** missed a spot for hashAlgorithm defaults ([45997d8](https://github.com/npm/cacache/commit/45997d8))
608
* **index:** add length header before JSON for verification ([fb8cb4d](https://github.com/npm/cacache/commit/fb8cb4d))
609
* **index:** change index filenames to sha1s of keys ([bbc5fca](https://github.com/npm/cacache/commit/bbc5fca))
610
* **index:** who cares about race conditions anyway ([b1d3888](https://github.com/npm/cacache/commit/b1d3888))
611
* **perf:** bulk-read get+read for massive speed ([d26cdf9](https://github.com/npm/cacache/commit/d26cdf9))
612
* **perf:** use bulk file reads for index reads ([79a8891](https://github.com/npm/cacache/commit/79a8891))
613
* **put-stream:** remove tmp file on stream insert error ([65f6632](https://github.com/npm/cacache/commit/65f6632))
614
* **put-stream:** robustified and predictibilized ([daf9e08](https://github.com/npm/cacache/commit/daf9e08))
615
* **put-stream:** use new promise API for moves ([1d36013](https://github.com/npm/cacache/commit/1d36013))
616
* **readme:** updated to reflect new default hashAlgo ([c60a2fa](https://github.com/npm/cacache/commit/c60a2fa))
617
* **verify:** tiny typo fix ([db22d05](https://github.com/npm/cacache/commit/db22d05))
618

    
619

    
620
### Features
621

    
622
* **api:** converted external api ([7bf032f](https://github.com/npm/cacache/commit/7bf032f))
623
* **cacache:** exported clearMemoized() utility ([8d2c5b6](https://github.com/npm/cacache/commit/8d2c5b6))
624
* **cache:** add versioning to content and index ([31bc549](https://github.com/npm/cacache/commit/31bc549))
625
* **content:** collate content files into subdirs ([c094d9f](https://github.com/npm/cacache/commit/c094d9f))
626
* **deps:** `@npmcorp/move@1.0.0` ([bdd00bf](https://github.com/npm/cacache/commit/bdd00bf))
627
* **deps:** `bluebird@3.4.7` ([3a17aff](https://github.com/npm/cacache/commit/3a17aff))
628
* **deps:** `promise-inflight@1.0.1` ([a004fe6](https://github.com/npm/cacache/commit/a004fe6))
629
* **get:** added memoization support for get ([c77d794](https://github.com/npm/cacache/commit/c77d794))
630
* **get:** export hasContent ([2956ec3](https://github.com/npm/cacache/commit/2956ec3))
631
* **index:** add hashAlgorithm and format insert ret val ([b639746](https://github.com/npm/cacache/commit/b639746))
632
* **index:** collate index files into subdirs ([e8402a5](https://github.com/npm/cacache/commit/e8402a5))
633
* **index:** promisify entry index ([cda3335](https://github.com/npm/cacache/commit/cda3335))
634
* **memo:** added memoization lib ([da07b92](https://github.com/npm/cacache/commit/da07b92))
635
* **memo:** export memoization api ([954b1b3](https://github.com/npm/cacache/commit/954b1b3))
636
* **move-file:** add move fallback for weird errors ([5cf4616](https://github.com/npm/cacache/commit/5cf4616))
637
* **perf:** bulk content write api ([51b536e](https://github.com/npm/cacache/commit/51b536e))
638
* **put:** added memoization support to put ([b613a70](https://github.com/npm/cacache/commit/b613a70))
639
* **read:** switched to promises ([a869362](https://github.com/npm/cacache/commit/a869362))
640
* **rm:** added memoization support to rm ([4205cf0](https://github.com/npm/cacache/commit/4205cf0))
641
* **rm:** switched to promises ([a000d24](https://github.com/npm/cacache/commit/a000d24))
642
* **util:** promise-inflight ownership fix requests ([9517cd7](https://github.com/npm/cacache/commit/9517cd7))
643
* **util:** use promises for api ([ae204bb](https://github.com/npm/cacache/commit/ae204bb))
644
* **verify:** converted to Promises ([f0b3974](https://github.com/npm/cacache/commit/f0b3974))
645

    
646

    
647
### BREAKING CHANGES
648

    
649
* cache: index/content directories are now versioned. Previous caches are no longer compatible and cannot be migrated.
650
* util: fix-owner now uses Promises instead of callbacks
651
* index: Previously-generated index entries are no longer compatible and the index must be regenerated.
652
* index: The index format has changed and previous caches are no longer compatible. Existing caches will need to be regenerated.
653
* hashes: Default hashAlgorithm changed from sha1 to sha512. If you
654
rely on the prior setting, pass `opts.hashAlgorithm` in explicitly.
655
* content: Previously-generated content directories are no longer compatible
656
and must be regenerated.
657
* verify: API is now promise-based
658
* read: Switches to a Promise-based API and removes callback stuff
659
* rm: Switches to a Promise-based API and removes callback stuff
660
* index: this changes the API to work off promises instead of callbacks
661
* api: this means we are going all in on promises now
(1-1/13)