Socket
Socket
Sign inDemoInstall

istanbul-lib-instrument

Package Overview
Dependencies
55
Maintainers
4
Versions
74
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 5.1.0 to 5.2.0

7

CHANGELOG.md

@@ -6,2 +6,9 @@ # Change Log

## [5.2.0](https://github.com/istanbuljs/istanbuljs/compare/istanbul-lib-instrument-v5.1.0...istanbul-lib-instrument-v5.2.0) (2022-02-21)
### Features
* exclude Empty Object and Arrays in Truthy Detection ([#666](https://github.com/istanbuljs/istanbuljs/issues/666)) ([e279684](https://github.com/istanbuljs/istanbuljs/commit/e279684e735f4b7dbe2b632cde2515f6862099de))
## [5.1.0](https://www.github.com/istanbuljs/istanbuljs/compare/istanbul-lib-instrument-v5.0.4...istanbul-lib-instrument-v5.1.0) (2021-10-27)

@@ -8,0 +15,0 @@

2

package.json
{
"name": "istanbul-lib-instrument",
"version": "5.1.0",
"version": "5.2.0",
"description": "Core istanbul API for JS code coverage",

@@ -5,0 +5,0 @@ "author": "Krishnan Anantheswaran <kananthmail-github@yahoo.com>",

@@ -203,6 +203,3 @@ const { createHash } = require('crypto');

T.conditionalExpression(
T.memberExpression(
T.callExpression(T.identifier(this.varName), []),
T.identifier(tempName)
),
this.validateTrueNonTrivial(T, tempName),
this.increase(type, id, index),

@@ -219,2 +216,93 @@ T.nullLiteral()

validateTrueNonTrivial(T, tempName) {
return T.logicalExpression(
'&&',
T.memberExpression(
T.callExpression(T.identifier(this.varName), []),
T.identifier(tempName)
),
T.logicalExpression(
'&&',
T.parenthesizedExpression(
T.logicalExpression(
'||',
T.unaryExpression(
'!',
T.callExpression(
T.memberExpression(
T.identifier('Array'),
T.identifier('isArray')
),
[
T.memberExpression(
T.callExpression(
T.identifier(this.varName),
[]
),
T.identifier(tempName)
)
]
)
),
T.memberExpression(
T.memberExpression(
T.callExpression(
T.identifier(this.varName),
[]
),
T.identifier(tempName)
),
T.identifier('length')
)
)
),
T.parenthesizedExpression(
T.logicalExpression(
'||',
T.binaryExpression(
'!==',
T.callExpression(
T.memberExpression(
T.identifier('Object'),
T.identifier('getPrototypeOf')
),
[
T.memberExpression(
T.callExpression(
T.identifier(this.varName),
[]
),
T.identifier(tempName)
)
]
),
T.memberExpression(
T.identifier('Object'),
T.identifier('prototype')
)
),
T.memberExpression(
T.callExpression(
T.memberExpression(
T.identifier('Object'),
T.identifier('values')
),
[
T.memberExpression(
T.callExpression(
T.identifier(this.varName),
[]
),
T.identifier(tempName)
)
]
),
T.identifier('length')
)
)
)
)
);
}
insertCounter(path, increment) {

@@ -221,0 +309,0 @@ const T = this.types;

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc