Skip to content

Fix invalid escape sequences in text normalization and models - #3709

Open
MBK-fr wants to merge 1 commit into
modelscope:mainfrom
MBK-fr:fix/invalid-escape-sequence-syntaxwarning
Open

MBK-fr wants to merge 1 commit into
modelscope:mainfrom
MBK-fr:fix/invalid-escape-sequence-syntaxwarning

Conversation

@MBK-fr

@MBK-fr MBK-fr commented Sep 15, 2026

Copy link
Copy Markdown

Problem

Three first-party modules use invalid escape sequences in non-raw string literals:

  • fun_text_processing/text_normalization/normalize.py - \., \w
  • funasr/models/fsmn_kws/encoder.py - \[
  • funasr/models/fun_asr_nano/tools/format5res.py - \.

On Python 3.12+ each raises SyntaxWarning: invalid escape sequence on import.

Why it matters for FunASR

FunASR declares requires-python >=3.7.0 and runs the 3.10-3.12 CI matrix, so the warnings surface on the 3.12 job.

Fix

Escape the backslashes; every string value (and the regexes built from them) is byte-for-byte identical (ruff W605-style). (An identical copy of format5res.py under examples/ was left untouched to keep this scoped to the package source.)

Verification

In-memory compile() under -W error is clean on all three files after (raised before); each module's AST is unchanged.


🤖 Generated with Claude Code

https://claude.ai/code/session_014HBQNzAf5C2E3MiJC48HQw

Three modules use invalid escapes in non-raw string literals:
- fun_text_processing/text_normalization/normalize.py - \., \w
- funasr/models/fsmn_kws/encoder.py - \[
- funasr/models/fun_asr_nano/tools/format5res.py - \.

On Python 3.12+ each raises SyntaxWarning: invalid escape sequence on
import, and FunASR runs the 3.10-3.12 CI matrix. Escaping the
backslashes leaves every string value identical (ruff W605-style).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014HBQNzAf5C2E3MiJC48HQw
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant