On Thu, Mar 9, 2017 at 7:52 AM, jan matejek
hello,
On 8.3.2017 19:00, Todd Rme wrote:
There are some things that I feel are still ambiguous here:
thanks for the suggestions. I'm updating the wiki with answers.
1. Does the renaming in, for example, Requires, only rename packages that begin with "python-" or does it rename packages with "python-" appearing anywhere? So would "Require: foo-python-bar" be renamed?
No. Do you think it should?
No, I don't. In particular, it will be a problem with packages whose pypi name is foo-python, and has subpackages. You will end up with, say, python-foo-python-bar being renamed to python2-foo-python2-bar, which is not what we want. You could make it so it only does packages that have python- later in the name but don't start with "python-", but then the rules are getting too complicated. There are other corner cases that would also need their own rules, like "foopython-bar", for example. I think keeping the rules simple avoids having to deal with these sorts of corner cases. But I do think it should be documented.
What about with more complex expressions, such as "packageand(python-foo:%{bar})"?
I wrote packageand() support yesterday, after toying with your python-gobject package :) I completely forgot that this existed.
The intention is to rename "package names starting with python-" (or "$flavor-"), so this should leave out "foo-python-bar" but should affect expressions that include python names.
Once we adopt Fedora's pythonX.Ydist(), this will also be supported.
I am only aware of packageand(), are there similar expressions that should be supported? I don't know all the possible expressions, but I have found, "weakremover", although I don't know what it does. It might be good to have a separate thread about this on the packaging mailing list.
2. What about "Supplements"? Are python packages in that tag renamed automatically?
yes, as of yesterday :)
Great!
3. What if we need to BuildRequires the entire python interpreter, rather than python-base or python-devel? Would we just "BuildRequires: python" and "BuildRequires: python3", or is there a macro to handle that? If there is no macro, is "BuildRequires: python" or "BuildRequires: python2" preferable? What if we need to Requires the entire python interpreter?
There is no BuildRequires macro support for this. I'm considering creating a "python-full-stdlib" symbol which you would then put into %python_module, but that doesn't exist yet.
BuildRequiring "python" should be exceptional, so I'm OK with listing the pythons manually.
Ideally, but depending on what openSUSE version you are targeting there are a lot of packages that do this due to how python was packaged in the past. I don't know if these issues are valid with any supported distro, though. If not, this should probably be mentioned in the wiki. Speaking of which, although not directly relevant to singlespec, it would probably also be good to mention the proper pypi download url in the wiki.
"python2" is the preferred name. (but as of right now I'm unsure whether it works in Leap < 42.3 -- it depends on whether they get the python update that is now headed to SLE)
You can probably submit it there manually.
"Requires: python" works fine and gets renamed to the appropriate interpreter.
Great, this should probably also be in the wiki if it isn't already. -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-packaging+owner@opensuse.org