#1 Only BuildRequire Python 3
Closed 17 days ago by mbooth. Opened a month ago by churchyard.
rpms/ churchyard/eclipse-pydev nopy2  into  master

file modified
+3 -3

@@ -78,10 +78,10 @@ 

  Requires: python3-pycodestyle

  %endif

  

- # For building native debugging extensions for both python 2 and 3

+ # For building native debugging extension for Python 3

  %if 0%{?fedora}

- BuildRequires:    python2-devel python3-devel

- BuildRequires:    python2-Cython python3-Cython

+ BuildRequires:    python3-devel

+ BuildRequires:    python3-Cython

  %endif

  

  %description

There is no runtime dependency on Python 2, this should not be needed.

DEBUG util.py:583:  BUILDSTDERR: Error: 
DEBUG util.py:583:  BUILDSTDERR:  Problem 1: conflicting requests
DEBUG util.py:583:  BUILDSTDERR:   - nothing provides mvn(de.pdark:decentxml) needed by tycho-1.3.0-4.fc31.noarch
DEBUG util.py:583:  BUILDSTDERR:  Problem 2: package tycho-extras-1.3.0-3.fc31.noarch requires mvn(org.eclipse.tycho:tycho-core), but none of the providers can be installed
DEBUG util.py:583:  BUILDSTDERR:   - package tycho-extras-1.3.0-3.fc31.noarch requires mvn(org.eclipse.tycho:org.eclipse.tycho.core.shared), but none of the providers can be installed
DEBUG util.py:583:  BUILDSTDERR:   - package tycho-extras-1.3.0-3.fc31.noarch requires mvn(org.eclipse.tycho:org.eclipse.tycho.p2.resolver.shared), but none of the providers can be installed
DEBUG util.py:583:  BUILDSTDERR:   - package tycho-extras-1.3.0-3.fc31.noarch requires mvn(org.eclipse.tycho:sisu-equinox-launching), but none of the providers can be installed
DEBUG util.py:583:  BUILDSTDERR:   - package tycho-extras-1.3.0-3.fc31.noarch requires mvn(org.eclipse.tycho:tycho-artifactcomparator), but none of the providers can be installed
DEBUG util.py:583:  BUILDSTDERR:   - package tycho-extras-1.3.0-3.fc31.noarch requires mvn(org.eclipse.tycho:tycho-p2-facade), but none of the providers can be installed
DEBUG util.py:583:  BUILDSTDERR:   - package tycho-extras-1.3.0-3.fc31.noarch requires mvn(org.eclipse.tycho:tycho-packaging-plugin), but none of the providers can be installed
DEBUG util.py:583:  BUILDSTDERR:   - package tycho-extras-1.3.0-3.fc31.noarch requires mvn(org.fedoraproject.p2:org.fedoraproject.p2), but none of the providers can be installed
DEBUG util.py:583:  BUILDSTDERR:   - conflicting requests
DEBUG util.py:583:  BUILDSTDERR:   - nothing provides mvn(de.pdark:decentxml) needed by tycho-1.3.0-4.fc31.noarch

Unrelated.

Even though there is no hard dep on python 2, PyDev still allows users to work on and debug python 2 programs.

That is why we build the native part against both versions of python (see %build section), just in case the user needs to work on a python 2 program.

I can't merge this unless there is no longer any reasonable expectation that users can work on Python 2 programs in Fedora

This is what I don't understand: how is buildrequiring Python 2 helping the users to work on and debug Python 2 programs?

BuildRequires on python2 packages are necessary because /usr/bin/python2 is called during the build.

Correct, it compiles _pydevd_bundle/pydevd_cython.so and that file is not shipped. This still confuses me.

Correct, it compiles _pydevd_bundle/pydevd_cython.so and that file is not shipped. This still confuses me.

If that's true then there is obviously a packaging bug (why build something and not ship it?)

You can clearly see this file was shipped in earlier versions, e.g on Fedora 28:

$ rpm -q eclipse-pydev | grep '\.so'
/usr/lib/eclipse/droplets/pydev/eclipse/plugins/org.python.pydev_6.1.0.v20171122-1541/pysrc/_pydevd_bundle/pydevd_cython.cpython-36m-x86_64-linux-gnu.so
/usr/lib/eclipse/droplets/pydev/eclipse/plugins/org.python.pydev_6.1.0.v20171122-1541/pysrc/_pydevd_bundle/pydevd_cython.so
/usr/lib/eclipse/droplets/pydev/eclipse/plugins/org.python.pydev_6.1.0.v20171122-1541/pysrc/_pydevd_frame_eval/pydevd_frame_evaluator.cpython-36m-x86_64-linux-gnu.so
/usr/lib/eclipse/droplets/pydev/eclipse/plugins/org.python.pydev_6.1.0.v20171122-1541/pysrc/pydevd_attach_to_process/attach_linux.so

I found where the packaging bug was -- new version of pydev was cleaning up binaries before building, which is unnecessary for RPM builds, so the second invokation was blatting the output of the first invokation.

Pull-Request has been closed by mbooth

17 days ago