Skip to main content

GUI to upload Pixel Quality Control tests to ITk Production Database

Project description

module-qc-nonelec-gui 0.0.7

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.7.tar.gz (737.7 kB view details)

Uploaded Source

Built Distribution

module_qc_nonelec_gui-0.0.7-py3-none-any.whl (793.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: module_qc_nonelec_gui-0.0.7.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.7.tar.gz
Algorithm Hash digest
SHA256 310da0b4dae8ddff2641de52ff1b39f302b67f7b695d78facb466ecedf407cf3
MD5 4887a1a226a5a047843af7833d106b20
BLAKE2b-256 d9efec4f0f2e59fa556c8a0b6a2f0662ba74e1f568979fb5d0815dc21fd27aec

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for module_qc_nonelec_gui-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 ddc382db2b80e8bf5edf69d333b2b169a8e5d8394f54309416f87d56d9f4b6b3
MD5 23e5ede2ef1e87a94681c82cd9f66788
BLAKE2b-256 7ffe628dc99050727e85bf06920b286c0d526e94186faf29bc3c03481d7661ab

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