PEP 382 (Namespace Packages) was rejected

peterjc avatarpeterjc created an issue

The backports documentation mentions putting the following in backports/init.py,

# A Python "namespace package" http://www.python.org/dev/peps/pep-0382/
# This always goes inside of a namespace package's __init__.py

from pkgutil import extend_path
__path__ = extend_path(__path__, __name__)

Reading http://www.python.org/dev/peps/pep-0382/ I lean that PEP382 was rejected. Does this advice still apply?

Comments (4)

  1. Brandon Rhodes

    Good question! The history of Python packages is long and difficult and slow, and it is easy to become confused by what the standards guys are cooking up next.

    Yes, this advice will always apply, because — by definition — backports are targeted at the Python 2 series, whereas the PEPs that have superseded 382 are PEPs aimed at Python 3.3 at the very earliest. They are, in other words, discussions of the future of Python, whereas what is needed here is something that works today in Python 2 — and the state of the art is what PEP 382 was describing.

  2. Log in to comment
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.