diff --git a/package-lock.json b/package-lock.json index cc1d8ae896..1f86f4aa3c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@mongodb-js/saslprep": "^1.3.0", - "bson": "^7.0.0", + "bson": "mongodb/js-bson", "mongodb-connection-string-url": "^7.0.0" }, "devDependencies": { @@ -3916,8 +3916,7 @@ }, "node_modules/bson": { "version": "7.0.0", - "resolved": "https://registry.npmjs.org/bson/-/bson-7.0.0.tgz", - "integrity": "sha512-Kwc6Wh4lQ5OmkqqKhYGKIuELXl+EPYSCObVE6bWsp1T/cGkOCBN0I8wF/T44BiuhHyNi1mmKVPXk60d41xZ7kw==", + "resolved": "git+ssh://git@github.com/mongodb/js-bson.git#a23e788eded5253f7e1295c36e3187363971ab8c", "license": "Apache-2.0", "engines": { "node": ">=20.19.0" diff --git a/package.json b/package.json index ba67923095..57d01ccea0 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ }, "dependencies": { "@mongodb-js/saslprep": "^1.3.0", - "bson": "^7.0.0", + "bson": "mongodb/js-bson", "mongodb-connection-string-url": "^7.0.0" }, "peerDependencies": { diff --git a/src/bson.ts b/src/bson.ts index f9db54dc42..c08cd03896 100644 --- a/src/bson.ts +++ b/src/bson.ts @@ -22,6 +22,7 @@ export { Long, MaxKey, MinKey, + NumberUtils, ObjectId, type ObjectIdLike, serialize, diff --git a/src/cmap/handshake/client_metadata.ts b/src/cmap/handshake/client_metadata.ts index aa5cb70e7b..d01fa0c095 100644 --- a/src/cmap/handshake/client_metadata.ts +++ b/src/cmap/handshake/client_metadata.ts @@ -1,7 +1,7 @@ import * as os from 'os'; import * as process from 'process'; -import { BSON, type Document, Int32 } from '../../bson'; +import { BSON, type Document, Int32, NumberUtils } from '../../bson'; import { MongoInvalidArgumentError } from '../../error'; import type { DriverInfo, MongoOptions } from '../../mongo_client'; import { fileIsAccessible } from '../../utils'; @@ -336,17 +336,18 @@ declare const Bun: { (): void; version?: string } | undefined; * with a future change to these global objects. */ function getRuntimeInfo(): string { + const endianness = NumberUtils.isBigEndian ? 'BE' : 'LE'; if ('Deno' in globalThis) { const version = typeof Deno?.version?.deno === 'string' ? Deno?.version?.deno : '0.0.0-unknown'; - return `Deno v${version}, ${os.endianness()}`; + return `Deno v${version}, ${endianness}`; } if ('Bun' in globalThis) { const version = typeof Bun?.version === 'string' ? Bun?.version : '0.0.0-unknown'; - return `Bun v${version}, ${os.endianness()}`; + return `Bun v${version}, ${endianness}`; } - return `Node.js ${process.version}, ${os.endianness()}`; + return `Node.js ${process.version}, ${endianness}`; }