libcups v3.0.0

Michael Sweet <[email protected]> Thu, 8 Jan 2026 16:18:39 -0500
Newsgroups dev.linux.lists.printing-architecture
Message-ID <[email protected]>
libcups v3.0.0 is the first stable release of the CUPS v3 library and =
tools which remove deprecated APIs, add new APIs, and normalize existing =
APIs:

    https://github.com/OpenPrinting/libcups/releases/tag/v3.0.0

Changes include:

- Added `cupsLangIsRTL` API.
- Added `cupsOAuthGetDeviceGrant`, `cupsOAuthGetJWKS`, and =
`cupsOAuthGetUserId` APIs.
- Added `httpGetCookieValue` and `httpGetSecurity` APIs.
- Added an "install" sub-command to the `cups-x509` command.
- Added a "--user-agent" option to the `ipptool` command.
- Updated documentation (Issue #113)
- Updated the `cupsOAuth` APIs to support sharing of some OAuth values =
between the system (root) and per-user cache values.
- Updated the `cupsJWTNew` API to accept an optional JSON claims object.
- Updated the `httpSetCookie` API to support multiple "Set-Cookie:" =
header values.
- Updated `ippfind` to use the `cupsGetClock` API.
- Updated `ippeveprinter` to include all ready and supported attributes =
and values in the environment when processing a job.
- Fixed `ipptransform` media handling to preserve input document =
dimensions when "media" or "media-col" are not specified (Issue #102)
- Fixed `cupsJSONExport` functions with empty arrays or objects.
- Fixed `httpGetDateTime` for dates in the far future (Issue #124)
- Fixed input checks for `cupsCreateCredentials` and =
`cupsCreateCredentialsRequest` APIs (Issue #125)
- Fixed return values of `ippDateToTime` when the timezone isn't GMT.
- Fixed a potential timing issue with `cupsEnumDests`.
- Fixed a bug in the Avahi implementation of `cupsDNSSDBrowseNew`.
- Fixed a memory leak in `httpClose`.
- Fixed some Coverity-detected issues.
- Fixed support for device authorization grants.

Enjoy!

________________________
Michael Sweet