iconv-lite converts character encodings using pure JavaScript, turning encoded buffers into JavaScript strings and vice versa. It also provides a streaming API for chunk-by-chunk encode and decode, and supports many common singlebyte and multibyte encodings without native code compilation.
Project status
- Actively maintained, with an upstream push on 2026-11-02 and several updates in the past year.
- Cadence is uneven: updates were months apart earlier in 2026, then arrived close together in late October and early November.
AI summary generated
Recent updates
v1.0.0-beta.1
v1.0.0-beta.1 adds ISO-2022-JP and x-user-defined support, expands fatal decoding and configurable replacement options, and aligns numerous encoding behaviors with the WHATWG Encoding Standard. It also changes several label mappings and removes two public global replacement properties, so applications relying on the old mappings or globals may need updates.
BreakingFeaturesv1.0.0-alpha.4
Version 1.0.0-alpha.4 adds external codec registration, native Web Streams, and custom handling for unrepresentable characters, alongside DBCS table compression. It also separates Node and Web instances, restricts supported package entry points, and fixes codec caching and several streaming and buffer-handling issues.
BreakingFeaturesv1.0.0-alpha.3
v1.0.0-alpha.3 completes the move to native ES modules and refactors internal and DBCS codecs to use Node or Web backends. It also fixes several encoding, streaming, BOM, and option-handling bugs, while adding browser support without requiring a Buffer polyfill.
BreakingFeaturesv1.0.0-alpha.2
v1.0.0-alpha.2 makes several codec decoders and label handling changes to match WHATWG and related standards more strictly, and it drops support for Node versions prior to 22. It also adds an opt-in `{ fatal: true }` decode option for TextDecoder-backed encodings, plus more WHATWG encoding label aliases.
BreakingFeaturesv0.7.3
v0.7.3 adds charset alias support for ISO-8859-8 directional variants (iso-8859-8-i and iso-8859-8-e). It also fixes UTF-32 streaming so that code units split across chunk boundaries are decoded correctly, and truncated trailing units are handled by substituting U+FFFD instead of dropping bytes.
Featuresv1.0.0-alpha.1
v1.0.0-alpha.1 makes a major refactor of iconv-lite around a new backend abstraction and switches decoding to use native TextDecoder. It also drops Node versions prior to 18 and removes the safe-buffer dependency, aligning behavior with modern runtime Buffer and web platform APIs.
BreakingFeaturesv0.7.2
v0.7.2 primarily addresses TypeScript typing issues for CommonJS consumers, correcting the way iconv-lite exports are represented in the published .d.ts files. It also contains CI workflow maintenance (bumping GitHub Actions versions) and a packaging change to use the package.json files field instead of .npmignore.
v0.7.1
v0.7.1 is primarily a TypeScript typings update for iconv-lite, with “missing APIs” added to the public type surface. The release notes also include CI workflow updates that bump several GitHub Actions versions.
Featuresv0.7.0
v0.7.0 focuses on correctness improvements in encoding/decoding, especially around UTF-8 streaming edge cases and the encoding lookup logic. It also clarifies that decode() accepts Uint8Array input, and makes a small change related to StringDecoder.end behavior (removing a compatibility check).
BreakingFeaturesv0.6.3
Release v0.6.3 was published on 2021-05-24, but the publisher did not provide release notes. As a result, no developer-impacting changes (features, fixes, breaking changes, or security updates) can be extracted from the provided information.
v0.6.2
The publisher provided no release notes for version v0.6.2, so there is no documented information about new functionality, bug fixes, breaking changes, or security updates. As a result, developers should review the corresponding commit diff and compare tags to understand what changed before upgrading.
v0.6.1
Version v0.6.1 was published on 2020-06-28, but the publisher did not provide any release notes. As a result, there is no documented information about new features, bug fixes, security issues, or breaking changes in this release.
v0.6.0
Release v0.6.0 was published on 2020-06-08, but no release notes were provided by the publisher. As a result, there is no stated information about new features, breaking changes, bug fixes, security updates, performance improvements, migration steps, or dependency updates.