Hi, On Thu, Aug 18, 2016 at 03:06:07PM +0200, Sebastian wrote:
Hi,
On 08/16/2016 12:00 PM, Bruno Friedmann wrote:
3) Python / Python3 : How to fix our mess, and create a bright future.
If packaging can be fun, the inverse can be true. I believe we are the last community that package python 2 et python 3 version in a separate way. This has already cause some grief, and we really need to fix it, no?
I've already heard that there's reasons behind the choice made. But we lack the fundamentals, as they are not clearly explained on obs project's page, nor in the wiki. So if new comer, like me arrived and try to understand how it works, you spend too much time on guessing and SR try and errors.
With the py2/py3 split, we also tend to forget to update one or the other repository (py2pack need to be fixed and improved to handle that), and we also have constants divergences between the 2 specs, which will increase errors, lost tracking bugs, or have version specific bugs.
This will (or did it already) kill any efforts to bring new hands to help. Ease our live (packager, users, bugfix & so on), and also get a coherent eco- system around python technology.
3.a What about opening a real discussion about our Python situation - Be it here on packaging list with a simple [python] prefix in the subject - Be it on a discussion page in the wiki (if editing is now fixed) - Be it (creative minds your input here) * I'm really interested by feedback or thoughput of SUSE's employee in charge of LTS support. More we will work together, better the solution will be.
3.b Prepare a kind of RFC for Python at openSUSE - Publish (even on news) and explain where comments should goes, so we can track and pick the good ideas - Organize obs structure to handle the changes (hello obs guru) - Put the changes in action (Hey why not then a pyckaton for that stuff?)
We don't need a super-heros here, I'm more confident in the fact that a team that want to achieve a collective forward can make it better than any individual effort. Unfortunately, there haven't been any comments on this section. But I'd too like to see improvements here.
* The py2/py3 split for devel-projects and thus all packages is very annoying IMHO. Supporting two packages per specfile would decrease the effort. But is this actually possible with OBS currently?
Sure. You just have 2 %package sections in your .spec .
I personally only support py 3 for any new packages I want to package and push to openSUSE, as I don't see any reasons to still support python2, with all the overhead. Of course, this argument does not apply for existing distros :D
I'm working for SUSE on OpenStack and this is all based on Python2. There are efforts upstream to make OpenStack useable with Python3 but this is not yet ready. So I'm currently only working on Python2. If the specs would build both versions (if possible) I would automatically do a lot of work for Python2 and Python3. So using a single spec for both versions would be very welcome.
Looking at specfiles of other distro (here I chose epel for centos), I see some differences: * Automatic Python Provides (see other thread): e.g.: %{?python_provide:%python_provide python3-setuptools} * Switches for wheel-packages, e.g. (here from python3-setuptools): %build %if 0%{?build_wheel} %{__python3} setup.py bdist_wheel %else %{__python3} setup.py build %endif What's the status here? I don't see any wheel-packages in /usr/lib/python3.5/site-packages/, but I'm sure most of them support wheel. * Additionally to the previous, Fedora specfiles (here a extract from python-psutil) use macros for buils: %build %py2_build %py3_build
%install %py2_install %py3_install
Having theses macros would be nice. For some of the OpenStack packages we already use them because we share the .spec files with Fedora and Mirantis. Best, Tom -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org