Common utilities and components shared across the LHCb DIRAC ecosystem during the DIRAC → DiracX migration
Project description
LHCbDIRACCommon
LHCbDIRACCommon contains common utilities and components shared across the LHCb DIRAC ecosystem during the DIRAC → DiracX migration.
Purpose
This package serves as a foundational layer containing shared code that is used by multiple LHCb DIRAC packages. By maintaining it as a separate repository, we:
- Avoid dependency cycles in the package tagging order
- Minimize changes as this code is expected to be stable and change infrequently
- Provide a clean separation of concerns between core utilities and higher-level functionality
- Support the DIRAC → DiracX migration by housing shared components needed across both systems
Context
LHCbDIRACCommon is part of the broader DIRAC → DiracX migration effort, where DiracX represents "The neXt DIRAC incarnation" - a modern evolution of the existing DIRAC distributed computing framework. This package contains shared utilities that facilitate the transition between the legacy DIRAC system and the new DiracX architecture.
Note: This package is an implementation detail and is not intended for direct end-user consumption.
Package Dependencies
The dependency structure is designed to prevent circular dependencies and ensure a clean build order:
graph TD
A[LHCbDIRACCommon] --> B[lhcbdiracx]
B --> C[LHCbDIRAC]
B --> D[lhcbdiracx-charts]
style A fill:#e1f5fe
style B fill:#f3e5f5
style C fill:#fff3e0
style D fill:#e8f5e8
Development
Running Tests
# Run all tests
pixi run test
# Run tests with coverage
pixi run pytest --cov=lhcbdiraccommon
Code Quality
# Run pre-commit hooks
pixi run -e pre-commit pre-commit run --all-files
# Install pre-commit hooks for development
pixi run -e pre-commit pre-commit install
Available Commands
pixi run test/pixi run pytest- Run the test suitepixi run -e pre-commit pre-commit- Run pre-commit hooks
Contributing
For detailed contribution guidelines and requirements for code inclusion, please refer to the DIRAC-common README, which provides comprehensive guidance on:
- Code quality standards
- Testing requirements
- Migration patterns and best practices
- Architectural decisions and design principles
License
This project is licensed under the same terms as the DIRAC project.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lhcbdiraccommon-0.0.1.tar.gz.
File metadata
- Download URL: lhcbdiraccommon-0.0.1.tar.gz
- Upload date:
- Size: 5.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4c6d071067e5785a76d4ecdf23d875aaacb7ca028653991ecce15b18d2a0e744
|
|
| MD5 |
9a52b60cf940cdc739673d6c1f675e46
|
|
| BLAKE2b-256 |
0bc4bc3d73ac0ceba9a9cbadd9c3640efa0df7fabd75f1f5948423bc03ffae2d
|
File details
Details for the file lhcbdiraccommon-0.0.1-py3-none-any.whl.
File metadata
- Download URL: lhcbdiraccommon-0.0.1-py3-none-any.whl
- Upload date:
- Size: 3.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c1f6591c81547695a5ebdd61ef051ac014a9e69fff2660108e4cffbb5c870f66
|
|
| MD5 |
54850f37c5f927783e19b473d2fb24f7
|
|
| BLAKE2b-256 |
e5e49f4baf7263167951fb554a02be7e8e39f3d552ae217facfd66f66c05cd6f
|