cborg 5.1.3 → 5.1.5

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/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ ## [5.1.5](https://github.com/rvagg/cborg/compare/v5.1.4...v5.1.5) (2026-06-30)
2
+
3
+ ### Trivial Changes
4
+
5
+ * **deps-dev:** bump @types/node from 25.9.4 to 26.0.1 ([#181](https://github.com/rvagg/cborg/issues/181)) ([db98a8f](https://github.com/rvagg/cborg/commit/db98a8fe14c67ce548c3a5375c10043f5dc8caf6))
6
+
7
+ ## [5.1.4](https://github.com/rvagg/cborg/compare/v5.1.3...v5.1.4) (2026-06-24)
8
+
9
+ ### Bug Fixes
10
+
11
+ * emit shortest-form floats in rfc8949EncodeOptions (RFC 8949 4.2.1) ([#180](https://github.com/rvagg/cborg/issues/180)) ([183f644](https://github.com/rvagg/cborg/commit/183f644c7c54279b6e3acb9248fb6c644ddf95ef))
12
+
1
13
  ## [5.1.3](https://github.com/rvagg/cborg/compare/v5.1.2...v5.1.3) (2026-06-22)
2
14
 
3
15
  ### Trivial Changes
package/lib/encode.js CHANGED
@@ -33,7 +33,6 @@ const defaultEncodeOptions = {
33
33
 
34
34
  /** @type {EncodeOptions} */
35
35
  export const rfc8949EncodeOptions = Object.freeze({
36
- float64: true,
37
36
  mapSorter: rfc8949MapSorter,
38
37
  quickEncodeToken
39
38
  })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cborg",
3
- "version": "5.1.3",
3
+ "version": "5.1.5",
4
4
  "description": "Fast CBOR with a focus on strictness",
5
5
  "main": "cborg.js",
6
6
  "type": "module",
@@ -36,7 +36,7 @@
36
36
  "@semantic-release/release-notes-generator": "^14.1.0",
37
37
  "@types/chai": "^5.2.3",
38
38
  "@types/mocha": "^10.0.10",
39
- "@types/node": "^25.5.0",
39
+ "@types/node": "^26.0.1",
40
40
  "chai": "^6.2.2",
41
41
  "conventional-changelog-conventionalcommits": "^9.3.0",
42
42
  "ipld-garbage": "^5.0.0",
@@ -27,6 +27,17 @@ describe('RFC8949 deterministic encoding', () => {
27
27
  // {10: 10, 100: 100, -1: -1, "z": "z", "aa": "aa", false: false}
28
28
  })
29
29
 
30
+ it('should encode floats in shortest form', () => {
31
+ // https://datatracker.ietf.org/doc/html/rfc8949#section-4.2.1
32
+ // "Floating-point values also MUST use the shortest form ... 1.5 is
33
+ // encoded as 0xf93e00"
34
+ assert.deepEqual(toHex(encode(1.5, rfc8949EncodeOptions)), 'f93e00')
35
+ assert.deepEqual(toHex(encode(Infinity, rfc8949EncodeOptions)), 'f97c00')
36
+ assert.deepEqual(toHex(encode(NaN, rfc8949EncodeOptions)), 'f97e00')
37
+ // values that genuinely need 64 bits stay 64 bits
38
+ assert.deepEqual(toHex(encode(1.1, rfc8949EncodeOptions)), 'fb3ff199999999999a')
39
+ })
40
+
30
41
  it('will throw on complex key types', () => {
31
42
  const value = new Map()
32
43
  // https://datatracker.ietf.org/doc/html/rfc8949#section-4.2.1
@@ -1 +1 @@
1
- {"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../../lib/encode.js"],"names":[],"mappings":"AAwCA,oCAAoC;AACpC,oCADc,gBAAgB,EAAE,CAY/B;AAnBD,4BAA4B;AAC5B,mCADW,aAAa,CAKtB;sBA+YW,KAAK,GAAG;IAAE,SAAS,CAAC,EAAE,UAAU,CAAA;CAAE;4BApalC,OAAO,iBAAiB,EAAE,aAAa;kCACvC,OAAO,iBAAiB,EAAE,mBAAmB;wBAC7C,OAAO,iBAAiB,EAAE,SAAS;gCACnC,OAAO,iBAAiB,EAAE,iBAAiB;+BAC3C,OAAO,iBAAiB,EAAE,gBAAgB;kCAC1C,OAAO,iBAAiB,EAAE,mBAAmB;yBAC7C,OAAO,iBAAiB,EAAE,UAAU;AA4SjD;;;;;GAKG;AACH,oCALW,GAAG,YACH,aAAa,aACb,SAAS,GACP,mBAAmB,CAgB/B;AA8TD;;;;GAIG;AACH,6BAJW,GAAG,YACH,aAAa,GACX,UAAU,CAatB;AA1DD;;;;;;GAMG;AACH,mCANW,GAAG,YACH,gBAAgB,EAAE,WAClB,aAAa,gBACb,UAAU,GACR,UAAU,CAmCtB;AAoBD;;;;;GAKG;AACH,iCALW,GAAG,eACH,UAAU,YACV,aAAa,GACX;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAc/B;AA/nBD,8BAA8B;AAC9B,4BADiB,SAAS;IA0BxB;;;;OAIG;IACH,0BAJW,SAAS,GAAC,SAAS,OACnB,MAAM,GAAC,GAAG,EAAE,GACV,SAAS,CAOrB;IAlCD;;;OAGG;IACH,iBAHW,MAAM,GAAC,GAAG,EAAE,UACZ,SAAS,GAAC,SAAS,EAK7B;IAFC,oBAAc;IACd,wDAAoB;IAGtB;;;OAGG;IACH,cAHW,MAAM,GAAC,GAAG,EAAE,GACV,OAAO,CAWnB;CAaF;sBA9F2B,YAAY"}
1
+ {"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../../lib/encode.js"],"names":[],"mappings":"AAuCA,oCAAoC;AACpC,oCADc,gBAAgB,EAAE,CAY/B;AAlBD,4BAA4B;AAC5B,mCADW,aAAa,CAItB;sBA+YW,KAAK,GAAG;IAAE,SAAS,CAAC,EAAE,UAAU,CAAA;CAAE;4BAnalC,OAAO,iBAAiB,EAAE,aAAa;kCACvC,OAAO,iBAAiB,EAAE,mBAAmB;wBAC7C,OAAO,iBAAiB,EAAE,SAAS;gCACnC,OAAO,iBAAiB,EAAE,iBAAiB;+BAC3C,OAAO,iBAAiB,EAAE,gBAAgB;kCAC1C,OAAO,iBAAiB,EAAE,mBAAmB;yBAC7C,OAAO,iBAAiB,EAAE,UAAU;AA2SjD;;;;;GAKG;AACH,oCALW,GAAG,YACH,aAAa,aACb,SAAS,GACP,mBAAmB,CAgB/B;AA8TD;;;;GAIG;AACH,6BAJW,GAAG,YACH,aAAa,GACX,UAAU,CAatB;AA1DD;;;;;;GAMG;AACH,mCANW,GAAG,YACH,gBAAgB,EAAE,WAClB,aAAa,gBACb,UAAU,GACR,UAAU,CAmCtB;AAoBD;;;;;GAKG;AACH,iCALW,GAAG,eACH,UAAU,YACV,aAAa,GACX;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAc/B;AA/nBD,8BAA8B;AAC9B,4BADiB,SAAS;IA0BxB;;;;OAIG;IACH,0BAJW,SAAS,GAAC,SAAS,OACnB,MAAM,GAAC,GAAG,EAAE,GACV,SAAS,CAOrB;IAlCD;;;OAGG;IACH,iBAHW,MAAM,GAAC,GAAG,EAAE,UACZ,SAAS,GAAC,SAAS,EAK7B;IAFC,oBAAc;IACd,wDAAoB;IAGtB;;;OAGG;IACH,cAHW,MAAM,GAAC,GAAG,EAAE,GACV,OAAO,CAWnB;CAaF;sBA7F2B,YAAY"}