brotli-lib 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -58,11 +58,13 @@ class BrotliEncoder {
58
58
  }
59
59
  ```
60
60
 
61
+ FONT mode uses distance coding parameters optimized for transformed font data. It doesn't improve compression on raw TTF/OTF files - the gains come from WOFF2's font-specific transforms (glyf, loca, hmtx) applied before brotli compression
62
+
61
63
  ## Performance
62
64
 
63
65
  ### Decode
64
66
 
65
- | | brotli-lib | brotli.js | Google brotli |
67
+ | | brotli-lib | brotli.js | Google decode.ts |
66
68
  |--|------------|-----------|---------------|
67
69
  | Speed (vs Google) | 1.0x | 0.5-0.6x | 1x |
68
70
  | Custom dictionary | yes | no | yes |
@@ -70,7 +72,7 @@ class BrotliEncoder {
70
72
 
71
73
  Decode times (Apple M2 Max, Node 22):
72
74
 
73
- | File | brotli-lib | brotli.js | Google brotli |
75
+ | File | brotli-lib | brotli.js | Google decode.ts |
74
76
  |------|------------|-----------|---------------|
75
77
  | enc-ttf (305 KB) | 3.0 ms | 5.2 ms | 3.1 ms |
76
78
  | enc-otf (253 KB) | 3.0 ms | 5.2 ms | 3.1 ms |
@@ -83,13 +85,13 @@ Decode times (Apple M2 Max, Node 22):
83
85
 
84
86
  Encoder vs Node.js native `zlib.brotliCompressSync` (quality 11):
85
87
 
86
- | Input | brotli-lib | node:zlib |
87
- |-------|-----------|-----------|
88
- | 13 B | 0.0004 ms | 0.22 ms |
89
- | 4.5 KB | 0.38 ms | 0.43 ms |
90
- | 45 KB | 3.5 ms | 1.6 ms |
88
+ | Input | brotli-lib | node:zlib | vs native |
89
+ |-------|-----------|-----------|-----------|
90
+ | 13 B | 0.001 ms | 0.16 ms | 160x faster |
91
+ | 4.5 KB | 0.27 ms | 0.33 ms | 1.2x faster |
92
+ | 45 KB | 3.0 ms | 1.4 ms | 2x slower |
91
93
 
92
- Much faster for tiny inputs (no native binding overhead), faster for medium, 2x slower for large
94
+ Much faster for tiny inputs (no native binding overhead), faster for medium, ~2x slower for large
93
95
 
94
96
  Run `npm run bench` to reproduce
95
97
 
@@ -97,11 +99,11 @@ Run `npm run bench` to reproduce
97
99
 
98
100
  | Import | Export size (gzip) |
99
101
  |--------|--------------------|
102
+ | `brotli-lib/encode` | 25 KB |
100
103
  | `brotli-lib/decode` | 66 KB |
101
- | `brotli-lib/encode` | 16 KB |
102
- | `brotli-lib` | 82 KB |
104
+ | `brotli-lib` | 90 KB |
103
105
 
104
- The 122 KB static dictionary is compressed to 52 KB and bootstrapped at runtime (à la Devon Govett's brotli.js)
106
+ The 122 KB static dictionary is compressed to 52 KB and bootstrapped at runtime (à la Devon Govett's brotli.js).
105
107
 
106
108
  ## License
107
109
 
@@ -8,6 +8,6 @@ export interface ZopfliNode {
8
8
  shortcut: number;
9
9
  }
10
10
  export declare function createZopfliNodes(length: number): ZopfliNode[];
11
- export declare function createZopfliBackwardReferences(numBytes: number, position: number, ringbuffer: Uint8Array, ringbufferMask: number, quality: number, hasher: BinaryTreeHasher, distCache: Int32Array, lastInsertLen: number): [Command[], number, number];
12
- export declare function createHqZopfliBackwardReferences(numBytes: number, position: number, ringbuffer: Uint8Array, ringbufferMask: number, hasher: BinaryTreeHasher, distCache: Int32Array, lastInsertLen: number): [Command[], number, number];
11
+ export declare function createZopfliBackwardReferences(numBytes: number, position: number, ringbuffer: Uint8Array, ringbufferMask: number, quality: number, hasher: BinaryTreeHasher, distCache: Int32Array, lastInsertLen: number, npostfix?: number, ndirect?: number): [Command[], number, number];
12
+ export declare function createHqZopfliBackwardReferences(numBytes: number, position: number, ringbuffer: Uint8Array, ringbufferMask: number, hasher: BinaryTreeHasher, distCache: Int32Array, lastInsertLen: number, npostfix?: number, ndirect?: number): [Command[], number, number];
13
13
  //# sourceMappingURL=backward-references-hq.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"backward-references-hq.d.ts","sourceRoot":"","sources":["../../src/encode/backward-references-hq.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,OAAO,EAOR,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAiBrD,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,iBAAiB,EAAE,MAAM,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,EAAE,CAY9D;AA2VD,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,gBAAgB,EACxB,SAAS,EAAE,UAAU,EACrB,aAAa,EAAE,MAAM,GACpB,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CA4D7B;AAGD,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,gBAAgB,EACxB,SAAS,EAAE,UAAU,EACrB,aAAa,EAAE,MAAM,GACpB,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CA2G7B"}
1
+ {"version":3,"file":"backward-references-hq.d.ts","sourceRoot":"","sources":["../../src/encode/backward-references-hq.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,OAAO,EAOR,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAiBrD,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,iBAAiB,EAAE,MAAM,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,EAAE,CAY9D;AA2VD,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,gBAAgB,EACxB,SAAS,EAAE,UAAU,EACrB,aAAa,EAAE,MAAM,EACrB,QAAQ,GAAE,MAAU,EACpB,OAAO,GAAE,MAAU,GAClB,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CA4D7B;AAGD,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,gBAAgB,EACxB,SAAS,EAAE,UAAU,EACrB,aAAa,EAAE,MAAM,EACrB,QAAQ,GAAE,MAAU,EACpB,OAAO,GAAE,MAAU,GAClB,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CA2G7B"}
@@ -4,9 +4,8 @@ import { SimpleHasher } from './hash-simple';
4
4
  import { HashChainHasher } from './hash-chains';
5
5
  import { BinaryTreeHasher } from './hash-binary-tree';
6
6
  export type Hasher = SimpleHasher | HashChainHasher | BinaryTreeHasher;
7
- export declare function createBackwardReferences(numBytes: number, position: number, ringbuffer: Uint8Array, ringbufferMask: number, hasher: SimpleHasher | HashChainHasher, distCache: Int32Array, lastInsertLen: number, _quality: number): [Command[], number, number];
7
+ export declare function createBackwardReferences(numBytes: number, position: number, ringbuffer: Uint8Array, ringbufferMask: number, hasher: SimpleHasher | HashChainHasher, distCache: Int32Array, lastInsertLen: number, _quality: number, npostfix?: number, ndirect?: number): [Command[], number, number];
8
8
  export declare function distanceToCode(distance: number, distCache: Int32Array): number;
9
- export declare function codeToDistance(code: number, distCache: Int32Array): number;
10
9
  export declare function backwardMatchLength(match: BackwardMatch): number;
11
10
  export declare function backwardMatchLengthCode(match: BackwardMatch): number;
12
11
  export declare function initBackwardMatch(distance: number, length: number): BackwardMatch;
@@ -1 +1 @@
1
- {"version":3,"file":"backward-references.d.ts","sourceRoot":"","sources":["../../src/encode/backward-references.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAsB,MAAM,SAAS,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAsC,MAAM,WAAW,CAAA;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAGrD,MAAM,MAAM,MAAM,GAAG,YAAY,GAAG,eAAe,GAAG,gBAAgB,CAAA;AAGtE,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,YAAY,GAAG,eAAe,EACtC,SAAS,EAAE,UAAU,EACrB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,GACf,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAmG7B;AAYD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,GAAG,MAAM,CAY9E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,GAAG,MAAM,CAM1E;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAEhE;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAEpE;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,aAAa,CAOjF;AAED,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,GACnB,aAAa,CAOf"}
1
+ {"version":3,"file":"backward-references.d.ts","sourceRoot":"","sources":["../../src/encode/backward-references.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAsB,MAAM,SAAS,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAsC,MAAM,WAAW,CAAA;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAGrD,MAAM,MAAM,MAAM,GAAG,YAAY,GAAG,eAAe,GAAG,gBAAgB,CAAA;AAGtE,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,YAAY,GAAG,eAAe,EACtC,SAAS,EAAE,UAAU,EACrB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAU,EACpB,OAAO,GAAE,MAAU,GAClB,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAqG7B;AAYD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,GAAG,MAAM,CAY9E;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAEhE;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAEpE;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,aAAa,CAOjF;AAED,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,GACnB,aAAa,CAOf"}
@@ -1 +1 @@
1
- {"version":3,"file":"enc-constants.d.ts","sourceRoot":"","sources":["../../src/encode/enc-constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"enc-constants.d.ts","sourceRoot":"","sources":["../../src/encode/enc-constants.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../../src/encode/encode.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAoB,MAAM,cAAc,CAAA;AAC1D,OAAO,EACL,aAAa,EACb,WAAW,EAMZ,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,YAAY,EAAsB,MAAM,eAAe,CAAA;AAChE,OAAO,EAAE,eAAe,EAAyB,MAAM,eAAe,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAA0B,MAAM,oBAAoB,CAAA;AAG7E,OAAO,EAAE,OAAO,EAAuC,MAAM,WAAW,CAAA;AAGxE,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,aAAa,CAAA;IACrB,MAAM,EAAE,YAAY,GAAG,eAAe,GAAG,gBAAgB,GAAG,IAAI,CAAA;IAChE,SAAS,EAAE,UAAU,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,OAAO,EAAE,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,UAAU,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,OAAO,CAAA;IACtB,kBAAkB,EAAE,OAAO,CAAA;IAC3B,MAAM,EAAE,SAAS,CAAA;CAClB;AAKD,wBAAgB,YAAY,CAC1B,KAAK,EAAE,UAAU,EACjB,OAAO,GAAE,mBAAwB,GAChC,UAAU,CAqCZ;AAiMD,qBAAa,aAAa;IACxB,OAAO,CAAC,KAAK,CAAoB;gBAErB,OAAO,GAAE,mBAAwB;IAwC7C,OAAO,CAAC,UAAU;IAqBlB,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU;IAoCrC,MAAM,IAAI,UAAU;IAqBpB,OAAO,CAAC,YAAY;CA2ErB"}
1
+ {"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../../src/encode/encode.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAoB,MAAM,cAAc,CAAA;AAC1D,OAAO,EACL,aAAa,EACb,WAAW,EAMZ,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,YAAY,EAAsB,MAAM,eAAe,CAAA;AAChE,OAAO,EAAE,eAAe,EAAyB,MAAM,eAAe,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAA0B,MAAM,oBAAoB,CAAA;AAG7E,OAAO,EAAE,OAAO,EAAuC,MAAM,WAAW,CAAA;AAGxE,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,aAAa,CAAA;IACrB,MAAM,EAAE,YAAY,GAAG,eAAe,GAAG,gBAAgB,GAAG,IAAI,CAAA;IAChE,SAAS,EAAE,UAAU,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,OAAO,EAAE,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,UAAU,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,OAAO,CAAA;IACtB,kBAAkB,EAAE,OAAO,CAAA;IAC3B,MAAM,EAAE,SAAS,CAAA;CAClB;AAKD,wBAAgB,YAAY,CAC1B,KAAK,EAAE,UAAU,EACjB,OAAO,GAAE,mBAAwB,GAChC,UAAU,CAqCZ;AAwMD,qBAAa,aAAa;IACxB,OAAO,CAAC,KAAK,CAAoB;gBAErB,OAAO,GAAE,mBAAwB;IAwC7C,OAAO,CAAC,UAAU;IAqBlB,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU;IAoCrC,MAAM,IAAI,UAAU;IAqBpB,OAAO,CAAC,YAAY;CA+ErB"}
@@ -43,6 +43,7 @@ export declare function encodeMlen(length: number): {
43
43
  export declare function storeCompressedMetaBlockHeader(writer: BitWriter, isLast: boolean, length: number): void;
44
44
  export declare function storeUncompressedMetaBlockHeader(writer: BitWriter, length: number): void;
45
45
  export declare function storeCommandExtra(writer: BitWriter, cmd: Command): void;
46
- export declare function storeMetaBlockTrivial(writer: BitWriter, input: Uint8Array, startPos: number, length: number, mask: number, isLast: boolean, commands: Command[], distanceAlphabetSize: number): void;
46
+ export declare function storeMetaBlockTrivial(writer: BitWriter, input: Uint8Array, startPos: number, length: number, mask: number, isLast: boolean, commands: Command[], distanceAlphabetSize: number, npostfix?: number, ndirect?: number): void;
47
+ export declare function storeMetaBlock(writer: BitWriter, input: Uint8Array, startPos: number, length: number, mask: number, isLast: boolean, commands: Command[], distanceAlphabetSize: number, quality: number, npostfix?: number, ndirect?: number): void;
47
48
  export declare function storeUncompressedMetaBlock(writer: BitWriter, input: Uint8Array, position: number, mask: number, length: number, isFinal: boolean): void;
48
49
  //# sourceMappingURL=metablock.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"metablock.d.ts","sourceRoot":"","sources":["../../src/encode/metablock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metablock.d.ts","sourceRoot":"","sources":["../../src/encode/metablock.ts"],"names":[],"mappings":"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"}