fune/python
Dave Hunt c65268bd7a Bug 1388013 - Support running |mach python-test| against Python 3 using pipenv; r=ahal
This patch allows executing |mach python-test| against Python 3 by specifying the optional |--three| command line option. When this option is present, pipenv will be used to manage a virtual environment using Python 3 and attempt to run the tests. When it is not present, pipenv will not be used, and everything will work as it did before this patch.

My original plan was to use pipenv regardless of the target version of Python, however I encountered several issues running some of the tests against our Python packages. Once all tests have been patched to run against Python 3, then we should be able to use pipenv when running them against Python 2.

Note that this patch allows tests to run against Python 3, but there are plenty of issues preventing them from passing. With this patch in place we can start to add Python 3 support to our packages and have the tests running in CI to ensure we don't regress back to just supporting Python 2.

MozReview-Commit-ID: BuU5gZK83hL


IHG: changed taskcluster/ci/source-test/python.yml

--HG--
extra : rebase_source : ca2b15d905f7a5c895a2fd8916144841f5d205de
2018-05-03 10:34:22 +01:00
..
devtools/migrate-l10n
docs Backed out 3 changesets (bug 1346026) for Bugzilla linting 2018-05-23 19:42:13 +03:00
l10n/fluent_migrations Bug 1460806 - Clean up Fluent migration recipes r=gandalf 2018-05-11 08:12:52 +02:00
mach Bug 1388013 - Support running |mach python-test| against Python 3 using pipenv; r=ahal 2018-05-03 10:34:22 +01:00
mozboot Bug 1462444 - Make |mach bootstrap| use the latest version of Oracle's JDK when bootstrapping Fennec on Gentoo; r=nalexander 2018-05-17 21:44:26 +02:00
mozbuild Bug 1388013 - Support running |mach python-test| against Python 3 using pipenv; r=ahal 2018-05-03 10:34:22 +01:00
mozlint Bug 1460690 - [mozlint] Make sure vcs_paths are always joined to the repository root, r=standard8 2018-05-11 11:13:36 -04:00
mozrelease Bug 1453274 - Bump mozrelease in tree version, to distinguish it from the pypi mirror version. r=rail 2018-04-24 21:55:22 -04:00
mozterm
mozversioncontrol Bug 1388013 - Support running |mach python-test| against Python 3 using pipenv; r=ahal 2018-05-03 10:34:22 +01:00
mach_commands.py Bug 1388013 - Support running |mach python-test| against Python 3 using pipenv; r=ahal 2018-05-03 10:34:22 +01:00
moz.build Bug 1453274 - Add testing for python/mozrelease/versions.py r=rail 2018-04-23 12:40:26 -04:00
Pipfile Bug 1388013 - Support running |mach python-test| against Python 3 using pipenv; r=ahal 2018-05-03 10:34:22 +01:00
Pipfile.lock Bug 1388013 - Support running |mach python-test| against Python 3 using pipenv; r=ahal 2018-05-03 10:34:22 +01:00
README

This directory contains common Python code.

The basic rule is that if Python code is cross-module (that's "module" in the
Mozilla meaning - as in "module ownership") and is MPL-compatible, it should
go here.

What should not go here:

* Vendored python modules (use third_party/python instead)
* Python that is not MPL-compatible (see other-licenses/)
* Python that has good reason to remain close to its "owning" (Mozilla)
  module (e.g. it is only being consumed from there).

Historical information can be found at
https://bugzilla.mozilla.org/show_bug.cgi?id=775243
https://bugzilla.mozilla.org/show_bug.cgi?id=1346025