← All tasks
pythonpython-semver/python-semver #224Not a task: already works

Build fails with CleanCommand super()-call

envgap__python-semver__python-semver-224

01 / FAILURE SIGNATURE

As reported upstream

ERROR: Execution of '/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python3-semver/2.9.1-r0/temp/run.do_configure.28554' failed with exit code 1:
Not a benchmark task.
  • The project already builds and runs before the fix, so there is nothing to repair.

02 / ENVIRONMENT RECIPE

Base commit
3f92aa5494252387807fefc6083c090cbc67098d
Manifest
setup.py
Reproduce
Awaiting issue-specific recipe
Run under trace
Awaiting a meaningful runtime command

03 / ORIGINAL ISSUE TEXT

python-semver/python-semver #224 · read the original issue
While trying to upgrade the BitBake recipes for python-semver ([Python 2](https://layers.openembedded.org/layerindex/recipe/114255/) and [Python 3](https://layers.openembedded.org/layerindex/recipe/87148/)) from version 2.8.1 to 2.9.1, I've encountered the following error which seems to have been introduced by commit https://github.com/python-semver/python-semver/commit/017e29633562acc8ae9a76c7c8389424263dafd0#diff-2eeaed663bd0d25b7e608891384b7298L39-R39.



Here is the relevant BitBake log for Python 3.7:

 

```

ERROR: Execution of '/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python3-semver/2.9.1-r0/temp/run.do_configure.28554' failed with exit code 1:

running clean

Traceback (most recent call last):

  File "setup.py", line 101, in <module>

    entry_points={"console_scripts": ["pysemver = semver:main"]},

  File "/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python3-semver/2.9.1-r0/recipe-sysroot-native/usr/lib/python3.7/site-packages/setuptools/__init__.py", line 145, in setup

    return distutils.core.setup(**attrs)

  File "/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python3-semver/2.9.1-r0/recipe-sysroot-native/usr/lib/python3.7/distutils/core.py", line 148, in setup

    dist.run_commands()

  File "/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python3-semver/2.9.1-r0/recipe-sysroot-native/usr/lib/python3.7/distutils/dist.py", line 966, in run_commands

    self.run_command(cmd)

  File "/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python3-semver/2.9.1-r0/recipe-sysroot-native/usr/lib/python3.7/distutils/dist.py", line 985, in run_command

    cmd_obj.run()

  File "setup.py", line 41, in run

    super(CleanCommand, self).run()

  File "/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python3-semver/2.9.1-r0/recipe-sysroot-native/usr/lib/python3.7/distutils/cmd.py", line 176, in run

    % self.__class__)

RuntimeError: abstract method -- subclass <class '__main__.Clean'> must override

WARNING: exit code 1 from a shell command.

```



And here is the corresponding log for Python 2.7:



```

ERROR: Execution of '/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python-semver/2.9.1-r0/temp/run.do_configure.32044' failed with exit code 1:

running clean

Traceback (most recent call last):

  File "setup.py", line 101, in <module>

    entry_points={"console_scripts": ["pysemver = semver:main"]},

  File "/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python-semver/2.9.1-r0/recipe-sysroot-native/usr/lib/python2.7/site-packages/setuptools/__init__.py", line 145, in setup

    return distutils.core.setup(**attrs)

  File "/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python-semver/2.9.1-r0/recipe-sysroot-native/usr/lib/python2.7/distutils/core.py", line 151, in setup

    dist.run_commands()

  File "/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python-semver/2.9.1-r0/recipe-sysroot-native/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands

    self.run_command(cmd)

  File "/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python-semver/2.9.1-r0/recipe-sysroot-native/usr/lib/python2.7/distutils/dist.py", line 972, in run_command

    cmd_obj.run()

  File "setup.py", line 41, in run

    super(CleanCommand, self).run()

TypeError: super() argument 1 must be type, not classobj

WARNING: exit code 1 from a shell command.

```



Looking at the documentation for `super()` in [Python 3](https://docs.python.org/3/library/functions.html#super) and [Python 2](https://docs.python.org/2/library/functions.html#super) makes me wonder if `super(CleanCommand, self).run()` might be a typo and should have been `super(Clean, self).run()`.



Changing `super(CleanCommand, self).run()` to `super(Clean, self).run()` apparently solves the problem for Python 3. For Python 2, the error message stays more or less the same:



```

ERROR: Execution of '/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python-semver/2.9.1-r0/temp/run.do_configure.2883' failed with exit code 1:

running clean

Traceback (most recent call last):

  File "setup.py", line 101, in <module>

    entry_points={"console_scripts": ["pysemver = semver:main"]},

  File "/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python-semver/2.9.1-r0/recipe-sysroot-native/usr/lib/python2.7/site-packages/setuptools/__init__.py", line 145, in setup

    return distutils.core.setup(**attrs)

  File "/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python-semver/2.9.1-r0/recipe-sysroot-native/usr/lib/python2.7/distutils/core.py", line 151, in setup

    dist.run_commands()

  File "/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python-semver/2.9.1-r0/recipe-sysroot-native/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands

    self.run_command(cmd)

  File "/yocto/build/3.0-zeus/bbb/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/python-semver/2.9.1-r0/recipe-sysroot-native/usr/lib/python2.7/distutils/dist.py", line 972, in run_command

    cmd_obj.run()

  File "setup.py", line 41, in run

    super(Clean, self).run()

TypeError: super() argument 1 must be type, not classobj

WARNING: exit code 1 from a shell command.

```

Continue on GitHub ↗

04 / LABELS

Labels from the report text only; not yet run

No supported category has been assigned.

Label rules and the text that matched
[]