GithubHelp home page GithubHelp logo

is-equal's Introduction

is-equal Version Badge

github actions coverage dependency status dev dependency status License Downloads

npm badge

Are these two values conceptually equal?

Example

var isEqual = require('is-equal');
var assert = require('assert');

var primitives = [true, false, undefined, 42, 'foo'];
primitives.forEach(function (primitive) {
	assert.equal(isEqual(primitive, primitive), true);
});
assert.equal(isEqual(/a/g, /a/g), true);
assert.equal(isEqual(/a/g, new RegExp('a', 'g')), true);
assert.equal(isEqual({ a: 2 }, { a: 2 }), true);
assert.equal(isEqual([1, [2, 3], 4], [1, [2, 3], 4]), true);
var timestamp = Date.now();
assert.equal(isEqual(new Date(timestamp), new Date(timestamp)), true);

Want to know why two values are not equal?

Will return an empty string if isEqual would return true - otherwise will return a non-empty string that hopefully explains the reasoning.

var whyNotEqual = require('is-equal/why');

assert.equal(whyNotEqual(1, 1), '');
assert.equal(
  whyNotEqual({ a: 1 }, { a: 2 }),
  'value at key "a" differs: numbers are different: 1 !== 2'
);

Tests

Simply clone the repo, npm install, and run npm test

is-equal's People

Contributors

arasmussen avatar chalker avatar jmm avatar karlhorky avatar ljharb avatar r0mflip avatar riophae avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

is-equal's Issues

An in-range update of make-arrow-function is breaking the build 🚨

The devDependency make-arrow-function was updated from 1.1.0 to 1.2.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

make-arrow-function is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details

Commits

The new version differs by 55 commits.

  • df9f516 v1.2.0
  • a2dbb15 [Tests] use shared travis-ci configs
  • c03306f [meta] add funding field
  • 98573fe [meta] add auto-changelog
  • 5620d1b [actions] add automatic rebasing / merge commit blocking
  • 5907bd2 [Dev Deps] update eslint, @ljharb/eslint-config, tape; add safe-publish-latest
  • 42b5df9 [Tests] up to node v12.11, v11.15, v10.16, v8.16, v6.17
  • 92245fc [Tests] use npx aud instead of nsp or npm audit with hoops
  • 5c202b1 [Dev Deps] update eslint, @ljharb/eslint-config, tape
  • 2ce975f [Dev Deps] update eslint, @ljharb/eslint-config, covert, tape
  • 47362d9 [Tests] remove jscs
  • 34b329f [Tests] use npm audit instead of nsp
  • 121cd07 [Breaking] add more complex arrow functions to the list, with non-simple parameter lists
  • 2377184 [Dev Deps] update eslint
  • bda106c [Tests] up to node v11.1, v10.13, v9.11, v8.12, v6.14, v4.9; use nvm install-latest-npm

There are 55 commits in total.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of eslint is breaking the build 🚨

Version 4.11.0 of eslint was just published.

Branch Build failing 🚨
Dependency eslint
Current Version 4.10.0
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

eslint is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push The Travis CI build could not complete due to an error Details

Release Notes v4.11.0
  • d4557a6 Docs: disallow use of the comma operator using no-restricted-syntax (#9585) (薛定谔的猫)
  • d602f9e Upgrade: espree v3.5.2 (#9611) (Kai Cataldo)
  • 4def876 Chore: avoid handling rules instances in config-validator (#9364) (Teddy Katz)
  • fe5ac7e Chore: fix incorrect comment in safe-emitter.js (#9605) (Teddy Katz)
  • 6672fae Docs: Fixed a typo on lines-between-class-members doc (#9603) (Moinul Hossain)
  • 980ecd3 Chore: Update copyright and license info (#9599) (薛定谔的猫)
  • cc2c7c9 Build: use Node 8 in appveyor (#9595) (薛定谔的猫)
  • 2542f04 Docs: Add missing options for lines-around-comment (#9589) (Clément Fiorio)
  • b6a7490 Build: ensure fuzzer tests get run with npm test (#9590) (Teddy Katz)
  • 1073bc5 Build: remove shelljs-nodecli (refs #9533) (#9588) (Teddy Katz)
  • 7e3bf6a Fix: edge-cases of semi-style (#9560) (Toru Nagashima)
  • e5a37ce Fix: object-curly-newline for flow code (#9458) (Tiddo Langerak)
  • 9064b9c Chore: add equalTokens in ast-utils. (#9500) (薛定谔的猫)
  • b7c5b19 Fix: Correct [object Object] output of error.data. (#9561) (Jonathan Pool)
  • 51c8cf0 Docs: Disambiguate definition of Update tag (#9584) (Jonathan Pool)
  • afc3c75 Docs: clarify what eslint-config-eslint is (#9582) (Teddy Katz)
  • aedae9d Docs: fix spelling in valid-typeof example (#9574) (Maksim Degtyarev)
  • 4c5aaf3 Docs: Fix typo in no-underscore-dangle rule (#9567) (Fabien Lucas)
  • 3623600 Chore: upgrade [email protected] (#9557) (薛定谔的猫)
  • 1b606cd Chore: Remove an indirect dependency on jsonify (#9444) (Rouven Weßling)
  • 4d7d7ab Update: Resolve npm installed formatters (#5900) (#9464) (Tom Erik Støwer)
  • accc490 Fix: Files with no failures get "passing" testcase (#9547) (Samuel Levy)
  • ab0f66d Docs: Add examples to better show rule coverage. (#9548) (Jonathan Pool)
  • 88d2303 Chore: Add object-property-newline tests to increase coverage. (#9553) (Jonathan Pool)
  • 7f37b1c Build: test Node 9 on Travis (#9556) (Teddy Katz)
  • acccfbd Docs: Minor rephrase in no-invalid-this. (#9542) (Francisc)
  • 8f9c0fe Docs: improve id-match usage advice (#9544) (Teddy Katz)
  • a9606a3 Fix: invalid tests with super (fixes #9539) (#9545) (Teddy Katz)
  • 8e1a095 Chore: enable a modified version of multiline-comment-style on codebase (#9452) (Teddy Katz)
  • cb60285 Chore: remove commented test for HTML formatter (#9532) (Teddy Katz)
  • 06b491e Docs: fix duplicate entries in changelog (#9530) (Teddy Katz)
  • 2224733 Chore: use eslint-plugin-rulesdir instead of --rulesdir for self-linting (#9164) (Teddy Katz)
  • 9cf4ebe Docs: add .md to link(for github users) (#9529) (薛定谔的猫)
Commits

The new version differs by 35 commits.

  • 1a9a6a5 4.11.0
  • ef4d268 Build: changelog update for 4.11.0
  • d4557a6 Docs: disallow use of the comma operator using no-restricted-syntax (#9585)
  • d602f9e Upgrade: espree v3.5.2 (#9611)
  • 4def876 Chore: avoid handling rules instances in config-validator (#9364)
  • fe5ac7e Chore: fix incorrect comment in safe-emitter.js (#9605)
  • 6672fae Docs: Fixed a typo on lines-between-class-members doc (#9603)
  • 980ecd3 Chore: Update copyright and license info (#9599)
  • cc2c7c9 Build: use Node 8 in appveyor (#9595)
  • 2542f04 Docs: Add missing options for lines-around-comment (#9589)
  • b6a7490 Build: ensure fuzzer tests get run with npm test (#9590)
  • 1073bc5 Build: remove shelljs-nodecli (refs #9533) (#9588)
  • 7e3bf6a Fix: edge-cases of semi-style (#9560)
  • e5a37ce Fix: object-curly-newline for flow code (#9458)
  • 9064b9c Chore: add equalTokens in ast-utils. (#9500)

There are 35 commits in total.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

use `files` property in package.json?

Looks like the npm package has some HTML files, test/ dir and a few others included, which add up to about 4MB to the install. Not a big deal but increases install time and disk space for downstream consumers.

Support for ES2015 Map/Set

Hey @ljharb!

From a quick scan of the source code, it doesn't look like you currently support ES2015 Map and/or Set objects (please correct me if I'm wrong) and I was wondering if you have any plans there. I'm currently using deep-equal to do equality comparisons in expect, but it doesn't look like they're keen to support them because they are only interested in comparing public API. But I thought you might be interested in supporting them since you're going for "conceptual equality".

Also, does this library work well with circular references?

If you do, I think I could possibly make the switch and close these two issues :)

mjackson/expect#47
mjackson/expect#50

Thanks!

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Pending Approval

These branches will be created by Renovate only once you click their checkbox below.

  • [Deps] Update Update all non-major dependencies (eslint, make-arrow-function)
  • [Deps] Update Update eslint to v9
  • [Deps] Update Update nyc to v15
  • 🔐 Create all pending approval PRs at once 🔐

Detected dependencies

github-actions
.github/workflows/node-aught.yml
.github/workflows/node-pretest.yml
.github/workflows/node-tens.yml
.github/workflows/rebase.yml
.github/workflows/require-allow-edits.yml
npm
package.json
  • es-get-iterator ^1.1.3
  • es-to-primitive ^1.2.1
  • functions-have-names ^1.2.3
  • has-bigints ^1.0.2
  • has-symbols ^1.0.3
  • hasown ^2.0.0
  • is-arrow-function ^2.0.3
  • is-bigint ^1.0.4
  • is-boolean-object ^1.1.2
  • is-callable ^1.2.7
  • is-date-object ^1.0.5
  • is-generator-function ^1.0.10
  • is-number-object ^1.0.7
  • is-regex ^1.1.4
  • is-string ^1.0.7
  • is-symbol ^1.0.4
  • isarray ^2.0.5
  • object-inspect ^1.13.1
  • object.entries ^1.1.7
  • object.getprototypeof ^1.0.5
  • which-boxed-primitive ^1.0.2
  • which-collection ^1.0.1
  • @ljharb/eslint-config ^21.1.0
  • aud ^2.0.3
  • auto-changelog ^2.4.0
  • core-js ^2.6.5 || ^3.16.0
  • es-value-fixtures ^1.4.2
  • es6-shim ^0.35.8
  • eslint =8.8.0
  • for-each ^0.3.3
  • in-publish ^2.0.1
  • make-arrow-function ~1.1.0
  • npmignore ^0.3.0
  • nyc ^10.3.2
  • object.assign ^4.1.4
  • safe-publish-latest ^2.0.0
  • tape ^5.7.2
  • node >= 0.4

  • Check this box to trigger a request for Renovate to run again on this repository

An in-range update of is-generator-function is breaking the build 🚨

Version 1.0.5 of is-generator-function just got published.

Branch Build failing 🚨
Dependency is-generator-function
Current Version 1.0.3
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

As is-generator-function is a direct dependency of this project this is very likely breaking your project right now. If other packages depend on you it’s very likely also breaking them.
I recommend you give this issue a very high priority. I’m sure you can resolve this 💪


Status Details
  • continuous-integration/travis-ci/push The Travis CI build failed Details
Commits

The new version differs by 38 commits .

  • 81e9ada v1.0.5
  • 0d0837f [Tests] improve test matrix
  • 3e6b860 [Tests] use pretest/posttest for linting/security
  • 3a3a52b [Fix] account for Safari 10 which reports the wrong toString on generator functions.
  • 9d4d7ac [Refactor] remove useless Object#toString check.
  • 6523655 [Dev Deps] update tape, jscs, eslint, @ljharb/eslint-config, semver, nsp
  • 1754eae [Dev Deps] update tape, jscs, eslint, @ljharb/eslint-config
  • aaab6c3 [Dev Deps] update tape, jscs, eslint, @ljharb/eslint-config, semver, nsp
  • c43c5ad [Tests] up to io.js v3.3, node v4.1
  • beb3bfe Latest node now supports generators.
  • c6e6587 [Dev Deps] update tape
  • e24641c [Dev Deps] update jscs
  • 0039875 Switch from vb.teelaun.ch to versionbadg.es for the npm version badge SVG.
  • 34673b8 [Dev Deps] Update tape, eslint
  • e195030 Test on io.js v3.0

There are 38 commits in total. See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

Can we try object.toString before Object.prototype.toString?

Running into the following issue when comparing MongoDB ObjectIds:

import mongoose from 'mongoose';

const foo = mongoose.Types.ObjectId(123);
const bar = mongoose.Types.ObjectId(456);

Object.prototype.toString(foo); // '[Object object]'
foo.toString(); // '000001c81ce7420101e4238e'

Object.keys(foo); // []

isEqual(foo, bar); // true

npm versions:

mongoose: ^6.12.0
mongodb: ^4.17.0
expect: ^1.20.2

expect uses is-equal: ^1.5.1, so pushing 1.6.5 would resolve this issue. Happy to submit a PR! Just want to know if it'd be approved.

Syntax error with which-collection dependency in 1.6.1

I'm not sure if I'm diagnosing this correctly, but [email protected] adds a dependency on which-collection, which causes a syntax problem for me when I try to run tests under nwb:

 ERROR  in ./node_modules/is-weakmap/index.js 12:1
Module parse failed: 'return' outside of function (12:1)
You may need an appropriate loader to handle this file type.
| 		return false;
| 	};
> 	return;
| }
|
 @ ./node_modules/which-collection/index.js 5:16-37
 @ ./node_modules/is-equal/why.js
 @ ./node_modules/expect/lib/TestUtils.js
 @ ./node_modules/expect/lib/SpyUtils.js
 @ ./node_modules/expect/lib/index.js

The real fix might be at a lower level, in which-collection... or it might be at a higher level in nwb... but for me, a simple fix was to pin is-equal to 1.6.0. Perhaps remove that dependency from this package until that package is stable? I'm not sure.

Typescript definition

Hi, thanks for the library!

It'd be really nice to have TS support with maybe just a d.ts file

Otherwise when using that library within a ts project with the option no implicit any we get an error:

Could not find a declaration file for module 'is-equal'. './node_modules/is-equal/index.js' implicitly has an 'any' type.
      Try `npm install @types/is-equal` if it exists or add a new declaration (.d.ts) file containing `declare module 'is-equal';`

An in-range update of nsp is breaking the build 🚨

Version 2.7.0 of nsp just got published.

Branch Build failing 🚨
Dependency nsp
Current Version 2.6.3
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As nsp is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this 💪

Status Details
  • continuous-integration/travis-ci/push The Travis CI build could not complete due to an error Details

Commits

The new version differs by 13 commits.

  • e88fb8a 2.7.0
  • f207e03 fix package.json so things actually work
  • 11d5635 Merge pull request #178 from nodesecurity/quiet-flag
  • cf32c95 remove unused code
  • 5ee23ec Merge pull request #164 from dblandin/devon/update-dockerfile
  • c41e59d Pick Lint
  • a9491bd Add quiet to --output usage
  • 215432f add quiet output
  • c20afb3 drone config
  • d9ba63b Update Dockerfile
  • 73c321d Merge pull request #158 from koresar/patch-1
  • 904dc3e Make sure the table width is a minimum width
  • da2b275 Fix nsp CLI crash in the no window (CI) envs

See the full diff

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

Comparing objects with cycles

var isEqual = require("is-equal");

var a = {};
var b = {};
a.x = {y: a};
b.x = {y: b};

console.log(isEqual(a, b));

I get RangeError: Maximum call stack size exceeded

Delegate to equals method on object if it exists

I'm using expect in my tests which uses is-equal to determine if two objects are equal. The two objects I'm comparing can be unequal from a member standpoint, but equal from a conceptual standpoint. I have defined a method equals on my object that compares them conceptually.

is-equal will determine that two conceptually equal objects are unequal. I would like to be able to write expect(object1).toEqual(object2);, but instead I have to write expect(object1.equals(object2)).toBeTruthy();. This doesn't produce a useful error message since it only talks about boolean values.

It would be nice if is-equal would delegate to an existing equals method if it existed. Different conventions might exist for the name of such a method, so maybe something like a global method within is-equal that could be called before running tests to set the name of an equals method if there is one.

An in-range update of eslint is breaking the build 🚨

The devDependency eslint was updated from 5.15.2 to 5.15.3.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

eslint is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build could not complete due to an error (Details).

Release Notes for v5.15.3
  • 71adc66 Fix: avoid moving comments in implicit-arrow-linebreak (fixes #11521) (#11522) (Teddy Katz)
  • 1f715a2 Chore: make test-case-property-ordering reasonable (#11511) (Toru Nagashima)
Commits

The new version differs by 4 commits.

  • a6168f8 5.15.3
  • cb57316 Build: changelog update for 5.15.3
  • 71adc66 Fix: avoid moving comments in implicit-arrow-linebreak (fixes #11521) (#11522)
  • 1f715a2 Chore: make test-case-property-ordering reasonable (#11511)

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

Action required: Greenkeeper could not be activated 🚨

🚨 You need to enable Continuous Integration on Greenkeeper branches of this repository. 🚨

To enable Greenkeeper, you need to make sure that a commit status is reported on all branches. This is required by Greenkeeper because it uses your CI build statuses to figure out when to notify you about breaking changes.

Since we didn’t receive a CI status on the greenkeeper/initial branch, it’s possible that you don’t have CI set up yet.
We recommend using:

If you have already set up a CI for this repository, you might need to check how it’s configured. Make sure it is set to run on all new branches. If you don’t want it to run on absolutely every branch, you can whitelist branches starting with greenkeeper/.

Once you have installed and configured CI on this repository correctly, you’ll need to re-trigger Greenkeeper’s initial pull request. To do this, please click the 'fix repo' button on account.greenkeeper.io.

Equality comparisons of arrays with objects fail

Using version 1.4.1:

let arr1 = [
  {
    id: 0,
    text: 'Array Object 0',
    boo: false
  },
  {
    id: 1,
    text: 'Array Object 1',
    boo: false
  }
];

let arr2 = [
  {
    id: 0,
    text: 'Array Object 0',
    boo: true // value of boo is changed to true here
  },
  {
    id: 1,
    text: 'Array Object 1',
    boo: false
  }
];

isEqual(arr1, arr2); // true

See also mjackson/expect#53

An in-range update of core-js is breaking the build 🚨

The devDependency core-js was updated from 2.6.0 to 2.6.1.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

core-js is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build failed (Details).

Release Notes for 2.6.1 - 2018.12.18
  • Fixed an issue with minified version, #463, #465
Commits

The new version differs by 3 commits.

  • a5def74 2.6.1
  • 3866e96 Merge pull request #465 from nicolo-ribaudo/fix-regression-463
  • af4a972 Fix bug #463

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

Is there a reason behind keeping redundant code?

Correct me if I am wrong, but once you get to this point in the code, aren't you guaranteed that the source and target are both the same data type, on account of comparing the internal class names?

if (!valIsBool) { return 'first argument is not a boolean; second argument is'; }
if (!otherIsBool) { return 'second argument is not a boolean; first argument is'; }

// ...

if (!valIsNumber) { return 'first argument is not a number; second argument is'; }
if (!otherIsNumber) { return 'second argument is not a number; first argument is'; }

If this is an oversight, then would you like me to submit a PR?

An in-range update of tape is breaking the build 🚨

Version 4.9.1 of tape was just published.

Branch Build failing 🚨
Dependency tape
Current Version 4.9.0
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

tape is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push The Travis CI build could not complete due to an error Details

Commits

The new version differs by 10 commits.

  • 050b318 v4.9.1
  • 73232c0 [Dev Deps] update js-yaml
  • 8a2d29b [Deps] update has, for-each, resolve, object-inspect
  • c6f5313 [Tests] add eclint and eslint, to enforce a consistent style
  • 45788a5 [Dev Deps] update concat-stream
  • ec4a71d [fix] Fix bug in functionName regex during stack parsing
  • 7261ccc Merge pull request #433 from mcnuttandrew/add-trb
  • 6cbc53e Add tap-react-browser
  • 9d501ff [Dev Deps] use ~ for dev deps; update to latest nonbreaking
  • 24e0a8d Fix spelling of "parameterize"

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

Object.create(null) is not equal to {}—Feature or bug?

Seems like a bug to me:

isEqual({}, {}) // → true
isEqual(Object.create(null), Object.create(null)) // → true

// Would expect true, as well
isEqual({}, Object.create(null)) // → false
isEqual(Object.create(null), {}) // → false

The use-case is that querystring.parse returns an object created with Object.create(null). And in my test I've been using {}.

Don't check for [[Prototype]] equality

IMO Object.create(null) and {} are conceptually equal. i.e. both are empty objects. I've run into this issue a few times this week.

The first was when I was upgrading then-redis to use the latest redis, which recently switched to using Object.create(null) as the prototype for objects returned from HGETALL operations. Some of my tests were doing expect(result).toEqual({ some: 'stuff' }).

The second case was earlier today when I was trying to upgrade expect to use the latest query-string (see remix-run/history#268). Like redis, they recently switched to returning an Object.create(null) from a parse of an empty query string.

Anyway, one of the main reasons I was attracted to using is-equal to power equality assertions in expect was because the project description says this library checks for conceptual equality, not exact. Conceptually, both Object.create(null) and {} are both empty objects. And in both of the practical instances I've mentioned above that's how Object.create(null) is being used.

An in-range update of tape is breaking the build 🚨

The devDependency tape was updated from 4.10.2 to 4.11.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

tape is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build could not complete due to an error (Details).

Release Notes for v4.11.0
  • [New] Add descriptive messages for skipped asserts (#476)
  • [Fix] emit skipped tests as objects (#473)
  • [Refactor] use !! over Boolean()
  • [meta] clean up license so github can detect it
  • [Deps] update inherits, resolve
  • [Tests] add tests for 'todo' exit codes (#471)
Commits

The new version differs by 8 commits.

  • 2b5046e v4.11.0
  • 9526c2e [Deps] update inherits, resolve
  • 32b5948 [Refactor] use !! over Boolean()
  • 838d995 [New] Add descriptive messages for skipped asserts
  • 861cf55 [meta] clean up license so github can detect it
  • 8d5dc2f [Fix] emit skipped tests as objects
  • a5006ce [lint] enforce consistent semicolon usage
  • c6c4ace [Tests] add tests for 'todo' exit codes

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

1.6.2 tests don't start (project create with nwb)

Hi, I created a react project using nwb. After upgrading is-equal from 1.6.1 to 1.6.2, my tests now fail without running anything with:

> nwb test-react


START:
08 09 2021 16:07:59.760:INFO [karma-server]: Karma v5.0.9 server started at http://0.0.0.0:9876/
08 09 2021 16:07:59.762:INFO [launcher]: Launching browsers ChromeHeadless with concurrency unlimited
08 09 2021 16:07:59.765:INFO [launcher]: Starting browser ChromeHeadless
08 09 2021 16:08:01.159:INFO [Chrome Headless 93.0.4577.0 (Linux x86_64)]: Connected on socket IQeKSGKrg5KIMm-WAAAA with id 21371944
Chrome Headless 93.0.4577.0 (Linux x86_64) ERROR
  Uncaught TypeError: getPolyfill is not a function
  at webpack:///node_modules/reflect.getprototypeof/index.js:10:1 <- src/components/TopBar/TopBar.test.js:115258:22
  
  TypeError: getPolyfill is not a function
      at Object../node_modules/reflect.getprototypeof/index.js (webpack:///node_modules/reflect.getprototypeof/index.js:10:1 <- src/components/TopBar/TopBar.test.js:115258:22)
      at __webpack_require__ (webpack:///webpack/bootstrap:19:1 <- src/components/TopBar/TopBar.test.js:20:30)
      at Object../node_modules/object.getprototypeof/implementation.js (webpack:///node_modules/object.getprototypeof/implementation.js:5:1 <- src/components/TopBar/TopBar.test.js:64550:29)
      at __webpack_require__ (webpack:///webpack/bootstrap:19:1 <- src/components/TopBar/TopBar.test.js:20:30)
      at Module../node_modules/object.getprototypeof/implementation.mjs (webpack:///node_modules/object.getprototypeof/implementation.mjs:1:1 <- src/components/TopBar/TopBar.test.js:64569:76)
      at __webpack_require__ (webpack:///webpack/bootstrap:19:1 <- src/components/TopBar/TopBar.test.js:20:30)
      at Object../node_modules/object.getprototypeof/polyfill.js (webpack:///node_modules/object.getprototypeof/polyfill.js:4:1 <- src/components/TopBar/TopBar.test.js:64592:22)
      at __webpack_require__ (webpack:///webpack/bootstrap:19:1 <- src/components/TopBar/TopBar.test.js:20:30)
      at Module../node_modules/object.getprototypeof/polyfill.mjs (webpack:///node_modules/object.getprototypeof/polyfill.mjs:1:1 <- src/components/TopBar/TopBar.test.js:64635:70)
      at __webpack_require__ (webpack:///webpack/bootstrap:19:1 <- src/components/TopBar/TopBar.test.js:20:30)

Finished in 0.639 secs / 0 secs @ 16:08:01 GMT+0200 (heure d’été d’Europe centrale)

SUMMARY:
✔ 0 tests completed
Karma exit code was 1
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR!  test: `nwb test-react`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the  test script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/harperjon/.npm/_logs/2021-09-08T14_08_01_961Z-debug.log

reverting to 1.6.1 works for me, but I would like to keep my dependencies up to date. Do you have any idea of what might be happening ? Looking at the given lines in node modules, when I add a console.log to what getPolyfill is, I get:
node_modules/reflect.getprototypeof/index.js

var getPolyfill = require('./polyfill');
+ console.log(getPolyfill);
Chrome Headless 93.0.4577.0 (Linux x86_64) LOG: Object{then: function then(resolve) { ... }, default: function getPolyfill() { ... }}

Not sure what to do from there.

Thanks in advance.

An in-range update of is-callable is not breaking the build 🚨

Version 1.1.4 of is-callable was just published.

Branch Build failing 🚨
Dependency is-callable
Current Version 1.1.3
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

is-callable is a direct dependency of this project, and it is very likely causing it to break. If other packages depend on yours, this update is probably also breaking those in turn.

Status Details
  • continuous-integration/travis-ci/push The Travis CI build could not complete due to an error Details

Commits

The new version differs by 109 commits.

  • a20050a v1.1.4
  • 660b952 [Fix] class detection: Remove useless comment stripping
  • e01dccd [Fix] fix class detection
  • fb50bfe [Dev Deps] update tape
  • 33c090d [Fix] improve class and arrow function detection
  • 48870c4 [Tests] on node v10.4
  • 5e5d759 [Tests] on node v10.3
  • 807018e [Tests] on node v10.2
  • 254665f [Tests] on node v10.1
  • f58a51e [Dev Deps] update eslint, nsp, semver, tape
  • 6e3d4d5 [Tests] on node v10
  • 6fb3fbe [Tests] old npm certificates are no longer trusted
  • b1f3bd2 [Tests] up to node v9.10, v8.11, v6.14, v4.9
  • d951901 [Tests] add node v9.9
  • 760a0be [Tests] on node v9.8, v8.10

There are 109 commits in total.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of tape is breaking the build 🚨

Version 4.7.0 of tape just got published.

Branch Build failing 🚨
Dependency tape
Current Version 4.6.3
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As tape is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this 💪

Status Details
  • continuous-integration/travis-ci/push The Travis CI build could not complete due to an error Details

Commits

The new version differs by 19 commits.

  • 1d0df26 v4.7.0
  • 51597e2 Merge pull request #374 from feross/master
  • b06f914 [Refactor] instead of throwing on undefined.forEach, throw explicitly.
  • dd93216 [Fix] fix spurious "test exited without ending"
  • 1a8e936 [Deps] update glob, resolve
  • 7eb9e36 [Dev Deps] update falafel, js-yaml
  • e030260 [Tests] on node v8; no need for sudo; v0.8 passes now; allow v5/v7/iojs to fail.
  • 4375661 [Tests] npm v5+ breaks on node < v4
  • df48bfa Only apps should have lock files.
  • 35e47e1 [Tests] npm v4.6+ breaks on node < v1
  • dc1ffa5 [Deps] update object-inspect
  • 66519cb [Deps] update resolve
  • e6d4625 [Dev Deps] update concat-stream, js-yaml
  • bdf2b04 tap-min moved to derhuerst/tap-min
  • 8b3a77e [Tests] fix thrower stack in node 0.8

There are 19 commits in total.

See the full diff

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

An in-range update of make-generator-function is breaking the build 🚨

The devDependency make-generator-function was updated from 1.1.0 to 1.1.1.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

make-generator-function is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details

Commits

The new version differs by 47 commits.

  • 21857d7 v1.1.1
  • 89ca6b8 [Dev Deps] update eslint, @ljharb/eslint-config, tape
  • 73dba5c [Tests] use shared travis-ci configs
  • 672196a [meta] add auto-changelog
  • 293f453 [meta] add funding field
  • 2b0632e [actions] add automatic rebasing / merge commit blocking
  • 1085b97 [Dev Deps] update eslint, @ljharb/eslint-config, tape; add safe-publish-latest
  • 97c87a3 [Tests] up to node v12.10, v11.15, v10.16, v8.16, v6.17
  • eed2fad [Tests] use eclint instead of editorconfig-tools
  • 3b01ae8 [Tests] use npx aud instead of nsp or npm audit with hoops
  • 498a056 [Dev Deps] update eslint, @ljharb/eslint-config, covert, tape
  • c159ff4 [Tests] up to node v11.7, v10.15, v9.11, v8.15, v6.16, v4.9
  • be8e5d2 [Tests] use npm audit instead of nsp
  • 4c9100c [Tests] remove jscs
  • 43665f5 [Dev Deps] update nsp, eslint

There are 47 commits in total.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of @ljharb/eslint-config is breaking the build 🚨

The devDependency @ljharb/eslint-config was updated from 13.0.0 to 13.1.0.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

@ljharb/eslint-config is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build failed (Details).

Commits

The new version differs by 5 commits.

  • 2dd67e5 v13.1.0
  • 34a402a [Minor] update config and require eslint v5.11
  • fd1f310 [Dev Deps] update eslint, replace, safe-publish-latest, semver
  • 2d1a944 [Tests] use npm audit instead of nsp
  • a02c14b [Tests] up to node v11.6, v10.15, v8.15, v6.16

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of replace is breaking the build 🚨

The devDependency replace was updated from 1.0.0 to 1.0.1.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

replace is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build failed (Details).

Commits

The new version differs by 2 commits.

  • 86fc01b Merge pull request #1 from bnjmnt4n/yargs
  • 4d1c5bf Replace nomnom with yargs.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of semver is breaking the build 🚨

Version 5.4.0 of semver just got published.

Branch Build failing 🚨
Dependency semver
Current Version 5.3.0
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As semver is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this 💪

Status Details
  • continuous-integration/travis-ci/push The Travis CI build could not complete due to an error Details

Commits

The new version differs by 16 commits.

  • e1c49c8 v5.4.0
  • 3ebc11d more test coverage
  • 5b30513 speed up tests a lot, add coverage
  • e1668ce add top level intersects function
  • 6cb2bcb intersection: use semver.version, not semver.raw
  • 4bacbfa Make exposed apis more clear
  • 8b86a26 Reduce line length and remove unused platform parameter
  • 99f133e Add range and comparator intersection docs to README
  • afbe8ca Move methods to comparator and range
  • 67c9ed7 Add support for range and comparators comparison
  • caeeac4 remove 0.x from Travis, cache npm stuff, use containers
  • bdda1a4 Add Node.js 8 to .travis.yml
  • 8fff305 Add node 6 to travis
  • aaba710 Added syntax highlighting to readme example
  • 32802c5 minimize heap allocations for maxSatisfying/minSatisfying

There are 16 commits in total.

See the full diff

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

Version 10 of node.js has been released

Version 10 of Node.js (code name Dubnium) has been released! 🎊

To see what happens to your code in Node.js 10, Greenkeeper has created a branch with the following changes:

  • Added the new Node.js version to your .travis.yml
  • The new Node.js version is in-range for the engines in 1 of your package.json files, so that was left alone

If you’re interested in upgrading this repo to Node.js 10, you can open a PR with these changes. Please note that this issue is just intended as a friendly reminder and the PR as a possible starting point for getting your code running on Node.js 10.

More information on this issue

Greenkeeper has checked the engines key in any package.json file, the .nvmrc file, and the .travis.yml file, if present.

  • engines was only updated if it defined a single version, not a range.
  • .nvmrc was updated to Node.js 10
  • .travis.yml was only changed if there was a root-level node_js that didn’t already include Node.js 10, such as node or lts/*. In this case, the new version was appended to the list. We didn’t touch job or matrix configurations because these tend to be quite specific and complex, and it’s difficult to infer what the intentions were.

For many simpler .travis.yml configurations, this PR should suffice as-is, but depending on what you’re doing it may require additional work or may not be applicable at all. We’re also aware that you may have good reasons to not update to Node.js 10, which is why this was sent as an issue and not a pull request. Feel free to delete it without comment, I’m a humble robot and won’t feel rejected 🤖


FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of auto-changelog is breaking the build 🚨


☝️ Important announcement: Greenkeeper will be saying goodbye 👋 and passing the torch to Snyk on June 3rd, 2020! Find out how to migrate to Snyk and more at greenkeeper.io


The devDependency auto-changelog was updated from 1.16.2 to 1.16.3.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

auto-changelog is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details

Commits

The new version differs by 4 commits.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

Set and Map only works in order

Right now a equal set with elements not in order are considered to be unequal. But a set and map in general is not sorted and should work in what ever order.

const a = new Set([1, 2])
const b = new Set([2, 1])
equal(a, b) // false

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.