New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@agoric/internal

Package Overview
Dependencies
Maintainers
5
Versions
1928
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@agoric/internal - npm Package Compare versions

Comparing version 0.2.0 to 0.2.1-dev-02af4a0.0

12

package.json
{
"name": "@agoric/internal",
"version": "0.2.0",
"version": "0.2.1-dev-02af4a0.0+02af4a0",
"description": "Externally unsupported utilities internal to agoric-sdk",

@@ -21,8 +21,8 @@ "type": "module",

"dependencies": {
"@endo/eventual-send": "^0.16.4",
"@endo/marshal": "^0.7.4",
"@endo/promise-kit": "^0.2.48"
"@endo/eventual-send": "^0.16.5",
"@endo/marshal": "^0.7.5",
"@endo/promise-kit": "^0.2.49"
},
"devDependencies": {
"@endo/init": "^0.5.48",
"@endo/init": "^0.5.49",
"ava": "^4.3.1"

@@ -38,3 +38,3 @@ },

},
"gitHead": "aadb33d87d1ecf97e68370e24432c7f04643ce0f"
"gitHead": "02af4a07ad1f99b545d0bf525bd1ea97d74639d1"
}

@@ -11,5 +11,31 @@ // @ts-check

const { details: X } = assert;
const { details: X, quote: q } = assert;
/**
* Throws if multiple entries use the same property name. Otherwise acts
* like `Object.fromEntries`. Use it to protect from property names
* computed from user-provided data.
*
* @template K,V
* @param {Iterable<[K,V]>} allEntries
* @returns {{[k: K]: V}}
*/
export const fromUniqueEntries = allEntries => {
const entriesArray = [...allEntries];
const result = fromEntries(entriesArray);
if (ownKeys(result).length === entriesArray.length) {
return result;
}
const names = new Set();
for (const [name, _] of entriesArray) {
if (names.has(name)) {
assert.fail(X`collision on property name ${q(name)}: ${entriesArray}`);
}
names.add(name);
}
assert.fail(X`internal: failed to create object from unique entries`);
};
harden(fromUniqueEntries);
/**
* By analogy with how `Array.prototype.map` will map the elements of

@@ -232,3 +258,3 @@ * an array to transformed elements of an array of the same shape,

*/
const makeAggregateError = (errors, message) => {
export const makeAggregateError = (errors, message) => {
const err = new Error(message);

@@ -284,1 +310,37 @@ Object.defineProperties(err, {

);
/**
* @param {import("fs").ReadStream | import("fs").WriteStream} stream
* @returns {Promise<void>}
*/
export const fsStreamReady = stream =>
new Promise((resolve, reject) => {
if (stream.destroyed) {
reject(new Error('Stream already destroyed'));
return;
}
if (!stream.pending) {
resolve();
return;
}
const onReady = () => {
cleanup(); // eslint-disable-line no-use-before-define
resolve();
};
/** @param {Error} err */
const onError = err => {
cleanup(); // eslint-disable-line no-use-before-define
reject(err);
};
const cleanup = () => {
stream.off('ready', onReady);
stream.off('error', onError);
};
stream.on('ready', onReady);
stream.on('error', onError);
});
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