TPCQCVis package instalation in O2 environment

Dear experts,

in order to perform QC work with the TPC, the TPCQCVis (TPCQCVis repository and instructions package is used.

I have been using it for some time, until I had to reset my computer and install everything from scratch.
So I installed O2, O2Physics, QualityControl with aliBuild successfully.
The next step would be to install the TPCQCVis package inside of the O2 environment.
So basically I execute the following commands:

$ alienv enter QualityControl/latest
$ git clone https://github.com/bulukutlu/TPCQCVis.git
$ pip install -e $TPCQCVIS_DIR

such that the $TPCQCVIS_DIR variable was already exported in the ~/.bashrc file.
However everytime I try to install it, I receive the following error message:

[QualityControl/latest] ~/Softwares $> pip install -e $TPCQCVIS_DIR
Obtaining file:///home/christian/Softwares/TPCQCVis
  Preparing metadata (setup.py) ... done
Requirement already satisfied: numpy in /home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages (from TPCQCVis==0.1) (1.25.2)
Requirement already satisfied: pandas in /home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages (from TPCQCVis==0.1) (1.5.3)
Collecting runtime
  Using cached runtime-0.1.4.tar.gz (4.3 kB)
  Preparing metadata (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/bin/python3 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-ahtypzj3/runtime_b21abf269d484a758c90bf154257998a/setup.py'"'"'; __file__='"'"'/tmp/pip-install-ahtypzj3/runtime_b21abf269d484a758c90bf154257998a/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-lr868dgj
       cwd: /tmp/pip-install-ahtypzj3/runtime_b21abf269d484a758c90bf154257998a/
  Complete output (21 lines):
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/tmp/pip-install-ahtypzj3/runtime_b21abf269d484a758c90bf154257998a/setup.py", line 5, in <module>
      setup(
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/__init__.py", line 117, in setup
      return distutils.core.setup(**attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/_distutils/core.py", line 148, in setup
      _setup_distribution = dist = klass(attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 319, in __init__
      _Distribution.__init__(self, dist_attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 290, in __init__
      self.finalize_options()
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 681, in finalize_options
      ep(self)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 701, in _finalize_setup_keywords
      ep.load()(self, ep.name, value)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/importlib_metadata/__init__.py", line 191, in load
      return functools.reduce(getattr, attrs, module)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 80, in __getattr__
      raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
  AttributeError: module 'setuptools.dist' has no attribute 'check_test_suite'
  ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/29/6d/d0a38d6fd00afc316e7ece9e7ea148488d411109df03d4237ff815ed3082/runtime-0.1.4.tar.gz#sha256=5f604b41baba272385840270d0ad48493839b41e8ab880eaa1c6aa687f1686e8 (from https://pypi.org/simple/runtime/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  Using cached runtime-0.1.3.tar.gz (4.2 kB)
  Preparing metadata (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/bin/python3 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-ahtypzj3/runtime_354b2501aa8f45e6a5b3e0e6ddab6dc5/setup.py'"'"'; __file__='"'"'/tmp/pip-install-ahtypzj3/runtime_354b2501aa8f45e6a5b3e0e6ddab6dc5/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-tsfd0zrq
       cwd: /tmp/pip-install-ahtypzj3/runtime_354b2501aa8f45e6a5b3e0e6ddab6dc5/
  Complete output (21 lines):
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/tmp/pip-install-ahtypzj3/runtime_354b2501aa8f45e6a5b3e0e6ddab6dc5/setup.py", line 5, in <module>
      setup(
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/__init__.py", line 117, in setup
      return distutils.core.setup(**attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/_distutils/core.py", line 148, in setup
      _setup_distribution = dist = klass(attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 319, in __init__
      _Distribution.__init__(self, dist_attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 290, in __init__
      self.finalize_options()
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 681, in finalize_options
      ep(self)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 701, in _finalize_setup_keywords
      ep.load()(self, ep.name, value)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/importlib_metadata/__init__.py", line 191, in load
      return functools.reduce(getattr, attrs, module)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 80, in __getattr__
      raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
  AttributeError: module 'setuptools.dist' has no attribute 'check_test_suite'
  ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/57/2c/5b26ea8b1d282eedd99f1a0c6c3ae392cd7c00bf27fb718ccaa23cb46364/runtime-0.1.3.tar.gz#sha256=2d45e93f520e23279cb4f4e3d04977e96c1cb7da97ca0f0fa8622917ee12a9cc (from https://pypi.org/simple/runtime/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  Using cached runtime-0.1.2.tar.gz (4.2 kB)
  Preparing metadata (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/bin/python3 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-ahtypzj3/runtime_a62844d03bd742de9d147788a2f47a1b/setup.py'"'"'; __file__='"'"'/tmp/pip-install-ahtypzj3/runtime_a62844d03bd742de9d147788a2f47a1b/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-hvlu7j2w
       cwd: /tmp/pip-install-ahtypzj3/runtime_a62844d03bd742de9d147788a2f47a1b/
  Complete output (21 lines):
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/tmp/pip-install-ahtypzj3/runtime_a62844d03bd742de9d147788a2f47a1b/setup.py", line 5, in <module>
      setup(
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/__init__.py", line 117, in setup
      return distutils.core.setup(**attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/_distutils/core.py", line 148, in setup
      _setup_distribution = dist = klass(attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 319, in __init__
      _Distribution.__init__(self, dist_attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 290, in __init__
      self.finalize_options()
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 681, in finalize_options
      ep(self)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 701, in _finalize_setup_keywords
      ep.load()(self, ep.name, value)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/importlib_metadata/__init__.py", line 191, in load
      return functools.reduce(getattr, attrs, module)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 80, in __getattr__
      raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
  AttributeError: module 'setuptools.dist' has no attribute 'check_test_suite'
  ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/ef/84/e3e2a76597343df26a0b4285dc1eabfbc540c39c892c9bd6c19f24e475f1/runtime-0.1.2.tar.gz#sha256=c866a4063bbae8ebb62a43658b0ea8637ef60f92423880f3b9b71fa010b68e4c (from https://pypi.org/simple/runtime/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  Using cached runtime-0.1.1.tar.gz (4.1 kB)
  Preparing metadata (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/bin/python3 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-ahtypzj3/runtime_cfe0ddef78b34a97813563ac7ee4b310/setup.py'"'"'; __file__='"'"'/tmp/pip-install-ahtypzj3/runtime_cfe0ddef78b34a97813563ac7ee4b310/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-9eu39ws7
       cwd: /tmp/pip-install-ahtypzj3/runtime_cfe0ddef78b34a97813563ac7ee4b310/
  Complete output (21 lines):
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/tmp/pip-install-ahtypzj3/runtime_cfe0ddef78b34a97813563ac7ee4b310/setup.py", line 5, in <module>
      setup(
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/__init__.py", line 117, in setup
      return distutils.core.setup(**attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/_distutils/core.py", line 148, in setup
      _setup_distribution = dist = klass(attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 319, in __init__
      _Distribution.__init__(self, dist_attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 290, in __init__
      self.finalize_options()
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 681, in finalize_options
      ep(self)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 701, in _finalize_setup_keywords
      ep.load()(self, ep.name, value)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/importlib_metadata/__init__.py", line 191, in load
      return functools.reduce(getattr, attrs, module)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 80, in __getattr__
      raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
  AttributeError: module 'setuptools.dist' has no attribute 'check_test_suite'
  ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/74/46/1c6154c073d0476229277a69db4d26451ac25fd9dc3d5b9603de5478dbd1/runtime-0.1.1.tar.gz#sha256=76b102586eaaa4879b190ed338c0d388e31a92d2350962c850851b772a23e8f7 (from https://pypi.org/simple/runtime/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  Using cached runtime-0.1.tar.gz (4.0 kB)
  Preparing metadata (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/bin/python3 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-ahtypzj3/runtime_9bae971949ca4d759d58b70e383ecd28/setup.py'"'"'; __file__='"'"'/tmp/pip-install-ahtypzj3/runtime_9bae971949ca4d759d58b70e383ecd28/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-kezgmr7k
       cwd: /tmp/pip-install-ahtypzj3/runtime_9bae971949ca4d759d58b70e383ecd28/
  Complete output (21 lines):
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/tmp/pip-install-ahtypzj3/runtime_9bae971949ca4d759d58b70e383ecd28/setup.py", line 5, in <module>
      setup(
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/__init__.py", line 117, in setup
      return distutils.core.setup(**attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/_distutils/core.py", line 148, in setup
      _setup_distribution = dist = klass(attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 319, in __init__
      _Distribution.__init__(self, dist_attrs)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/_distutils/dist.py", line 290, in __init__
      self.finalize_options()
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 681, in finalize_options
      ep(self)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 701, in _finalize_setup_keywords
      ep.load()(self, ep.name, value)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/importlib_metadata/__init__.py", line 191, in load
      return functools.reduce(getattr, attrs, module)
    File "/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/lib/python3.9/site-packages/setuptools/dist.py", line 80, in __getattr__
      raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
  AttributeError: module 'setuptools.dist' has no attribute 'check_test_suite'
  ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/5c/97/4b6e03ae335ac55e81dfdf4af7f20b115c64ab38473615c4631bf707bbe1/runtime-0.1.tar.gz#sha256=62adb51c4800eeb1f9b34bff233aaca22d4c26c578032b79137c671cf85f4bee (from https://pypi.org/simple/runtime/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
ERROR: Could not find a version that satisfies the requirement runtime (from tpcqcvis) (from versions: 0.1, 0.1.1, 0.1.2, 0.1.3, 0.1.4)
ERROR: No matching distribution found for runtime
WARNING: You are using pip version 22.0.4; however, version 25.0 is available.
You should consider upgrading via the '/home/christian/alice/sw/ubuntu2204_x86-64/Python-modules/1.0-45/bin/python3 -m pip install --upgrade pip' command.
[QualityControl/latest] ~/Softwares $>

I tried to update all my O2 packages and install the TPCQCVis package from scratch multiples times already.

I also tried to install the TPCQCVis package outside of the O2 environment. In this case the installation was successful. However the installation does not exist once I enter the O2 environment, and I need it to be available inside of the O2 environment in order for me to work.

From the error message I would think that the problem would be related to the incompatibility of pip versions of TPCQCVis and O2. Maybe to update the pip version of O2 would make it work, but then it would mess the O2 pip installation. (I have done this before and it raised a lot of other unwanted issues).

Does anybody know how to fix this issue or maybe indicate somebody who would know how to help?

Thank you in advance,
Christian

Hi

This seems like a very specific issue with building TPCQCVis and not really related to O2 / QC in general. Have you tried contacting the developer(s) / maintainer(s) of this package ?

Best of luck,
Barth