+4
CHANGELOG.md
+4
CHANGELOG.md
···
291
291
bit array segment on the JavaScript target.
292
292
([Surya Rose](https://github.com/GearsDatapacks))
293
293
294
+
- Fixed a bug where `==` and `!=` would return incorrect output for some
295
+
JavaScript objects.
296
+
([Louis Pilfold](https://github.com/lpil))
297
+
294
298
## v1.11.1 - 2025-06-05
295
299
296
300
### Compiler
+1
-1
compiler-core/src/javascript.rs
+1
-1
compiler-core/src/javascript.rs
+4
-1
compiler-core/templates/prelude.mjs
+4
-1
compiler-core/templates/prelude.mjs
+14
test/javascript_prelude/main.mjs
+14
test/javascript_prelude/main.mjs
···
422
422
new Map([["a", new Map([["a", []]])]]),
423
423
);
424
424
425
+
assertNotEqual(new Map([]), new Map([["b", 1]]));
426
+
425
427
// Sets are compared structurally
426
428
let set = new Set(["a", 1]);
427
429
assertEqual(set, set);
···
531
533
// custom equals defined on object instead of prototype, don't use it
532
534
assertEqual(hasEqualsField, { ...hasEqualsField });
533
535
assertNotEqual(hasEqualsField, hasEqualsField2);
536
+
537
+
// Objects
538
+
assertEqual({ a: 1 }, { a: 1 });
539
+
assertEqual({ a: 1, b: 2 }, { b: 2, a: 1 });
540
+
541
+
assertEqual({ a: {} }, { a: {} });
542
+
assertEqual({ a: 1, b: { c: 3 } }, { a: 1, b: { c: 3 } });
543
+
544
+
assertNotEqual({ a: 1 }, {});
545
+
assertNotEqual({ a: 1, b: 2 }, { b: 2 });
546
+
assertNotEqual({}, { a: 1 });
547
+
assertNotEqual({ b: 2 }, { a: 1, b: 2 });
534
548
535
549
// BitArray
536
550