Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 11 additions & 2 deletions source/specifications/source-distribution-format.rst
Original file line number Diff line number Diff line change
Expand Up @@ -74,10 +74,19 @@ at their respective paths relative to the root directory of the sdist
No other content of a sdist is required or defined. Build systems can store
whatever information they need in the sdist to build the project.

The tarball must use the modern POSIX.1-2001 pax tar format, which specifies
UTF-8 based file names. In particular, source distribution files must be readable
The tarball MUST use the modern POSIX.1-2001 pax tar format, which specifies
Comment thread
woodruffw marked this conversation as resolved.
UTF-8 based file names. In particular, source distribution files MUST be readable
using the standard library tarfile module with the open flag 'r:gz'.

Source distributions MUST NOT use non-pax features, even if those features are
structurally compatible with the pax standard. Installers and other consumers SHOULD
reject source distributions that are not strictly pax-conforming.
Comment thread
woodruffw marked this conversation as resolved.

Examples of non-pax features include GNU-style or legacy ("V7")-style tar members
and sparse member encodings (e.g. ``GNU.sparse`` extensions or ``S`` typeflag members).

The use of pax-style vendor extensions (such as ``SCHILY.xattr`` or ``LIBARCHIVE.xattr``)
is NOT RECOMMENDED for interoperability reasons.
Comment thread
woodruffw marked this conversation as resolved.
Comment thread
woodruffw marked this conversation as resolved.

.. _sdist-archive-features:

Expand Down