2.2.364
msitarzewski/agency-agents2.2.364Jul 22, 2026by github-actions[bot]
AI Summary
This release focuses on stability improvements, dependency updates, and bug fixes for various PII recognizers across different countries. It also introduces Python 3.14 compatibility and a new batch deanonymization feature.
Key Highlights
- Python 3.14 compatibility added to all packages
- Batch deanonymization support introduced
- Fixes for UK_NINO regex and various country-specific ID regexes
- CI migration from Poetry to uv build tool
New Features
- Batch deanonymization support
- Philippine UMID (PH_UMID) recognizer
- No-op NLP engine
- Recognizer-level threshold config
Full Release Notes
## What's Changed * Fix CI and release container publishing by @SharonHart in https://github.com/data-privacy-stack/presidio/pull/2127 * docs: show compact mascot on mobile homepage by @SharonHart in https://github.com/data-privacy-stack/presidio/pull/2130 * Run documentation release on ubuntu-latest by @SharonHart with @Copilot in https://github.com/data-privacy-stack/presidio/pull/2131 * Resolving docs build issues on main by @SharonHart with @Copilot in https://github.com/data-privacy-stack/presidio/pull/2132 * chore: replace presidio@microsoft.com with presidio@dataprivacystack.org in PyPI metadata by @SharonHart with @Copilot in https://github.com/data-privacy-stack/presidio/pull/2128 * Fix UK_NINO regex matching a numeric suffix character by @jichaowang02-lang in https://github.com/data-privacy-stack/presidio/pull/2112 * Update license copyright to Presidio Contributors by @cobypeled in https://github.com/data-privacy-stack/presidio/pull/2134 * docs: fix typo in IP_ADDRESS detection method description by @Coshea46 in https://github.com/data-privacy-stack/presidio/pull/2133 * feat(cli): add threshold flag override by @rodboev in https://github.com/data-privacy-stack/presidio/pull/2114 * Fix IN vehicle registration under-scoring zero-padded district codes by @jichaowang02-lang in https://github.com/data-privacy-stack/presidio/pull/2110 * Fix FI HETU regex accepting illegal century separators by @jichaowang02-lang in https://github.com/data-privacy-stack/presidio/pull/2108 * Fix TH TNIN regex rejecting valid province codes 22, 52 and 58 by @jichaowang02-lang in https://github.com/data-privacy-stack/presidio/pull/2107 * Fix NG NIN rejecting valid numbers with a leading zero by @jichaowang02-lang in https://github.com/data-privacy-stack/presidio/pull/2106 * Fix AU ABN accepting some invalid leading-zero numbers by @jichaowang02-lang in https://github.com/data-privacy-stack/presidio/pull/2109 * fix(es): upper-case NIF/NIE before mod-23 checksum so valid lowercase IDs are detected by @AUTHENSOR in https://github.com/data-privacy-stack/presidio/pull/2076 * Fix NLP engine initialization in GLiNER sample by @matteobachini-vianova in https://github.com/data-privacy-stack/presidio/pull/2135 * Fix DE_FUEHRERSCHEIN docstring example that contradicts the pattern by @jichaowang02-lang in https://github.com/data-privacy-stack/presidio/pull/2138 * Fix ISO 8601 date pattern accepting impossible month/day values by @jichaowang02-lang in https://github.com/data-privacy-stack/presidio/pull/2113 * fix(anonymizer): bump cryptography to >=48.0.1,<49.0.0 to resolve GHSA-537c-gmf6-5ccf by @SharonHart with @Copilot in https://github.com/data-privacy-stack/presidio/pull/2144 * Fix EsNieRecognizer.validate_result raising instead of returning False by @MohamedAklamaash in https://github.com/data-privacy-stack/presidio/pull/2146 * build: migrate CI and service images from Poetry to uv by @RonShakutai in https://github.com/data-privacy-stack/presidio/pull/2152 * fix(analyzer): honour language_model_params in BasicLangExtractRecogn… by @RonShakutai in https://github.com/data-privacy-stack/presidio/pull/2150 * [Chore] Add healthcheck and restart policy to docker-compose.yml by @hiro-nikaitou in https://github.com/data-privacy-stack/presidio/pull/2149 * feat: add Python 3.14 compatibility to all remaining Presidio packages by @SharonHart with @Copilot in https://github.com/data-privacy-stack/presidio/pull/2147 * Fix FI HETU accepting 29 Feb of a non-leap century by @jichaowang02-lang in https://github.com/data-privacy-stack/presidio/pull/2111 * fix(analyzer): normalize case before fi hetu and sg uen checksums by @uwezkhan in https://github.com/data-privacy-stack/presidio/pull/2141 * fix(analyzer): stop UsSsnRecognizer from over-blocking 987-65-432X SSNs by @AUTHENSOR in https://github.com/data-privacy-stack/presidio/pull/2074 * fix(analyzer): honour config_path for LangExtract recognizers in YAML registry by @RonShakutai in https://github.com/data-privacy-stack/presidio/pull/2157 * feat(anonymizer): add batch deanonymization support by @rodboev in https://github.com/data-privacy-stack/presidio/pull/2115 * feat: add Philippine UMID (PH_UMID) recognizer by @Surya-5555 in https://github.com/data-privacy-stack/presidio/pull/2045 * feat(analyzer): add recognizer-level threshold config by @rodboev in https://github.com/data-privacy-stack/presidio/pull/2116 * feat: add no-op NLP engine by @ultramancode in https://github.com/data-privacy-stack/presidio/pull/2071 * docs: quote pip extras install examples by @nyxst4ck in https://github.com/data-privacy-stack/presidio/pull/2093 * Stabilize CI disk usage and run Ollama E2E on arm64 by @SharonHart in https://github.com/data-privacy-stack/presidio/pull/2167 * fix(analyzer): use valid region code GB instead of UK in PhoneRecognizer by @developer0hye in https://github.com/data-privacy-stack/presidio/pull/2174 * Release 2.2.364 / 0.0.60 by @SharonHart with @Copilot in https://github.com/data-privacy-stack/presidio/pull/2183 * Bump `presidio-anonymizer` floor in `presidio-structured` by @SharonHart with @Copilot in https://github.com/data-privacy-stack/presidio/pull/2184 ## New Contributors * @cobypeled made their first contribution in https://github.com/data-privacy-stack/presidio/pull/2134 * @Coshea46 made their first contribution in https://github.com/data-privacy-stack/presidio/pull/2133 * @rodboev made their first contribution in https://github.com/data-privacy-stack/presidio/pull/2114 * @matteobachini-vianova made their first contribution in https://github.com/data-privacy-stack/presidio/pull/2135 * @MohamedAklamaash made their first contribution in https://github.com/data-privacy-stack/presidio/pull/2146 * @hiro-nikaitou made their first contribution in https://github.com/data-privacy-stack/presidio/pull/2149 * @nyxst4ck made their first contribution in https://github.com/data-privacy-stack/presidio/pull/2093 * @developer0hye made their first contribution in https://github.com/data-privacy-stack/presidio/pull/2174 **Full Changelog**: https://github.com/data-privacy-stack/presidio/compare/2.2.363...2.2.364