summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Doc/bugs.rst2
-rw-r--r--Doc/distutils/packageindex.rst2
-rw-r--r--Doc/faq/design.rst6
-rw-r--r--Doc/faq/extending.rst6
-rw-r--r--Doc/faq/general.rst12
-rw-r--r--Doc/faq/gui.rst6
-rw-r--r--Doc/faq/library.rst2
-rw-r--r--Doc/faq/programming.rst19
-rw-r--r--Doc/faq/windows.rst4
-rw-r--r--Doc/howto/curses.rst2
-rw-r--r--Doc/howto/descriptor.rst2
-rw-r--r--Doc/howto/pyporting.rst38
-rw-r--r--Doc/howto/unicode.rst22
-rw-r--r--Doc/howto/urllib2.rst6
-rw-r--r--Doc/howto/webservers.rst25
-rw-r--r--Doc/install/index.rst6
-rw-r--r--Doc/installing/index.rst10
-rw-r--r--Doc/library/collections.rst2
-rw-r--r--Doc/library/difflib.rst4
-rw-r--r--Doc/library/distribution.rst2
-rw-r--r--Doc/library/functools.rst2
-rw-r--r--Doc/library/gettext.rst2
-rw-r--r--Doc/library/http.cookiejar.rst2
-rw-r--r--Doc/library/mailbox.rst2
-rw-r--r--Doc/library/msilib.rst64
-rw-r--r--Doc/library/othergui.rst2
-rw-r--r--Doc/library/plistlib.rst2
-rw-r--r--Doc/library/pprint.rst2
-rw-r--r--Doc/library/select.rst5
-rw-r--r--Doc/library/statistics.rst2
-rw-r--r--Doc/library/unittest.mock-examples.rst4
-rw-r--r--Doc/library/unittest.rst2
-rw-r--r--Doc/license.rst2
-rw-r--r--Doc/reference/import.rst2
-rw-r--r--Doc/reference/introduction.rst2
-rw-r--r--Doc/tutorial/whatnow.rst4
-rw-r--r--Doc/using/cmdline.rst2
-rw-r--r--Doc/using/mac.rst8
-rw-r--r--Doc/using/unix.rst5
-rw-r--r--Doc/using/venv-create.inc2
-rw-r--r--Doc/using/windows.rst13
41 files changed, 145 insertions, 164 deletions
diff --git a/Doc/bugs.rst b/Doc/bugs.rst
index 11e6101b82..f01ae0e390 100644
--- a/Doc/bugs.rst
+++ b/Doc/bugs.rst
@@ -68,7 +68,7 @@ taken on the bug.
Article which goes into some detail about how to create a useful bug report.
This describes what kind of information is useful and why it is useful.
- `Bug Writing Guidelines <http://developer.mozilla.org/en/docs/Bug_writing_guidelines>`_
+ `Bug Writing Guidelines <https://developer.mozilla.org/en-US/docs/Mozilla/QA/Bug_writing_guidelines>`_
Information about writing a good bug report. Some of this is specific to the
Mozilla project, but describes general good practices.
diff --git a/Doc/distutils/packageindex.rst b/Doc/distutils/packageindex.rst
index 59d27bca86..daf9345264 100644
--- a/Doc/distutils/packageindex.rst
+++ b/Doc/distutils/packageindex.rst
@@ -244,4 +244,4 @@ without warnings does not guarantee that PyPI will convert the content
successfully.
-.. _Python Package Index (PyPI): https://pypi.python.org/
+.. _Python Package Index (PyPI): https://pypi.python.org/pypi
diff --git a/Doc/faq/design.rst b/Doc/faq/design.rst
index d4dda4b01b..9fdf8cb949 100644
--- a/Doc/faq/design.rst
+++ b/Doc/faq/design.rst
@@ -368,9 +368,9 @@ Can Python be compiled to machine code, C or some other language?
Practical answer:
-`Cython <http://cython.org/>`_ and `Pyrex <http://www.cosc.canterbury.ac.nz/~greg/python/Pyrex/>`_
+`Cython <http://cython.org/>`_ and `Pyrex <http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/>`_
compile a modified version of Python with optional annotations into C
-extensions. `Weave <http://www.scipy.org/Weave>`_ makes it easy to
+extensions. `Weave <http://docs.scipy.org/doc/scipy-dev/reference/tutorial/weave.html>`_ makes it easy to
intermingle Python and C code in various ways to increase performance.
`Nuitka <http://www.nuitka.net/>`_ is an up-and-coming compiler of Python
into C++ code, aiming to support the full Python language.
@@ -392,7 +392,7 @@ approach is feasible, although the speedups reached so far are only modest
Hugunin has demonstrated that in combination with whole-program analysis,
speedups of 1000x are feasible for small demo programs. See the proceedings
from the `1997 Python conference
-<https://www.python.org/workshops/1997-10/proceedings/>`_ for more information.)
+<http://legacy.python.org/workshops/1997-10/proceedings/>`_ for more information.)
How does Python manage memory?
diff --git a/Doc/faq/extending.rst b/Doc/faq/extending.rst
index d196e86176..252050eabc 100644
--- a/Doc/faq/extending.rst
+++ b/Doc/faq/extending.rst
@@ -42,7 +42,7 @@ on what you're trying to do.
.. XXX make sure these all work
`Cython <http://cython.org>`_ and its relative `Pyrex
-<http://www.cosc.canterbury.ac.nz/~greg/python/Pyrex/>`_ are compilers
+<http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/>`_ are compilers
that accept a slightly modified form of Python and generate the corresponding
C code. Cython and Pyrex make it possible to write an extension without having
to learn Python's C API.
@@ -53,8 +53,8 @@ with a tool such as `SWIG <http://www.swig.org>`_. `SIP
<http://www.riverbankcomputing.co.uk/software/sip/>`__, `CXX
<http://cxx.sourceforge.net/>`_ `Boost
<http://www.boost.org/libs/python/doc/index.html>`_, or `Weave
-<http://www.scipy.org/Weave>`_ are also alternatives for wrapping
-C++ libraries.
+<http://docs.scipy.org/doc/scipy-dev/reference/tutorial/weave.html>`_ are also
+alternatives for wrapping C++ libraries.
How can I execute arbitrary Python statements from C?
diff --git a/Doc/faq/general.rst b/Doc/faq/general.rst
index 72dfe9eea8..08c5427084 100644
--- a/Doc/faq/general.rst
+++ b/Doc/faq/general.rst
@@ -223,8 +223,8 @@ releases are announced on the comp.lang.python and comp.lang.python.announce
newsgroups and on the Python home page at https://www.python.org/; an RSS feed of
news is available.
-You can also access the development version of Python through Subversion. See
-https://docs.python.org/devguide/faq for details.
+You can also access the development version of Python through Mercurial. See
+https://docs.python.org/devguide/faq.html for details.
How do I submit bug reports and patches for Python?
@@ -284,7 +284,7 @@ Why is it called Python?
When he began implementing Python, Guido van Rossum was also reading the
published scripts from `"Monty Python's Flying Circus"
-<http://pythonline.com/>`__, a BBC comedy series from the 1970s. Van Rossum
+<http://en.wikipedia.org/wiki/Monty_Python>`__, a BBC comedy series from the 1970s. Van Rossum
thought he needed a name that was short, unique, and slightly mysterious, so he
decided to call the language Python.
@@ -313,7 +313,7 @@ guaranteed that interfaces will remain the same throughout a series of bugfix
releases.
The latest stable releases can always be found on the `Python download page
-<https://python.org/download/>`_. There are two recommended production-ready
+<https://www.python.org/download/>`_. There are two recommended production-ready
versions at this point in time, because at the moment there are two branches of
stable releases: 2.x and 3.x. Python 3.x may be less useful than 2.x, since
currently there is more third party software available for Python 2 than for
@@ -337,9 +337,9 @@ the group or even read it.
Have any significant projects been done in Python?
--------------------------------------------------
-See https://python.org/about/success for a list of projects that use Python.
+See https://www.python.org/about/success for a list of projects that use Python.
Consulting the proceedings for `past Python conferences
-<https://python.org/community/workshops/>`_ will reveal contributions from many
+<https://www.python.org/community/workshops/>`_ will reveal contributions from many
different companies and organizations.
High-profile Python projects include `the Mailman mailing list manager
diff --git a/Doc/faq/gui.rst b/Doc/faq/gui.rst
index 7428316df7..6f398fd7a3 100644
--- a/Doc/faq/gui.rst
+++ b/Doc/faq/gui.rst
@@ -59,13 +59,13 @@ Qt
There are bindings available for the Qt toolkit (using either `PyQt
<http://www.riverbankcomputing.co.uk/software/pyqt/>`_ or `PySide
-<http://www.pyside.org/>`_) and for KDE (`PyKDE <http://www.riverbankcomputing.co.uk/software/pykde/intro>`__).
+<http://www.pyside.org/>`_) and for KDE (`PyKDE <https://techbase.kde.org/Development/Languages/Python>`__).
PyQt is currently more mature than PySide, but you must buy a PyQt license from
`Riverbank Computing <http://www.riverbankcomputing.co.uk/software/pyqt/license>`_
if you want to write proprietary applications. PySide is free for all applications.
Qt 4.5 upwards is licensed under the LGPL license; also, commercial licenses
-are available from `Nokia <http://qt.nokia.com/>`_.
+are available from `The Qt Company <http://www.qt.io/licensing/>`_.
Gtk+
----
@@ -103,7 +103,7 @@ What platform-specific GUI toolkits exist for Python?
========================================================
By installing the `PyObjc Objective-C bridge
-<http://pyobjc.sourceforge.net>`_, Python programs can use Mac OS X's
+<https://pythonhosted.org/pyobjc/>`_, Python programs can use Mac OS X's
Cocoa libraries.
:ref:`Pythonwin <windows-faq>` by Mark Hammond includes an interface to the
diff --git a/Doc/faq/library.rst b/Doc/faq/library.rst
index 95c063b6c3..3c47687fcf 100644
--- a/Doc/faq/library.rst
+++ b/Doc/faq/library.rst
@@ -182,7 +182,7 @@ How do I create documentation from doc strings?
The :mod:`pydoc` module can create HTML from the doc strings in your Python
source code. An alternative for creating API documentation purely from
docstrings is `epydoc <http://epydoc.sf.net/>`_. `Sphinx
-<http://sphinx.pocoo.org>`_ can also include docstring content.
+<http://sphinx-doc.org>`_ can also include docstring content.
How do I get a single keypress at a time?
diff --git a/Doc/faq/programming.rst b/Doc/faq/programming.rst
index 659247b8c1..05a43846dd 100644
--- a/Doc/faq/programming.rst
+++ b/Doc/faq/programming.rst
@@ -30,7 +30,7 @@ Pythonwin debugger colors breakpoints and has quite a few cool features such as
debugging non-Pythonwin programs. Pythonwin is available as part of the `Python
for Windows Extensions <http://sourceforge.net/projects/pywin32/>`__ project and
as a part of the ActivePython distribution (see
-http://www.activestate.com/Products/ActivePython/index.html).
+http://www.activestate.com/activepython\ ).
`Boa Constructor <http://boa-constructor.sourceforge.net/>`_ is an IDE and GUI
builder that uses wxWidgets. It offers visual frame creation and manipulation,
@@ -38,7 +38,7 @@ an object inspector, many views on the source like object browsers, inheritance
hierarchies, doc string generated html documentation, an advanced debugger,
integrated help, and Zope support.
-`Eric <http://www.die-offenbachs.de/eric/index.html>`_ is an IDE built on PyQt
+`Eric <http://eric-ide.python-projects.org/>`_ is an IDE built on PyQt
and the Scintilla editing component.
Pydb is a version of the standard Python debugger pdb, modified for use with DDD
@@ -50,7 +50,7 @@ There are a number of commercial Python IDEs that include graphical debuggers.
They include:
* Wing IDE (http://wingware.com/)
-* Komodo IDE (http://www.activestate.com/Products/Komodo)
+* Komodo IDE (http://komodoide.com/)
* PyCharm (https://www.jetbrains.com/pycharm/)
@@ -69,8 +69,7 @@ plug-ins to add a custom feature. In addition to the bug checking that
PyChecker performs, Pylint offers some additional features such as checking line
length, whether variable names are well-formed according to your coding
standard, whether declared interfaces are fully implemented, and more.
-http://www.logilab.org/card/pylint_manual provides a full list of Pylint's
-features.
+http://docs.pylint.org/ provides a full list of Pylint's features.
How can I create a stand-alone binary from a Python script?
@@ -101,13 +100,7 @@ which don't. One is Thomas Heller's py2exe (Windows only) at
http://www.py2exe.org/
-Another is Christian Tismer's `SQFREEZE <http://starship.python.net/crew/pirx>`_
-which appends the byte code to a specially-prepared Python interpreter that can
-find the byte code in the executable.
-
-Other tools include Fredrik Lundh's `Squeeze
-<http://www.pythonware.com/products/python/squeeze>`_ and Anthony Tuininga's
-`cx_Freeze <http://starship.python.net/crew/atuining/cx_Freeze/index.html>`_.
+Another tool is Anthony Tuininga's `cx_Freeze <http://cx-freeze.sourceforge.net/>`_.
Are there coding standards or a style guide for Python programs?
@@ -1125,7 +1118,7 @@ How do you remove duplicates from a list?
See the Python Cookbook for a long discussion of many ways to do this:
- http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/52560
+ http://code.activestate.com/recipes/52560/
If you don't mind reordering the list, sort it and then scan from the end of the
list, deleting duplicates as you go::
diff --git a/Doc/faq/windows.rst b/Doc/faq/windows.rst
index ee627213db..7cac8a9739 100644
--- a/Doc/faq/windows.rst
+++ b/Doc/faq/windows.rst
@@ -31,7 +31,7 @@ obvious; otherwise, you might need a little more guidance.
.. |Python Development on XP| image:: python-video-icon.png
.. _`Python Development on XP`:
- http://www.showmedo.com/videos/series?name=pythonOzsvaldPyNewbieSeries
+ http://showmedo.com/videotutorials/series?name=pythonOzsvaldPyNewbieSeries
Unless you use some sort of integrated development environment, you will end up
*typing* Windows commands into what is variously referred to as a "DOS window"
@@ -105,7 +105,7 @@ gives you a message like::
.. |Adding Python to DOS Path| image:: python-video-icon.png
.. _`Adding Python to DOS Path`:
- http://showmedo.com/videos/video?name=960000&fromSeriesID=96
+ http://showmedo.com/videotutorials/video?name=960000&fromSeriesID=96
or::
diff --git a/Doc/howto/curses.rst b/Doc/howto/curses.rst
index 8547606bf3..87a5cab142 100644
--- a/Doc/howto/curses.rst
+++ b/Doc/howto/curses.rst
@@ -543,7 +543,7 @@ learn more about submitting patches to Python.
* `Writing Programs with NCURSES <http://invisible-island.net/ncurses/ncurses-intro.html>`_:
a lengthy tutorial for C programmers.
-* `The ncurses man page <http://www.linuxmanpages.com/man3/ncurses.3x.php>`_
+* `The ncurses man page <http://linux.die.net/man/3/ncurses>`_
* `The ncurses FAQ <http://invisible-island.net/ncurses/ncurses.faq.html>`_
* `"Use curses... don't swear" <http://www.youtube.com/watch?v=eN1eZtjLEnU>`_:
video of a PyCon 2013 talk on controlling terminals using curses or Urwid.
diff --git a/Doc/howto/descriptor.rst b/Doc/howto/descriptor.rst
index dc5350e6c1..f018b0e893 100644
--- a/Doc/howto/descriptor.rst
+++ b/Doc/howto/descriptor.rst
@@ -127,7 +127,7 @@ The implementation details are in :c:func:`super_getattro()` in
:source:`Objects/typeobject.c`. and a pure Python equivalent can be found in
`Guido's Tutorial`_.
-.. _`Guido's Tutorial`: https://www.python.org/2.2.3/descrintro.html#cooperation
+.. _`Guido's Tutorial`: https://www.python.org/download/releases/2.2.3/descrintro/#cooperation
The details above show that the mechanism for descriptors is embedded in the
:meth:`__getattribute__()` methods for :class:`object`, :class:`type`, and
diff --git a/Doc/howto/pyporting.rst b/Doc/howto/pyporting.rst
index a4c81a0fb7..4f76bde641 100644
--- a/Doc/howto/pyporting.rst
+++ b/Doc/howto/pyporting.rst
@@ -86,11 +86,11 @@ that you can make sure that you detect breakage during the transition. Tests als
tend to be simpler than the code they are testing so it gives you an idea of how
easy it can be to port code.
-Drop support for older Python versions if possible. `Python 2.5`_
+Drop support for older Python versions if possible. Python 2.5
introduced a lot of useful syntax and libraries which have become idiomatic
-in Python 3. `Python 2.6`_ introduced future statements which makes
+in Python 3. Python 2.6 introduced future statements which makes
compatibility much easier if you are going from Python 2 to 3.
-`Python 2.7`_ continues the trend in the stdlib. Choose the newest version
+Python 2.7 continues the trend in the stdlib. Choose the newest version
of Python which you believe can be your minimum support version
and work from there.
@@ -144,19 +144,19 @@ for you.
Support Python 2.7
//////////////////
-As a first step, make sure that your project is compatible with `Python 2.7`_.
+As a first step, make sure that your project is compatible with Python 2.7.
This is just good to do as Python 2.7 is the last release of Python 2 and thus
will be used for a rather long time. It also allows for use of the ``-3`` flag
to Python to help discover places in your code where compatibility might be an
issue (the ``-3`` flag is in Python 2.6 but Python 2.7 adds more warnings).
-Try to Support `Python 2.6`_ and Newer Only
-///////////////////////////////////////////
+Try to Support Python 2.6 and Newer Only
+////////////////////////////////////////
-While not possible for all projects, if you can support `Python 2.6`_ and newer
+While not possible for all projects, if you can support Python 2.6 and newer
**only**, your life will be much easier. Various future statements, stdlib
additions, etc. exist only in Python 2.6 and later which greatly assist in
-supporting Python 3. But if you project must keep support for `Python 2.5`_ then
+supporting Python 3. But if you project must keep support for Python 2.5 then
it is still possible to simultaneously support Python 3.
Below are the benefits you gain if you only have to support Python 2.6 and
@@ -215,10 +215,10 @@ Discussed in more detail below, but you should use this future statement to
prevent yourself from accidentally using implicit relative imports.
-Supporting `Python 2.5`_ and Newer Only
-///////////////////////////////////////
+Supporting Python 2.5 and Newer Only
+////////////////////////////////////
-If you are supporting `Python 2.5`_ and newer there are still some features of
+If you are supporting Python 2.5 and newer there are still some features of
Python that you can utilize.
@@ -230,11 +230,11 @@ Implicit relative imports (e.g., importing ``spam.bacon`` from within
This future statement moves away from that and allows the use of explicit
relative imports (e.g., ``from . import bacon``).
-In `Python 2.5`_ you must use
+In Python 2.5 you must use
the __future__ statement to get to use explicit relative imports and prevent
-implicit ones. In `Python 2.6`_ explicit relative imports are available without
+implicit ones. In Python 2.6 explicit relative imports are available without
the statement, but you still want the __future__ statement to prevent implicit
-relative imports. In `Python 2.7`_ the __future__ statement is not needed. In
+relative imports. In Python 2.7 the __future__ statement is not needed. In
other words, unless you are only supporting Python 2.7 or a version earlier
than Python 2.5, use this __future__ statement.
@@ -261,7 +261,7 @@ In Python 2.5 and earlier the syntax to access the current exception is::
# Current exception is 'exc'.
pass
-This syntax changed in Python 3 (and backported to `Python 2.6`_ and later)
+This syntax changed in Python 3 (and backported to Python 2.6 and later)
to::
try:
@@ -347,7 +347,7 @@ possibilities:
Subclass ``object``
'''''''''''''''''''
-New-style classes have been around since `Python 2.2`_. You need to make sure
+New-style classes have been around since Python 2.2. You need to make sure
you are subclassing from ``object`` to avoid odd edge cases involving method
resolution order, etc. This continues to be totally valid in Python 3 (although
unneeded as all classes implicitly inherit from ``object``).
@@ -610,12 +610,6 @@ please email the python-porting_ mailing list.
.. _modernize: https://github.com/mitsuhiko/python-modernize
.. _Porting to Python 3: http://python3porting.com/
.. _PyPI: https://pypi.python.org/
-.. _Python 2.2: https://www.python.org/2.2.x
-.. _Python 2.5: https://www.python.org/2.5.x
-.. _Python 2.6: https://www.python.org/2.6.x
-.. _Python 2.7: https://www.python.org/2.7.x
-.. _Python 2.5: https://www.python.org/2.5.x
-.. _Python 3.3: https://www.python.org/3.3.x
.. _Python 3 Packages: https://pypi.python.org/pypi?:action=browse&c=533&show=all
.. _Python 3 Q & A: http://ncoghlan-devs-python-notes.readthedocs.org/en/latest/python3/questions_and_answers.html
.. _python-porting: https://mail.python.org/mailman/listinfo/python-porting
diff --git a/Doc/howto/unicode.rst b/Doc/howto/unicode.rst
index 632e525f24..50bca5a0c5 100644
--- a/Doc/howto/unicode.rst
+++ b/Doc/howto/unicode.rst
@@ -493,10 +493,11 @@ The documentation for the :mod:`unicodedata` module.
The documentation for the :mod:`codecs` module.
-Marc-André Lemburg gave `a presentation titled "Python and Unicode" (PDF slides) <http://downloads.egenix.com/python/Unicode-EPC2002-Talk.pdf>`_ at
-EuroPython 2002. The slides are an excellent overview of the design
-of Python 2's Unicode features (where the Unicode string type is
-called ``unicode`` and literals start with ``u``).
+Marc-André Lemburg gave `a presentation titled "Python and Unicode" (PDF slides)
+<https://downloads.egenix.com/python/Unicode-EPC2002-Talk.pdf>`_ at
+EuroPython 2002. The slides are an excellent overview of the design of Python
+2's Unicode features (where the Unicode string type is called ``unicode`` and
+literals start with ``u``).
Reading and Writing Unicode Data
@@ -696,13 +697,20 @@ encoding the data and writing it back out.
References
----------
-One section of `Mastering Python 3 Input/Output <http://pyvideo.org/video/289/pycon-2010--mastering-python-3-i-o>`_, a PyCon 2010 talk by David Beazley, discusses text processing and binary data handling.
+One section of `Mastering Python 3 Input/Output
+<http://pyvideo.org/video/289/pycon-2010--mastering-python-3-i-o>`_,
+a PyCon 2010 talk by David Beazley, discusses text processing and binary data handling.
-The `PDF slides for Marc-André Lemburg's presentation "Writing Unicode-aware Applications in Python" <http://downloads.egenix.com/python/LSM2005-Developing-Unicode-aware-applications-in-Python.pdf>`_
+The `PDF slides for Marc-André Lemburg's presentation "Writing Unicode-aware
+Applications in Python"
+<https://downloads.egenix.com/python/LSM2005-Developing-Unicode-aware-applications-in-Python.pdf>`_
discuss questions of character encodings as well as how to internationalize
and localize an application. These slides cover Python 2.x only.
-`The Guts of Unicode in Python <http://pyvideo.org/video/1768/the-guts-of-unicode-in-python>`_ is a PyCon 2013 talk by Benjamin Peterson that discusses the internal Unicode representation in Python 3.3.
+`The Guts of Unicode in Python
+<http://pyvideo.org/video/1768/the-guts-of-unicode-in-python>`_
+is a PyCon 2013 talk by Benjamin Peterson that discusses the internal Unicode
+representation in Python 3.3.
Acknowledgements
diff --git a/Doc/howto/urllib2.rst b/Doc/howto/urllib2.rst
index 1f0eb7d5f5..abec053900 100644
--- a/Doc/howto/urllib2.rst
+++ b/Doc/howto/urllib2.rst
@@ -573,9 +573,7 @@ Footnotes
This document was reviewed and revised by John Lee.
.. [#] Like Google for example. The *proper* way to use google from a program
- is to use `PyGoogle <http://pygoogle.sourceforge.net>`_ of course. See
- `Voidspace Google <http://www.voidspace.org.uk/python/recipebook.shtml#google>`_
- for some examples of using the Google API.
+ is to use `PyGoogle <http://pygoogle.sourceforge.net>`_ of course.
.. [#] Browser sniffing is a very bad practise for website design - building
sites using web standards is much more sensible. Unfortunately a lot of
sites still send different versions to different browsers.
@@ -589,5 +587,5 @@ This document was reviewed and revised by John Lee.
scripts with a localhost server, I have to prevent urllib from using
the proxy.
.. [#] urllib opener for SSL proxy (CONNECT method): `ASPN Cookbook Recipe
- <http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/456195>`_.
+ <http://code.activestate.com/recipes/456195/>`_.
diff --git a/Doc/howto/webservers.rst b/Doc/howto/webservers.rst
index d6388475b9..ab233f4b17 100644
--- a/Doc/howto/webservers.rst
+++ b/Doc/howto/webservers.rst
@@ -146,7 +146,7 @@ server may not be needed.
tutorial also describes the most common gotchas that might arise.
* On lighttpd you need to use the `CGI module
- <http://redmine.lighttpd.net/wiki/lighttpd/Docs:ModCGI>`_\ , which can be configured
+ <http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs_ModCGI>`_\ , which can be configured
in a straightforward way. It boils down to setting ``cgi.assign`` properly.
@@ -210,7 +210,7 @@ mod_python
----------
People coming from PHP often find it hard to grasp how to use Python in the web.
-Their first thought is mostly `mod_python <http://www.modpython.org/>`_\ ,
+Their first thought is mostly `mod_python <http://modpython.org/>`_\ ,
because they think that this is the equivalent to ``mod_php``. Actually, there
are many differences. What ``mod_python`` does is embed the interpreter into
the Apache process, thus speeding up requests by not having to start a Python
@@ -260,13 +260,6 @@ the latter.
These days, FastCGI is never used directly. Just like ``mod_python``, it is only
used for the deployment of WSGI applications.
-.. seealso::
-
- * `FastCGI, SCGI, and Apache: Background and Future
- <http://www.vmunix.com/mark/blog/archives/2006/01/02/fastcgi-scgi-and-apache-background-and-future/>`_
- is a discussion on why the concept of FastCGI and SCGI is better than that
- of mod_python.
-
Setting up FastCGI
^^^^^^^^^^^^^^^^^^
@@ -280,8 +273,8 @@ Each web server requires a specific module.
to be loaded by Apache.
* lighttpd ships its own `FastCGI module
- <http://redmine.lighttpd.net/wiki/lighttpd/Docs:ModFastCGI>`_ as well as an
- `SCGI module <http://redmine.lighttpd.net/wiki/lighttpd/Docs:ModSCGI>`_.
+ <http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs_ModFastCGI>`_ as well as an
+ `SCGI module <http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs_ModSCGI>`_.
* `nginx <http://nginx.org/>`_ also supports `FastCGI
<http://wiki.nginx.org/NginxSimplePythonFCGI>`_.
@@ -315,7 +308,7 @@ FastCGI access.
.. seealso::
There is some documentation on `setting up Django with FastCGI
- <http://docs.djangoproject.com/en/dev/howto/deployment/fastcgi/>`_, most of
+ <https://docs.djangoproject.com/en/dev/howto/deployment/fastcgi/>`_, most of
which can be reused for other WSGI-compliant frameworks and libraries.
Only the ``manage.py`` part has to be changed, the example used here can be
used instead. Django does more or less the exact same thing.
@@ -644,7 +637,7 @@ here. Instead we will briefly touch on some of the most popular.
Django
^^^^^^
-`Django <http://www.djangoproject.com/>`_ is a framework consisting of several
+`Django <https://www.djangoproject.com/>`_ is a framework consisting of several
tightly coupled elements which were written from scratch and work together very
well. It includes an ORM which is quite powerful while being simple to use,
and has a great online administration interface which makes it possible to edit
@@ -657,7 +650,7 @@ which make it possible to create web sites almost without writing any Python cod
It has a big, international community, the members of which have created many
web sites. There are also a lot of add-on projects which extend Django's normal
functionality. This is partly due to Django's well written `online
-documentation <http://docs.djangoproject.com/>`_ and the `Django book
+documentation <https://docs.djangoproject.com/>`_ and the `Django book
<http://www.djangobook.com/>`_.
@@ -665,7 +658,7 @@ documentation <http://docs.djangoproject.com/>`_ and the `Django book
Although Django is an MVC-style framework, it names the elements
differently, which is described in the `Django FAQ
- <http://docs.djangoproject.com/en/dev/faq/general/#django-appears-to-be-a-mvc-framework-but-you-call-the-controller-the-view-and-the-view-the-template-how-come-you-don-t-use-the-standard-names>`_.
+ <https://docs.djangoproject.com/en/dev/faq/general/#django-appears-to-be-a-mvc-framework-but-you-call-the-controller-the-view-and-the-view-the-template-how-come-you-don-t-use-the-standard-names>`_.
TurboGears
@@ -708,7 +701,7 @@ access to these components to the wider Python community. There is even a
separate framework based on the Zope components: `Grok
<http://grok.zope.org/>`_.
-Zope is also the infrastructure used by the `Plone <http://plone.org/>`_ content
+Zope is also the infrastructure used by the `Plone <https://plone.org/>`_ content
management system, one of the most powerful and popular content management
systems available.
diff --git a/Doc/install/index.rst b/Doc/install/index.rst
index d0fea3d4f1..8f3ad7241a 100644
--- a/Doc/install/index.rst
+++ b/Doc/install/index.rst
@@ -1012,7 +1012,7 @@ section :ref:`inst-config-files`.)
.. seealso::
- `C++Builder Compiler <http://www.codegear.com/downloads/free/cppbuilder>`_
+ `C++Builder Compiler <http://www.embarcadero.com/downloads>`_
Information about the free C++ compiler from Borland, including links to the
download pages.
@@ -1084,7 +1084,7 @@ normal libraries do.
.. seealso::
- `Building Python modules on MS Windows platform with MinGW <http://www.zope.org/Members/als/tips/win32_mingw_modules>`_
+ `Building Python modules on MS Windows platform with MinGW <http://old.zope.org/Members/als/tips/win32_mingw_modules>`_
Information about building the required libraries for the MinGW environment.
@@ -1093,7 +1093,7 @@ normal libraries do.
.. [#] This also means you could replace all existing COFF-libraries with OMF-libraries
of the same name.
-.. [#] Check http://sources.redhat.com/cygwin/ and http://www.mingw.org/ for more
+.. [#] Check http://www.sourceware.org/cygwin/ and http://www.mingw.org/ for more
information
.. [#] Then you have no POSIX emulation available, but you also don't need
diff --git a/Doc/installing/index.rst b/Doc/installing/index.rst
index 5db9bbb76e..973c689861 100644
--- a/Doc/installing/index.rst
+++ b/Doc/installing/index.rst
@@ -104,7 +104,7 @@ into an active virtual environment uses the commands shown above.
.. seealso::
`Python Packaging User Guide: Installing Python Distribution Packages
- <https://packaging.python.org/en/latest/installing.html#installing-python-distributions>`__
+ <https://packaging.python.org/en/latest/installing.html#installing-python-distribution-packages>`__
How do I ...?
@@ -122,7 +122,7 @@ User Guide.
.. seealso::
`Python Packaging User Guide: Setup for Installing Distribution Packages
- <https://packaging.python.org/en/latest/installing.html#setup-for-installing-distributions>`__
+ <https://packaging.python.org/en/latest/installing.html#setup-for-installing-distribution-packages>`__
.. installing-per-user-installation:
@@ -141,13 +141,13 @@ A number of scientific Python packages have complex binary dependencies, and
aren't currently easy to install using ``pip`` directly. At this point in
time, it will often be easier for users to install these packages by
`other means
-<https://packaging.python.org/en/latest/platforms.html#installing-scientific-packages>`__
+<https://packaging.python.org/en/latest/science.html>`__
rather than attempting to install them with ``pip``.
.. seealso::
`Python Packaging User Guide: Installing Scientific Packages
- <https://packaging.python.org/en/latest/platforms.html#installing-scientific-packages>`__
+ <https://packaging.python.org/en/latest/science.html>`__
... work with multiple versions of Python installed in parallel?
@@ -210,7 +210,7 @@ as users are more regularly able to install pre-built extensions rather
than needing to build them themselves.
Some of the solutions for installing `scientific software
-<https://packaging.python.org/en/latest/platforms.html#installing-scientific-packages>`__
+<https://packaging.python.org/en/latest/science.html>`__
that is not yet available as pre-built ``wheel`` files may also help with
obtaining other binary extensions without needing to build them locally.
diff --git a/Doc/library/collections.rst b/Doc/library/collections.rst
index 1614758f02..75053a5de2 100644
--- a/Doc/library/collections.rst
+++ b/Doc/library/collections.rst
@@ -109,7 +109,7 @@ The class can be used to simulate nested scopes and is useful in templating.
writing to any mapping in the chain.
* Django's `Context class
- <http://code.djangoproject.com/browser/django/trunk/django/template/context.py>`_
+ <https://github.com/django/django/blob/master/django/template/context.py>`_
for templating is a read-only chain of mappings. It also features
pushing and popping of contexts similar to the
:meth:`~collections.ChainMap.new_child` method and the
diff --git a/Doc/library/difflib.rst b/Doc/library/difflib.rst
index 707f179baa..329bde0af8 100644
--- a/Doc/library/difflib.rst
+++ b/Doc/library/difflib.rst
@@ -327,9 +327,9 @@ diffs. For comparing directories and files, see also, the :mod:`filecmp` module.
.. seealso::
- `Pattern Matching: The Gestalt Approach <http://www.ddj.com/184407970?pgno=5>`_
+ `Pattern Matching: The Gestalt Approach <http://www.drdobbs.com/database/pattern-matching-the-gestalt-approach/184407970>`_
Discussion of a similar algorithm by John W. Ratcliff and D. E. Metzener. This
- was published in `Dr. Dobb's Journal <http://www.ddj.com/>`_ in July, 1988.
+ was published in `Dr. Dobb's Journal <http://www.drdobbs.com/>`_ in July, 1988.
.. _sequence-matcher:
diff --git a/Doc/library/distribution.rst b/Doc/library/distribution.rst
index fb3f5df599..c4954d1b4a 100644
--- a/Doc/library/distribution.rst
+++ b/Doc/library/distribution.rst
@@ -4,7 +4,7 @@ Software Packaging and Distribution
These libraries help you with publishing and installing Python software.
While these modules are designed to work in conjunction with the
-`Python Package Index <https://pypi.python.org>`__, they can also be used
+`Python Package Index <https://pypi.python.org/pypi>`__, they can also be used
with a local index server, or without any index server at all.
.. toctree::
diff --git a/Doc/library/functools.rst b/Doc/library/functools.rst
index 96645c361c..7fd7d5826b 100644
--- a/Doc/library/functools.rst
+++ b/Doc/library/functools.rst
@@ -72,7 +72,7 @@ The :mod:`functools` module defines the following functions:
bypassing the cache, or for rewrapping the function with a different cache.
An `LRU (least recently used) cache
- <http://en.wikipedia.org/wiki/Cache_algorithms#Least_Recently_Used>`_ works
+ <http://en.wikipedia.org/wiki/Cache_algorithms#Examples>`_ works
best when the most recent calls are the best predictors of upcoming calls (for
example, the most popular articles on a news server tend to change each day).
The cache's size limit assures that the cache does not grow without bound on
diff --git a/Doc/library/gettext.rst b/Doc/library/gettext.rst
index d2c6d74b2e..514cc5a989 100644
--- a/Doc/library/gettext.rst
+++ b/Doc/library/gettext.rst
@@ -460,7 +460,7 @@ translatable. `Babel <http://babel.pocoo.org/>`__ is a Python
internationalization library that includes a :file:`pybabel` script to
extract and compile message catalogs. François Pinard's program
called :program:`xpot` does a similar job and is available as part of
-his `po-utils package <http://po-utils.progiciels-bpi.ca/>`__.
+his `po-utils package <https://github.com/pinard/po-utils>`__.
(Python also includes pure-Python versions of these programs, called
:program:`pygettext.py` and :program:`msgfmt.py`; some Python distributions
diff --git a/Doc/library/http.cookiejar.rst b/Doc/library/http.cookiejar.rst
index 2fae47c626..1f6b1badf4 100644
--- a/Doc/library/http.cookiejar.rst
+++ b/Doc/library/http.cookiejar.rst
@@ -115,7 +115,7 @@ The following classes are provided:
:mod:`http.cookiejar` and :mod:`http.cookies` modules do not depend on each
other.
- http://wp.netscape.com/newsref/std/cookie_spec.html
+ http://curl.haxx.se/rfc/cookie_spec.html
The specification of the original Netscape cookie protocol. Though this is
still the dominant protocol, the 'Netscape cookie protocol' implemented by all
the major browsers (and :mod:`http.cookiejar`) only bears a passing resemblance to
diff --git a/Doc/library/mailbox.rst b/Doc/library/mailbox.rst
index a03fd1cd40..6334bd6e98 100644
--- a/Doc/library/mailbox.rst
+++ b/Doc/library/mailbox.rst
@@ -487,7 +487,7 @@ Supported mailbox formats are Maildir, mbox, MH, Babyl, and MMDF.
`Configuring Netscape Mail on Unix: Why The Content-Length Format is Bad <http://www.jwz.org/doc/content-length.html>`_
An argument for using the original mbox format rather than a variation.
- `"mbox" is a family of several mutually incompatible mailbox formats <http://homepages.tesco.net./~J.deBoynePollard/FGA/mail-mbox-formats.html>`_
+ `"mbox" is a family of several mutually incompatible mailbox formats <http://homepage.ntlworld.com/jonathan.deboynepollard/FGA/mail-mbox-formats.html>`_
A history of mbox variations.
diff --git a/Doc/library/msilib.rst b/Doc/library/msilib.rst
index d3451c844b..4145c8e7cc 100644
--- a/Doc/library/msilib.rst
+++ b/Doc/library/msilib.rst
@@ -120,9 +120,9 @@ structures.
.. seealso::
- `FCICreateFile <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/devnotes/winprog/fcicreate.asp>`_
- `UuidCreate <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/rpc/rpc/uuidcreate.asp>`_
- `UuidToString <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/rpc/rpc/uuidtostring.asp>`_
+ `FCICreateFile <http://msdn.microsoft.com/library?url=/library/en-us/devnotes/winprog/fcicreate.asp>`_
+ `UuidCreate <http://msdn.microsoft.com/library?url=/library/en-us/rpc/rpc/uuidcreate.asp>`_
+ `UuidToString <http://msdn.microsoft.com/library?url=/library/en-us/rpc/rpc/uuidtostring.asp>`_
.. _database-objects:
@@ -151,9 +151,9 @@ Database Objects
.. seealso::
- `MSIDatabaseOpenView <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msidatabaseopenview.asp>`_
- `MSIDatabaseCommit <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msidatabasecommit.asp>`_
- `MSIGetSummaryInformation <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msigetsummaryinformation.asp>`_
+ `MSIDatabaseOpenView <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msidatabaseopenview.asp>`_
+ `MSIDatabaseCommit <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msidatabasecommit.asp>`_
+ `MSIGetSummaryInformation <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msigetsummaryinformation.asp>`_
.. _view-objects:
@@ -199,11 +199,11 @@ View Objects
.. seealso::
- `MsiViewExecute <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msiviewexecute.asp>`_
- `MSIViewGetColumnInfo <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msiviewgetcolumninfo.asp>`_
- `MsiViewFetch <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msiviewfetch.asp>`_
- `MsiViewModify <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msiviewmodify.asp>`_
- `MsiViewClose <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msiviewclose.asp>`_
+ `MsiViewExecute <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msiviewexecute.asp>`_
+ `MSIViewGetColumnInfo <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msiviewgetcolumninfo.asp>`_
+ `MsiViewFetch <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msiviewfetch.asp>`_
+ `MsiViewModify <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msiviewmodify.asp>`_
+ `MsiViewClose <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msiviewclose.asp>`_
.. _summary-objects:
@@ -243,10 +243,10 @@ Summary Information Objects
.. seealso::
- `MsiSummaryInfoGetProperty <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msisummaryinfogetproperty.asp>`_
- `MsiSummaryInfoGetPropertyCount <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msisummaryinfogetpropertycount.asp>`_
- `MsiSummaryInfoSetProperty <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msisummaryinfosetproperty.asp>`_
- `MsiSummaryInfoPersist <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msisummaryinfopersist.asp>`_
+ `MsiSummaryInfoGetProperty <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msisummaryinfogetproperty.asp>`_
+ `MsiSummaryInfoGetPropertyCount <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msisummaryinfogetpropertycount.asp>`_
+ `MsiSummaryInfoSetProperty <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msisummaryinfosetproperty.asp>`_
+ `MsiSummaryInfoPersist <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msisummaryinfopersist.asp>`_
.. _record-objects:
@@ -297,11 +297,11 @@ Record Objects
.. seealso::
- `MsiRecordGetFieldCount <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msirecordgetfieldcount.asp>`_
- `MsiRecordSetString <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msirecordsetstring.asp>`_
- `MsiRecordSetStream <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msirecordsetstream.asp>`_
- `MsiRecordSetInteger <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msirecordsetinteger.asp>`_
- `MsiRecordClear <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/msirecordclear.asp>`_
+ `MsiRecordGetFieldCount <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msirecordgetfieldcount.asp>`_
+ `MsiRecordSetString <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msirecordsetstring.asp>`_
+ `MsiRecordSetStream <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msirecordsetstream.asp>`_
+ `MsiRecordSetInteger <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msirecordsetinteger.asp>`_
+ `MsiRecordClear <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/msirecordclear.asp>`_
.. _msi-errors:
@@ -393,10 +393,10 @@ Directory Objects
.. seealso::
- `Directory Table <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/directory_table.asp>`_
- `File Table <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/file_table.asp>`_
- `Component Table <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/component_table.asp>`_
- `FeatureComponents Table <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/featurecomponents_table.asp>`_
+ `Directory Table <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/directory_table.asp>`_
+ `File Table <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/file_table.asp>`_
+ `Component Table <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/component_table.asp>`_
+ `FeatureComponents Table <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/featurecomponents_table.asp>`_
.. _features:
@@ -421,7 +421,7 @@ Features
.. seealso::
- `Feature Table <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/feature_table.asp>`_
+ `Feature Table <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/feature_table.asp>`_
.. _msi-gui:
@@ -516,13 +516,13 @@ for installing Python packages.
.. seealso::
- `Dialog Table <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/dialog_table.asp>`_
- `Control Table <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/control_table.asp>`_
- `Control Types <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/controls.asp>`_
- `ControlCondition Table <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/controlcondition_table.asp>`_
- `ControlEvent Table <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/controlevent_table.asp>`_
- `EventMapping Table <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/eventmapping_table.asp>`_
- `RadioButton Table <http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/radiobutton_table.asp>`_
+ `Dialog Table <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/dialog_table.asp>`_
+ `Control Table <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/control_table.asp>`_
+ `Control Types <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/controls.asp>`_
+ `ControlCondition Table <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/controlcondition_table.asp>`_
+ `ControlEvent Table <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/controlevent_table.asp>`_
+ `EventMapping Table <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/eventmapping_table.asp>`_
+ `RadioButton Table <http://msdn.microsoft.com/library?url=/library/en-us/msi/setup/radiobutton_table.asp>`_
.. _msi-tables:
diff --git a/Doc/library/othergui.rst b/Doc/library/othergui.rst
index 2d514914f0..73f868a71b 100644
--- a/Doc/library/othergui.rst
+++ b/Doc/library/othergui.rst
@@ -10,7 +10,7 @@ available for Python:
`PyGObject <https://live.gnome.org/PyGObject>`_
provides introspection bindings for C libraries using
- `GObject <http://developer.gnome.org/gobject/stable/>`_. One of
+ `GObject <https://developer.gnome.org/gobject/stable/>`_. One of
these libraries is the `GTK+ 3 <http://www.gtk.org/>`_ widget set.
GTK+ comes with many more widgets than Tkinter provides. An online
`Python GTK+ 3 Tutorial <http://python-gtk-3-tutorial.readthedocs.org/en/latest/>`_
diff --git a/Doc/library/plistlib.rst b/Doc/library/plistlib.rst
index b0d5bcf105..416559114b 100644
--- a/Doc/library/plistlib.rst
+++ b/Doc/library/plistlib.rst
@@ -37,7 +37,7 @@ or :class:`datetime.datetime` objects.
.. seealso::
- `PList manual page <http://developer.apple.com/documentation/Darwin/Reference/ManPages/man5/plist.5.html>`_
+ `PList manual page <https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man5/plist.5.html>`_
Apple's documentation of the file format.
diff --git a/Doc/library/pprint.rst b/Doc/library/pprint.rst
index 447f8f7060..c0589a31a9 100644
--- a/Doc/library/pprint.rst
+++ b/Doc/library/pprint.rst
@@ -211,7 +211,7 @@ Example
-------
To demonstrate several uses of the :func:`pprint` function and its parameters,
-let's fetch information about a project from `PyPI <https://pypi.python.org>`_::
+let's fetch information about a project from `PyPI <https://pypi.python.org/pypi>`_::
>>> import json
>>> import pprint
diff --git a/Doc/library/select.rst b/Doc/library/select.rst
index a5e0c133e9..5334af8ea4 100644
--- a/Doc/library/select.rst
+++ b/Doc/library/select.rst
@@ -160,10 +160,7 @@ The module defines the following:
.. _devpoll-objects:
``/dev/poll`` Polling Objects
-----------------------------------------------
-
- http://developers.sun.com/solaris/articles/using_devpoll.html
- http://developers.sun.com/solaris/articles/polling_efficient.html
+-----------------------------
Solaris and derivatives have ``/dev/poll``. While :c:func:`select` is
O(highest file descriptor) and :c:func:`poll` is O(number of file
diff --git a/Doc/library/statistics.rst b/Doc/library/statistics.rst
index 4e7783872a..0c9d88c8de 100644
--- a/Doc/library/statistics.rst
+++ b/Doc/library/statistics.rst
@@ -226,7 +226,7 @@ However, for reading convenience, most of the examples show sorted sequences.
* Calculating the `median <http://www.ualberta.ca/~opscan/median.html>`_.
* The `SSMEDIAN
- <https://projects.gnome.org/gnumeric/doc/gnumeric-function-SSMEDIAN.shtml>`_
+ <https://help.gnome.org/users/gnumeric/stable/gnumeric.html#gnumeric-function-SSMEDIAN>`_
function in the Gnome Gnumeric spreadsheet, including `this discussion
<https://mail.gnome.org/archives/gnumeric-list/2011-April/msg00018.html>`_.
diff --git a/Doc/library/unittest.mock-examples.rst b/Doc/library/unittest.mock-examples.rst
index 796323739e..0a3cfb6496 100644
--- a/Doc/library/unittest.mock-examples.rst
+++ b/Doc/library/unittest.mock-examples.rst
@@ -549,7 +549,7 @@ Calls to the date constructor are recorded in the `mock_date` attributes
An alternative way of dealing with mocking dates, or other builtin classes,
is discussed in `this blog entry
-<http://williamjohnbert.com/2011/07/how-to-unit-testing-in-django-with-mocking-and-patching/>`_.
+<http://www.williamjohnbert.com/2011/07/how-to-unit-testing-in-django-with-mocking-and-patching/>`_.
Mocking a Generator Method
@@ -1254,4 +1254,4 @@ As of version 1.5, the Python testing library `PyHamcrest
<https://pypi.python.org/pypi/PyHamcrest>`_ provides similar functionality,
that may be useful here, in the form of its equality matcher
(`hamcrest.library.integration.match_equality
-<http://pythonhosted.org/PyHamcrest/integration.html#hamcrest.library.integration.match_equality>`_).
+<http://pythonhosted.org/PyHamcrest/integration.html#hamcrest.library.integration.match_equality.match_equality>`_).
diff --git a/Doc/library/unittest.rst b/Doc/library/unittest.rst
index 6c2ed5af52..375defa4bf 100644
--- a/Doc/library/unittest.rst
+++ b/Doc/library/unittest.rst
@@ -67,7 +67,7 @@ test runner
a GUI tool for test discovery and execution. This is intended largely for ease of use
for those new to unit testing. For production environments it is
recommended that tests be driven by a continuous integration system such as
- `Buildbot <http://buildbot.net/trac>`_, `Jenkins <http://jenkins-ci.org>`_
+ `Buildbot <http://buildbot.net/>`_, `Jenkins <http://jenkins-ci.org/>`_
or `Hudson <http://hudson-ci.org/>`_.
diff --git a/Doc/license.rst b/Doc/license.rst
index c8d3b77241..bbeacfcdbd 100644
--- a/Doc/license.rst
+++ b/Doc/license.rst
@@ -27,7 +27,7 @@ https://www.python.org/psf/) was formed, a non-profit organization created
specifically to own Python-related Intellectual Property. Zope Corporation is a
sponsoring member of the PSF.
-All Python releases are Open Source (see http://www.opensource.org/ for the Open
+All Python releases are Open Source (see http://opensource.org/ for the Open
Source Definition). Historically, most, but not all, Python releases have also
been GPL-compatible; the table below summarizes the various releases.
diff --git a/Doc/reference/import.rst b/Doc/reference/import.rst
index 146f29e125..e9b7e53247 100644
--- a/Doc/reference/import.rst
+++ b/Doc/reference/import.rst
@@ -901,7 +901,7 @@ References
The import machinery has evolved considerably since Python's early days. The
original `specification for packages
-<https://www.python.org/doc/essays/packages.html>`_ is still available to read,
+<http://legacy.python.org/doc/essays/packages.html>`_ is still available to read,
although some details have changed since the writing of that document.
The original specification for :data:`sys.meta_path` was :pep:`302`, with
diff --git a/Doc/reference/introduction.rst b/Doc/reference/introduction.rst
index 0ac57945db..5633ae3eb1 100644
--- a/Doc/reference/introduction.rst
+++ b/Doc/reference/introduction.rst
@@ -66,7 +66,7 @@ IronPython
An alternate Python for .NET. Unlike Python.NET, this is a complete Python
implementation that generates IL, and compiles Python code directly to .NET
assemblies. It was created by Jim Hugunin, the original creator of Jython. For
- more information, see `the IronPython website <http://www.ironpython.net/>`_.
+ more information, see `the IronPython website <http://ironpython.net/>`_.
PyPy
An implementation of Python written completely in Python. It supports several
diff --git a/Doc/tutorial/whatnow.rst b/Doc/tutorial/whatnow.rst
index a9ff6f46b7..6b03cb5b20 100644
--- a/Doc/tutorial/whatnow.rst
+++ b/Doc/tutorial/whatnow.rst
@@ -38,12 +38,12 @@ More Python resources:
* https://docs.python.org: Fast access to Python's documentation.
-* https://pypi.python.org: The Python Package Index, previously also nicknamed
+* https://pypi.python.org/pypi: The Python Package Index, previously also nicknamed
the Cheese Shop, is an index of user-created Python modules that are available
for download. Once you begin releasing code, you can register it here so that
others can find it.
-* http://aspn.activestate.com/ASPN/Python/Cookbook/: The Python Cookbook is a
+* http://code.activestate.com/recipes/langs/python/: The Python Cookbook is a
sizable collection of code examples, larger modules, and useful scripts.
Particularly notable contributions are collected in a book also titled Python
Cookbook (O'Reilly & Associates, ISBN 0-596-00797-3.)
diff --git a/Doc/using/cmdline.rst b/Doc/using/cmdline.rst
index bf4c1abc04..3749e743ad 100644
--- a/Doc/using/cmdline.rst
+++ b/Doc/using/cmdline.rst
@@ -411,7 +411,7 @@ Options you shouldn't use
Reserved for use by Jython_.
-.. _Jython: http://jython.org
+.. _Jython: http://www.jython.org/
.. _using-on-envvars:
diff --git a/Doc/using/mac.rst b/Doc/using/mac.rst
index 9034b636ec..ede864d7ad 100644
--- a/Doc/using/mac.rst
+++ b/Doc/using/mac.rst
@@ -64,7 +64,7 @@ the Finder you first need an editor to create your script. Mac OS X comes with a
number of standard Unix command line editors, :program:`vim` and
:program:`emacs` among them. If you want a more Mac-like editor,
:program:`BBEdit` or :program:`TextWrangler` from Bare Bones Software (see
-http://www.barebones.com/products/bbedit/index.shtml) are good choices, as is
+http://www.barebones.com/products/bbedit/index.html) are good choices, as is
:program:`TextMate` (see http://macromates.com/). Other editors include
:program:`Gvim` (http://macvim.org) and :program:`Aquamacs`
(http://aquamacs.org/).
@@ -116,7 +116,7 @@ The IDE
MacPython ships with the standard IDLE development environment. A good
introduction to using IDLE can be found at
-http://hkn.eecs.berkeley.edu/~dyoo/python/idle_intro/index.html.
+https://hkn.eecs.berkeley.edu/~dyoo/python/idle_intro/index.html.
.. _mac-package-manager:
@@ -130,7 +130,7 @@ There are several methods to install additional Python packages:
setup.py install``).
* Many packages can also be installed via the :program:`setuptools` extension
- or :program:`pip` wrapper, see http://www.pip-installer.org/.
+ or :program:`pip` wrapper, see https://pip.pypa.io/.
GUI Programming on the Mac
@@ -140,7 +140,7 @@ There are several options for building GUI applications on the Mac with Python.
*PyObjC* is a Python binding to Apple's Objective-C/Cocoa framework, which is
the foundation of most modern Mac development. Information on PyObjC is
-available from http://pyobjc.sourceforge.net.
+available from https://pythonhosted.org/pyobjc/.
The standard Python GUI toolkit is :mod:`tkinter`, based on the cross-platform
Tk toolkit (http://www.tcl.tk). An Aqua-native version of Tk is bundled with OS
diff --git a/Doc/using/unix.rst b/Doc/using/unix.rst
index 067f80af03..5da1f23346 100644
--- a/Doc/using/unix.rst
+++ b/Doc/using/unix.rst
@@ -67,7 +67,7 @@ Building Python
If you want to compile CPython yourself, first thing you should do is get the
`source <https://www.python.org/download/source/>`_. You can download either the
latest release's source or just grab a fresh `clone
-<https://docs.python.org/devguide/setup#getting-the-source-code>`_. (If you want
+<https://docs.python.org/devguide/setup.html#getting-the-source-code>`_. (If you want
to contribute patches, you will need a clone.)
The build process consists in the usual ::
@@ -145,5 +145,4 @@ Geany is an excellent IDE with support for a lot of languages. For more
information, read: http://www.geany.org/
Komodo edit is another extremely good IDE. It also has support for a lot of
-languages. For more information, read:
-http://www.activestate.com/store/productdetail.aspx?prdGuid=20f4ed15-6684-4118-a78b-d37ff4058c5f
+languages. For more information, read http://komodoide.com/.
diff --git a/Doc/using/venv-create.inc b/Doc/using/venv-create.inc
index 26acf0bfc1..ba1cdcc50b 100644
--- a/Doc/using/venv-create.inc
+++ b/Doc/using/venv-create.inc
@@ -14,7 +14,7 @@ subdirectory (on Windows, this is ``Lib\site-packages``).
.. seealso::
`Python Packaging User Guide: Creating and using virtual environments
- <https://packaging.python.org/en/latest/tutorial.html#creating-and-using-virtual-environments>`__
+ <https://packaging.python.org/en/latest/installing.html#virtual-environments>`__
.. highlight:: none
diff --git a/Doc/using/windows.rst b/Doc/using/windows.rst
index 10d4df3296..93c67a7970 100644
--- a/Doc/using/windows.rst
+++ b/Doc/using/windows.rst
@@ -29,9 +29,8 @@ earlier are no longer supported (due to the lack of users or developers).
Check :pep:`11` for details on all unsupported platforms.
* `Windows CE <http://pythonce.sourceforge.net/>`_ is still supported.
-* The `Cygwin <http://cygwin.com/>`_ installer offers to install the `Python
- interpreter <http://cygwin.com/packages/python>`_ as well; it is located under
- "Interpreters." (cf. `Cygwin package source
+* The `Cygwin <http://cygwin.com/>`_ installer offers to install the Python
+ interpreter as well (cf. `Cygwin package source
<ftp://ftp.uni-erlangen.de/pub/pc/gnuwin32/cygwin/mirrors/cygnus/
release/python>`_, `Maintainer releases
<http://www.tishler.net/jason/software/python/>`_)
@@ -45,9 +44,9 @@ for detailed information about platforms with pre-compiled installers.
"7 Minutes to "Hello World!""
by Richard Dooling, 2006
- `Installing on Windows <http://diveintopython.net/installing_python/windows.html>`_
+ `Installing on Windows <http://www.diveintopython.net/installing_python/windows.html>`_
in "`Dive into Python: Python from novice to pro
- <http://diveintopython.net/index.html>`_"
+ <http://www.diveintopython.net/>`_"
by Mark Pilgrim, 2004,
ISBN 1-59059-356-1
@@ -67,7 +66,7 @@ key features:
`ActivePython <http://www.activestate.com/activepython/>`_
Installer with multi-platform compatibility, documentation, PyWin32
-`Enthought Python Distribution <http://www.enthought.com/products/epd.php>`_
+`Enthought Python Distribution <https://www.enthought.com/products/epd/>`_
Popular modules (such as PyWin32) with their respective documentation, tool
suite for building extensible Python applications
@@ -555,7 +554,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/download/source/>`_. You can download either the
latest release's source or just grab a fresh `checkout
-<https://docs.python.org/devguide/setup#checking-out-the-code>`_.
+<https://docs.python.org/devguide/setup.html#checking-out-the-code>`_.
The source tree contains a build solution and project files for Microsoft
Visual C++, which is the compiler used to build the official Python releases.