# What changed in ldapts

> 15 changes in ldapts 8 to 9 from its official release notes, upgrade guides and advisories: 2 breaking, 8 new APIs and options. Each one cited. Sources checked 2026-10-18. HTML: https://unstale.sh/npm/ldapts/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## ldapts 9

### Breaking changes

- The deprecated instance method was removed; use the static Filter.escape() instead. (9.0.0) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v9.0.0)
- Node.js 22 or newer is now required. (9.0.0) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v9.0.0)

### New APIs and options

- Adds Control.responseType. (9.2.0) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v9.2.0)
- Exposes the server-side sort result. (9.2.0) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v9.2.0)
- Adds PasswordPolicyControl to read password policy responses. (9.1.0) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v9.1.0)

### Fixes and other changes

- Controls are cleared before reuse. (9.2.0) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v9.2.0)

## ldapts 8

### New APIs and options

- Adds an option to rebind automatically after reconnecting. (8.2.0) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v8.2.0)
- Allows custom connection factories. (8.2.0) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v8.2.0)
- Adds an escapeFilter tagged template literal. (8.2.0) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v8.2.0)
- InvalidAsn1Error is now exported from the main entry point. (8.1.4) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v8.1.4)
- Adds utilities for encoding and decoding postal addresses according to RFC 4517. (8.1.0) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v8.1.0)

### Fixes and other changes

- Filter.escape() now works as intended. (8.2.0) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v8.2.0)
- BerReader is now exported from the main entry point. (8.1.4) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v8.1.4)
- BerWriter is now exported from the main entry point. (8.1.4) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v8.1.4)
- An empty tlsOptions object is treated as no TLS configuration. (8.0.36) — [release notes](https://github.com/ldapts/ldapts/releases/tag/v8.0.36)
