Visitar URL original
Tighten the version support and Unicode notes in the README · kjd/idna@b907913 · GitHub
Skip to content

Commit b907913

Browse files
committed
Tighten the version support and Unicode notes in the README
1 parent 6204cbe commit b907913

1 file changed

Lines changed: 7 additions & 15 deletions

File tree

‎README.md‎

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -146,26 +146,18 @@ the tool exits with a non-zero status if any conversion failed.
146146

147147
## Additional Notes
148148

149-
* **Version support**. This library supports Python 3.9 and higher.
149+
* **Python version support**. This library supports Python 3.9 and higher.
150150
As this library serves as a low-level toolkit for a variety of
151151
applications, we strive to support all versions of Python that are
152-
not beyond end-of-life.
152+
not beyond end-of-life. Free-threaded Python is also supported,
153+
as the library holds no mutable global state the functions can be
154+
called concurrently from multiple threads.
153155

154156
* **Unicode version**. The IDNA and UTS #46 lookup tables are generated
155-
from a specific Unicode release, available as `idna.unicode_version`
156-
(and shown by `idna --version`). Some checks — NFC normalisation,
157-
bidirectional classes and combining classes — still come from the
157+
from a specific Unicode release. Some Unicode data depends on the
158158
running Python's `unicodedata` module, so on an older Python a
159-
character new to Unicode may be rejected (typically with the
160-
`unknown_codepoint` or `bidi_unknown_direction` error codes) even
161-
though the tables know about it.
162-
163-
* **Thread safety and free-threaded Python**. The library holds no
164-
mutable global state — the lookup tables are read-only — so all
165-
functions may be called concurrently from multiple threads, and the
166-
incremental codec classes keep their state per instance. The test
167-
suite runs on free-threaded CPython builds (`3.14t`) with the GIL
168-
disabled and includes a concurrency test.
159+
character new to Unicode may be rejected as unknown even if this
160+
library knows about it.
169161

170162
* **Emoji**. It is an occasional request to support emoji domains in
171163
this library. Encoding of symbols like emoji is expressly prohibited by

0 commit comments

Comments
 (0)