Skip to content

Version 8.1.1 breaks within Bun with non-implemented V8 feature used through a dependency chain. #779

Description

@BigETI

Describe the bug
When upgrading to "natural@8.1.1", Bun is unable to launch, due to a dependency chain that attempts to use an non-implemented V8 feature.

To Reproduce

  1. Upgrade to natural@8.1.1
  2. Run project with Bun.

Expected behavior
Not breaking.

Screenshots
N/A

Desktop (please complete the following information):

  • OS: Tested on macOS
  • Browser: None
  • Version: 8.1.1

Additional context

% bun run .
◇ injected env (0) from .env // tip: ⌁ auth for agents [www.vestauth.com]
◇ injected env (0) from .env // tip: ⌘ override existing { override: true }
2605 |         this.PROCESS_UNIQUE = ByteUtils.randomBytes(5);
2606 |     };
2607 |     static {
2608 |         this.resetState();
2609 |         const { startupSnapshot } = globalThis?.process?.getBuiltinModule?.('v8') ?? {};
2610 |         if (startupSnapshot?.isBuildingSnapshot?.()) {
                                    ^
NotImplementedError: node:v8 isBuildingSnapshot is not yet implemented in Bun.
 code: "ERR_NOT_IMPLEMENTED"

      at <anonymous> ([REDACTED]/node_modules/bson/lib/bson.cjs:2610:30)
      at <anonymous> ([REDACTED]/node_modules/bson/lib/bson.cjs:2597:1)
      at <anonymous> ([REDACTED]/node_modules/mongodb/lib/bson.js:9:7)
      at <anonymous> ([REDACTED]/node_modules/mongodb/lib/bulk/common.js:5:7)
      at <anonymous> ([REDACTED]/node_modules/mongoose/lib/drivers/node-mongodb-native/bulkWriteResult.js:3:7)

To be fair MongoDB does not need to be a dependency of natural, if only core features of "natural" are used.
My suggestion is to make adapters for extra features, in order to be able to install them by choice, not implicitly by a dependency tree resolver.

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions