包详细信息

@mongodb-js/zstd

mongodb-js976.7kApache-2.02.0.1

CI

自述文件

@mongodb-js/zstd

CI

Zstandard compression library for Node.js

Installation

npm install @mongodb-js/zstd

Release Integrity

Releases are created automatically and signed using the Node team's GPG key. This applies to the git tag as well as all release packages provided as part of a GitHub release. To verify the provided packages, download the key and import it using gpg:

gpg --import node-driver.asc

The GitHub release contains a detached signature file for the NPM package (named mongodb-js-zstd-X.Y.Z.tgz.sig).

The following command returns the link npm package.

npm view @mongodb-js/zstd@vX.Y.Z dist.tarball

Using the result of the above command, a curl command can return the official npm package for the release.

To verify the integrity of the downloaded package, run the following command:

gpg --verify mongodb-js-zstd-X.Y.Z.tgz.sig mongodb-js-zstd-X.Y.Z.tgz

[!Note] No verification is done when using npm to install the package. The contents of the Github tarball and npm's tarball are identical.

To verify the native .node packages, follow the same steps as above using mongodb-js-zstd-X.Y.Z-platform.tgz and the corresponding .sig file.

MongoDB Node.js Driver Version Compatibility

Only the following version combinations with the MongoDB Node.js Driver are considered stable.

@mongodb-js/zstd@1.x @mongodb-js/zstd@2.x
mongodb@>=6.12 ^1.1.0 ^2.0.0
mongodb@<6.12 ^1.1.0 N/A
mongodb@5.x N/A
mongodb@4.x N/A
mongodb@3.x N/A N/A

[!Note] @mongodb-js/zstd@1.x is deprecated - please use @mongodb-js/zstd@2.x instead.

Prebuild Platforms

Below are the platforms that are available as prebuilds on each github release. prebuild-install downloads these automatically depending on the platform you are running npm install on.

  • Linux GLIBC 2.23 or later
    • s390x
    • arm64
    • x64
  • Linux MUSL 1.1.20
    • arm64
    • x64
  • MacOS universal binary
    • x64
    • arm64
  • Windows
    • x64

API

export function compress(buffer: Buffer | ArrayBuffer | Uint8Array, level: number): Promise<Buffer>;
export function decompress(buffer: Buffer): Promise<Buffer>;

Bugs / Feature Requests

Think you’ve found a bug? Want to see a new feature in @mongodb-js/zstd? Please open a case in our issue management tool, JIRA:

  • Create an account and login jira.mongodb.org.
  • Navigate to the NODE project jira.mongodb.org/browse/NODE.
  • Click Create Issue - Please provide as much information as possible about the issue type and how to reproduce it.

Support / Feedback

For issues with, questions about, or feedback for the library, please look into our support channels. Please do not email any of the driver developers directly with issues or questions - you're more likely to get an answer on the MongoDB Community Forums.

Change Log

Change history can be found in HISTORY.md.

Usage

import { compress, decompress } from '@mongodb-js/zstd';

(async () => {
  const buffer = Buffer.from('test');
  const compressed = await compress(buffer, 10);
  const decompressed = await decompress(compressed);
})();

Running Tests

First, install and build the zstd library:

npm run install-zstd

Then build the bindings:

npm run prebuild

Then test: npm test

更新日志

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

2.0.1 (2025-02-10)

Bug Fixes

  • NODE-6731: fix and test webpack bundling (#71) (94449cf)

2.0.0 (2024-12-06)

Miscellaneous Chores

  • release 2.0.0 (Release-As: 2.0.0) (#60) (7e1d253)

2.0.0-alpha.3 (2024-12-05)

Bug Fixes

2.0.0-alpha.2 (2024-12-04)

Bug Fixes

  • NODE-6590: add build for x64 macos (#45) (4972129)

2.0.0-alpha.1 (2024-12-02)

Bug Fixes

  • NODE-6590: specify correct entrypoint in package.json and include binding.gyp in the package (#47) (f562b59)

v2.0.0-alpha.0 (2024-11-27)

Features

  • NODE-4569: add "musl" builds for Alpine Linux (#12) (b3dedc3)
  • NODE-6539: add base napi C++ template with standard Node team tooling (#28) (8c40b08)
  • NODE-6540: Add c++ zstd compression API (#30) (6673245)
  • NODE-6588: add ssdlc to zstd (#43) (016d857)

1.2.2 (2024-09-16)

Bug Fixes

  • NODE-6381: use targeting for x86_64 darwin (#26) (f95c9f6)

1.2.1 (2024-09-06)

Bug Fixes

  • NODE-6348: Wrap thrown errors in JS Error objects with stacks (#25) (af62c4f)

1.2.0 (2023-08-29)

Bug Fixes

  • NODE-5177: update to latest zstd-sys (#15) (6b6d8ce)

1.1.0 (2023-01-23)

Features

  • NODE-4569: add "musl" builds for Alpine Linux (#12) (b3dedc3)

1.0.0 (2022-05-18)

0.0.7 (2022-05-18)

Bug Fixes

0.0.6 (2022-05-18)

Features

0.0.5 (2022-05-09)

Bug Fixes

0.0.4 (2022-05-06)

Features

  • NODE-1837: support passing compression level (2c1a917)

0.0.3 (2022-05-06)

Bug Fixes

  • update publish task regex (b62d9b0)

0.0.2 (2022-05-06)

Bug Fixes

  • dont use org in napi name (9063ea8)

0.0.1 (2022-05-05)

Features

Bug Fixes