Skip to main content

GUI to upload Pixel Quality Control tests to ITk Production Database

Project description

module-qc-nonelec-gui 0.0.6

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

Uploaded Source

Built Distribution

module_qc_nonelec_gui-0.0.6-py3-none-any.whl (793.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for module_qc_nonelec_gui-0.0.6.tar.gz
Algorithm Hash digest
SHA256 c20f563baaf2d4ee5ff92f3ff00f82d8dd32718d9098f99a793526fa56ff2190
MD5 bc2172d144b4f3f4118ae3f157caa2e2
BLAKE2b-256 c522ad2226a7fde10fdaee87d0076f20edc0371c9ea503bd751d178f94459899

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for module_qc_nonelec_gui-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 fd0a45a478756fddb2b560b48deeafaa8b890c40e184e504c7c4a7b02d5374b3
MD5 22b4f49bffb1d8d5037259fcd5364d43
BLAKE2b-256 5de4907b6b32fa6f43be29ee5c97199d154d1ddb233657f6642ee211690bc498

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