diff --git a/README.rst b/README.rst
index b2ed1e14043..81693962447 100644
--- a/README.rst
+++ b/README.rst
@@ -6,13 +6,13 @@
------
.. image:: https://img.shields.io/pypi/v/pytest.svg
- :target: https://pypi.python.org/pypi/pytest
+ :target: https://pypi.org/project/pytest/
.. image:: https://anaconda.org/conda-forge/pytest/badges/version.svg
:target: https://anaconda.org/conda-forge/pytest
.. image:: https://img.shields.io/pypi/pyversions/pytest.svg
- :target: https://pypi.python.org/pypi/pytest
+ :target: https://pypi.org/project/pytest/
.. image:: https://img.shields.io/coveralls/pytest-dev/pytest/master.svg
:target: https://coveralls.io/r/pytest-dev/pytest
diff --git a/doc/en/_templates/links.html b/doc/en/_templates/links.html
index 91157dfb7af..3a1a27a26f2 100644
--- a/doc/en/_templates/links.html
+++ b/doc/en/_templates/links.html
@@ -1,6 +1,6 @@
Useful Links
- - pytest @ PyPI
+ - pytest @ PyPI
- pytest @ GitHub
- 3rd party plugins
- Issue Tracker
diff --git a/doc/en/announce/release-2.3.5.rst b/doc/en/announce/release-2.3.5.rst
index 112399ef3ca..bb4e84af0f9 100644
--- a/doc/en/announce/release-2.3.5.rst
+++ b/doc/en/announce/release-2.3.5.rst
@@ -14,7 +14,7 @@ few interesting new plugins saw the light last month:
And several others like pytest-django saw maintenance releases.
For a more complete list, check out
-https://pypi.python.org/pypi?%3Aaction=search&term=pytest&submit=search.
+https://pypi.org/search/?q=pytest
For general information see:
diff --git a/doc/en/announce/release-2.4.0.rst b/doc/en/announce/release-2.4.0.rst
index be3aaedb09f..4fb3d05cd45 100644
--- a/doc/en/announce/release-2.4.0.rst
+++ b/doc/en/announce/release-2.4.0.rst
@@ -23,14 +23,14 @@ a full list of details. A few feature highlights:
called if the corresponding setup method succeeded.
- integrate tab-completion on command line options if you
- have `argcomplete `_
+ have `argcomplete `_
configured.
- allow boolean expression directly with skipif/xfail
if a "reason" is also specified.
- a new hook ``pytest_load_initial_conftests`` allows plugins like
- `pytest-django `_ to
+ `pytest-django `_ to
influence the environment before conftest files import ``django``.
- reporting: color the last line red or green depending if
diff --git a/doc/en/development_guide.rst b/doc/en/development_guide.rst
index 2dac82880b1..f69371a5add 100644
--- a/doc/en/development_guide.rst
+++ b/doc/en/development_guide.rst
@@ -10,7 +10,7 @@ Code Style
----------
* `PEP-8 `_
-* `flake8 `_ for quality checks
+* `flake8 `_ for quality checks
* `invoke `_ to automate development tasks
diff --git a/doc/en/example/nonpython.rst b/doc/en/example/nonpython.rst
index dd25e888f57..ca7b2c8df12 100644
--- a/doc/en/example/nonpython.rst
+++ b/doc/en/example/nonpython.rst
@@ -10,7 +10,7 @@ A basic example for specifying tests in Yaml files
--------------------------------------------------------------
.. _`pytest-yamlwsgi`: http://bitbucket.org/aafshar/pytest-yamlwsgi/src/tip/pytest_yamlwsgi.py
-.. _`PyYAML`: http://pypi.python.org/pypi/PyYAML/
+.. _`PyYAML`: https://pypi.org/project/PyYAML/
Here is an example ``conftest.py`` (extracted from Ali Afshnars special purpose `pytest-yamlwsgi`_ plugin). This ``conftest.py`` will collect ``test*.yml`` files and will execute the yaml-formatted content as custom tests:
diff --git a/doc/en/example/parametrize.rst b/doc/en/example/parametrize.rst
index dd01b25277a..073f7fb88d2 100644
--- a/doc/en/example/parametrize.rst
+++ b/doc/en/example/parametrize.rst
@@ -160,7 +160,7 @@ together with the actual data, instead of listing them separately.
A quick port of "testscenarios"
------------------------------------
-.. _`test scenarios`: http://pypi.python.org/pypi/testscenarios/
+.. _`test scenarios`: https://pypi.org/project/testscenarios/
Here is a quick port to run tests configured with `test scenarios`_,
an add-on from Robert Collins for the standard unittest framework. We
diff --git a/doc/en/example/simple.rst b/doc/en/example/simple.rst
index ce9ec86038d..634e01d5d32 100644
--- a/doc/en/example/simple.rst
+++ b/doc/en/example/simple.rst
@@ -108,7 +108,7 @@ the command line arguments before they get processed:
num = max(multiprocessing.cpu_count() / 2, 1)
args[:] = ["-n", str(num)] + args
-If you have the `xdist plugin `_ installed
+If you have the `xdist plugin `_ installed
you will now always perform test runs using a number
of subprocesses close to your CPU. Running in an empty
directory with the above conftest.py::
@@ -778,7 +778,7 @@ which test got stuck, for example if pytest was run in quiet mode (``-q``) or yo
output. This is particularly a problem if the problem helps only sporadically, the famous "flaky" kind of tests.
``pytest`` sets a ``PYTEST_CURRENT_TEST`` environment variable when running tests, which can be inspected
-by process monitoring utilities or libraries like `psutil `_ to discover which
+by process monitoring utilities or libraries like `psutil `_ to discover which
test got stuck if necessary:
.. code-block:: python
diff --git a/doc/en/faq.rst b/doc/en/faq.rst
index 27d74e1148c..5b13818ea5e 100644
--- a/doc/en/faq.rst
+++ b/doc/en/faq.rst
@@ -30,14 +30,14 @@ and does not handle Deferreds returned from a test in pytest style.
If you are using trial's unittest.TestCase chances are that you can
just run your tests even if you return Deferreds. In addition,
there also is a dedicated `pytest-twisted
-`_ plugin which allows you to
+`_ plugin which allows you to
return deferreds from pytest-style tests, allowing the use of
:ref:`fixtures` and other features.
how does pytest work with Django?
++++++++++++++++++++++++++++++++++++++++++++++
-In 2012, some work is going into the `pytest-django plugin `_. It substitutes the usage of Django's
+In 2012, some work is going into the `pytest-django plugin `_. It substitutes the usage of Django's
``manage.py test`` and allows the use of all pytest features_ most of which
are not available from Django directly.
diff --git a/doc/en/fixture.rst b/doc/en/fixture.rst
index fbb922d796c..f1cdf622a95 100644
--- a/doc/en/fixture.rst
+++ b/doc/en/fixture.rst
@@ -154,7 +154,7 @@ This makes use of the automatic caching mechanisms of pytest.
Another good approach is by adding the data files in the ``tests`` folder.
There are also community plugins available to help managing this aspect of
testing, e.g. `pytest-datadir `__
-and `pytest-datafiles `__.
+and `pytest-datafiles `__.
.. _smtpshared:
diff --git a/doc/en/getting-started.rst b/doc/en/getting-started.rst
index 7b9bfba574f..aae0bf97168 100644
--- a/doc/en/getting-started.rst
+++ b/doc/en/getting-started.rst
@@ -5,10 +5,10 @@ Installation and Getting Started
**Platforms**: Unix/Posix and Windows
-**PyPI package name**: `pytest `_
+**PyPI package name**: `pytest `_
-**Dependencies**: `py `_,
-`colorama (Windows) `_,
+**Dependencies**: `py `_,
+`colorama (Windows) `_,
**Documentation as PDF**: `download latest `_
diff --git a/doc/en/goodpractices.rst b/doc/en/goodpractices.rst
index 16fdd24c392..490ecadd62f 100644
--- a/doc/en/goodpractices.rst
+++ b/doc/en/goodpractices.rst
@@ -168,9 +168,9 @@ Note that this layout also works in conjunction with the ``src`` layout mentione
to avoid surprises such as a test module getting imported twice.
-.. _`virtualenv`: http://pypi.python.org/pypi/virtualenv
+.. _`virtualenv`: https://pypi.org/project/virtualenv/
.. _`buildout`: http://www.buildout.org/
-.. _pip: http://pypi.python.org/pypi/pip
+.. _pip: https://pypi.org/project/pip/
.. _`use tox`:
@@ -205,7 +205,7 @@ Integrating with setuptools / ``python setup.py test`` / ``pytest-runner``
--------------------------------------------------------------------------
You can integrate test runs into your setuptools based project
-with the `pytest-runner `_ plugin.
+with the `pytest-runner `_ plugin.
Add this to ``setup.py`` file:
diff --git a/doc/en/links.inc b/doc/en/links.inc
index b69390baa84..4d5a4b1eebf 100644
--- a/doc/en/links.inc
+++ b/doc/en/links.inc
@@ -7,14 +7,14 @@
.. _`reStructured Text`: http://docutils.sourceforge.net
.. _`Python debugger`: http://docs.python.org/lib/module-pdb.html
.. _nose: https://nose.readthedocs.io/en/latest/
-.. _pytest: http://pypi.python.org/pypi/pytest
+.. _pytest: https://pypi.org/project/pytest/
.. _mercurial: http://mercurial.selenic.com/wiki/
-.. _`setuptools`: http://pypi.python.org/pypi/setuptools
+.. _`setuptools`: https://pypi.org/project/setuptools/
.. _`easy_install`:
.. _`distribute docs`:
-.. _`distribute`: http://pypi.python.org/pypi/distribute
-.. _`pip`: http://pypi.python.org/pypi/pip
-.. _`virtualenv`: http://pypi.python.org/pypi/virtualenv
+.. _`distribute`: https://pypi.org/project/distribute/
+.. _`pip`: https://pypi.org/project/pip/
+.. _`virtualenv`: https://pypi.org/project/virtualenv/
.. _hudson: http://hudson-ci.org/
.. _jenkins: http://jenkins-ci.org/
.. _tox: http://testrun.org/tox
diff --git a/doc/en/plugins.rst b/doc/en/plugins.rst
index 3d1226d3432..9ddba5d38ca 100644
--- a/doc/en/plugins.rst
+++ b/doc/en/plugins.rst
@@ -20,39 +20,39 @@ Here is a little annotated list for some popular plugins:
.. _`django`: https://www.djangoproject.com/
-* `pytest-django `_: write tests
+* `pytest-django `_: write tests
for `django`_ apps, using pytest integration.
-* `pytest-twisted `_: write tests
+* `pytest-twisted `_: write tests
for `twisted `_ apps, starting a reactor and
processing deferreds from test functions.
-* `pytest-cov `_:
+* `pytest-cov `_:
coverage reporting, compatible with distributed testing
-* `pytest-xdist `_:
+* `pytest-xdist `_:
to distribute tests to CPUs and remote hosts, to run in boxed
mode which allows to survive segmentation faults, to run in
looponfailing mode, automatically re-running failing tests
on file changes.
-* `pytest-instafail `_:
+* `pytest-instafail `_:
to report failures while the test run is happening.
-* `pytest-bdd `_ and
- `pytest-konira `_
+* `pytest-bdd `_ and
+ `pytest-konira `_
to write tests using behaviour-driven testing.
-* `pytest-timeout `_:
+* `pytest-timeout `_:
to timeout tests based on function marks or global definitions.
-* `pytest-pep8 `_:
+* `pytest-pep8 `_:
a ``--pep8`` option to enable PEP8 compliance checking.
-* `pytest-flakes `_:
+* `pytest-flakes `_:
check source code with pyflakes.
-* `oejskit `_:
+* `oejskit `_:
a plugin to run javascript unittests in live browsers.
To see a complete list of all plugins with their latest testing
@@ -61,7 +61,7 @@ status against different pytest and Python versions, please visit
You may also discover more plugins through a `pytest- pypi.python.org search`_.
-.. _`pytest- pypi.python.org search`: http://pypi.python.org/pypi?%3Aaction=search&term=pytest-&submit=search
+.. _`pytest- pypi.python.org search`: https://pypi.org/search/?q=pytest-
.. _`available installable plugins`:
diff --git a/doc/en/projects.rst b/doc/en/projects.rst
index 51f2d94fdcc..606e9d47c16 100644
--- a/doc/en/projects.rst
+++ b/doc/en/projects.rst
@@ -32,40 +32,40 @@ Here are some examples of projects using ``pytest`` (please send notes via :ref:
* `PyPM `_ ActiveState's package manager
* `Fom `_ a fluid object mapper for FluidDB
* `applib `_ cross-platform utilities
-* `six `_ Python 2 and 3 compatibility utilities
+* `six `_ Python 2 and 3 compatibility utilities
* `pediapress `_ MediaWiki articles
-* `mwlib `_ mediawiki parser and utility library
+* `mwlib `_ mediawiki parser and utility library
* `The Translate Toolkit `_ for localization and conversion
* `execnet `_ rapid multi-Python deployment
* `pylib `_ cross-platform path, IO, dynamic code library
* `Pacha `_ configuration management in five minutes
-* `bbfreeze `_ create standalone executables from Python scripts
+* `bbfreeze `_ create standalone executables from Python scripts
* `pdb++ `_ a fancier version of PDB
* `py-s3fuse `_ Amazon S3 FUSE based filesystem
* `waskr `_ WSGI Stats Middleware
* `guachi `_ global persistent configs for Python modules
-* `Circuits `_ lightweight Event Driven Framework
+* `Circuits `_ lightweight Event Driven Framework
* `pygtk-helpers `_ easy interaction with PyGTK
* `QuantumCore `_ statusmessage and repoze openid plugin
* `pydataportability `_ libraries for managing the open web
* `XIST `_ extensible HTML/XML generator
-* `tiddlyweb `_ optionally headless, extensible RESTful datastore
+* `tiddlyweb `_ optionally headless, extensible RESTful datastore
* `fancycompleter `_ for colorful tab-completion
* `Paludis `_ tools for Gentoo Paludis package manager
* `Gerald `_ schema comparison tool
* `abjad `_ Python API for Formalized Score control
* `bu `_ a microscopic build system
* `katcp `_ Telescope communication protocol over Twisted
-* `kss plugin timer `_
+* `kss plugin timer `_
* `pyudev `_ a pure Python binding to the Linux library libudev
* `pytest-localserver `_ a plugin for pytest that provides an httpserver and smtpserver
-* `pytest-monkeyplus `_ a plugin that extends monkeypatch
+* `pytest-monkeyplus `_ a plugin that extends monkeypatch
These projects help integrate ``pytest`` into other Python frameworks:
-* `pytest-django `_ for Django
+* `pytest-django `_ for Django
* `zope.pytest `_ for Zope and Grok
-* `pytest_gae `_ for Google App Engine
+* `pytest_gae `_ for Google App Engine
* There is `some work `_ underway for Kotti, a CMS built in Pyramid/Pylons
diff --git a/doc/en/proposals/parametrize_with_fixtures.rst b/doc/en/proposals/parametrize_with_fixtures.rst
index 146032aa471..eb4b078793f 100644
--- a/doc/en/proposals/parametrize_with_fixtures.rst
+++ b/doc/en/proposals/parametrize_with_fixtures.rst
@@ -118,7 +118,7 @@ all parameters marked as a fixture.
.. note::
- The `pytest-lazy-fixture `_ plugin implements a very
+ The `pytest-lazy-fixture `_ plugin implements a very
similar solution to the proposal below, make sure to check it out.
.. code-block:: python
diff --git a/doc/en/test/plugin/cov.rst b/doc/en/test/plugin/cov.rst
index 541c7ef9479..0b95aa45229 100644
--- a/doc/en/test/plugin/cov.rst
+++ b/doc/en/test/plugin/cov.rst
@@ -21,7 +21,7 @@ The `pytest-cov`_ package may be installed with pip or easy_install::
pip install pytest-cov
easy_install pytest-cov
-.. _`pytest-cov`: http://pypi.python.org/pypi/pytest-cov/
+.. _`pytest-cov`: https://pypi.org/project/pytest-cov/
Uninstallation
diff --git a/doc/en/test/plugin/oejskit.rst b/doc/en/test/plugin/oejskit.rst
index 4995aa17c72..791f5c72552 100644
--- a/doc/en/test/plugin/oejskit.rst
+++ b/doc/en/test/plugin/oejskit.rst
@@ -7,6 +7,6 @@ The approach enables to write integration tests such that the JavaScript code is
For more info and download please visit the `oejskit PyPI`_ page.
.. _`oejskit`:
-.. _`oejskit PyPI`: http://pypi.python.org/pypi/oejskit
+.. _`oejskit PyPI`: https://pypi.org/project/oejskit/
.. source link 'http://bitbucket.org/pedronis/js-infrastructure/src/tip/pytest_jstests.py',
diff --git a/doc/en/test/plugin/xdist.rst b/doc/en/test/plugin/xdist.rst
index 506d240aee1..865b3596dd2 100644
--- a/doc/en/test/plugin/xdist.rst
+++ b/doc/en/test/plugin/xdist.rst
@@ -26,7 +26,7 @@ program source code to the remote place. All test results
are reported back and displayed to your local test session.
You may specify different Python versions and interpreters.
-.. _`pytest-xdist`: http://pypi.python.org/pypi/pytest-xdist
+.. _`pytest-xdist`: https://pypi.org/project/pytest-xdist/
Usage examples
---------------------
diff --git a/doc/en/unittest.rst b/doc/en/unittest.rst
index b44bda44fa8..1bc33ab191c 100644
--- a/doc/en/unittest.rst
+++ b/doc/en/unittest.rst
@@ -46,9 +46,9 @@ in most cases without having to modify existing code:
* :ref:`maxfail`;
* :ref:`--pdb ` command-line option for debugging on test failures
(see :ref:`note ` below);
-* Distribute tests to multiple CPUs using the `pytest-xdist `_ plugin;
+* Distribute tests to multiple CPUs using the `pytest-xdist `_ plugin;
* Use :ref:`plain assert-statements ` instead of ``self.assert*`` functions (`unittest2pytest
- `__ is immensely helpful in this);
+ `__ is immensely helpful in this);
pytest features in ``unittest.TestCase`` subclasses
diff --git a/doc/en/usage.rst b/doc/en/usage.rst
index 7274dccc965..f6f2a9f5fc8 100644
--- a/doc/en/usage.rst
+++ b/doc/en/usage.rst
@@ -407,7 +407,7 @@ Creating resultlog format files
This option is rarely used and is scheduled for removal in 4.0.
An alternative for users which still need similar functionality is to use the
- `pytest-tap `_ plugin which provides
+ `pytest-tap `_ plugin which provides
a stream of test data.
If you have any concerns, please don't hesitate to
diff --git a/doc/en/writing_plugins.rst b/doc/en/writing_plugins.rst
index 7da09dbbbf5..67c885efb75 100644
--- a/doc/en/writing_plugins.rst
+++ b/doc/en/writing_plugins.rst
@@ -103,7 +103,7 @@ Here is how you might run it::
Writing your own plugin
-----------------------
-.. _`setuptools`: http://pypi.python.org/pypi/setuptools
+.. _`setuptools`: https://pypi.org/project/setuptools/
If you want to write a plugin, there are many real-life examples
you can copy from: