I have just submitted the first set of proposed changes to Factory.
- python3-base now includes _ssl and _hashlib and is thus very suitable
as a build requirement
- python3-base now Recommends: python3
- python3 Recommends: python3-curses python3-dbm python3-idle python3-tk
meaning that, when installed manually with recommends, you will get the
full python3 stdlib in almost all cases.
On 9.3.2016 19:40, jan matejek wrote:
Fellow Python users,
I'm planning some changes to how Python 3 is packaged and installed.
While the changes themselves are minor, they could have potentially
far-reaching consequences, so I want to collect your input first.
Firstly, in a move that should make you happy ;) I intend to move the
ssl module from python3 to python3-base. This might solve some
build-time headaches and will make python3-base useful again.
Second, I want to use Recommends to make the default installation of
Python 3 pull in the whole standard library. This will mean:
- python3-base will Recommend python3
- python3 will Recommend its subpackages. They are now only Suggested.
Third, I would like to unbundle setuptools and pip, which are now
bundled because of the ensurepip module. It is a bit tricky to do this
properly and not break things, so the proposed solution is as follows:
- a new subpackage python3-ensurepip will be created. python3 will
(So far it seemed that we can't do a hard require because of build loops
with pip and setuptools. This might turn out to be a problem. More input
on this point is welcome.)
- python3-ensurepip will Require the presence of something along the
lines of /usr/share/python-wheels/pip-py3-none-any.whl, similar for
setuptools. These files will be provided by python3-pip and
python3-setuptools, and built at the same time as the regular installed
In the end, the python3 rpm itself will only contain sqlite3,
xml-related things (xml, xmlrpc, pyexpat) and readline.
I am going to wait for your comments for about a week or two, and unless
there are good arguments against, start implementing the changes then. I
will send a heads-up e-mail when that happens.
At this time there are no plans to do the same for Python 2. As it is
now pretty much in maintenance mode, I don't intend to do any
significant changes to it.