PyPI / charset-normalizer / 3.5.2
charset-normalizer 3.5.2
- Source
- https://github.com/jawah/charset_normalizer
- Tag scanned
3.5.2- Compared with
3.5.1(0 signals introduced since)- Files
- 74 scanned, 11 skipped (binary, oversized, or unrecognised)
- Signals
- 0 critical · 0 warn · 99 info
- Scan time
- 30.9 s
- LLM review
- Reviewed by claude-haiku-5-5 (Anthropic): 36 of 36 warn and critical signals; 36 demoted to info.
- Disclude version
- 4.0.0
- Scanned (UTC)
- 2026-10-14 18:09
Signals
Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.
-
7 replaced the historical LGPL-licensed implementation with an AI-assisted rewrite, initially distributed under MIT and later under 0BSD. The original author [contests](https://github.com/chardet/chardet/issues/327) that the rewrite was sufficiently independent to permit relicensing, while Chardet's maintdismissed A long markdown footnote line about the Chardet library's relicensing history.Reasoning
A very long line in a markdown footnote is a formatting issue. The text is ordinary prose about a library's licensing history, with no code or encoded payload.
-
-
-
1. Bсеки човек има право на образование. Oбразованието трябва да бъде безплатно, поне що се отнася до началното и основното образование. Hачалното образование трябва да бъде задlikely benign Mixed Latin and Cyrillic characters in a Bulgarian text sample.Reasoning
This is a Bulgarian prose sample in a data directory, not code. The Latin 'c' and 'e' among Cyrillic letters are likely stray or deliberate test characters rather than an identifier being spoofed. No execution or concealment is involved.
-
1. Bсеки човек има право на образование. Oбразованието трябва да бъде безплатно, поне що се отнася до началното и основното образование. Hачалното образование трябва да бъде задlikely benign Latin and Cyrillic mixed in a Bulgarian prose sample.Reasoning
Same sample text as the homoglyph finding. Mixing scripts in running prose is an artifact of the sample, not a spoofed identifier in code.
-
право на образование. Oбразованието трябва да бъде безплатно, поне що се отнася до началното и основното образование. Hачалното образование трябва да бъде задължително. Tехничlikely benign Latin letters mixed into a Cyrillic word in a Bulgarian text sample.Reasoning
The flagged word is in a Bulgarian prose sample. Latin 'O' and 'p', 'a', 'o' mixed with Cyrillic look like a copy or typing artifact. It is data, not an identifier used by a program.
-
право на образование. Oбразованието трябва да бъде безплатно, поне що се отнася до началното и основното образование. Hачалното образование трябва да бъде задължително. Tехничlikely benign Latin and Cyrillic mixed in a Bulgarian prose word.Reasoning
Same prose sample; the mixed-script signal reflects the text's character set, not a code identifier.
-
�новното образование. Hачалното образование трябва да бъде задължително. Tехническото и професионалното образование трябва да бъдат общодостъпни, а висшето образование тря… (340 bytes total)likely benign Mixed-script capitalized word in a Bulgarian text sample.Reasoning
A capitalized Bulgarian word in a text fixture contains Latin 'H' and Cyrillic letters. This looks like a data sample with inconsistent characters, not an obfuscated program.
-
�новното образование. Hачалното образование трябва да бъде задължително. Tехническото и професионалното образование трябва да бъдат общодостъпни, а висшето образование тря… (340 bytes total)likely benign Latin and Cyrillic mixed in a Bulgarian prose word.Reasoning
Same prose sample; the mixed-script flag is a property of the text content, not a code construct.
-
да бъде задължително. Tехническото и професионалното образование трябва да бъдат общодостъпни, а висшето образование трябва да бъде еднакво достъпно за всички на основата наlikely benign Latin 'T' mixed into a Cyrillic word in a Bulgarian text sample.Reasoning
A Bulgarian prose sample with a Latin 'T' before Cyrillic letters. The text is not code, and nothing executes or resolves the identifier.
-
да бъде задължително. Tехническото и професионалното образование трябва да бъдат общодостъпни, а висшето образование трябва да бъде еднакво достъпно за всички на основата наlikely benign Latin and Cyrillic mixed in a Bulgarian prose word.Reasoning
Same prose sample; mixed scripts in running text are not a code-level spoofing signal.
-
2. Oбразованието трябва да бъде насочено към цялостно развитие на човешката личност и заcилване на уважението към правата на човека и основните свободи. Tо трябва да съдейства … (340 bytes total)likely benign Bulgarian prose word 'Oбразованието' with Latin 'O' and Cyrillic letters mixed together.Reasoning
The flagged identifier is ordinary Bulgarian prose in a plain text sample file, not code. The Latin letters mixed into Cyrillic words look like typing or copy-paste slips, and nothing in the file executes or is hidden.
-
2. Oбразованието трябва да бъде насочено към цялостно развитие на човешката личност и заcилване на уважението към правата на човека и основните свободи. Tо трябва да съдейства … (340 bytes total)likely benign The same Bulgarian word, flagged for mixing Latin and Cyrillic characters.Reasoning
The mixed-script flag is the same stray-Latin-letter pattern in a text data file. It carries no execution or obfuscation risk and is most likely a keyboard or copy-paste artifact.
-
а човешката личност и заcилване на уважението към правата на човека и основните свободи. Tо трябва да съдейства за разбирателството, тъпримостта и приятелството между всички … (340 bytes total)likely benign Bulgarian word 'заcилване' with a stray Latin 'c' among Cyrillic letters.Reasoning
This is ordinary Bulgarian text in a data file. The Latin 'c' inside 'заcилване' is a typing artifact and is not used to evade any code analysis.
-
а човешката личност и заcилване на уважението към правата на човека и основните свободи. Tо трябва да съдейства за разбирателството, тъпримостта и приятелството между всички … (340 bytes total)likely benign The same word 'заcилване', flagged for mixed Latin and Cyrillic.Reasoning
The mixed-script flag repeats the stray-letter pattern in a text file. There is no code path that could be exploited.
-
� и основните свободи. Tо трябва да съдейства за разбирателството, тъпримостта и приятелството между всички народи, расови или религиозни групи, както и за осъществяване дейн… (341 bytes total)likely benign The Bulgarian sentence fragment 'Tо' mixing Latin T with Cyrillic о.Reasoning
The 'Tо' pair is a Latin 'T' followed by a Cyrillic 'о' in running prose. This is a common typing slip in bilingual text, and the file is data rather than code.
-
� и основните свободи. Tо трябва да съдейства за разбирателството, тъпримостта и приятелството между всички народи, расови или религиозни групи, както и за осъществяване дейн… (341 bytes total)likely benign The same 'Tо' fragment, flagged for mixing Latin and Cyrillic.Reasoning
The mixed-script flag is the same single-word slip in a non-code text file, with no risk attached.
-
�твяване дейността на Oрганизацията на Oбединените нации за поддържане на мира.⟨U+000D⟩likely benign Bulgarian word 'Oрганизацията' with a Latin 'O' among Cyrillic letters.Reasoning
'Oрганизацията' is a normal Bulgarian word ('Организацията') with a Latin 'O' typed in place of the Cyrillic letter. The file is prose, not code, so there is no evasion or execution concern.
-
�твяване дейността на Oрганизацията на Oбединените нации за поддържане на мира.⟨U+000D⟩likely benign The same word 'Oрганизацията', flagged for mixed Latin and Cyrillic.Reasoning
The mixed-script flag repeats the same stray-letter pattern in a text data file.
-
�а на Oрганизацията на Oбединените нации за поддържане на мира.⟨U+000D⟩likely benign Bulgarian word 'Oбединените' with a Latin 'O' and Latin-like 'e' among Cyrillic letters.Reasoning
'Oбединените' is a normal Bulgarian word with a Latin 'O' in place of Cyrillic. The Latin 'e' homoglyphs are also typing artifacts in a text file with no code context.
-
�а на Oрганизацията на Oбединените нации за поддържане на мира.⟨U+000D⟩likely benign The same word 'Oбединените', flagged for mixed Latin and Cyrillic.Reasoning
The mixed-script flag is the same pattern in a prose data file, with no execution or identifier-spoofing context.
-
3. Pодителите имат право, с приоритет, да избират вида образование, което да получат техните деца.⟨U+000D⟩ Член 27likely benign A Bulgarian text sample contains a Latin P among Cyrillic letters in the word Pодителите.Reasoning
The flagged word is ordinary Bulgarian prose inside a sample data file, and the 'identifier' label does not fit running text. The Cyrillic-looking Latin letter is most likely a typo or a deliberate encoding fixture, not a payload.
-
3. Pодителите имат право, с приоритет, да избират вида образование, което да получат техните деца.⟨U+000D⟩ Член 27likely benign The same Pодителите word mixes Latin and Cyrillic letters in a Bulgarian text sample.Reasoning
The mixed-script signal repeats the same Latin/Cyrillic mix in natural-language prose. It is a text-data artifact, not code that executes or hides an identifier.
-
1. Bсеки човек има право свободно да участва в културния живот на обществото, да се наслаждава на изкуствата, да участва в научния напредък и да се ползва от неговите достиженияlikely benign A Bulgarian sample line starts with the word Bсеки, which mixes a Latin B with Cyrillic letters.Reasoning
The word Bсеки is a Bulgarian prose word with a Latin B, in a sample text file. It reads as a typo or test fixture, and no execution or concealment is involved.
-
1. Bсеки човек има право свободно да участва в културния живот на обществото, да се наслаждава на изкуствата, да участва в научния напредък и да се ползва от неговите достиженияlikely benign The word Bсеки mixes Latin and Cyrillic scripts in a Bulgarian text sample.Reasoning
This repeats the Latin/Cyrillic mix from the same prose line. It is a text artifact with no code-level risk.
-
2. Bсеки човек има право на закрила на моралните и материалните си интереси, които са резултат от каквото и да е научно, литературно или художествено произведение, на което той … (340 bytes total)likely benign Another Bulgarian sample line begins with Bсеки, mixing a Latin B with Cyrillic letters.Reasoning
Same prose word Bсеки in another line of a Bulgarian sample text. The pattern is a typo or fixture artifact, not a concealed identifier.
-
2. Bсеки човек има право на закрила на моралните и материалните си интереси, които са резултат от каквото и да е научно, литературно или художествено произведение, на което той … (340 bytes total)likely benign The word Bсеки in a Bulgarian sample line mixes Latin and Cyrillic scripts.Reasoning
The mixed-script signal restates the same prose-level homoglyph in a text fixture.
-
� �������� �������� �� ������� ������ ������� 12 ������������ ��������, ������ ���� ������ ��� ���� �����. �������� ����… (339 bytes total) -
� �������� �������� �� ������� ������ ������� 12 ������������ ��������, ������ ���� ������ ��� ���� �����. �������� ����… (339 bytes total) -
"source";"target"⟨U+000D⟩ "⟨U+FEFF⟩REF.-2";"POLISH"⟨U+000D⟩ "KW-P00-01";"SYSTEM VIDEODOMOFONOWY MEET"⟨U+000D⟩ "KW-P00-02";"URZĄDZENIE"likely benign A Polish CSV file begins with a zero-width no-break space (BOM) before its first field.Reasoning
A UTF-8 byte order mark at the start of a CSV export is a common artifact from spreadsheet tools. It is harmless and not an obfuscation technique.
-
������ 1895 �. ������� �������� ������ � ���������, ����� ����� ������������� �������� � ������ ����������� ������� (�����… (341 bytes total) -
likely benign A reST doc example contains a Bulgarian string literal where the first letter is Latin B mixed with Cyrillic.
Reasoning
This is a documentation example. The Latin B in a Bulgarian string literal is a probable typo or deliberate test sample for encoding detection, not code that runs a payload. The 'identifier' label is wrong because the text sits inside a string.
-
likely benign The Bulgarian string literal in the docs mixes Latin and Cyrillic characters.
Reasoning
The mixed-script signal repeats the same string-literal homoglyph in a documentation example, with no executable risk.
-
likely benign A reST doc example includes a Bulgarian byte string whose first word mixes Latin B with Cyrillic.
Reasoning
The same Bulgarian encoding example appears in another documentation page. It is a sample string for cp1251 handling, and the mixed letter looks like a sample-data artifact.
-
likely benign The Bulgarian string in the handling_result docs mixes Latin and Cyrillic scripts.
Reasoning
This restates the mixed-script signal for the same documentation string literal. It is not evidence of malicious intent.
-
likely benign Rst doc example encoding a Cyrillic sentence to cp1251 bytes.
Reasoning
The file is documentation (rst) showing a Python example of encoding a Cyrillic Bulgarian sentence with cp1251. The Cyrillic letters inside a string literal are legitimate content; the identifier-homoglyph framing is a misreading since the text is actually a string value, and the example is a documentation illustration of multi-script text.
-
likely benign Mixed-script Cyrillic text inside a documentation string literal.
Reasoning
Mixed Latin/Cyrillic appears inside a string literal in a documentation example about cp1251 encoding, not in a real identifier that could shadow code. The Cyrillic text is intentional localized sample content.
-
likely benign Doc comment and print statement containing Cyrillic sample text.
Reasoning
Same snippet pattern: a comment and print of a Cyrillic sample string in a doc example. No executable obfuscation; the flagged token is string/comment content.
-
likely benign Mixed-script match within doc comment/string sample.
Reasoning
Mixed-script match is again within a string/comment of a documentation example, not a real identifier spoofing risk.
-
likely benign Documentation example mapping bytes to Cyrillic characters in a decoding table.
Reasoning
The doc explains a custom decoding table mapping byte values to Cyrillic characters via explicit \u escapes with comments naming the letters. This is a documented encoding example, the Cyrillic is in a string value, and the flagged 'identifier' is a misparse of a string literal.
-
likely benign Documentation decoding-table entry with Cyrillic Unicode escape.
Reasoning
Same documented decoding-table example using explicit Unicode escapes for Cyrillic letters, with comments; this is a legitimate codec tutorial rather than an identifier homoglyph attack.
-
>>> >>> = >>> = >>> -
>>> >>> = >>> = >>> -
>>> >>> = >>> = >>> -
>>> >>> = >>> = >>> -
>>> and - -
>>> and - -
>>> and - -
>>> and - -
: -
, , , , -
, , , , -
, , , , -
, , , , -
, , , , -
, , , , -
: -
, , , , -
, , , , -
, , , , -
, , , , -
, , , , -
, , , , -
, , , , -
: -
, , , , -
, , , , -
, , , , -
, , , , -
, , , , -
: -
, , , , -
, , , , -
, , , , -
, , , , -
, , , , -
, , ], : -
: -
, , , , -
, , , , -
, , , , -
, , , , -
, , , , -
: -
, , , , -
, , , , -
, , , , -
, , , , -
, , , , -
, , , , -
, -
, -
, -
, -
, -
, , """["Financiën", "La France"]""", -
, , """["Financiën", "La France"]""", -
= -
=
Reproduce This Scan
Run disclude locally to verify. Add --format sarif for SARIF output. Add --llm (with an API key in the environment) to include the LLM review.
&&