Skip to main content

GUI to upload Pixel Quality Control tests to ITk Production Database

Project description

module-qc-nonelec-gui 0.0.8

What is this

This package is previously known to as "QC Helper" and it provides a GUI application for submitting non-electrical QC tests of ITkPix modules.

It requires python3.7 and relevant python modules. The GUI uses PyQT5 framework.

Installation and functionality tested for CentOS Linux series.

Quick installation

git clone https://gitlab.cern.ch/hoide/module-qc-nonelec-gui.git
cd module-qc-nonelec-gui
python3 -m pip install -e .

module-qc-nonelec-gui&

Versioning Policy

Respecting for "Semantic Versioning", version number is defined as "Major.Minor.Patch".

  • Major : Major update

    For example) to be changed the structure of QC test result.

  • Minor : Minor update

    For example) to be added new submodule of QC test item.

  • Patch : Patch

    For example) to be fixed a bug or so on.

Quick Tutorial

You have to follow below document.

  • QC Software doc link

Install

git config --global credential.helper cache    ( If you want to avoid multiple authentications )
mkdir Workdir
cd ./Workdir
git clone --recursive -b [tag of latest version] https://gitlab.cern.ch/atlas-itk/pixel/module/module-qc-nonelec-gui.git
cd module-qc-nonelec-gui
python3 -m pip install -e .
#pip>=21.3 is required to install with pyproject.toml in the editable mode!!

Update

git fetch
git checkout -b [tag of latest version] [tag of latest version]    (example:  $git checkout -b v2.2.3 v2.2.3)
git submodule update

Run

cd Workdir/module-qc-nonelec-gui
python3 -m module-qc-nonelec-gui
#or
module-qc-nonelec-gui

For detail, please look below.

instruction.pdf

Environmental Debug

"#python3 -m pip install -U pip" before "python3 -m pip install PyQt5".

#yum install

 libxcb-1.13-1.el7.i686
 xcb-util-wm-0.4.1-5.el7.i686
 xcb-util-image-0.4.0-2.el7.i686
 xcb-util-keysyms-0.4.0-1.el7.i686
 xcb-util-renderutil-0.3.9-3.el7.i686
 python36-pyqt5-sip-4.19.16-3.el7.x86_64
 sip-4.14.6-4.el7.x86_64
 libxkbcommon-x11-devel-0.7.1-3.el7.x86_64
 xcb-util-wm-0.4.1-5.el7.x86_64
 xcb-util-image-0.4.0-2.el7.x86_64
 xcb-util-keysyms-0.4.0-1.el7.x86_64
 xcb-util-renderutil-0.3.9-3.el7.x86_64
 mesa-libGL.x86_64
 qt5-qtbase-gui-5.9.7-4.el7.x86_64
 qt

#yum -y groupinstall "X Window System"

More detail

If you get the error [qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.] in executing

$python3 bin/main.py,

you should do below at first.

$export QT_DEBUG_PLUGINS=1

Then, If you execute below again,

$python3 bin/main.py,

you can get a message which show what is wrong.

If you get below message, you have to install the shared library "libxcb—icccm.so.4".

Cannot load library /usr/local/lib64/python3.6/site-packages/PyQt5/Qt/plugins/platforms/libqxcb.so: (libxcb—icccm.so.4: cannot open shared object file: No such file or directory)

You can search what package you should download to get above shared library by using

https://pkgs.org

If you can find out what package you need, you should install it

#yum install xcb-util-wm.x86_64        (for libxcb—icccm.so.4 in CentOS7)

After finish downloading, you can check if you succeeded to install the shared library.

#find /* -name libxcb-icccm.so.4

Error which you can ignore

libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast

FAQ

Error on pip installing

$ python3.9 -m pip install -e .
Defaulting to user installation because normal site-packages is not writeable
ERROR: File "setup.py" not found. Directory cannot be installed in editable mode: /data/home/hirose/work/ITkPixel/module-qc-nonelec-gui_test/module-qc-nonelec-gui
(A "pyproject.toml" file was found, but editable mode currently requires a setup.py based build.)

#########################################################
# This happens when your pip version is older than 21.3.
#########################################################
#Workaround:

$python3 -m pip install --upgrade pip
#python3 might be different depending on your system (e.g. python3.7, python3.9 etc...)

Error on launching the module-qc-nonelec-gui

$module-qc-nonelec-gui
Launching GUI
qt.qpa.xcb: could not connect to display
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl, xcb.

Aborted (core dumped)

################################################################################################
# This happens when you connect a QC Helper innstalled machine remotely WITHOUT X11 formarding.
################################################################################################
#Workaround:
ssh with -Y option to your remote machine.

Golden module storage

https://cernbox.cern.ch/s/VcWorfNdGzQVxpE

Deploy golden module under src/module_qc_nonelec_gui/qc_tests/vi as golden_module directory.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

module_qc_nonelec_gui-0.0.8.tar.gz (737.7 kB view details)

Uploaded Source

Built Distribution

module_qc_nonelec_gui-0.0.8-py3-none-any.whl (794.0 kB view details)

Uploaded Python 3

File details

Details for the file module_qc_nonelec_gui-0.0.8.tar.gz.

File metadata

  • Download URL: module_qc_nonelec_gui-0.0.8.tar.gz
  • Upload date:
  • Size: 737.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.4

File hashes

Hashes for module_qc_nonelec_gui-0.0.8.tar.gz
Algorithm Hash digest
SHA256 582a157c4404d07f6f3456fdfefe2dd30f0098e0075fe7da484fa00ce3dc2668
MD5 170c342f2ee1483b711e85c23db9c994
BLAKE2b-256 bf67296f403cf8c7ac8cbb0bad5cb9d8f7bfa7c0eaca94466c2a59fea2a57043

See more details on using hashes here.

File details

Details for the file module_qc_nonelec_gui-0.0.8-py3-none-any.whl.

File metadata

File hashes

Hashes for module_qc_nonelec_gui-0.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 6283f8bcc36fb17c0eacbc6beaa5ecdb0fb2a4ee9c1380dfb056a87d3358a033
MD5 6c9c0505436c70968ac87ddcb6eeae17
BLAKE2b-256 19839afea519341cd43b07de211d4c947112c62d284db87af4d398a03a1d2e92

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page