source builds with multiple python3 installs

XMLWordPrintable

    • Type: Improvement
    • Resolution: Fixed
    • Priority: Minor
    • master, 5.1.0
    • Affects Version/s: master, 5.0.6
    • Component/s: Build Infrastructure
    • None
    • Environment:
      eclair cluster at ISI

      On the eclair cluster
      vahi@eclair-sub-01 pegasus]$ python3 --version
      Python 3.6.8

      [vahi@eclair-sub-01 pegasus]$ ls -lht /usr/bin/python3*
      -rwxr-xr-x 1 root root 7.6K Nov 15 01:24 /usr/bin/python3.9
      -rwxr-xr-x 1 root root 7.6K Nov 15 00:56 /usr/bin/python3.11
      lrwxrwxrwx. 1 root root 25 Mar 27 2023 /usr/bin/python3 -> /etc/alternatives/python3
      lrwxrwxrwx 1 root root 31 Oct 9 2021 /usr/bin/python3.6 -> /usr/libexec/platform-python3.6
      lrwxrwxrwx 1 root root 32 Oct 9 2021 /usr/bin/python3.6m -> /usr/libexec/platform-python3.6m
      [vahi@eclair-sub-01 pegasus]$

      With python3.6 pegasus build fails as expected, since future feature annotations is not defined.
      compile-externals:
      [exec] Building python-dateutil-2.8.1.tar.gz
      [exec] Traceback (most recent call last):
      [exec] File "setup.py", line 56, in <module>
      [exec] "test": Unsupported
      [exec] File "/usr/lib/python3.6/site-packages/setuptools/_init_.py", line 129, in setup
      [exec] return distutils.core.setup(**attrs)
      [exec] File "/usr/lib64/python3.6/distutils/core.py", line 108, in setup
      [exec] _setup_distribution = dist = klass(attrs)
      [exec] File "/usr/lib/python3.6/site-packages/setuptools/dist.py", line 370, in _init_
      [exec] k: v for k, v in attrs.items()
      [exec] File "/usr/lib64/python3.6/distutils/dist.py", line 281, in _init_
      [exec] self.finalize_options()
      [exec] File "/usr/lib/python3.6/site-packages/setuptools/dist.py", line 529, in finalize_options
      [exec] ep.load()(self, ep.name, value)
      [exec] File "/usr/lib/python3.6/site-packages/pkg_resources/_init_.py", line 2318, in load
      [exec] return self.resolve()
      [exec] File "/usr/lib/python3.6/site-packages/pkg_resources/_init_.py", line 2324, in resolve
      [exec] module = _import_(self.module_name, fromlist=['__name__'], level=0)
      [exec] File "/nas/home/vahi/software/src/pegasus/src/externals/python-dateutil-2.8.1/.eggs/setuptools_scm-8.0.4-py3.6.egg/setuptools_scm/_init_.py", line 5
      [exec] from _future_ import annotations
      [exec] ^
      [exec] SyntaxError: future feature annotations is not defined

      However, if i create an alias to the 3.9 install
      [vahi@eclair-sub-01 pegasus]$ alias python3=python3.9
      [vahi@eclair-sub-01 pegasus]$ which python3
      alias python3='python3.9'
      /usr/bin/python3.9
      [vahi@eclair-sub-01 pegasus]$ python3 --version
      Python 3.9.18

      the build still detects 3.6 somehow
      [vahi@eclair-sub-01 pegasus]$ python3 --version
      Python 3.9.18
      [vahi@eclair-sub-01 pegasus]$ ant dist
      Unable to locate tools.jar. Expected to find it in /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.392.b08-4.el8.x86_64/lib/tools.jar
      Buildfile: /nas/home/vahi/software/src/pegasus/build.xml
      [echo] Pegasus Version: 5.0.7dev
      [echo] JAVA TARGET is 1.8
      [echo] JAVA SOURCE is 1.8
      [echo] Running in CI false
      [echo] Build timestamp: 20231207233136Z
      [echo] Architecture: x86_64_almalinux_8
      [echo] OSID: almalinux8
      [echo] Library subdir: lib64
      [echo] Python: /usr/bin/python3
      [echo] Python library subdir: lib64/python3.6/site-packages

      set-git-hash:

            Assignee:
            Mats Rynge
            Reporter:
            Karan Vahi
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: