Skip to content

Commit 0bb0c69

Browse files
committed
Merge branch 'main' into cached_property
* main: (37 commits) pythongh-98251: Allow venv to pass along PYTHON* variables to pip and ensurepip when they do not impact path resolution (pythonGH-98259) Bpo-41246: IOCP Proactor avoid callback code duplication (python#21399) bpo-46364: Use sockets for stdin of asyncio only on AIX (python#30596) pythongh-98178: syslog() is not thread-safe on macOS (python#98213) Mark all targets in `Doc/Makefile` as `PHONY` (pythonGH-98189) pythongh-97982: Factorize PyUnicode_Count() and unicode_count() code (python#98025) pythongh-96265: Formatting changes for faq/general (python#98129) tutorial: remove "with single quotes" (python#98204) pythongh-97669: Remove Tools/scripts/startuptime.py (python#98214) signalmodule.c uses _PyErr_WriteUnraisableMsg() (python#98217) pythongh-97669: Fix test_tools reference leak (python#98216) pythongh-97669: Create Tools/patchcheck/ directory (python#98186) pythongh-65046: Link to logging cookbook from asyncio docs (python#98207) Formatting fixes in contextlib docs (python#98111) pythongh-95276: Add callable entry to the glossary (python#95738) pythongh-96130: Rephrase use of "typecheck" verb for clarity (python#98144) Fix some incorrect indentation around the main switch (python#98177) pythongh-98172: Fix formatting in `except*` docs (python#98173) pythongh-97982: Remove asciilib_count() (python#98164) pythongh-95756: Free and NULL-out code caches when needed (pythonGH-98181) ...
2 parents 26c2659 + 2fe44f7 commit 0bb0c69

File tree

76 files changed

+490
-2633
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

76 files changed

+490
-2633
lines changed

.azure-pipelines/posix-steps.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ steps:
6868
- ${{ if eq(parameters.patchcheck, 'true') }}:
6969
- script: |
7070
git fetch origin
71-
./python Tools/scripts/patchcheck.py --ci true
71+
./python Tools/patchcheck/patchcheck.py --ci true
7272
displayName: 'Run patchcheck.py'
7373
condition: and(succeeded(), eq(variables['Build.Reason'], 'PullRequest'))
7474

.github/workflows/build.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ jobs:
7373
- name: Add ccache to PATH
7474
run: echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV
7575
- name: Configure ccache action
76-
uses: hendrikmuhs/ccache-action@v1
76+
uses: hendrikmuhs/ccache-action@v1.2
7777
- name: Check Autoconf version 2.69 and aclocal 1.16.3
7878
run: |
7979
grep "Generated by GNU Autoconf 2.69" configure
@@ -202,7 +202,7 @@ jobs:
202202
run: |
203203
echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV
204204
- name: Configure ccache action
205-
uses: hendrikmuhs/ccache-action@v1
205+
uses: hendrikmuhs/ccache-action@v1.2
206206
- name: Setup directory envs for out-of-tree builds
207207
run: |
208208
echo "CPYTHON_RO_SRCDIR=$(realpath -m ${GITHUB_WORKSPACE}/../cpython-ro-srcdir)" >> $GITHUB_ENV
@@ -265,7 +265,7 @@ jobs:
265265
run: |
266266
echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV
267267
- name: Configure ccache action
268-
uses: hendrikmuhs/ccache-action@v1
268+
uses: hendrikmuhs/ccache-action@v1.2
269269
- name: Configure CPython
270270
run: ./configure --with-pydebug --with-openssl=$OPENSSL_DIR
271271
- name: Build CPython
@@ -309,7 +309,7 @@ jobs:
309309
run: |
310310
echo "PATH=/usr/lib/ccache:$PATH" >> $GITHUB_ENV
311311
- name: Configure ccache action
312-
uses: hendrikmuhs/ccache-action@v1
312+
uses: hendrikmuhs/ccache-action@v1.2
313313
- name: Configure CPython
314314
run: ./configure --with-address-sanitizer --without-pymalloc
315315
- name: Build CPython

Doc/Makefile

Lines changed: 3 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@ PAPEROPT_letter = -D latex_elements.papersize=letterpaper
2121
ALLSPHINXOPTS = -b $(BUILDER) -d build/doctrees $(PAPEROPT_$(PAPER)) -j auto \
2222
$(SPHINXOPTS) $(SPHINXERRORHANDLING) . build/$(BUILDER) $(SOURCES)
2323

24-
.PHONY: help build html htmlhelp latex text texinfo changes linkcheck \
25-
suspicious coverage doctest pydoc-topics htmlview clean dist check serve \
26-
autobuild-dev autobuild-stable venv
24+
.PHONY: help build html htmlhelp latex text texinfo epub changes linkcheck \
25+
coverage doctest pydoc-topics htmlview clean clean-venv venv dist check serve \
26+
autobuild-dev autobuild-dev-html autobuild-stable autobuild-stable-html
2727

2828
help:
2929
@echo "Please use \`make <target>' where <target> is one of"
@@ -42,7 +42,6 @@ help:
4242
@echo " doctest to run doctests in the documentation"
4343
@echo " pydoc-topics to regenerate the pydoc topics file"
4444
@echo " dist to create a \"dist\" directory with archived docs for download"
45-
@echo " suspicious to check for suspicious markup in output text"
4645
@echo " check to run a check for frequent markup errors"
4746

4847
build:
@@ -110,18 +109,6 @@ linkcheck:
110109
"or in build/$(BUILDER)/output.txt"; \
111110
false; }
112111

113-
suspicious: BUILDER = suspicious
114-
suspicious:
115-
@$(MAKE) build BUILDER=$(BUILDER) || { \
116-
echo "Suspicious check complete; look for any errors in the above output" \
117-
"or in build/$(BUILDER)/suspicious.csv. If all issues are false" \
118-
"positives, append that file to tools/susp-ignored.csv."; \
119-
false; }
120-
@echo "⚠ make suspicious is deprecated and will be removed soon."
121-
@echo "⚠ Use:"
122-
@echo "⚠ make check"
123-
@echo "⚠ instead."
124-
125112
coverage: BUILDER = coverage
126113
coverage: build
127114
@echo "Coverage finished; see c.txt and python.txt in build/coverage"

Doc/README.rst

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,9 +93,6 @@ Available make targets are:
9393
plain text documentation for the labels defined in
9494
``tools/pyspecific.py`` -- pydoc needs these to show topic and keyword help.
9595

96-
* "suspicious", which checks the parsed markup for text that looks like
97-
malformed and thus unconverted reST.
98-
9996
* "check", which checks for frequent markup errors.
10097

10198
* "serve", which serves the build/html directory on port 8000.

Doc/c-api/buffer.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ a buffer, see :c:func:`PyObject_GetBuffer`.
9999
For :term:`contiguous` arrays, the value points to the beginning of
100100
the memory block.
101101

102-
.. c:member:: void *obj
102+
.. c:member:: PyObject *obj
103103
104104
A new reference to the exporting object. The reference is owned by
105105
the consumer and automatically decremented and set to ``NULL`` by

Doc/c-api/memoryview.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ any other object.
5555
*mview* **must** be a memoryview instance; this macro doesn't check its type,
5656
you must do it yourself or you will risk crashes.
5757
58-
.. c:function:: Py_buffer *PyMemoryView_GET_BASE(PyObject *mview)
58+
.. c:function:: PyObject *PyMemoryView_GET_BASE(PyObject *mview)
5959
6060
Return either a pointer to the exporting object that the memoryview is based
6161
on or ``NULL`` if the memoryview has been created by one of the functions

Doc/faq/general.rst

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -125,11 +125,15 @@ find packages of interest to you.
125125
How does the Python version numbering scheme work?
126126
--------------------------------------------------
127127

128-
Python versions are numbered A.B.C or A.B. A is the major version number -- it
129-
is only incremented for really major changes in the language. B is the minor
130-
version number, incremented for less earth-shattering changes. C is the
131-
micro-level -- it is incremented for each bugfix release. See :pep:`6` for more
132-
information about bugfix releases.
128+
Python versions are numbered "A.B.C" or "A.B":
129+
130+
* *A* is the major version number -- it is only incremented for really major
131+
changes in the language.
132+
* *B* is the minor version number -- it is incremented for less earth-shattering
133+
changes.
134+
* *C* is the micro version number -- it is incremented for each bugfix release.
135+
136+
See :pep:`6` for more information about bugfix releases.
133137

134138
Not all releases are bugfix releases. In the run-up to a new major release, a
135139
series of development releases are made, denoted as alpha, beta, or release
@@ -139,12 +143,14 @@ Betas are more stable, preserving existing interfaces but possibly adding new
139143
modules, and release candidates are frozen, making no changes except as needed
140144
to fix critical bugs.
141145

142-
Alpha, beta and release candidate versions have an additional suffix. The
143-
suffix for an alpha version is "aN" for some small number N, the suffix for a
144-
beta version is "bN" for some small number N, and the suffix for a release
145-
candidate version is "rcN" for some small number N. In other words, all versions
146-
labeled 2.0aN precede the versions labeled 2.0bN, which precede versions labeled
147-
2.0rcN, and *those* precede 2.0.
146+
Alpha, beta and release candidate versions have an additional suffix:
147+
148+
* The suffix for an alpha version is "aN" for some small number *N*.
149+
* The suffix for a beta version is "bN" for some small number *N*.
150+
* The suffix for a release candidate version is "rcN" for some small number *N*.
151+
152+
In other words, all versions labeled *2.0aN* precede the versions labeled
153+
*2.0bN*, which precede versions labeled *2.0rcN*, and *those* precede 2.0.
148154

149155
You may also find version numbers with a "+" suffix, e.g. "2.2+". These are
150156
unreleased versions, built directly from the CPython development repository. In
@@ -429,7 +435,7 @@ With the interpreter, documentation is never far from the student as they are
429435
programming.
430436

431437
There are also good IDEs for Python. IDLE is a cross-platform IDE for Python
432-
that is written in Python using Tkinter. PythonWin is a Windows-specific IDE.
438+
that is written in Python using Tkinter.
433439
Emacs users will be happy to know that there is a very good Python mode for
434440
Emacs. All of these programming environments provide syntax highlighting,
435441
auto-indenting, and access to the interactive interpreter while coding. Consult

Doc/glossary.rst

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -210,6 +210,16 @@ Glossary
210210
A list of bytecode instructions can be found in the documentation for
211211
:ref:`the dis module <bytecodes>`.
212212

213+
callable
214+
A callable is an object that can be called, possibly with a set
215+
of arguments (see :term:`argument`), with the following syntax::
216+
217+
callable(argument1, argument2, ...)
218+
219+
A :term:`function`, and by extension a :term:`method`, is a callable.
220+
An instance of a class that implements the :meth:`~object.__call__`
221+
method is also a callable.
222+
213223
callback
214224
A subroutine function which is passed as an argument to be executed at
215225
some point in the future.

Doc/howto/logging-cookbook.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -332,6 +332,8 @@ configuration::
332332
print('complete')
333333

334334

335+
.. _blocking-handlers:
336+
335337
Dealing with handlers that block
336338
--------------------------------
337339

Doc/library/asyncio-dev.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,8 @@ adjusted::
149149

150150

151151
Network logging can block the event loop. It is recommended to use
152-
a separate thread for handling logs or use non-blocking IO.
152+
a separate thread for handling logs or use non-blocking IO. For example,
153+
see :ref:`blocking-handlers`.
153154

154155

155156
.. _asyncio-coroutine-not-scheduled:

0 commit comments

Comments
 (0)