gecko-dev/python
Nick Alexander 9c3e48627a Bug 1137898 - Migrate to android:versionCode scheme v1. r=rnewman,snorp
Android version codes serve multiple masters.  They indicate newer
versions, yes; but they also break ties between versions with
different features and requirements. High order bits effectively
partition the space of versions and are valuable.  Since Android
version codes are signed Java integers, we have 31 bits to work with.
Mozilla's traditional build ID is YYYYMMDDhhmmss.  This was chopped to
ten characters (YYYYMMDDhh, i.e., hourly build IDs) and then converted
to a decimal.  This took many high order bits.  We will lose another
high order bit in the 36th month of 2015 -- i.e., as soon as the year
rolls over to 2016.  If we waited to lose the next higher order bit,
we'd lose that one in the 46th month of 2017 -- i.e., as soon as the
year rolls over to 2018.

The following patch sacrifices a high order bit to change the version
scheme, winning us roughly 15 years of hourly build IDs before we are
forced to lose another high order bit.  So it's clearly to our
advantage to change the scheme sooner rather than later -- we will
sacrifice 1 bit for 15 years of build IDs, rather than keeping the
current scheme and sacrificing (say) 2 bits for 3 years of build IDs.

The resulting scheme produces build IDs that look like (in binary):

0111 1000 0010 tttt tttt tttt tttt txpg

The meaning of these build IDs is documented in the Python source code
that generates them.

--HG--
extra : commitid : 7BEkkGHsYVL
extra : rebase_source : bbc0ead8e7a383c320e838b023b02b1fb0d94ff3
extra : amend_source : dab8c737e3274694aad40123e77884a3239908de
extra : histedit_source : 530bedde3695d534805465cdf8bcb9cd23f7b031
2015-08-26 18:34:48 -07:00
..
PyECC bug 1190603 - import PyECC library r=gps,gerv 2015-08-03 15:17:00 -07:00
bitstring Bug 1091668 - Import bitstring-3.1.3; r=ted, r=gerv 2014-11-03 10:47:25 -05:00
blessings
compare-locales Bug 1176642 - Use absolute_import in mach_commands.py files; r=glandium 2015-06-21 17:39:09 -07:00
configobj
eme Bug 1139125 - Add Windows 64-bit support and certificate chain support to Adobe EME voucher tool. r=ted 2015-05-15 15:26:52 +12:00
futures bug 1164816 - Import concurrent.futures into the tree. r=gps 2015-05-12 14:52:06 -04:00
jsmin Bug 1105052 - Update in-tree jsmin to commit a878bf0. rs=gps 2014-11-25 16:02:08 -08:00
lldbutils Bug 1151349 - Make lldb ns(Int)Region summary handle the numRects==0 case. r=jrmuizel 2015-04-05 14:06:43 -04:00
mach Bug 1192315 - Support remainder arguments from predefined parsers in mach, r=gps 2015-08-07 18:13:05 +01:00
mock-1.0.0
mozboot Bug 1171783 - Fix bootstrap.py by using DNF instead of Yum if possible; r=mshal 2015-08-19 12:56:22 -07:00
mozbuild Bug 1137898 - Migrate to android:versionCode scheme v1. r=rnewman,snorp 2015-08-26 18:34:48 -07:00
mozversioncontrol/mozversioncontrol Bug 1197527 - Consolidate obtaining hg path into mozversioncontrol.get_hg_path; r=gps 2015-08-24 14:37:42 -04:00
psutil Bug 1196253 - update in-tree psutil to 3.1.1. r=gps 2015-08-20 08:03:31 -04:00
pyasn1 Bug 1091668 - Import pyasn1-0.1.7; r=ted, r=gerv 2014-11-03 10:46:46 -05:00
pyasn1-modules bug 1166976 - add pyasn1-modules python library r=ted,gerv 2015-05-20 16:33:23 -07:00
pystache Bug 1068653 - Part 1 Add python dependencies for taskcluster mach commands r=gps 2014-11-26 10:11:28 -08:00
pyyaml Bug 1068653 - Part 1 Add python dependencies for taskcluster mach commands r=gps 2014-11-26 10:11:28 -08:00
redo Bug 1118774 - Import python redo library; r=gps 2015-01-07 14:18:20 -05:00
requests bug 1135700 - Import the Python requests module. r=gps 2015-02-23 11:27:50 -05:00
rsa bug 1166976 - add Python-RSA python library r=ted,gerv 2015-05-20 16:34:03 -07:00
virtualenv Bug 1119350 - Upgrade virtualenv to 12.0.5; r=gps 2015-01-08 10:52:07 -07:00
which Bug 1119776, Part 7: Avoid defining snprintf when MSVC provides it (other), r=bsmedberg 2015-01-08 22:35:33 -08:00
README Bug 1068653 - Part 1 Add python dependencies for taskcluster mach commands r=gps 2014-11-26 10:11:28 -08:00
mach_commands.py Bug 1177933 - Add |mach eslint| command. r=mcomella,dmose 2015-07-02 12:18:52 -07:00
moz.build Bug 910660 - Add a test for the unpacker code. r=gps 2015-03-24 09:10:32 +09: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:

* 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

## pyyaml | pystache

Used in taskcluster related mach commands to update download from github
and remove .git and tests.

Then run tests in taskcluster/tests/