Update should to the latest version 🚀 #71
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Version 12.0.0 of should just got published.
The version 12.0.0 is not covered by your current version range.
Without accepting this pull request your project will work just like it did before. There might be a bunch of new features, fixes and perf improvements that the maintainers worked on for you though.
I recommend you look into these changes and try to get onto the latest version of should.
Given that you have a decent test suite, a passing build is a strong indicator that you can take advantage of these changes by merging the proposed change into your project. Otherwise this branch is a great starting point for you to work on the update.
Release Notes
Better Map Set equalityMap/Set/WeakMap/WeakSet equality checks
User @BridgeAR pointed to a number of bugs and inconcistency in Map/Set/WeakMap/WeakSet checks. To fix all this things, i switched map and set equality checks to do key checks defined in standard instead of value checks.
Typical example that was working before this release:
And not this example is breaking. At first view it is a bit unclear why it should not be so. Consider another example:
This example is not that clear if it should assert or not, right? (it should).
As Map and Set (as their weak equavalents) allows to use any type value/ref as key, perfectly equal by value (what should.js do) {} and {} is not equal by reference. In should.js i am always trying to limit users to do not shoot themselfs in their foots and just do right thing if possible and when possible. That is why both examples will throw assertions starting 12.0.0.
Consistency in bundles
For the long time (probably several years now) browser bundle and node bundle has little differences in globals.
To make them sync i am doing such changes to bundles:
window.Shouldany more (with capital S). It was deprecated for the long time. Just usewindow.shouldas is.global.shouldto be should function instead of getter attached toObject.prototype.Commits
The new version differs by 12 commits.
52dc121Release 12.0.06c1e6bdPrettier all6114e76Update years670df30Merge branch 'master' of github.com:shouldjs/should.jsecf8033Update toolse4d0accNormalize entry pointsf4adabbSet zuul to use 2 last versions of browsers8114b5dMerge pull request #143 from isayme/issue/aboveOrEqual-belowOrEqual02ec6a0fix error message for aboveOrEqual & belowOrEqual031888eMerge pull request #140 from carldunham/feature/cd/add-equals-eqls1e4909bAdd for readability: equals, eqls4a53d94Release 11.2.1See 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 🌴