Is setup_requires being used somewhere else, because I'm still getting
errors after removing it from sdks/python/setup.py.

I removed it from this PR: https://github.com/apache/beam/pull/9959

Here's the gradle scan:
https://scans.gradle.com/s/oinh5xpaly3dk/failure#top=0

The error shows up differently than before when
setup_requries=['pytest-runner'] was present -- it's in a gradle traceback
now rather than the console log.  I've also seen different packages listed
as the culprit (simplegeneric, timeloop).

-chad



On Tue, Nov 26, 2019 at 4:47 PM Udi Meiri <eh...@google.com> wrote:

> Chad, I believe the answer is the "setup_requires" line is causing the
> sdks/python/.eggs directory to be created.
>
> This command fails with the setup_requires line (same Errno 17), but
> succeeds without it:
> $ \rm -r .eggs/; ../../gradlew installGcpTest
> [~8 failed tasks]
> $ ls .eggs
> pytest_runner-5.2-py2.7.egg  pytest_runner-5.2-py3.5.egg
>  pytest_runner-5.2-py3.6.egg  pytest_runner-5.2-py3.7.egg  README.txt
>
> I'll go ahead and create a PR to remove setup_requires from setup.py.
>
> On Tue, Nov 26, 2019 at 4:16 PM Chad Dombrova <chad...@gmail.com> wrote:
>
>> It seems like the offending packages are those that only have source
>> distributions (i.e. no wheels).  But why are the eggs being installed in
>> sdks/python/.eggs instead of into the virtualenv created by setupVirtualenv
>> gradle task or by tox?
>>
>>
>> On Tue, Nov 26, 2019 at 3:59 PM Udi Meiri <eh...@google.com> wrote:
>>
>>> Basically, I believe what's happening is that a new Gradle task was
>>> added that uses setup.py but doesn't have the same dependency on some main
>>> setup.py task that all others depend on (list sdist).
>>>
>>> On Tue, Nov 26, 2019 at 3:49 PM Udi Meiri <eh...@google.com> wrote:
>>>
>>>> Correction: the error is not gone after removing the line. I get
>>>> instead:
>>>> error: [Errno 17] File exists:
>>>> '/usr/local/google/home/ehudm/src/beam/sdks/python/.eggs/dill-0.3.1.1-py2.7.egg'
>>>>
>>>>
>>>> On Tue, Nov 26, 2019 at 3:45 PM Udi Meiri <eh...@google.com> wrote:
>>>>
>>>>> I managed to recreate one of the issues with this command:
>>>>> ~/src/beam/sdks/python$ \rm -r .eggs/ && for i in $(seq 2); do echo
>>>>> "python setup.py -q nosetests --tests
>>>>> apache_beam.pipeline_test:DoFnTest.test_incomparable_default &" | sh ; 
>>>>> done
>>>>>
>>>>> This reliably gives me:
>>>>> OSError: [Errno 17] File exists:
>>>>> '/usr/local/google/home/ehudm/src/beam/sdks/python/.eggs/pytest_runner-5.2-py2.7.egg'
>>>>>
>>>>> If I remove this line from setup.py the error is gone:
>>>>>   setup_requires=['pytest_runner'],
>>>>>
>>>>>
>>>>> On Tue, Nov 26, 2019 at 2:54 PM Chad Dombrova <chad...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Thanks for looking into this. It seems like it might be something to
>>>>>> do with data that is cached on the Jenkins slaves between runs, which may
>>>>>> be what prevents this from showing up locally?
>>>>>>
>>>>>> If your theory about setuptools is correct, and it sounds likely, we
>>>>>> should be able to lock down the version, which we should definitely be
>>>>>> doing for all of our dependencies.
>>>>>>
>>>>>> -chad
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Tue, Nov 26, 2019 at 1:33 PM Ahmet Altay <al...@google.com> wrote:
>>>>>>
>>>>>>> I tried to debug but did not make much progress. I cannot reproduce
>>>>>>> locally, however all python precommits and postcommits are failing.
>>>>>>>
>>>>>>> One guess is, setuptools released a new version that does not
>>>>>>> support eggs a few days ago, that might be the cause (
>>>>>>> https://github.com/pypa/setuptools/blob/master/CHANGES.rst) but
>>>>>>> that should have reproduced locally.
>>>>>>> Maybe something is wrong with the jenkins machines, and we could
>>>>>>> perhaps bring them to a clean state.
>>>>>>>
>>>>>>> I suspected this being related to pytest somehow (as the first 4
>>>>>>> JIRAs had pytest in the error line) but the error Chad saw is different.
>>>>>>>
>>>>>>> +Valentyn Tymofieiev <valen...@google.com> and +Yifan Zou
>>>>>>> <yifan...@google.com> could you help with looking into this?
>>>>>>>
>>>>>>>
>>>>>>> Ahmet
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Tue, Nov 26, 2019 at 9:14 AM Luke Cwik <lc...@google.com> wrote:
>>>>>>>
>>>>>>>> I also started to see this on PRs that I'm reviewing.
>>>>>>>> BEAM-8793, BEAM-8653, BEAM-8631, BEAM-8249 mention issues with 
>>>>>>>> setup.py and
>>>>>>>> egg_info but this looks different then all of those so I filed 
>>>>>>>> BEAM-8831.
>>>>>>>>
>>>>>>>>
>>>>>>>> On Mon, Nov 25, 2019 at 10:27 PM Chad Dombrova <chad...@gmail.com>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Actually, it looks like I'm getting the same error on multiple
>>>>>>>>> PRs: https://scans.gradle.com/s/ihfmrxr7evslw
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Mon, Nov 25, 2019 at 10:26 PM Chad Dombrova <chad...@gmail.com>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Hi all,
>>>>>>>>>> The cython tests started failing on one of my PRs which were
>>>>>>>>>> succeeding before.   The error is one that I've never seen before
>>>>>>>>>> (separated onto different lines to make it easier to read):
>>>>>>>>>>
>>>>>>>>>> Caused by: org.gradle.api.GradleException:
>>>>>>>>>> Could not copy file
>>>>>>>>>>
>>>>>>>>>> '/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit@2
>>>>>>>>>> /src/sdks/python/.eggs/simplegeneric-0.8.1-py2.7.egg'
>>>>>>>>>> to
>>>>>>>>>>
>>>>>>>>>> '/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit@2
>>>>>>>>>> /src/sdks/python/test-suites/tox/py2/build/srcs/sdks/python/.eggs/simplegeneric-0.8.1-py2.7.egg'.
>>>>>>>>>>
>>>>>>>>>> Followed immediately by an error about could not create a
>>>>>>>>>> directory of the same name.  Here's the gradle scan:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> https://scans.gradle.com/s/ihfmrxr7evslw/failure?openFailures=WzFd&openStackTraces=WzZd#top=0
>>>>>>>>>>
>>>>>>>>>> Any ideas?
>>>>>>>>>>
>>>>>>>>>> -chad
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>

Reply via email to