Commit graph

14394 commits

Author SHA1 Message Date
Osama Abdelkader
a486d452c7
gh-140601: Add ResourceWarning to iterparse when not closed (GH-140603)
When iterparse() opens a file by filename and is not explicitly closed,
emit a ResourceWarning to alert developers of the resource leak.

Signed-off-by: Osama Abdelkader <osama.abdelkader@gmail.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2025-11-13 21:05:28 +02:00
Serhiy Storchaka
b2b68d40f8
gh-140873: Add support of non-descriptor callables in functools.singledispatchmethod() (GH-140884) 2025-11-13 19:48:52 +02:00
Cody Maloney
732224e113
gh-139871: Add bytearray.take_bytes([n]) to efficiently extract bytes (GH-140128)
Update `bytearray` to contain a `bytes` and provide a zero-copy path to
"extract" the `bytes`. This allows making several code paths more efficient.

This does not move any codepaths to make use of this new API. The documentation
changes include common code patterns which can be made more efficient with
this API.

---

When just changing `bytearray` to contain `bytes` I ran pyperformance on a
`--with-lto --enable-optimizations --with-static-libpython` build and don't see
any major speedups or slowdowns with this; all seems to be in the noise of
my machine (Generally changes under 5% or benchmarks that don't touch
bytes/bytearray).


Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Maurycy Pawłowski-Wieroński <5383+maurycy@users.noreply.github.com>
2025-11-13 13:19:44 +00:00
Serhiy Storchaka
d8e6bdc0d0
gh-135801: Add the module parameter to compile() etc (GH-139652)
Many functions related to compiling or parsing Python code, such as
compile(), ast.parse(), symtable.symtable(),
and importlib.abc.InspectLoader.source_to_code() now allow to pass
the module name used when filtering syntax warnings.
2025-11-13 13:21:32 +02:00
Jacob Austin Lincoln
70748bdbea
gh-131116: Fix inspect.getdoc() to work with cached_property objects (GH-131165) 2025-11-12 10:07:21 +00:00
Mark Byrne
35908265b0
gh-75593: Add support of bytes and path-like paths in wave.open() (GH-140951) 2025-11-12 10:20:55 +02:00
Maurycy Pawłowski-Wieroński
0d7b48a8f5
gh-137952: update csv.Sniffer().has_header() docs to describe the actual off-by-onish behavior (GH-137953)
* checks 21, not 20
* Say "header" instead of "first row" to disambiguate per review.

---------

Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Maurycy Pawłowski-Wieroński <maurycy@maurycy.com>
2025-11-12 00:03:14 +00:00
Serhiy Storchaka
7906f4d96a
gh-132686: Add parameters inherit_class_doc and fallback_to_class_doc for inspect.getdoc() (GH-132691) 2025-11-12 00:01:25 +02:00
Aniket
b5196fa15a
gh-137339: Clarify host and port parameter behavior in smtplib.SMTP{_SSL} initialization (#137340)
This also documents the previously undocumented default_port parameter.

Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
2025-11-11 15:25:26 -05:00
Marco Barbosa
c903d76832
gh-139533: fix refs to code without proper markups on turtledemo doc (GH-139534)
gh-139533: fix refs to code without proper markups on turtledemo documentation
2025-11-11 11:35:55 -08:00
Louis
46b58e1bb9
gh-140578: Doc: Remove sencence implying that concurrent.futures.ThreadPoolExecutor does not exist (#140689)
* Doc: Remove sencence implying that concurrent.futures.ThreadPoolExecutor does not exist

Closes #140578

* Add NEWS.d entry for gh-140578

---------

Co-authored-by: Louis Paternault <spalax@gresille.org>
2025-11-10 20:50:30 -08:00
Yongzi Li
59b793b0dd
gh-141343: Fix swapped words in sorted doc (GH-141348) 2025-11-10 08:55:15 -06:00
Stan Ulbrych
13fa313beb
gh-139707: Specify winreg, msvcrt and winsound module availability in docs (GH-140429) 2025-11-10 14:37:34 +01:00
Stan Ulbrych
df19261621
gh-141004: Document pyctype.h macros (GH-141272) 2025-11-10 05:05:06 -05:00
KarnbirKhera
b618731781
gh-62480: De-personalize "Partial mocking" section in unittest.mock examples (#141321)
* Refine some wording in unittest partial mock doc

Some of the descriptions were addressed in first person,
but have now been changed to address the user reading the documentation instead.

Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM>
2025-11-09 17:45:38 -06:00
Elena O
ec85d3cbfe
gh-62480: De-personalize "Mocking Unbound Methods" section in unittest.mock examples (#141322)
* Rewrite Mocking Unbound Methods paragraph to second person

Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2025-11-09 17:42:22 -06:00
Lakshya Upadhyaya
6f20ea1e2d
gh-140980: document SET_FUNCTION_ATTRIBUTE flag for annotate function (#141306) 2025-11-09 19:59:06 +01:00
Chilla Kalyan
7ae440f262
gh-141127: Clarify o?s.symlink() documentation for argument order (#141144) 2025-11-09 09:57:34 +01:00
Mohsin Mehmood
b36f01d03f
gh-141186: document asyncio.Task cancellation propagation behavior (#141249) 2025-11-09 10:19:29 +05:30
莯凛
6545a4e8f8
gh-141246: Link to correct Windows docs in time.sleep() doc (#141248) 2025-11-08 15:56:48 +01:00
Bénédikt Tran
87942d911b
gh-141004: correctly document Py_HASH_* and PyHASH_* as hash_info attributes (#141233) 2025-11-08 12:22:02 +00:00
Serhiy Storchaka
7e90bac3cc
gh-140793: Improve documentatation and tests for the ensure_ascii option in the json module (GH-140906)
* Document that ensure_ascii=True forces escaping not only non-ASCII, but also
  non-printable characters (the only affected ASCII character is U+007F).
* Ensure that the help output for the json module does not exceed 80
  columns (except one long line in an example and generated lines).
* Add more tests.
2025-11-08 12:07:27 +02:00
Brandon Hubacher
c1785129c3
fix typos in contextvars asyncio support example docs (#141219)
Co-authored-by: Kumar Aditya <kumaraditya@python.org>
2025-11-08 09:08:19 +00:00
Rodrigo Girão Serrão
9bf5100037
Minor documentation improvements (#140626) 2025-11-06 19:11:50 +02:00
Petr Viktorin
d2ce6d708a
gh-139707: Add docs for optional modules (GH-140171)
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Co-authored-by: Emma Smith <emma@emmatyping.dev>
Co-authored-by: Author: Terry Jan Reedy <tjreedy@udel.edu>
Co-authored-by: Victor Stinner <vstinner@python.org>
2025-11-06 11:49:44 +01:00
Stan Ulbrych
4e6e208be9
Minor fixes to idle.rst and regenerate help.html (#140037) 2025-11-06 03:21:02 -05:00
Bartosz Sławecki
8822166200
gh-140569: recommend the new REPL in the asyncio REPL docs (#140570)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2025-11-06 11:09:07 +05:30
Kumar Aditya
101c9c0a21
gh-118516: clarify that subprocess are automatically killed if transport gets garbage collected (#140997) 2025-11-06 10:21:13 +05:30
Savannah Ostrowski
95f6e1275b
GH-108009: Add clarification of parser and argument defaults in argparse docs (#124154)
Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM>
2025-11-05 22:46:30 +00:00
Zenith
227f4abacd
gh-76007: remove curses.__version__ doc (#141052) 2025-11-06 00:00:36 +02:00
Sebastian Pipping
baa9f33897
gh-139313: Improve docs on XML security (GH-139460)
Clarify that:
- it takes parsing for an attack
- that some doors are closed by default
- only Expat version 2.7.2 has all the fixes
- use of the bundle depends on configuration
2025-11-05 20:59:59 +02:00
Clifford Gama
1ae900424b
Docs: Fix cached calls count in factorial example (gh-140882) 2025-11-05 00:29:25 +00:00
alex
fa02422918
gh-141007: update string module source code link (#141008)
In 3.14, the former string.py became `__init__.py` within a new `string` directory that also contains a new submodule file, `templatelib.py`.
2025-11-04 19:05:49 -05:00
Filip Łajszczak
ce1bb85d28
gh-139434: Update selected RFC 2822 references to RFC 5322 (#139435)
Update selected RFC 2822 references to RFC 5322

RFC 2822 was obsoleted by RFC 5322 in 2008. This updates references
to use the current standard in documentation, docstrings, and comments.

It preserves RFC 2822 references in legacy API components to maintain their
historical context.

RFC 822 → RFC 2822 → RFC 5322 progression is explained where relevant.

In some places specific sections of RFC are referenced where it seems helpful.

Scout rule was applied in some places and RFC mentions format was
normalized in doc strings and comments.
2025-11-04 14:46:07 -05:00
Guo Ci
97d8dda980
Docs: Fix typo in email.headerregistry.rst (#140965)
Fix missing 'Header' suffix on header class name in `email.headerregistry.rst`
2025-11-04 14:29:13 -05:00
Vinay Sajip
66c86c6563
gh-134817: Restore accidentally deleted line in documentation. (GH-141013) 2025-11-04 18:29:44 +00:00
Brett Cannon
8a7dbb7a68
Document that returning sys.monitoring.DISABLE in response to a global event raises ValueError (#140726)
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
2025-11-04 10:28:17 -08:00
commitWithTisha
08115d241a
Fix minor typo: 'web site' -> 'website' (GH-140561) 2025-11-04 10:23:49 +01:00
Yongzi Li
b373d3494c
Docs: Fix a typo in idle.rst (Chitespace -> Whitespace) (GH-140946)
Fix typo in idle.rst
2025-11-03 16:48:10 +01:00
Stan Ulbrych
478b8dab0b
Docs: Fix typo in codecs documentation (GH-140883) 2025-11-03 16:47:52 +01:00
AN Long
248ce9fa8c
gh-140826: Compare winreg.HKEYType by the internal handle value (GH-140843) 2025-11-03 10:14:22 +02:00
Krishna Chaitanya
31de83d5e2
gh-140693: Improve argparse documentation about controlling color (#140737) 2025-11-02 13:58:16 -08:00
Filipe Laíns
ede5693be1
GH-119668: expose importlib.machinery.NamespacePath (#119669)
* GH-119668: expose importlib.NamespacePath

Signed-off-by: Filipe Laíns <lains@riseup.net>

* add news

Signed-off-by: Filipe Laíns <lains@riseup.net>

* add to docs

Signed-off-by: Filipe Laíns <lains@riseup.net>

* Apply suggestions from code review

Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>

* Fix news (importlib.NamespacePath > importlib.machinery.NamespacePath)

Signed-off-by: Filipe Laíns <lains@riseup.net>

* Link to module.__path__ in NamespacePath docs

Signed-off-by: Filipe Laíns <lains@riseup.net>

* Mention the path argument in the documentation

Signed-off-by: Filipe Laíns <lains@riseup.net>

* Simplify docs text

Signed-off-by: Filipe Laíns <lains@riseup.net>

* Highlight argument names in docs text

Signed-off-by: Filipe Laíns <lains@riseup.net>

* Update Lib/importlib/_bootstrap_external.py

Co-authored-by: Brett Cannon <brett@python.org>

* Rewrite NamespacePath's doc

Signed-off-by: Filipe Laíns <lains@riseup.net>

* Specify path_finder's type in the NamespacePath docstring

Signed-off-by: Filipe Laíns <lains@riseup.net>

* Fix doc tests

Signed-off-by: Filipe Laíns <lains@riseup.net>

* Apply suggestions from code review

Co-authored-by: Barry Warsaw <barry@python.org>

* Fix doc lint

Signed-off-by: Filipe Laíns <lains@riseup.net>

* Update Doc/library/importlib.rst

Co-authored-by: Brett Cannon <brett@python.org>

---------

Signed-off-by: Filipe Laíns <lains@riseup.net>
Co-authored-by: Brett Cannon <brett@python.org>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Co-authored-by: Barry Warsaw <barry@python.org>
2025-11-01 00:39:48 +00:00
Serhiy Storchaka
a17c57eee5
gh-137836: Support more RAWTEXT and PLAINTEXT elements in HTMLParser (GH-137837)
* the "plaintext" element
* the RAWTEXT elements "xmp", "iframe", "noembed" and "noframes"
* optionally RAWTEXT (if scripting=True) element "noscript"
2025-10-31 17:44:02 +02:00
Pål Grønås Drange
07912f8632
gh-140212: Add html for year-month option in Calendar (#140230)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2025-10-31 17:28:53 +02:00
Serhiy Storchaka
dcf3cc5796
gh-81313: Add the math.integer module (PEP-791) (GH-133909) 2025-10-31 16:13:43 +02:00
Semyon Moroz
e733dc90f3
gh-131885: Document * for code.InteractiveConsole (#132029) 2025-10-31 11:16:32 +01:00
Serhiy Storchaka
6826166280
gh-135801: Improve filtering by module in warn_explicit() without module argument (GH-140151)
* Try to match the module name pattern with module names constructed
  starting from different parent directories of the filename.
  E.g., for "/path/to/package/module" try to match with
  "path.to.package.module", "to.package.module", "package.module" and
  "module".
* Ignore trailing "/__init__.py".
* Ignore trailing ".pyw" on Windows.
* Keep matching with the full filename (without optional ".py" extension)
  for compatibility.
* Only ignore the case of the ".py" extension on Windows.
2025-10-30 15:55:39 +02:00
Stan Ulbrych
2a904263aa
gh-131885: Update unicodedata function signatures to use / (#140270) 2025-10-30 10:54:03 +00:00
Serhiy Storchaka
327dbbedff
gh-138162: Fix logging.LoggerAdapter with merge_extra=True and without the extra argument (GH-140511) 2025-10-30 12:52:02 +02:00