Commit Graph

27040 Commits

Author SHA1 Message Date
Erlend E. Aasland abb71c6a8f
gh-107507: Replace 'The goals of Argument Clinic' with a summary (#107508)
Summarise the goals of Argument Clinic in a single sentence.
Mention that Argument Clinic was introduced with PEP-436.
2023-07-31 23:33:13 +02:00
Jacob Walls de51dede5b
gh-106762: Add news for `EnumMeta.__getattr__` removal (GH-107466) 2023-07-31 10:24:44 -07:00
Michael The a22ff8e11c
gh-105578: Document that `AnyStr` is deprecated in py313 (#107116)
It will not be removed until Python 3.18.
2023-07-31 15:43:53 +00:00
Michael The f877b32b87
gh-105578: Add more usage examples to `typing.AnyStr` docs (#107045)
``typing.AnyStr`` has different semantics to ``str | bytes``, which often leads to user confusion
2023-07-31 16:23:08 +01:00
Ned Deily 83e0976f89
gh-99079: Update macOS installer to use OpenSSL 3.0.9. (GH-107474) 2023-07-31 05:58:35 +00:00
Dong-hee Na a24e25d74b
gh-107427: Update the description of UNPACK_SEQUENCE (gh-107429) 2023-07-31 00:40:37 +09:00
da-woods f2abeb590d
Fix the documentation for PyCode_New add `qualname` parameter (#107186) 2023-07-29 23:11:40 +05:30
Rakesh Sabale 89fd4f4a3f
gh-107422: Remove outdated `TypedDict` example from typing docs (#107436) 2023-07-29 17:04:46 +00:00
Inada Naoki 37551c9cef
gh-107369: optimize textwrap.indent() (#107374) 2023-07-29 06:37:23 +00:00
Serhiy Storchaka f2d07d3289
gh-101100: Sphinx warnings: pick the low hanging fruits (GH-107386) 2023-07-29 08:48:10 +03:00
Serhiy Storchaka 413ba8943e
gh-107091: Fix some uses of :func: role (GH-107378)
:c:func: or :c:macro: should be used instead.
2023-07-29 08:43:10 +03:00
Eric Snow cf63df88d3
gh-107307: Update the importlib Docs for PEP 684 (gh-107400) 2023-07-28 16:00:03 -06:00
Eric Snow c0b81c4b54
gh-107305: Update the C-API Docs for PEP 684 (gh-107324) 2023-07-28 13:46:55 -06:00
Mark Shannon 1ee605c588
GH-101291: Add warning to "what's new" that `PyLongObject` internals have changed. (GH-107388) 2023-07-28 17:07:33 +01:00
Serhiy Storchaka 0aa58fa7a6
gh-107091: Fix some uses of :const: role (GH-107379)
It is for references, not for literals.
2023-07-28 13:26:28 +03:00
Serhiy Storchaka 983305268e
gh-107298: Fix yet more Sphinx warnings in the C API doc (GH-107345) 2023-07-27 18:44:32 +03:00
Victor Stinner 9a7204b86b
gh-105268: _PyGC_FINALIZED() removal is already documented in 3.12 (#107350) 2023-07-27 14:43:09 +00:00
Alex Waygood f84d77b4e0
Bump some docs dependencies to resolve a Dependabot security alert (#107341) 2023-07-27 11:53:21 +00:00
Daniele Procida ccd4253752
gh-106996: Rewrite turtle explanation (#107244)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-07-27 11:02:19 +03:00
Serhiy Storchaka abec9a1b20
gh-107298: Docs: add targets for some :c:member: and :c:macro: references (GH-107316)
Add targets for PyStructSequence_Desc and PyStructSequence_Field members
and macros like Py_EQ.
Fix target for Py_RETURN_RICHCOMPARE.
2023-07-27 09:04:02 +03:00
Serhiy Storchaka d363eb5b02
gh-107091: Fix some uses of :attr: role (GH-107318)
Fix also formatting of PyMethodDef members.
2023-07-27 08:52:54 +03:00
Victor Stinner 8d61a71f9c
gh-107298: Fix more Sphinx warnings in the C API doc (#107329)
Declare the following functions as macros, since they are actually
macros. It avoids a warning on "TYPE" or "macro" argument.

* PyMem_New()
* PyMem_Resize()
* PyModule_AddIntMacro()
* PyModule_AddStringMacro()
* PyObject_GC_New()
* PyObject_GC_NewVar()
* PyObject_New()
* PyObject_NewVar()

Add C standard C types to nitpick_ignore in Doc/conf.py:

* int64_t
* uint64_t
* uintptr_t

No longer ignore non existing "__int" type in nitpick_ignore.

Update Doc/tools/.nitignore
2023-07-27 00:52:40 +00:00
Victor Stinner 391e03fa05
gh-107298: Fix Sphinx warnings in the C API doc (#107302)
* Update Doc/tools/.nitignore
* Fix BufferedIOBase.write() link in buffer.rst
2023-07-27 01:41:15 +02:00
Erlend E. Aasland 2ad699002e
Docs: Argument Clinic: Restructure "Basic concepts and usage" (#106981)
Split "Basic concepts and usage" into:

- Reference
  - Terminology
  - CLI reference

- Background
  - Basic concepts

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Ezio Melotti <ezio.melotti@gmail.com>
2023-07-26 22:08:43 +00:00
Erlend E. Aasland 592395577c
Docs: Remove the numbered steps from the Argument Clinic tutorial (#107203)
Instead, order the tutorial as one body of prose, making it easier to
align the tutorial according to Diátaxis principles.
2023-07-26 22:54:25 +02:00
Serhiy Storchaka 6d5b6e71c8
gh-107091: Fix some uses of :c:type: role (GH-107138) 2023-07-26 22:29:23 +03:00
Serhiy Storchaka af61cb9c78
gh-107091: Fix some uses of :c:member: role (GH-107129) 2023-07-26 22:16:06 +03:00
Roman Yurchak 737d1da074
Document that `os.link()` is not available on Emscripten (GH-104822) 2023-07-26 11:38:59 -07:00
Victor Stinner 87b39028e5
gh-107298: Fix doc references to undocumented modules (#107300)
Update also Doc/tools/.nitignore.
2023-07-26 18:59:06 +02:00
Victor Stinner b1de3807b8
gh-106948: Update documentation nitpick_ignore for c:identifer domain (#107295)
Update the nitpick_ignore of the documentation configuration to fix
Sphinx warnings about standard C types when declaring functions with
the "c:function" markups.

Copy standard C types declared in the "c:type" domain to the
"c:identifier" domain, since "c:function" markup looks for types in
the "c:identifier" domain.

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-07-26 18:04:46 +02:00
Pablo Galindo Salgado da8f87b7ea
gh-107015: Remove async_hacks from the tokenizer (#107018) 2023-07-26 16:34:15 +01:00
Gregory P. Smith 70dc009469
gh-106939: document ShareableList nul-strip quirk. (#107266)
* gh-106939: document ShareableList nul-strip quirk.
* Mention the `int` size constraint.
2023-07-25 14:09:25 -07:00
Daniele Procida 2425346fee
gh-106996: Add a how-to section to the turtle documentation (#107153)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-07-25 15:03:57 +03:00
Serhiy Storchaka 329e4a1a3f
gh-86493: Modernize modules initialization code (GH-106858)
Use PyModule_Add() or PyModule_AddObjectRef() instead of soft deprecated
PyModule_AddObject().
2023-07-25 14:34:49 +03:00
Erlend E. Aasland ff5f94b72c
Docs: Add missing markup to Argument Clinic docs (#106876)
Co-authored-by: Ezio Melotti <ezio.melotti@gmail.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-07-24 15:22:18 +00:00
da-woods 0a9b339363
Fix PyVectorcall_Function doc versionadded (#107140)
The documentation implies that PyVectorcall_Function() was available in Python 3.8.
This is half-true - it was available under a different name. I think it's clearer to set
the "version added" to 3.9.
2023-07-24 14:54:38 +02:00
Hakan Celik ebe44a5155
Docs: Remove duplicate word in Argument Clinic howto heading (#107169) 2023-07-24 13:54:39 +02:00
TommyUnreal 2cf99026d6
gh-107017: Change Chapter Strings to Texts in the Introduction chapter. (#107104)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-07-24 05:55:57 +00:00
cLupus 7ca2d8e053
gh-105291: Add link to migration guide for distutils (#107130)
Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
2023-07-23 14:50:01 -07:00
Erlend E. Aasland b447e19e72
gh-106948: Docs: Disable links for C standard library functions, OS utility functions and system calls (#107062)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-07-23 22:56:56 +02:00
Ezio Melotti 956b3de816
Remove superflous whitespaces in `layout.html`. (GH-107067) 2023-07-23 17:18:50 +02:00
Dong-hee Na d1b839b453
gh-107122: Update what's news for dbm.*dbm.clear() method (gh-107135) 2023-07-24 00:08:50 +09:00
Dong-hee Na 0ae4870d09
gh-107122: Add clear method to dbm.ndbm module (gh-107126) 2023-07-23 14:26:23 +00:00
Dong-hee Na b273837fea
gh-107122: Add clear method to dbm.gdbm.module (gh-107127) 2023-07-23 13:51:12 +00:00
TommyUnreal e59da0c4f2
gh-107017: Analolgy to Pascal and C replaced. (#107025)
Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
2023-07-23 06:07:24 -06:00
Serhiy Storchaka 08a228da05
gh-107091: Fix the use of some C domain roles (#107092) 2023-07-23 12:27:05 +02:00
Daniele Procida a2a0e51400
gh-106996: Add the basics of a turtle graphics tutorial (#107072)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-07-23 03:43:27 -06:00
littlebutt's workshop 102a773716
gh-106976: alphabetise bullets by module name task2-3 (#107005)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-07-23 09:41:34 +00:00
wulmer f5147c0cfb
gh-101100: Fix some broken sphinx references (#107095) 2023-07-23 03:23:44 -06:00
Tomas R dcd7acb04a
gh-54738: Add argparse i18n howto (#104562) 2023-07-23 11:10:38 +02:00
wulmer 680f3e1591
gh-71261: Add paragraph on shadowing submodules with star imports (#107004) 2023-07-23 03:00:42 -06:00
Jakub Červinka 9629d4442e
gh-107017: removed mention that C does it the same way (#107020) 2023-07-23 02:57:52 -06:00
wulmer 0af247da09
gh-102111: Add link to string escape sequences in re module (#106995)
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-07-23 02:50:38 -06:00
Jochem Boersma 5e5a34ac3a
gh-107028: tiny textual changes in logging docs and docstrings (GH-107029) 2023-07-22 21:43:18 +01:00
Serhiy Storchaka f8b7fe2f26
gh-106948: Add standard external names to nitpick_ignore (GH-106949)
It includes standard C types, macros and variables like "size_t",
"LONG_MAX" and "errno", and standard environment variables like "PATH".
2023-07-22 21:35:22 +03:00
Serhiy Storchaka 26e08dfdd7
gh-107008: Document the curses module variables LINES and COLS (GH-107011)
LINES and COLS referred in curses.update_lines_cols() documentations are
the module variables, not the environment variables.
2023-07-22 19:54:50 +03:00
Matthieu Caneill 6e5f2235f3
gh-83006: Document behavior of `shutil.disk_usage` for non-mounted filesystems on Unix (#107031) 2023-07-22 17:58:06 +02:00
wulmer 149748ea4f
Fix Sphinx warnings in `re` module docs (#107044) 2023-07-22 16:44:44 +01:00
Oliver Rew c92ef6fe0e
gh-106967: remove Release and Date fields from whatsnew for 3.12 and 3.13 (#107000) 2023-07-22 14:57:51 +00:00
Jocelyn Castellano e5252c6127
gh-105090: Replace incorrect TLSv1.2 with TLSv1.3 (#105404) 2023-07-22 14:29:08 +00:00
Victor Stinner 756add081e
gh-106320: Document private C API removal in What's New 3.13 (#107027) 2023-07-22 15:30:13 +02:00
Joe Kaufeld ed491d9f78
Reformat code block to make it easier to read (#106965) 2023-07-22 14:19:30 +02:00
Sebastiaan Zeeff 6dbffaed17
gh-106969: Indicate no modules were added in 3.10 & 3.12 (#106988)
The "New Modules" section was left in place to ensure that the anchor
link for new modules will still exist:

/whatsnew/3.12.html#new-modules
/whatsnew/3.10.html#new-modules

This means that existing links to this section don't break.
2023-07-22 14:13:44 +02:00
Daniele Procida f8f16d0cfc
gh-106996: Amend the introduction to the turtle graphics documentation (#106997)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-07-22 04:31:44 -06:00
littlebutt's workshop 443d9b3033
gh-106976:alphabetise bullets by module name task1 (#106982) 2023-07-22 10:34:48 +02:00
Sebastiaan Zeeff d55b4da10c
gh-106973: Change non-integral to non-integer in "3.12 What's New" (#106984) 2023-07-22 02:27:48 -06:00
Hugo van Kemenade 806d7c98a5
gh-101100: Docs: Check Sphinx warnings and fail if improved (#106460) 2023-07-22 08:12:43 +00:00
Victor Stinner 41ca164551
gh-106004: Add PyDict_GetItemRef() function (#106005)
* Add PyDict_GetItemRef() and PyDict_GetItemStringRef() functions.
  Add these functions to the stable ABI version 3.13.
* Add unit tests on the PyDict C API in test_capi.
2023-07-21 23:10:51 +02:00
qqwqqw689 fd84ac0ee0
gh-106847: Add -X warn_default_encoding in sys.flags Doc (#106854)
Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2023-07-21 15:47:58 +05:30
Serhiy Storchaka 4b9948617f
gh-106909: Use role :const: for referencing module constants (GH-106910) 2023-07-21 12:40:37 +03:00
Serhiy Storchaka d036db728e
gh-106892: Use roles :data: and :const: for referencing module variables (GH-106894) 2023-07-21 12:34:30 +03:00
Serhiy Storchaka fcc816dbff
gh-106919: Use role :c:macro: for referencing the C "constants" (GH-106920) 2023-07-21 10:52:07 +03:00
Erlend E. Aasland 81861fd90b
Docs: Argument Clinic: Add Background and Tutorial top-level sections (#106904)
Add Background as a toplevel section with the following subsections:

- Background
  - The goals of Argument Clinic
  - Basic concepts and usage

Rename "Converting your first function" to Tutorial.

Add anchors for Background, Tutorial, and How-to Guides:

- :ref:`clinic-background`
- :ref:`clinic-tutorial`
- :ref:`clinic-howtos`

Link to these from within the Abstract.

Break the compatibility paragraph out of Abstract and make it a note.

Co-authored-by: Ezio Melotti <ezio.melotti@gmail.com>
2023-07-21 08:05:41 +02:00
Gregory P. Smith a31dea1feb
gh-106669: Revert "gh-102988: Detect email address parsing errors ... (#105127)" (#106733)
This reverts commit 18dfbd0357.
Adds a regression test from the issue.

See https://github.com/python/cpython/issues/106669.
2023-07-20 20:30:52 -07:00
Makonede 60e83968d5
Fix typo in tkinter docs (#106936)
Signed-off-by: Makonede <61922615+Makonede@users.noreply.github.com>
2023-07-21 00:07:06 +01:00
Jack Nelson 1e1f4e91a9
gh-106882: Note that `asyncio.Server` is only publicly exposed on 3.11+ (#106901)
And later versions of 3.10, 3.9
2023-07-19 20:56:26 +01:00
Barney Gale c6c5665ee0
GH-100502: Add `pathlib.PurePath.pathmod` attribute (GH-106533)
This instance attribute stores the implementation of `os.path` used for
low-level path operations: either `posixpath` or `ntpath`.
2023-07-19 18:59:55 +01:00
Erlend E. Aasland 505eede38d
Docs: Argument Clinic: Group guides about default values (#106872)
Previous ToC layout (excerpt):                                                                                          

    - How to use symbolic default values
    ...
    - How to assign default values to parameter
      - How to use the ``NULL`` default value
      - How to use expressions as default values

New layout:

    - How to assign default values to parameter
      - The ``NULL`` default value
      - Symbolic default values
      - Expressions as default values
2023-07-19 00:46:50 +02:00
Irit Katriel 40f3f11a77
gh-105481: Generate the opcode lists in dis from data extracted from bytecodes.c (#106758) 2023-07-18 19:42:44 +01:00
Victor Stinner 3535ef1eec
gh-106535: Document soft deprecations in What's New In Python 3.13 (#106859) 2023-07-18 17:13:51 +02:00
Erlend E. Aasland 4cb0b9c0a9
Docs: Normalise Argument Clinic advanced topics headings (#106842)
Co-authored-by: Ezio Melotti <ezio.melotti@gmail.com>
2023-07-18 10:50:17 +02:00
Serhiy Storchaka 83ac128490
bpo-42327: C API: Add PyModule_Add() function (GH-23443)
It is a fixed implementation of PyModule_AddObject() which consistently
steals reference both on success and on failure.
2023-07-18 09:42:05 +03:00
Terry Jan Reedy 7aa89e505d
gh-106780: Add __match_args__ to tutorial example (#106784)
Add Point definition with this attribute before example
that needs it.
2023-07-16 23:36:03 -04:00
Raymond Hettinger babb22da5a
Add more recipe tests. Make the factor recipe a bit faster and clearer. (GH-106817) 2023-07-16 21:37:07 -05:00
Jean-Baptiste Poupon 4dc593477a
Fix the french used in the email documentation (GH-106279)
* Fix the french used in the email documentation

The french used in one of the example was either machine translated a while ago or written by someone who does not speak french. Fixed it by using grammatically correct french.
2023-07-16 19:14:08 +02:00
Inada Naoki e58960160f
Doc: fix section levels of devmode doc (#106801) 2023-07-16 21:23:54 +09:00
Simone Rubino 83bd568d2b
Doc: devmode: add -Xdev option to example (#106253) 2023-07-16 16:29:58 +09:00
Hugo van Kemenade c02ee45031
Docs search: Replace jQuery with vanilla JavaScript (#106743)
* Replace jQuery with vanilla JavaScript
* Switch 'var' to 'const' or 'let'
2023-07-16 10:26:26 +03:00
Erlend E. Aasland 8c17729489
Docs: Normalize Argument Clinic How-To section capitalization (#106788) 2023-07-16 00:42:58 +02:00
Mathieu Dupuy d46a42fd8e
faq/library: remove outdated section (#105996) 2023-07-15 13:23:10 -07:00
Raymond Hettinger e2ec0bad67
Add more examples to the recipe docs (GH-106782)
Demonstrate that factor() works for large composites and large primes.
2023-07-15 14:43:09 -05:00
Inada Naoki 2566b74b26
gh-81283: compiler: remove indent from docstring (#106411)
Co-authored-by: Éric <merwok@netwok.org>
2023-07-15 19:33:32 +09:00
Alex Waygood 89ec0e9529
gh-106745: typing docs: Clarify that removal of PEP-585 aliases is not currently planned (#106748) 2023-07-14 19:49:02 +01:00
Jason R. Coombs 243fdcb40e
gh-106531: Remove importlib.resources._legacy (#106532)
* gh-106531: Remove importlib.resources._legacy

Syncs with importlib_resources 6.0.

* Remove documentation for removed functionality.
2023-07-14 13:38:28 -04:00
Charlie Zhao 89867d2491
gh-106446: Fix failed doctest in stdtypes (#106447)
---------
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2023-07-14 03:38:03 -04:00
Nikita Sobolev 490295d651
gh-105626: Change the default return value of `HTTPConnection.get_proxy_response_headers` (#105628) 2023-07-13 23:55:49 -07:00
Ned Batchelder f014f1567c
docs: clarify Path.suffix (GH-106650) 2023-07-13 20:24:54 +01:00
Alex Waygood 32718f908c
gh-106309: Deprecate typing.no_type_check_decorator (#106312) 2023-07-13 14:30:35 +01:00
Victor Stinner 42bc485a24
gh-105373: Elaborate Pending Removal in What's New in Python 3.13 (#106675)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-07-12 12:28:10 +02:00
Hugo van Kemenade e8ab0096a5
Add Plausible for docs metrics (#106644) 2023-07-12 05:35:24 +03:00
Mariusz Felisiak f520804b03
gh-96165: Clarify passing ":memory:" in sqlite3.connect() (#106451) 2023-07-11 22:18:19 +02:00
Mariusz Felisiak fc7ff1af45
gh-96165: Clarify omitting the FROM clause in SQLite queries (#106513) 2023-07-11 22:09:04 +02:00
Serhiy Storchaka 4bf43710d1
gh-106307: C API: Add PyMapping_GetOptionalItem() function (GH-106308)
Also add PyMapping_GetOptionalItemString() function.
2023-07-11 23:04:12 +03:00
Serhiy Storchaka 579aa89e68
gh-106521: Add PyObject_GetOptionalAttr() function (GH-106522)
It is a new name of former _PyObject_LookupAttr().

Add also PyObject_GetOptionalAttrString().
2023-07-11 22:13:27 +03:00
RustyNail d0b7e18262
gh-106625 : Add missing code to tutorial 4.6 example (#106623)
* Added missing import statement.

* Update Doc/tutorial/controlflow.rst

* Update Doc/tutorial/controlflow.rst

* Update controlflow.rst

* Make point regular class with __init__.

---------

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2023-07-11 13:22:07 -04:00
Petr Viktorin af5cf1e751
gh-103968: What's New: Add porting hints for PyType_From with metaclasses (GH-105698) 2023-07-11 13:20:29 +02:00
Victor Stinner 1f2921b72c
gh-106572: Convert PyObject_DelAttr() to a function (#106611)
* Convert PyObject_DelAttr() and PyObject_DelAttrString() macros to
  functions.
* Add PyObject_DelAttr() and PyObject_DelAttrString() functions to
  the stable ABI.
* Replace PyObject_SetAttr(obj, name, NULL) with
  PyObject_DelAttr(obj, name).
2023-07-11 11:38:22 +02:00
Thomas Dwyer 18dfbd0357
gh-102988: Detect email address parsing errors and return empty tuple to indicate the parsing error (old API) (#105127)
Detect email address parsing errors and return empty tuple to indicate the parsing error (old API). This fixes or at least ameliorates CVE-2023-27043.

---------

Co-authored-by: Gregory P. Smith <greg@krypto.org>
2023-07-10 23:00:55 +00:00
Eric Snow a840806d33
gh-105227: Add PyType_GetDict() (GH-105747)
This compensates for static builtin types having `tp_dict` set to `NULL`.

Co-authored-by: Petr Viktorin <encukou@gmail.com>
2023-07-10 18:41:02 +02:00
Riahiamirreza 43389e4a3a
Fix typo in datamodel.rst (#106587) 2023-07-10 17:22:41 +05:30
Hugo van Kemenade 34c14147a2
gh-106487: Allow the 'count' argument of `str.replace` to be a keyword (#106488) 2023-07-10 12:52:36 +03:00
Ned Batchelder dac1e36490
Clarify how topics.py gets created. (#106121)
When changing docs, it was easy to find text in topics.py, and I
wondered whether I was supposed to edit it.  Thankfully, the top of the
file says it's auto-generated, so I knew I didn't have to edit it. But I
didn't know what started the auto-generation process.

It's part of the release process, so I'll leave a note here for future
editors.
2023-07-09 20:41:31 -07:00
Victor Stinner 970982e03d
gh-105733: Fix ctypes What's New entry (#106576) 2023-07-10 04:05:38 +02:00
Alex Waygood ca8b55c7f5
gh-106461: typing: Consolidate docs on `Callable` (#106462) 2023-07-09 21:46:15 +01:00
Victor Stinner ee46cb6aa9
gh-105927: PyWeakref_GetRef() returns 1 on success (#106561)
PyWeakref_GetRef() now returns 1 on success, and return 0 if the
reference is dead.

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-07-09 15:50:26 +00:00
Victor Stinner 1e12c8cfa3
gh-105373: Doc lists pending removals (#106540) 2023-07-09 17:26:26 +02:00
Victor Stinner dcc028d924
gh-105376: Remove logging.warn() and LoggerAdapter.warn() (#106553) 2023-07-09 10:32:50 +02:00
Victor Stinner da98ed0aa0
gh-106535: Soft deprecate the getopt module (#105735)
The getopt module exists since the initial revision of the Python
source code (1990). The optparse module was added to Python 2.3. When
Python 2.7 added the 3rd argparse module, the optparse module was
soft deprecated. Soft deprecate the getopt module.
2023-07-08 17:51:45 +02:00
Owain Davies ec7180bd1b
gh-101880: add link to object.__hash__() in hash() builtin documentation (#101883) 2023-07-08 08:48:33 +00:00
Victor Stinner ffe70c4d1c
gh-105373: Remove C API global config vars in Python 3.14 (#106538)
Schedule the removal of C API global configuration variables in
Python 3.14. Announce the removal to help C extension maintainers to
upgrade their code.
2023-07-08 01:49:20 +02:00
Victor Stinner 1b2938122d
gh-105373: Doc lists pending C API removals (#106537) 2023-07-08 00:50:51 +02:00
Victor Stinner d524b6f61f
gh-106535: Document PEP 387 Soft Deprecation (#106536)
Mark the optparse module as soft deprecated.
2023-07-08 00:03:51 +02:00
C.A.M. Gerlach 38aa89a52e
Doc: Add missing ref labels to exception groups/notes sections (#106465) 2023-07-05 23:41:04 -06:00
Carl Meyer 13aefd175e
gh-105256: What's New note for comprehension over locals() (#106378) 2023-07-05 18:12:21 -06:00
Dong-hee Na 217f47d6e5
gh-96844: Improve error message of list.remove (gh-106455) 2023-07-06 07:19:49 +09:00
Jelle Zijlstra c16ea94abc
shlex docs: remove outdated note (#106463)
As the versionchanged notice says, this note is no longer true on 3.12+.
2023-07-05 13:38:53 -07:00
Kristján Valur Jónsson 12a9813808
Clarify state of CancelledError in doc (#106453)
This change makes it explicit that asyncio.CancelledError is not a subclass of Exception.
2023-07-05 08:07:02 -07:00
Jelle Zijlstra ad075682ba
tp_flags docs: fix indentation (#106420) 2023-07-05 05:08:25 +00:00
Mario Corchero 2dfc7fae78
gh-61215: Rename `wait_until_any_call` to `wait_until_any_call_with` (#106414)
mock: Rename `wait_until_any_call` to `wait_until_any_call_with`

Rename the method to be more explicit that it expects the args and
kwargs to wait for.
2023-07-04 18:34:43 +01:00
Raymond Hettinger 7709037095
Small speed-up for the convolve() recipe. (GH-106371) 2023-07-03 15:38:38 -05:00
Mario Corchero d65b783b69
gh-61215: New mock to wait for multi-threaded events to happen (#16094)
mock: Add `ThreadingMock` class

Add a new class that allows to wait for a call to happen by using
`Event` objects. This mock class can be used to test and validate
expectations of multithreading code.

It uses two attributes for events to distinguish calls with any argument
and calls with specific arguments.

The calls with specific arguments need a lock to prevent two calls in
parallel from creating the same event twice.

The timeout is configured at class and constructor level to allow users
to set a timeout, we considered passing it as an argument to the
function but it could collide with a function parameter. Alternatively
we also considered passing it as positional only but from an API
caller perspective it was unclear what the first number meant on the
function call, think `mock.wait_until_called(1, "arg1", "arg2")`, where
1 is the timeout.

Lastly we also considered adding the new attributes to magic mock
directly rather than having a custom mock class for multi threading
scenarios, but we preferred to have specialised class that can be
composed if necessary. Additionally, having added it to `MagicMock`
directly would have resulted in `AsyncMock` having this logic, which
would not work as expected, since when if user "waits" on a
coroutine does not have the same meaning as waiting on a standard
call.

Co-authored-by: Karthikeyan Singaravelan <tir.karthi@gmail.com>
2023-07-03 07:56:54 +01:00
Ned Batchelder 987b712b4a
Replace the esoteric term 'datum' when describing dict comprehensions (#106119) 2023-07-02 20:22:40 -07:00
Inada Naoki 20b7c79b9d
gh-104922: Doc: add note about PY_SSIZE_T_CLEAN (#106314)
Add note about PY_SSIZE_T_CLEAN in extending and embedding document.
2023-07-03 00:54:35 +09:00
Victor Stinner 18b1fdebe0
gh-106320: Remove _PyInterpreterState_Get() alias (#106321)
Replace calls to the (removed) slow _PyInterpreterState_Get() with
fast inlined _PyInterpreterState_GET() function.
2023-07-01 23:44:07 +00:00
Victor Stinner 46d77610fc
gh-106316: Remove pytime.h header file (#106317)
Remove the "cpython/pytime.h" header file: it only contained private
functions. Move functions to the internal pycore_time.h header file.

Move tests from _testcapi to _testinternalcapi. Rename also test
methods to have the same name than tested C functions.

No longer export these functions:

* _PyTime_Add()
* _PyTime_As100Nanoseconds()
* _PyTime_FromMicrosecondsClamp()
* _PyTime_FromTimespec()
* _PyTime_FromTimeval()
* _PyTime_GetPerfCounterWithInfo()
* _PyTime_MulDiv()
2023-07-01 22:27:18 +00:00
Terry Jan Reedy 04dfc6fa90
gh-106232: Make timeit doc command lines compatible with Windows. (#106296)
Command Prompt (CMD Shell) and older versions of PowerShell
require double quotes and single quotes inside the string.
This form also works on linux and macOS.
2023-06-30 22:34:31 -04:00
F3eQnxN3RriK a8ae73965b
gh-101100: Docs: Fix references to several numeric dunders (#106278)
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-06-30 15:27:09 +01:00
Victor Stinner 80b3d8f337
gh-106023: Remove _PyObject_FastCallTstate() function (#106273) 2023-06-30 12:28:59 +02:00
Victor Stinner f3cf2ddd8d
gh-77782: Deprecate Py_HasFileSystemDefaultEncoding (#106272)
Deprecate Py_HasFileSystemDefaultEncoding variable.
2023-06-30 11:57:06 +02:00
Victor Stinner 2efdd2a14e
gh-106023: Remove _PyObject_FastCall() function (#106265) 2023-06-30 11:46:43 +02:00
Brandt Bucher 7b2d94d875
GH-106008: Make implicit boolean conversions explicit (GH-106003) 2023-06-29 13:49:54 -07:00
hms 8bff940ad6
gh-105775: Convert LOAD_CLOSURE to a pseudo-op (#106059)
This enables super-instruction formation,
removal of checks for uninitialized variables,
and frees up an instruction.
2023-06-29 09:34:00 -07:00
F3eQnxN3RriK 18f51f91e2
gh-101100: Fix reference to `parse_args` in `optparse.rst` (#105265) 2023-06-28 15:30:26 +03:00
F3eQnxN3RriK bbf722dcd3
gh-101100: Fix reference to asynchronous methods (#106172) 2023-06-28 10:43:11 +00:00
Sam Bull 6b52a581c1
gh-105993: Add possible `None` return type to `asyncio.EventLoop.start_tls` docs (#105995) 2023-06-28 16:08:15 +05:30
lightdrk 541a10f9ed
Refer to `TimeoutError` instead of `asyncio.TimeoutError` in `asyncio-task.rst` (#106136)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-06-27 23:21:38 -06:00
Victor Stinner 3f8483cad2
gh-106168: PyTuple_SET_ITEM() now checks the index (#106164)
PyTuple_SET_ITEM() and PyList_SET_ITEM() now check the index argument
with an assertion if Python is built in debug mode or is built with
assertions.

* list_extend() and _PyList_AppendTakeRef() now set the list size
  before calling PyList_SET_ITEM().
* PyStructSequence_GetItem() and PyStructSequence_SetItem() now check
  the index argument: must be lesser than REAL_SIZE(op).
* PyStructSequence_GET_ITEM() and PyStructSequence_SET_ITEM() are now
  aliases to PyStructSequence_GetItem() and
  PyStructSequence_SetItem().
2023-06-28 03:45:57 +02:00
Nikita Sobolev 33608fd67d
gh-92788: Add docs for `ast.Module`, `ast.Expression`, and others (#101055) 2023-06-27 06:43:49 -07:00
Raymond Hettinger a8210b6df1
GH-105774: Clarify operation of normalize() (GH-106093) 2023-06-26 23:12:22 -05:00
Łukasz Langa d3af83b934
Revert "GH-96145: Add AttrDict to JSON module for use with object_hook (#96146)" (#105948)
This reverts commit 1f0eafa844.
2023-06-26 20:35:53 +02:00