Skip to content

Commit

Permalink
gh-93851: Fix all broken links in Doc/ (GH-93853) (GH-94076)
Browse files Browse the repository at this point in the history
(cherry picked from commit f62ff97)

Co-authored-by: Oleg Iarygin <oleg@arhadthedev.net>
  • Loading branch information
miss-islington and arhadthedev authored Jun 21, 2022
1 parent f6d777c commit 63e127f
Show file tree
Hide file tree
Showing 30 changed files with 59 additions and 47 deletions.
2 changes: 1 addition & 1 deletion Doc/distutils/apiref.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ API Reference
and other APIs, makes the API consistent across different Python versions,
and is hence recommended over using ``distutils`` directly.

.. _New and changed setup.py arguments in setuptools: https://setuptools.readthedocs.io/en/latest/setuptools.html#new-and-changed-setup-keywords
.. _New and changed setup.py arguments in setuptools: https://web.archive.org/web/20210614192516/https://setuptools.pypa.io/en/stable/userguide/keywords.html

.. include:: ./_setuptools_disclaimer.rst

Expand Down
2 changes: 1 addition & 1 deletion Doc/faq/library.rst
Original file line number Diff line number Diff line change
Expand Up @@ -670,7 +670,7 @@ A summary of available frameworks is maintained by Paul Boddie at
https://wiki.python.org/moin/WebProgramming\ .
Cameron Laird maintains a useful set of pages about Python web technologies at
http://phaseit.net/claird/comp.lang.python/web_python.
https://web.archive.org/web/20210224183619/http://phaseit.net/claird/comp.lang.python/web_python.
How can I mimic CGI form submission (METHOD=POST)?
Expand Down
2 changes: 1 addition & 1 deletion Doc/faq/programming.rst
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ Are there tools to help find bugs or perform static analysis?

Yes.

`Pylint <https://www.pylint.org/>`_ and
`Pylint <https://pylint.pycqa.org/en/latest/index.html>`_ and
`Pyflakes <https://github.com/PyCQA/pyflakes>`_ do basic checking that will
help you catch bugs sooner.

Expand Down
6 changes: 3 additions & 3 deletions Doc/howto/urllib2.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@
HOWTO Fetch Internet Resources Using The urllib Package
***********************************************************

:Author: `Michael Foord <http://www.voidspace.org.uk/python/index.shtml>`_
:Author: `Michael Foord <https://agileabstractions.com/>`_

.. note::

There is a French translation of an earlier revision of this
HOWTO, available at `urllib2 - Le Manuel manquant
<http://www.voidspace.org.uk/python/articles/urllib2_francais.shtml>`_.
<https://web.archive.org/web/20200910051922/http://www.voidspace.org.uk/python/articles/urllib2_francais.shtml>`_.



Expand All @@ -22,7 +22,7 @@ Introduction
You may also find useful the following article on fetching web resources
with Python:

* `Basic Authentication <http://www.voidspace.org.uk/python/articles/authentication.shtml>`_
* `Basic Authentication <https://web.archive.org/web/20201215133350/http://www.voidspace.org.uk/python/articles/authentication.shtml>`_

A tutorial on *Basic Authentication*, with examples in Python.

Expand Down
2 changes: 1 addition & 1 deletion Doc/installing/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,7 @@ It is possible that ``pip`` does not get installed by default. One potential fix
python -m ensurepip --default-pip

There are also additional resources for `installing pip.
<https://packaging.python.org/tutorials/installing-packages/#install-pip-setuptools-and-wheel>`__
<https://packaging.python.org/en/latest/tutorials/installing-packages/#ensure-pip-setuptools-and-wheel-are-up-to-date>`__


Installing binary extensions
Expand Down
2 changes: 1 addition & 1 deletion Doc/library/datetime.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2603,7 +2603,7 @@ Notes:
many other calendar systems.
.. [#] See R. H. van Gent's `guide to the mathematics of the ISO 8601 calendar
<https://www.staff.science.uu.nl/~gent0113/calendar/isocalendar.htm>`_
<https://web.archive.org/web/20220531051136/https://webspace.science.uu.nl/~gent0113/calendar/isocalendar.htm>`_
for a good explanation.
.. [#] Passing ``datetime.strptime('Feb 29', '%b %d')`` will fail since ``1900`` is not a leap year.
2 changes: 1 addition & 1 deletion Doc/library/hashlib.rst
Original file line number Diff line number Diff line change
Expand Up @@ -668,7 +668,7 @@ function:
hash function used in the protocol summarily stops this type of attack.

(`The Skein Hash Function Family
<http://www.skein-hash.info/sites/default/files/skein1.3.pdf>`_,
<https://www.schneier.com/wp-content/uploads/2016/02/skein.pdf>`_,
p. 21)

BLAKE2 can be personalized by passing bytes to the *person* argument::
Expand Down
2 changes: 1 addition & 1 deletion Doc/library/html.entities.rst
Original file line number Diff line number Diff line change
Expand Up @@ -44,4 +44,4 @@ This module defines four dictionaries, :data:`html5`,

.. rubric:: Footnotes

.. [#] See https://html.spec.whatwg.org/multipage/syntax.html#named-character-references
.. [#] See https://html.spec.whatwg.org/multipage/named-characters.html#named-character-references
2 changes: 1 addition & 1 deletion Doc/library/importlib.metadata.rst
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ Inspect the resolved entry point::
The ``group`` and ``name`` are arbitrary values defined by the package author
and usually a client will wish to resolve all entry points for a particular
group. Read `the setuptools docs
<https://setuptools.readthedocs.io/en/latest/setuptools.html#dynamic-discovery-of-services-and-plugins>`_
<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_
for more information on entry points, their definition, and usage.

*Compatibility Note*
Expand Down
2 changes: 1 addition & 1 deletion Doc/library/importlib.resources.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
.. module:: importlib.resources
:synopsis: Package resource reading, opening, and access

**Source code:** :source:`Lib/importlib/resources.py`
**Source code:** :source:`Lib/importlib/resources/__init__.py`

--------------

Expand Down
2 changes: 1 addition & 1 deletion Doc/library/math.rst
Original file line number Diff line number Diff line change
Expand Up @@ -578,7 +578,7 @@ Special functions

The :func:`erf` function can be used to compute traditional statistical
functions such as the `cumulative standard normal distribution
<https://en.wikipedia.org/wiki/Normal_distribution#Cumulative_distribution_function>`_::
<https://en.wikipedia.org/wiki/Normal_distribution#Cumulative_distribution_functions>`_::

def phi(x):
'Cumulative distribution function for the standard normal distribution'
Expand Down
2 changes: 1 addition & 1 deletion Doc/library/os.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4295,7 +4295,7 @@ written in Python, such as a mail server's external command delivery program.
:attr:`!children_system`, and :attr:`!elapsed` in that order.

See the Unix manual page
:manpage:`times(2)` and :manpage:`times(3)` manual page on Unix or `the GetProcessTimes MSDN
:manpage:`times(2)` and `times(3) <https://www.freebsd.org/cgi/man.cgi?time(3)>`_ manual page on Unix or `the GetProcessTimes MSDN
<https://docs.microsoft.com/windows/win32/api/processthreadsapi/nf-processthreadsapi-getprocesstimes>`_
on Windows. On Windows, only :attr:`!user` and :attr:`!system` are known; the other attributes are zero.

Expand Down
5 changes: 2 additions & 3 deletions Doc/library/pathlib.rst
Original file line number Diff line number Diff line change
Expand Up @@ -328,14 +328,13 @@ Pure paths provide the following methods and properties:
.. note::

This behavior conforms to *The Open Group Base Specifications Issue 6*,
paragraph `4.11 *Pathname Resolution* <xbd_path_resolution>`_:
paragraph `4.11 Pathname Resolution
<https://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap04.html#tag_04_11>`_:

*"A pathname that begins with two successive slashes may be interpreted in
an implementation-defined manner, although more than two leading slashes
shall be treated as a single slash."*

.. xbd_path_resolution: https://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap04.html#tag_04_11
.. data:: PurePath.anchor

The concatenation of the drive and root::
Expand Down
2 changes: 1 addition & 1 deletion Doc/library/signal.rst
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ The signal module defines three enums:

:class:`enum.IntEnum` collection the constants :const:`SIG_BLOCK`, :const:`SIG_UNBLOCK` and :const:`SIG_SETMASK`.

Availability: Unix. See the man page :manpage:`sigprocmask(3)` and
Availability: Unix. See the man page :manpage:`sigprocmask(2)` and
:manpage:`pthread_sigmask(3)` for further information.

.. versionadded:: 3.5
Expand Down
4 changes: 2 additions & 2 deletions Doc/library/ssl.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1910,7 +1910,7 @@ to speed up repeated connections from the same clients.
.. method:: SSLContext.session_stats()

Get statistics about the SSL sessions created or managed by this context.
A dictionary is returned which maps the names of each `piece of information <https://www.openssl.org/docs/man1.1.1/ssl/SSL_CTX_sess_number.html>`_ to their
A dictionary is returned which maps the names of each `piece of information <https://www.openssl.org/docs/man1.1.1/man3/SSL_CTX_sess_number.html>`_ to their
numeric values. For example, here is the total number of hits and misses
in the session cache since the context was created::

Expand Down Expand Up @@ -2704,7 +2704,7 @@ enabled when negotiating a SSL session is possible through the
:meth:`SSLContext.set_ciphers` method. Starting from Python 3.2.3, the
ssl module disables certain weak ciphers by default, but you may want
to further restrict the cipher choice. Be sure to read OpenSSL's documentation
about the `cipher list format <https://www.openssl.org/docs/manmaster/man1/ciphers.html#CIPHER-LIST-FORMAT>`_.
about the `cipher list format <https://www.openssl.org/docs/man1.1.1/man1/ciphers.html#CIPHER-LIST-FORMAT>`_.
If you want to check which ciphers are enabled by a given cipher list, use
:meth:`SSLContext.get_ciphers` or the ``openssl ciphers`` command on your
system.
Expand Down
4 changes: 2 additions & 2 deletions Doc/library/statistics.rst
Original file line number Diff line number Diff line change
Expand Up @@ -798,7 +798,7 @@ of applications in statistics.
Compute the inverse cumulative distribution function, also known as the
`quantile function <https://en.wikipedia.org/wiki/Quantile_function>`_
or the `percent-point
<https://www.statisticshowto.datasciencecentral.com/inverse-distribution-function/>`_
<https://web.archive.org/web/20190203145224/https://www.statisticshowto.datasciencecentral.com/inverse-distribution-function/>`_
function. Mathematically, it is written ``x : P(X <= x) = p``.

Finds the value *x* of the random variable *X* such that the
Expand Down Expand Up @@ -947,7 +947,7 @@ probability that the Python room will stay within its capacity limits?
Normal distributions commonly arise in machine learning problems.

Wikipedia has a `nice example of a Naive Bayesian Classifier
<https://en.wikipedia.org/wiki/Naive_Bayes_classifier#Sex_classification>`_.
<https://en.wikipedia.org/wiki/Naive_Bayes_classifier#Person_classification>`_.
The challenge is to predict a person's gender from measurements of normally
distributed features including height, weight, and foot size.

Expand Down
2 changes: 1 addition & 1 deletion Doc/library/struct.rst
Original file line number Diff line number Diff line change
Expand Up @@ -467,6 +467,6 @@ The :mod:`struct` module also defines the following type:

.. _half precision format: https://en.wikipedia.org/wiki/Half-precision_floating-point_format

.. _ieee 754 standard: https://en.wikipedia.org/wiki/IEEE_floating_point#IEEE_754-2008
.. _ieee 754 standard: https://en.wikipedia.org/wiki/IEEE_754-2008_revision

.. _IETF RFC 1700: https://tools.ietf.org/html/rfc1700
2 changes: 1 addition & 1 deletion Doc/library/unittest.mock.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1944,7 +1944,7 @@ Both patch_ and patch.object_ correctly patch and restore descriptors: class
methods, static methods and properties. You should patch these on the *class*
rather than an instance. They also work with *some* objects
that proxy attribute access, like the `django settings object
<http://www.voidspace.org.uk/python/weblog/arch_d7_2010_12_04.shtml#e1198>`_.
<https://web.archive.org/web/20200603181648/http://www.voidspace.org.uk/python/weblog/arch_d7_2010_12_04.shtml#e1198>`_.


MagicMock and magic method support
Expand Down
6 changes: 3 additions & 3 deletions Doc/license.rst
Original file line number Diff line number Diff line change
Expand Up @@ -626,9 +626,9 @@ strtod and dtoa
The file :file:`Python/dtoa.c`, which supplies C functions dtoa and
strtod for conversion of C doubles to and from strings, is derived
from the file of the same name by David M. Gay, currently available
from http://www.netlib.org/fp/. The original file, as retrieved on
March 16, 2009, contains the following copyright and licensing
notice::
from https://web.archive.org/web/20220517033456/http://www.netlib.org/fp/dtoa.c.
The original file, as retrieved on March 16, 2009, contains the following
copyright and licensing notice::

/****************************************************************
*
Expand Down
4 changes: 4 additions & 0 deletions Doc/tools/templates/download.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@
{% if daily is defined %}
{% set dlbase = pathto('archives', 1) %}
{% else %}
{#
The link below returns HTTP 404 until the first related alpha release.
This is expected; use daily documentation builds for CPython development.
#}
{% set dlbase = 'https://docs.python.org/ftp/python/doc/' + release %}
{% endif %}

Expand Down
2 changes: 1 addition & 1 deletion Doc/using/unix.rst
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ Building Python
If you want to compile CPython yourself, first thing you should do is get the
`source <https://www.python.org/downloads/source/>`_. You can download either the
latest release's source or just grab a fresh `clone
<https://devguide.python.org/setup/#getting-the-source-code>`_. (If you want
<https://devguide.python.org/setup/#get-the-source-code>`_. (If you want
to contribute patches, you will need a clone.)

The build process consists of the usual commands::
Expand Down
2 changes: 1 addition & 1 deletion Doc/using/venv-create.inc
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ re-used.
.. deprecated:: 3.6
``pyvenv`` was the recommended tool for creating virtual environments for
Python 3.3 and 3.4, and is `deprecated in Python 3.6
<https://docs.python.org/dev/whatsnew/3.6.html#deprecated-features>`_.
<https://docs.python.org/dev/whatsnew/3.6.html#id8>`_.
.. versionchanged:: 3.5
The use of ``venv`` is now recommended for creating virtual environments.
Expand Down
10 changes: 6 additions & 4 deletions Doc/using/windows.rst
Original file line number Diff line number Diff line change
Expand Up @@ -500,9 +500,11 @@ key features:
Popular scientific modules (such as numpy, scipy and pandas) and the
``conda`` package manager.

`Canopy <https://www.enthought.com/product/canopy/>`_
A "comprehensive Python analysis environment" with editors and other
development tools.
`Enthought Deployment Manager <https://www.enthought.com/edm/>`_
"The Next Generation Python Environment and Package Manager".

Previously Enthought provided Canopy, but it `reached end of life in 2016
<https://support.enthought.com/hc/en-us/articles/360038600051-Canopy-GUI-end-of-life-transition-to-the-Enthought-Deployment-Manager-EDM-and-Visual-Studio-Code>`_.

`WinPython <https://winpython.github.io/>`_
Windows-specific distribution with prebuilt scientific packages and
Expand Down Expand Up @@ -1157,7 +1159,7 @@ Compiling Python on Windows
If you want to compile CPython yourself, first thing you should do is get the
`source <https://www.python.org/downloads/source/>`_. You can download either the
latest release's source or just grab a fresh `checkout
<https://devguide.python.org/setup/#getting-the-source-code>`_.
<https://devguide.python.org/setup/#get-the-source-code>`_.

The source tree contains a build solution and project files for Microsoft
Visual Studio, which is the compiler used to build the official Python
Expand Down
7 changes: 5 additions & 2 deletions Doc/whatsnew/2.1.rst
Original file line number Diff line number Diff line change
Expand Up @@ -542,8 +542,11 @@ PEP 241: Metadata in Python Packages

A common complaint from Python users is that there's no single catalog of all
the Python modules in existence. T. Middleton's Vaults of Parnassus at
http://www.vex.net/parnassus/ are the largest catalog of Python modules, but
registering software at the Vaults is optional, and many people don't bother.
``www.vex.net/parnassus/`` (retired in February 2009, `available in the
Internet Archive Wayback Machine
<https://web.archive.org/web/20090130140102/http://www.vex.net/parnassus/>`_)
was the largest catalog of Python modules, but
registering software at the Vaults is optional, and many people did not bother.

As a first small step toward fixing the problem, Python software packaged using
the Distutils :command:`sdist` command will include a file named
Expand Down
8 changes: 4 additions & 4 deletions Doc/whatsnew/2.5.rst
Original file line number Diff line number Diff line change
Expand Up @@ -551,7 +551,7 @@ exhausted.
https://en.wikipedia.org/wiki/Coroutine
The Wikipedia entry for coroutines.

http://www.sidhe.org/~dan/blog/archives/000178.html
https://web.archive.org/web/20160321211320/http://www.sidhe.org/~dan/blog/archives/000178.html
An explanation of coroutines from a Perl point of view, written by Dan Sugalski.

.. ======================================================================
Expand Down Expand Up @@ -1746,8 +1746,8 @@ modules, now that :mod:`ctypes` is included with core Python.

.. seealso::

http://starship.python.net/crew/theller/ctypes/
The ctypes web page, with a tutorial, reference, and FAQ.
https://web.archive.org/web/20180410025338/http://starship.python.net/crew/theller/ctypes/
The pre-stdlib ctypes web page, with a tutorial, reference, and FAQ.

The documentation for the :mod:`ctypes` module.

Expand Down Expand Up @@ -2065,7 +2065,7 @@ up a server takes only a few lines of code::
.. seealso::

http://www.wsgi.org
https://web.archive.org/web/20160331090247/http://wsgi.readthedocs.org/en/latest/
A central web site for WSGI-related resources.

:pep:`333` - Python Web Server Gateway Interface v1.0
Expand Down
2 changes: 1 addition & 1 deletion Doc/whatsnew/2.6.rst
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ Hosting of the Python bug tracker is kindly provided by
of Stellenbosch, South Africa. Martin von Löwis put a
lot of effort into importing existing bugs and patches from
SourceForge; his scripts for this import operation are at
http://svn.python.org/view/tracker/importer/ and may be useful to
``http://svn.python.org/view/tracker/importer/`` and may be useful to
other projects wishing to move from SourceForge to Roundup.

.. seealso::
Expand Down
4 changes: 2 additions & 2 deletions Doc/whatsnew/2.7.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1545,7 +1545,7 @@ changes, or look through the Subversion logs for all the details.
*ciphers* argument that's a string listing the encryption algorithms
to be allowed; the format of the string is described
`in the OpenSSL documentation
<https://www.openssl.org/docs/manmaster/man1/ciphers.html#CIPHER-LIST-FORMAT>`__.
<https://www.openssl.org/docs/man1.0.2/man1/ciphers.html>`__.
(Added by Antoine Pitrou; :issue:`8322`.)

Another change makes the extension load all of OpenSSL's ciphers and
Expand Down Expand Up @@ -2001,7 +2001,7 @@ module is imported or used.

.. seealso::

http://www.voidspace.org.uk/python/articles/unittest2.shtml
https://web.archive.org/web/20210619163128/http://www.voidspace.org.uk/python/articles/unittest2.shtml
Describes the new features, how to use them, and the
rationale for various design decisions. (By Michael Foord.)

Expand Down
8 changes: 5 additions & 3 deletions Doc/whatsnew/3.2.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1647,7 +1647,7 @@ for secure (encrypted, authenticated) internet connections:
* The :func:`ssl.wrap_socket` constructor function now takes a *ciphers*
argument. The *ciphers* string lists the allowed encryption algorithms using
the format described in the `OpenSSL documentation
<https://www.openssl.org/docs/manmaster/man1/ciphers.html#CIPHER-LIST-FORMAT>`__.
<https://www.openssl.org/docs/man1.0.2/man1/ciphers.html#CIPHER-LIST-FORMAT>`__.

* When linked against recent versions of OpenSSL, the :mod:`ssl` module now
supports the Server Name Indication extension to the TLS protocol, allowing
Expand Down Expand Up @@ -2593,10 +2593,12 @@ Changes to Python's build process and to the C API include:
longer used and it had never been documented (:issue:`8837`).

There were a number of other small changes to the C-API. See the
:source:`Misc/NEWS` file for a complete list.
Misc/NEWS <https://github.com/python/cpython/blob/v3.2.6/Misc/NEWS>`_
file for a complete list.

Also, there were a number of updates to the Mac OS X build, see
:source:`Mac/BuildScript/README.txt` for details. For users running a 32/64-bit
`Mac/BuildScript/README.txt <https://github.com/python/cpython/blob/v3.2.6/Mac/BuildScript/README.txt>`_
for details. For users running a 32/64-bit
build, there is a known problem with the default Tcl/Tk on Mac OS X 10.6.
Accordingly, we recommend installing an updated alternative such as
`ActiveState Tcl/Tk 8.5.9 <https://www.activestate.com/activetcl/downloads>`_\.
Expand Down
3 changes: 2 additions & 1 deletion Doc/whatsnew/3.6.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2117,7 +2117,8 @@ API and Feature Removals
platform specific ``Lib/plat-*/`` directories, but were chronically out of
date, inconsistently available across platforms, and unmaintained. The
script that created these modules is still available in the source
distribution at :source:`Tools/scripts/h2py.py`.
distribution at `Tools/scripts/h2py.py
<https://github.com/python/cpython/blob/v3.6.15/Tools/scripts/h2py.py>`_.

* The deprecated ``asynchat.fifo`` class has been removed.

Expand Down
3 changes: 2 additions & 1 deletion Doc/whatsnew/3.7.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2120,7 +2120,8 @@ Platform Support Removals
of other LTS Linux releases (e.g. RHEL/CentOS 7.5, SLES 12-SP3), use OpenSSL
1.0.2 or later, and remain supported in the default build configuration.

CPython's own :source:`CI configuration file <.travis.yml>` provides an
CPython's own `CI configuration file
<https://github.com/python/cpython/blob/v3.7.13/.travis.yml>`_ provides an
example of using the SSL
:source:`compatibility testing infrastructure <Tools/ssl/multissltests.py>` in
CPython's test suite to build and link against OpenSSL 1.1.0 rather than an
Expand Down

0 comments on commit 63e127f

Please sign in to comment.