Socket
Socket
Sign inDemoInstall

0x

Package Overview
Dependencies
Maintainers
2
Versions
123
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

0x - npm Package Compare versions

Comparing version 4.5.0 to 4.5.1

32

lib/random-require.js
'use strict'
// Initialize console
console.log // eslint-disable-line no-unused-expressions
Error.stackTraceLimit = Infinity
throw new Error('Load phase')
Error.stackTraceLimit = Infinity;
try {
throw new Error();
} catch (err) {
process.nextTick(() => {
Error.stackTraceLimit = 2;
try {
throw new Error();
} catch (innerErr) {
const filterNextTick = innerErr.stack.split('\n')[2].match(/ \(.+?:/g)[0].slice(2);
const stacks = err.stack
.match(/ \(.+?:/g)
.map((e) => e.slice(2))
// Filter Everything that has nothing to do with Node core and next
// ticks.
.filter((e) => e[0] !== '/' && e[0] !== '\\' && e !== filterNextTick);
let regExpStr = '';
let separator = '';
for (const frame of new Set(stacks)) {
regExpStr += `${separator} ${frame.replace(/\\/g, '\\\\').replace(/\./g, '\\.')}\\d+:\\d+`;
separator = '|';
}
regExpStr += '$';
console.log(regExpStr);
}
});
}

24

lib/ticks-to-tree.js

@@ -6,2 +6,3 @@ 'use strict'

const debug = require('debug')('0x: ticks-to-tree')
const assert = require('assert')

@@ -32,19 +33,12 @@ const preloadDirRx = RegExp(join(__dirname, 'preload'))

// Then create a regular expression that matches all those files.
let childStderr = spawnSync(pathToNodeBinary, ['--experimental-modules', join(__dirname, 'loading-stacks')]).stderr.toString()
if (childStderr.includes('--experimental-modules')) {
const stackArgs = ['--experimental-modules', '--no-warnings', join(__dirname, 'loading-stacks')]
let stackChild = spawnSync(pathToNodeBinary, stackArgs)
if (stackChild.stderr.toString().includes('--experimental-modules')) {
// Future proof to make sure it works even if the `experimental-modules` flag is removed.
childStderr = spawnSync(pathToNodeBinary, [join(__dirname, 'loading-stacks')])
stackArgs.shift()
stackChild = spawnSync(pathToNodeBinary, stackArgs)
}
const stacks = childStderr
.match(/ \(.+?:/g)
.map((e) => e.slice(2))
.filter((e) => e[0] !== '/' && e[0] !== '\\')
let regExpStr = '('
let separator = ''
for (const frame of new Set(stacks)) {
regExpStr += `${separator} ${frame.replace(/\\/g, '\\\\').replace(/\./g, '\\.')}\\d+:\\d+`
separator = '|'
}
regExpStr += ')$'
const regExp = new RegExp(regExpStr)
const stackRegExpStr = stackChild.stdout.toString()
assert(stackRegExpStr)
const regExp = new RegExp(stackRegExpStr)

@@ -51,0 +45,0 @@ ticks.forEach((stack) => {

{
"name": "0x",
"version": "4.5.0",
"version": "4.5.1",
"description": "🔥 single-command flamegraph profiling 🔥",

@@ -5,0 +5,0 @@ "main": "index.js",

SocketSocket SOC 2 Logo

Product

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

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc