PEP-376: remove hexdigest from RECORD

This commit is contained in:
Daniel Holth 2012-11-09 20:58:41 -05:00
parent ee6f30d19a
commit c728a9ecfb
1 changed files with 9 additions and 10 deletions

View File

@ -224,10 +224,9 @@ Each record is composed of three elements:
of the corresponding `py` file is enough to decide if the file and
its associated `pyc` or `pyo` files have changed.
The hash is either the empty string, the **MD5** hash of
the file, encoded in hex, or the hash algorithm as named in
The hash is either the empty string or the hash algorithm as named in
``hashlib.algorithms_guaranteed``, followed by the equals character
``=``, followed by the urlsafe-base64-nopad encoding of the digest
``=``, followed by the urlsafe-base64-nopad encoding of the digest
(``base64.urlsafe_b64encode(digest)`` with trailing ``=`` removed).
- the file's size in bytes
@ -243,27 +242,27 @@ terminator.
Here's an example of a RECORD file (extract)::
lib/python2.6/site-packages/docutils/__init__.py,b690274f621402dda63bf11ba5373bf2,9544
lib/python2.6/site-packages/docutils/__init__.py,md5=nWt-Dge1eug4iAgqLS_uWg,9544
lib/python2.6/site-packages/docutils/__init__.pyc,,
lib/python2.6/site-packages/docutils/core.py,9c4b84aff68aa55f2e9bf70481b94333,66188
lib/python2.6/site-packages/docutils/core.py,md5=X90C_JLIcC78PL74iuhPnA,66188
lib/python2.6/site-packages/docutils/core.pyc,,
lib/python2.6/site-packages/roman.py,a4b84aff68aa55f2e9bf70481b943D3,234
lib/python2.6/site-packages/roman.py,md5=7YhfNczihNjOY0FXlupwBg,234
lib/python2.6/site-packages/roman.pyc,,
/usr/local/bin/rst2html.py,a4b84aff68aa55f2e9bf70481b943D3,234
/usr/local/bin/rst2html.py,md5=g22D3amDLJP-FhBzCi7EvA,234
/usr/local/bin/rst2html.pyc,,
python2.6/site-packages/docutils-0.5.dist-info/METADATA,6fe57de576d749536082d8e205b77748,195
python2.6/site-packages/docutils-0.5.dist-info/METADATA,md5=ovJyUNzXdArGfmVyb0onyA,195
lib/python2.6/site-packages/docutils-0.5.dist-info/RECORD,,
Notice that the `RECORD` file can't contain a hash of itself and is just mentioned here
A project that installs a `config.ini` file in `/etc/myapp` will be added like this::
/etc/myapp/config.ini,b690274f621402dda63bf11ba5373bf2,9544
/etc/myapp/config.ini,md5=gLfd6IANquzGLhOkW4Mfgg,9544
For a windows platform, the drive letter is added for the absolute paths,
so a file that is copied in c:\MyApp\ will be::
c:\etc\myapp\config.ini,b690274f621402dda63bf11ba5373bf2,9544
c:\etc\myapp\config.ini,md5=gLfd6IANquzGLhOkW4Mfgg,9544
INSTALLER