On Thu, Oct 27, 2016 at 5:07 PM, Simon Lees <sflees@suse.de> wrote:
On 10/28/2016 05:05 AM, Todd Rme wrote:
On Thu, Oct 27, 2016 at 12:51 PM, jan matejek <jmatejek@suse.com> wrote:
hello packagers,
i'm happy to announce that i have a macroset that works pretty well, if i say so myself :) Have a look at the d:l:python:singlespec repository [1] and the github repo [2] for details.
The gist of it: it is now very possible to build packages for both python 2 and python 3, using a pretty straightforward set of macros. See spec files in the linked repository, and documentation on github.
So far this only reliably works on python 2 and 3. It can work with pypy too, but pypy is not building so I can't test against it.
Some comments on the macros:
1. I think the version number should be explicit in all cases. So it should be "%have_python2", not "%have_python", and "%have_pypy2" and "%have_pyp3", not "%have_pypy". 2. Along those lines, I think pypy2 and pyp3 versions should be available, especially with a lot of progress now happening in pypy3 thanks to mozilla funding it.
4. New policies for d:l:py --- If the transition goes smoothly, I'd like to use the opportunity to clean out the devel:languages:python project.
One, d:l:py is collecting applications that happen to be *written in* Python, but have nothing to do with python development, and should instead be placed in other topically appropriate projects. We've had some discussions about dependencies only present in d:l:py, but here's a policy proposal:
When was this ever not the case? There are packages like that which haven't been updated in 4 or 5 years. I did some spot checks and the other devel:languages:___ repos also have a wide variety of software written in that language. What do you see as wrong with the current approach?
There is almost always a better repo that they could be in which is less confusing to users who care about what applications do rather then which language they live in. For example variety which is a cross desktop wallpaper fetcher and changer written in python lives in the X11:Utilites repo because its a Utility for X11 apps, similarly if the purpose of the application is to monitor servers we have a nice Server:Monitoring repo I believe.
The problem is that the distinction between "application" and "library" is not very clear-cut with most python packages. In the rare case where something is purely an application that happens to be written in Python, then yes I suppose you are right. But more often the "application" contains both an executable and a python module that python scripts can make use of. What should we do in that situation? For the pure applications, a bunch of those are python shells, python IDEs, debuggers, or other development tools that are connected in some way to the python version they were built with and thus need to have both versions available. Do you have any specific examples of python-based packages in d:l:p or d:l:p3 that you think shouldn't be there?
As for applications requiring dependencies only in d:l:py the simple policy should be anything added to d:l:py should also then be forwarded to openSUSE:Factory where it will hopefully get picked up for the next Leap release as well. If this is enforced the required deps will always be available for all repos and it won't be an issue.
Are you talking about all packages or only non-python packages? Because there are a lot of niche python tools in d:l:p that I don't think belong in openSUSE:Factory. -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org