BuildRequires on obsoleted packages provided by Python

2016-08-31 Thread Charalampos Stratakis
Hello all,

While checking out the SPEC file of python, it seems there were some packages 
that, while separate at some point, they got included in python's stdlib and 
then obsoleted as standalone packages (thus to cope with the change, python was 
obsoleting these packages and providing them as well in the SPEC). So every 
package that currently (Build)Requires any of these packages will essentially 
drag python with it.

I will remove these provides soon, since the packages were orphaned long time 
ago, but the packages that still require them, will need to be fixed and 
(Build)Require python instead.

Here is a github commit with these changes from a testing repo:
https://github.com/fedora-python/python2-spec/commit/dfdd96e653d65ce68359553b378104fec260589c

And a list of the provided packages and the affected ones

Distutils: None

python-sqlite:
cas
yum

python-ctypes:
drobo-utils
glusterfs-extra-xlators
glusterfs-geo-replication
python-smbios

python-hashlib: 
pyrpkg

python-uuid: 
dpm-server-mysql
oz
python2-celery

python-argparse:
R2spec
catkin
diskimage-builder
euca2ools
fedora-review
feedstail
gfal2-util
glacier-cli
grin
hash-slinger
imagefactory
instack
libstoragemgmt
nordugrid-arc-nagios-plugins
os-apply-config
os-cloud-confic
os-collect-confic
os-net-config
pyrpkg
python-amqpclt
python-catkin_pkg
python-catkin_tools
python-cloudservers
python-gear
python-novaclient
python-postman
python-requestbuilder
python-rosdistro
python-rospkg
python-sparklines
python2-oslo-config
repo_manager
rpkg
vdsm

Depending on feedback here I will follow (or not) the mass bug filling 
procedure so maintainer fix their packages.

The reasoning behind this change, at the current time, is that I intent to 
rename python to python2 soon, which will lead to a re-review of python, so at 
the moment trying to have things as clear and consistent as possible. Plans for 
that change is only for rawhide (although it would be nice for f25 as well).

Regards,

Charalampos Stratakis
Associate Software Engineer
Python Maintenance Team, Red Hat
___
python-devel mailing list
python-devel@lists.fedoraproject.org
https://lists.fedoraproject.org/admin/lists/python-devel@lists.fedoraproject.org


Re: BuildRequires on obsoleted packages provided by Python

2016-08-31 Thread Charalampos Stratakis
And a clarification here:

The plan for renaming python is only for rawhide, while removing the 
Obsoletes/Provides might as well go in F25 as well, depending on the time frame 
that maintainers will be able to fix their packages.

Regards,

Charalampos Stratakis
Associate Software Engineer
Python Maintenance Team, Red Hat


- Original Message -
From: "Charalampos Stratakis" 
To: "Development discussions related to Fedora" 
Cc: "Fedora Python SIG" 
Sent: Wednesday, August 31, 2016 2:10:25 PM
Subject: BuildRequires on obsoleted packages provided by Python

Hello all,

While checking out the SPEC file of python, it seems there were some packages 
that, while separate at some point, they got included in python's stdlib and 
then obsoleted as standalone packages (thus to cope with the change, python was 
obsoleting these packages and providing them as well in the SPEC). So every 
package that currently (Build)Requires any of these packages will essentially 
drag python with it.

I will remove these provides soon, since the packages were orphaned long time 
ago, but the packages that still require them, will need to be fixed and 
(Build)Require python instead.

Here is a github commit with these changes from a testing repo:
https://github.com/fedora-python/python2-spec/commit/dfdd96e653d65ce68359553b378104fec260589c

And a list of the provided packages and the affected ones

Distutils: None

python-sqlite:
cas
yum

python-ctypes:
drobo-utils
glusterfs-extra-xlators
glusterfs-geo-replication
python-smbios

python-hashlib: 
pyrpkg

python-uuid: 
dpm-server-mysql
oz
python2-celery

python-argparse:
R2spec
catkin
diskimage-builder
euca2ools
fedora-review
feedstail
gfal2-util
glacier-cli
grin
hash-slinger
imagefactory
instack
libstoragemgmt
nordugrid-arc-nagios-plugins
os-apply-config
os-cloud-confic
os-collect-confic
os-net-config
pyrpkg
python-amqpclt
python-catkin_pkg
python-catkin_tools
python-cloudservers
python-gear
python-novaclient
python-postman
python-requestbuilder
python-rosdistro
python-rospkg
python-sparklines
python2-oslo-config
repo_manager
rpkg
vdsm

Depending on feedback here I will follow (or not) the mass bug filling 
procedure so maintainer fix their packages.

The reasoning behind this change, at the current time, is that I intent to 
rename python to python2 soon, which will lead to a re-review of python, so at 
the moment trying to have things as clear and consistent as possible. Plans for 
that change is only for rawhide (although it would be nice for f25 as well).

Regards,

Charalampos Stratakis
Associate Software Engineer
Python Maintenance Team, Red Hat
___
python-devel mailing list
python-devel@lists.fedoraproject.org
https://lists.fedoraproject.org/admin/lists/python-devel@lists.fedoraproject.org
___
python-devel mailing list
python-devel@lists.fedoraproject.org
https://lists.fedoraproject.org/admin/lists/python-devel@lists.fedoraproject.org


Python profile guided optimizations

2016-08-31 Thread Charalampos Stratakis
Hello again,

An new feature that I am currently working on for python is the 
profile-guided-optimization.

Upstream: https://bugs.python.org/issue24915
Original bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=613046
Copr repo with builds: dnf copr enable cstratak/python-profiled-optimizations 

Supposedly it speeds up the python interpreter's performance by ~20%, however 
it would require some testing to figure out if that is indeed the case for the 
python rpm, and some tweaking might be required. It would be great if I could 
get some help from someone who is involved python's benchmarking. Planning 
first to try this with Python 3 and then also maybe Python 2. I'll rework the 
builds at copr later and I'll post a github repo as well with the proposed 
changes.

Charalampos Stratakis
Associate Software Engineer
Python Maintenance Team, Red Hat
___
python-devel mailing list
python-devel@lists.fedoraproject.org
https://lists.fedoraproject.org/admin/lists/python-devel@lists.fedoraproject.org


Renaming python to python2

2016-08-31 Thread Charalampos Stratakis
Hello Python-SIG,

Currently I am working on some ideas regarding the python package.

Nothing is too concrete yet, however the technical side should be fairly simple.

The first thing is renaming python to python2.

Currently the python packaging guidelines, suggest that we use the 
python_provides macro, for both python2 and python3 subpackages of whatever 
python module someone might be packaging. The macro for python3 subacpakages, 
currently, does nothing however sometime in the future  it would be great if 
everything could switch to python 3. When this is done we can flip the switch 
in the macros and the python3 subpackage will also provide the python- 
namespace, meaning essentially that when we speak about python we talk about 
python3, and the python binary will be a symlink to python3. In order to slowly 
start the procedure, a first step would be to rename the python package to 
python2.

Here is a github repo with the current work so far:
https://github.com/fedora-python/python2-spec/tree/py2rename

Would love to hear some feedback on that.

Regards,

Charalampos Stratakis
Associate Software Engineer
Python Maintenance Team, Red Hat
___
python-devel mailing list
python-devel@lists.fedoraproject.org
https://lists.fedoraproject.org/admin/lists/python-devel@lists.fedoraproject.org