Comparing a CharsetMatch to a non-alias encoding strings (#773)
Return 0.0 CharsetMatch.multi_byte_usage for empty payloads instead of crashing (#774)
A file with both a charset declaration and BOM/SIG did not verify first the BOM/SIG charset.
iso2022* cases misdetected due to a flaw in our multibyte chunking logic.
Changed
Replaced the optional mypyc build with Cython extensions while retaining the
pure Python fallback. The previous engine (mypyc) started to hit rough limit around
the optimization of our noise/coherence detector while Cython allows us to
steer the engine toward the right generated optimized sources.
This change SHOULD not impact bundler (e.g. Pyinstaller) as the module are
immediately discoverable (i.e. not hidden import like mypyc did).
Moreover, a long wished distribution is the abi3 wheels, this will allow us
to no longer rush each year when a new Python interpreter is released.
We still distribute the interpreter specific wheels for faster performance.
Applied micro-optimization on several utils.
CharsetMatches no longer sort on each match insertion.
Misc
Removed an old performance optimization attempt in apy.py (success_fast_tracked+payload_result_cache).
Configuration
📅Schedule: (in timezone America/Edmonton)
Branch creation
At any time (no schedule defined)
Automerge
At any time (no schedule defined)
🚦Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕Ignore: Close this PR and you won't be reminded about this update again.
If you want to rebase/retry this PR, check this box
This PR contains the following updates:
| Package | Update | Change |
|---|---|---|
| [charset-normalizer](https://github.com/jawah/charset_normalizer) ([changelog](https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md)) | minor | `==3.4.9` → `==3.5.0` |
---
### Release Notes
<details>
<summary>jawah/charset_normalizer (charset-normalizer)</summary>
### [`v3.5.0`](https://github.com/jawah/charset_normalizer/blob/HEAD/CHANGELOG.md#350-2026-08-12)
[Compare Source](https://github.com/jawah/charset_normalizer/compare/3.4.9...3.5.0)
##### Added
- Explicit support for Python 3.15
##### Fixed
- Comparing a CharsetMatch to a non-alias encoding strings ([#​773](https://github.com/jawah/charset_normalizer/issues/773))
- Return 0.0 CharsetMatch.multi\_byte\_usage for empty payloads instead of crashing ([#​774](https://github.com/jawah/charset_normalizer/issues/774))
- A file with both a charset declaration and BOM/SIG did not verify first the BOM/SIG charset.
- iso2022\* cases misdetected due to a flaw in our multibyte chunking logic.
##### Changed
- Replaced the optional mypyc build with Cython extensions while retaining the
pure Python fallback. The previous engine (mypyc) started to hit rough limit around
the optimization of our noise/coherence detector while Cython allows us to
steer the engine toward the right generated optimized sources.
This change SHOULD not impact bundler (e.g. Pyinstaller) as the module are
immediately discoverable (i.e. not hidden import like mypyc did).
Moreover, a long wished distribution is the abi3 wheels, this will allow us
to no longer rush each year when a new Python interpreter is released.
We still distribute the interpreter specific wheels for faster performance.
- Applied micro-optimization on several utils.
- CharsetMatches no longer sort on each match insertion.
##### Misc
- Removed an old performance optimization attempt in apy.py (success\_fast\_tracked+payload\_result\_cache).
</details>
---
### Configuration
📅 **Schedule**: (in timezone America/Edmonton)
- Branch creation
- At any time (no schedule defined)
- Automerge
- At any time (no schedule defined)
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4yNi4yIiwidXBkYXRlZEluVmVyIjoiNDQuMjYuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
This PR contains the following updates:
==3.4.9→==3.5.0Release Notes
jawah/charset_normalizer (charset-normalizer)
v3.5.0Compare Source
Added
Fixed
Changed
pure Python fallback. The previous engine (mypyc) started to hit rough limit around
the optimization of our noise/coherence detector while Cython allows us to
steer the engine toward the right generated optimized sources.
This change SHOULD not impact bundler (e.g. Pyinstaller) as the module are
immediately discoverable (i.e. not hidden import like mypyc did).
Moreover, a long wished distribution is the abi3 wheels, this will allow us
to no longer rush each year when a new Python interpreter is released.
We still distribute the interpreter specific wheels for faster performance.
Misc
Configuration
📅 Schedule: (in timezone America/Edmonton)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate CLI.