Feature/pixi #10

Open
labrec_b wants to merge 6 commits from feature/pixi into main
26 changed files with 6974 additions and 33 deletions
+2
View File
@@ -0,0 +1,2 @@
# SCM syntax highlighting & preventing 3-way merges
pixi.lock merge=binary linguist-language=YAML linguist-generated=true -diff
+3
View File
@@ -174,3 +174,6 @@ cython_debug/
# PyPI configuration file
.pypirc
# pixi environments
.pixi/*
!.pixi/config.toml
+6 -17
View File
@@ -19,29 +19,18 @@ SVC_DIR=${SERVICES_DIR}/${SVC_NAME_LOWER}
# TODO: only for dev
export EPICS_CA_ADDR_LIST='sls-cagw.psi.ch:5062 129.129.146.88'
# TODO: what do we need from here?
# activate conda environment
. /opt/gfa/python-3.10/latest/bin/activate
# . /opt/gfa/python-3.10/latest/bin/activate
# TODO: building the .venv should be done in CICD (only when uv.lock changes)
pip install uv
# to run `uv ...`
PATH="${HOME}/.local/bin:${PATH}"
export UV_CACHE_DIR="/sls/bd/hla/.cache/uv"
export UV_LINK_MODE="copy"
export PIXI_CACHE_DIR="/sls/bd/hla/.cache/pixi"
APP_DIR=${SVC_DIR}/current/app
echo "App dir: ${APP_DIR}"
# TODO: do we need this? pyepics is not PSI specific...
# (re)create venv using site-packages -- uses system-wide installed epics
# uv venv --system-site-packages ${APP_DIR}/.venv --clear
# install custom python packages from pyproject.toml / uv.lock
uv sync --frozen --project ${APP_DIR}
# activate .venv, this works in conjunction with the conda environment
source ${APP_DIR}/.venv/bin/activate
cd ${APP_DIR}
# TODO: use `exec python3 ...` here?
python -u -B -m agebd_${SVC_NAME_LOWER_UNDERSCORES}.main
# TODO: use `exec pixi run python ...` here?
pixi run python -u -B -m agebd_${SVC_NAME_LOWER_UNDERSCORES}.main
# TODO: remove: cicd test 10
+3
View File
@@ -28,6 +28,9 @@ cd /tmp
curl -LO https://nodejs.org/dist/v20.11.1/node-v20.11.1-linux-x64.tar.xz
tar -xf node-v20.11.1-linux-x64.tar.xz --strip-components=2 -C ~/.local/bin/ node-v20.11.1-linux-x64/bin/
rm node-v20.11.1-linux-x64.tar.xz
# Install pixi
curl -fsSL https://pixi.sh/install.sh | sh
```
## Manually run the runner
+2163
View File
File diff suppressed because it is too large Load Diff
+33
View File
@@ -6,6 +6,7 @@ requires-python = "==3.10.*"
dependencies = [
"h5py>=3.16.0",
"pyepics>=3.5.10",
"typer>=0.23.2",
]
@@ -35,3 +36,35 @@ line-length = 100
[tool.ruff.lint]
# use isort to sort imports
extend-select = ["I"]
### PIXI ###
[tool.pixi.workspace]
name = "agebd"
channels = ["conda-forge"]
platforms = ["linux-64"]
version = "0.1.0"
[tool.pixi.tasks]
[tool.pixi.dependencies]
python = "3.10.*"
h5py = ">=3.16.0,<4"
typer = "*"
pyepics = ">=3.5.10,<4"
[tool.pixi.pypi-dependencies]
agebd = { path = ".", editable = true }
[tool.pixi.feature.dev.dependencies]
pyright = "*"
ruff = "*"
twine = "*"
pytest = ">=9.1.1,<10"
[tool.pixi.feature.dev.tasks]
test = "pytest"
format = "ruff format"
[tool.pixi.environments]
dev = ["dev"]
-1
View File
@@ -16,4 +16,3 @@ class BasePVs:
self.abort = pv_factory(f'AGEBD-MASTER:{svc}-ABORT.VAL')
self.abortreq = pv_factory(f'AGEBD-MASTER:{svc}-ABORT-REQ.VAL')
# fmt: on
+24
View File
@@ -8,6 +8,7 @@ version = "0.1.0"
source = { editable = "." }
dependencies = [
{ name = "h5py" },
{ name = "pyepics" },
{ name = "typer" },
]
@@ -22,6 +23,7 @@ dev = [
[package.metadata]
requires-dist = [
{ name = "h5py", specifier = ">=3.16.0" },
{ name = "pyepics", specifier = ">=3.5.10" },
{ name = "typer", specifier = ">=0.23.2" },
]
@@ -394,6 +396,19 @@ wheels = [
{ url = "https://files.pythonhosted.org/packages/0c/c3/44f3fbbfa403ea2a7c779186dc20772604442dde72947e7d01069cbe98e3/pycparser-3.0-py3-none-any.whl", hash = "sha256:b727414169a36b7d524c1c3e31839a521725078d7b2ff038656844266160a992", size = 48172, upload-time = "2026-01-21T14:26:50.693Z" },
]
[[package]]
name = "pyepics"
version = "3.5.10"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "numpy" },
{ name = "pyparsing" },
]
sdist = { url = "https://files.pythonhosted.org/packages/69/57/29e1e9ef11ba2a3419f489946ae1d8190025a1e4f4e1c1686758bb2b6e0a/pyepics-3.5.10.tar.gz", hash = "sha256:f390cf9be40aba757b9528888114bc14d8db01086d0c93914720b1772460375b", size = 6150481, upload-time = "2026-05-20T18:44:36.336Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/d6/36/e517fd83bd97d6bfe4105e0c6b322070c5cc36fb56a8fab2866e319f8804/pyepics-3.5.10-py3-none-any.whl", hash = "sha256:c9fac2c54f2b595268e66fc348cf5ec24e63718e7dbd07d73d1b37d4da6bfee1", size = 5332376, upload-time = "2026-05-20T18:44:34.242Z" },
]
[[package]]
name = "pygments"
version = "2.20.0"
@@ -403,6 +418,15 @@ wheels = [
{ url = "https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl", hash = "sha256:81a9e26dd42fd28a23a2d169d86d7ac03b46e2f8b59ed4698fb4785f946d0176", size = 1231151, upload-time = "2026-03-29T13:29:30.038Z" },
]
[[package]]
name = "pyparsing"
version = "3.3.2"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/f3/91/9c6ee907786a473bf81c5f53cf703ba0957b23ab84c264080fb5a450416f/pyparsing-3.3.2.tar.gz", hash = "sha256:c777f4d763f140633dcb6d8a3eda953bf7a214dc4eff598413c070bcdc117cbc", size = 6851574, upload-time = "2026-01-21T03:57:59.36Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/10/bd/c038d7cc38edc1aa5bf91ab8068b63d4308c66c4c8bb3cbba7dfbc049f9c/pyparsing-3.3.2-py3-none-any.whl", hash = "sha256:850ba148bd908d7e2411587e247a1e4f0327839c40e2e5e6d05a007ecc69911d", size = 122781, upload-time = "2026-01-21T03:57:55.912Z" },
]
[[package]]
name = "pyright"
version = "1.1.411"
Generated
+3669
View File
File diff suppressed because it is too large Load Diff
+50
View File
@@ -0,0 +1,50 @@
[workspace]
authors = ["Benjamin Labrecque <benjamin.labrecque@psi.ch>"]
channels = ["conda-forge"]
name = "sls_hla_framework_bd"
platforms = ["linux-64"]
version = "0.1.0"
[tasks]
[dependencies]
python = "3.10.*"
numpy = ">=1.22.6,<2"
scipy = ">=1.15.2,<2"
matplotlib = ">=3.10.9,<4"
[pypi-dependencies]
agebd = { path = "packages/agebd", editable = true }
sls2om = { version = "==0.4.0", index = "https://gitea.psi.ch/api/packages/sls/pypi/simple/" }
agebd-dbpm3curr = { path = "services/dbpm3curr/current/app", editable = true }
agebd-injectionguard = { path = "services/injectionguard/current/app", editable = true }
agebd-master = { path = "services/master/current/app", editable = true }
agebd-nturns = { path = "services/nturns/current/app", editable = true }
agebd-orbitbump = { path = "services/orbitbump/current/app", editable = true }
agebd-plots = { path = "services/plots/current/app", editable = true }
agebd-postmortemlog = { path = "services/postmortemlog/current/app", editable = true }
agebd-scrubbing = { path = "services/scrubbing/current/app", editable = true }
agebd-shifttool = { path = "services/shifttool/current/app", editable = true }
agebd-taubpm = { path = "services/taubpm/current/app", editable = true }
agebd-taupct = { path = "services/taupct/current/app", editable = true }
agebd-timing = { path = "services/timing/current/app", editable = true }
agebd-topuptool = { path = "services/topuptool/current/app", editable = true }
agebd-tune = { path = "services/tune/current/app", editable = true }
agebd-tunebump = { path = "services/tunebump/current/app", editable = true }
agebd-tunefbx = { path = "services/tunefbx/current/app", editable = true }
agebd-tunefby = { path = "services/tunefby/current/app", editable = true }
nafflib = ">=2.1.1, <3"
[feature.test.dependencies]
pytest = "*"
[feature.test.tasks.test]
cmd = [
"pytest",
# allows all test files to be named the same (test_app.py)
"--import-mode=importlib",
]
env = { AGEBD_ENV = "local" }
[environments]
test = ["test"]
@@ -6,7 +6,7 @@ requires-python = "==3.10.*"
dependencies = [
"agebd",
"pyepics>=3.5.8",
"numpy>=2.0.2",
"numpy>=1.22.6,<2.0.0",
]
[dependency-groups]
@@ -6,7 +6,7 @@ requires-python = "==3.10.*"
dependencies = [
"agebd",
"pyepics>=3.5.8",
"numpy>=2.0.2",
"numpy>=1.22.6,<2.0.0",
]
[dependency-groups]
+974
View File
@@ -0,0 +1,974 @@
version: 7
platforms:
- name: linux-64
virtual-packages:
- __unix=0=0
- __linux=4.18
- __glibc=2.28
- __archspec=0=x86_64
environments:
default:
channels:
- url: https://conda.anaconda.org/conda-forge/
indexes:
- https://pypi.org/simple
packages:
linux-64:
- conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_9.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/epics-base-7.0.9.0-pl5321h2669dad_11.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.46.1-default_hbd61a6d_102.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-8_h4a7cf45_openblas.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-8_h0358290_openblas.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.8.1-hecca717_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.7.0-h3435931_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_19.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_19.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_19.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_19.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_19.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-8_h47877c9_openblas.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.3-hb03c661_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hb9d3cd8_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.33-pthreads_h94d23a6_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.53.3-h0c1763c_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_19.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.42.2-h5347b49_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.2-h25fd6f3_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.6-hdb14827_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-2.2.6-py310hefbff90_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.3-h35e630c_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/perl-5.32.1-7_hd590300_perl5.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/pyepics-3.5.10-py310hff52083_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.10.20-h267e890_1_cpython.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py310h3406613_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.3-h853b02a_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_hd70dff1_3.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h280c20c_3.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.6.17-hbd8a1cb_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-7.1.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.3.2-pyhcf101f3_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.10-8_cp310.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-83.0.0-pyh332efcf_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2026c-h151e31d_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-4.1.0-pyhcf101f3_0.conda
- pypi: ../../../../packages/agebd
- pypi: ./
- pypi: https://files.pythonhosted.org/packages/1e/d3/26bf1008eb3d2daa8ef4cacc7f3bfdc11818d111f7e2d0201bc6e3b49d45/annotated_doc-0.0.4-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/40/03/26a383c9e58c213199d1aad1c3d353cfc22d4444ec6d2c0bf8ad02523843/typer-0.27.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/82/3b/64d4899d73f91ba49a8c18a8ff3f0ea8f1c1d75481760df8c68ef5235bf5/rich-15.0.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/b3/81/4da04ced5a082363ecfa159c010d200ecbd959ae410c10c0264a38cac0f5/markdown_it_py-4.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/cb/92/a8851d936547efe30cc0ce5245feac01f3ec6171f7899bc3f775c72030b3/h5py-3.16.0-cp310-cp310-manylinux_2_28_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl
dev:
channels:
- url: https://conda.anaconda.org/conda-forge/
indexes:
- https://pypi.org/simple
packages:
linux-64:
- conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_9.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/epics-base-7.0.9.0-pl5321h2669dad_11.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.46.1-default_hbd61a6d_102.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-8_h4a7cf45_openblas.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-8_h0358290_openblas.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.8.1-hecca717_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.7.0-h3435931_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_19.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_19.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_19.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_19.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_19.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-8_h47877c9_openblas.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.3-hb03c661_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hb9d3cd8_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.33-pthreads_h94d23a6_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.53.3-h0c1763c_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_19.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.42.2-h5347b49_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.2-h25fd6f3_2.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.6-hdb14827_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-2.2.6-py310hefbff90_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.3-h35e630c_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/perl-5.32.1-7_hd590300_perl5.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/pyepics-3.5.10-py310hff52083_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.10.20-h267e890_1_cpython.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py310h3406613_1.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.3-h853b02a_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.15.22-h462bb3b_0.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_hd70dff1_3.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h280c20c_3.conda
- conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.6.17-hbd8a1cb_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-7.1.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.2-pyhc364b38_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.20.0-pyhd8ed1ab_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.3.2-pyhcf101f3_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/pytest-9.1.1-pyhc364b38_2.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.10-8_cp310.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-83.0.0-pyh332efcf_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.4.1-pyhcf101f3_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.16.0-pyhcf101f3_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2026c-h151e31d_0.conda
- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-4.1.0-pyhcf101f3_0.conda
- pypi: ../../../../packages/agebd
- pypi: ./
- pypi: https://files.pythonhosted.org/packages/1e/d3/26bf1008eb3d2daa8ef4cacc7f3bfdc11818d111f7e2d0201bc6e3b49d45/annotated_doc-0.0.4-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/40/03/26a383c9e58c213199d1aad1c3d353cfc22d4444ec6d2c0bf8ad02523843/typer-0.27.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/82/3b/64d4899d73f91ba49a8c18a8ff3f0ea8f1c1d75481760df8c68ef5235bf5/rich-15.0.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/b3/81/4da04ced5a082363ecfa159c010d200ecbd959ae410c10c0264a38cac0f5/markdown_it_py-4.2.0-py3-none-any.whl
- pypi: https://files.pythonhosted.org/packages/cb/92/a8851d936547efe30cc0ce5245feac01f3ec6171f7899bc3f775c72030b3/h5py-3.16.0-cp310-cp310-manylinux_2_28_x86_64.whl
- pypi: https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl
packages:
- conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda
build_number: 20
sha256: 1dd3fffd892081df9726d7eb7e0dea6198962ba775bd88842135a4ddb4deb3c9
md5: a9f577daf3de00bca7c3c76c0ecbd1de
depends:
- __glibc >=2.17,<3.0.a0
- libgomp >=7.5.0
constrains:
- openmp_impl <0.0a0
license: BSD-3-Clause
license_family: BSD
purls: []
run_exports:
strong:
- _openmp_mutex >=4.5
size: 28948
timestamp: 1770939786096
- conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_9.conda
sha256: 0b75d45f0bba3e95dc693336fa51f40ea28c980131fec438afb7ce6118ed05f6
md5: d2ffd7602c02f2b316fd921d39876885
depends:
- __glibc >=2.17,<3.0.a0
- libgcc >=14
license: bzip2-1.0.6
license_family: BSD
purls: []
run_exports:
weak:
- bzip2 >=1.0.8,<2.0a0
size: 260182
timestamp: 1771350215188
- conda: https://conda.anaconda.org/conda-forge/linux-64/epics-base-7.0.9.0-pl5321h2669dad_11.conda
sha256: cf2654684f14bd08fb29323a5ee6e38404e218fcf105f147310673927cc3cd6a
md5: c04b9ed22ba34ff5eb6c799dc25ca02f
depends:
- perl
- __glibc >=2.17,<3.0.a0
- libgcc >=14
- libstdcxx >=14
- readline >=8.3,<9.0a0
license: EPICS
purls: []
run_exports:
weak:
- epics-base >=7.0.9.0,<7.0.9.1.0a0
size: 33506674
timestamp: 1776150696577
- conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.46.1-default_hbd61a6d_102.conda
sha256: 27d83f1188cd19bcb7754a078b3fa7f4cfb8527f8eb2fde54dd01fc529d1adec
md5: 449500f2c089da11c40f5c21312e3e07
depends:
- __glibc >=2.17,<3.0.a0
- zstd >=1.5.7,<1.6.0a0
constrains:
- binutils_impl_linux-64 2.46.1
license: GPL-3.0-only
license_family: GPL
purls: []
run_exports: {}
size: 745303
timestamp: 1784214507189
- conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.11.0-8_h4a7cf45_openblas.conda
build_number: 8
sha256: b2da6bfd72a1c9cb143ccf64bf5b28790cb4eb58bd1cb978f6537b2322f7d48b
md5: 00fc660ab1b2f5ca07e92b4900d10c79
depends:
- libopenblas >=0.3.33,<0.3.34.0a0
- libopenblas >=0.3.33,<1.0a0
constrains:
- blas 2.308 openblas
- mkl <2027
- libcblas 3.11.0 8*_openblas
- liblapack 3.11.0 8*_openblas
- liblapacke 3.11.0 8*_openblas
license: BSD-3-Clause
license_family: BSD
purls: []
run_exports:
weak:
- libblas >=3.11.0,<4.0a0
size: 18804
timestamp: 1779859100675
- conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.11.0-8_h0358290_openblas.conda
build_number: 8
sha256: 1a2bc77bb26520255904a3d9b1f40e6bf0bf9d8d3405c7709dd162282820915a
md5: 33a413f1095f8325e5c30fde3b0d2445
depends:
- libblas 3.11.0 8_h4a7cf45_openblas
constrains:
- blas 2.308 openblas
- liblapacke 3.11.0 8*_openblas
- liblapack 3.11.0 8*_openblas
license: BSD-3-Clause
license_family: BSD
purls: []
run_exports:
weak:
- libcblas >=3.11.0,<4.0a0
size: 18778
timestamp: 1779859107964
- conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.8.1-hecca717_1.conda
sha256: 16feffd9ddbbe5b718515d38ee376c685ba95491cd901244e24671d20b952a77
md5: b24d3c612f71e7aa74158d92106318b2
depends:
- __glibc >=2.17,<3.0.a0
- libgcc >=14
constrains:
- expat 2.8.1.*
license: MIT
license_family: MIT
purls: []
run_exports: {}
size: 77856
timestamp: 1781203599810
- conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.7.0-h3435931_0.conda
sha256: ac38603008bf1e99b8ed379b1a656a67a70e2841f2b6a069c630cdf6316012d2
md5: 0abe40a9880086ca4d2e5daf09dceff9
depends:
- __glibc >=2.17,<3.0.a0
- libgcc >=14
license: MIT
license_family: MIT
purls: []
run_exports:
weak:
- libffi >=3.7.0,<3.8.0a0
size: 67576
timestamp: 1783520858222
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-15.2.0-he0feb66_19.conda
sha256: 8e0a3b5e41272e5678499b5dfc4cddb673f9e935de01eb0767ce857001229f46
md5: 57736f29cc2b0ec0b6c2952d3f101b6a
depends:
- __glibc >=2.17,<3.0.a0
- _openmp_mutex >=4.5
constrains:
- libgcc-ng ==15.2.0=*_19
- libgomp 15.2.0 he0feb66_19
license: GPL-3.0-only WITH GCC-exception-3.1
license_family: GPL
purls: []
run_exports: {}
size: 1041084
timestamp: 1778269013026
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-15.2.0-h69a702a_19.conda
sha256: 9dcf54adfaa5e861123c2da4f2f0451a685464ea7e5a41ad91cf67b31d658d98
md5: 331ee9b72b9dff570d56b1302c5ab37d
depends:
- libgcc 15.2.0 he0feb66_19
license: GPL-3.0-only WITH GCC-exception-3.1
license_family: GPL
purls: []
run_exports:
strong:
- libgcc
size: 27694
timestamp: 1778269016987
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-15.2.0-h69a702a_19.conda
sha256: 561a42758ef25b9ce308c4e2cf56daee4f06138385a17e29a492cd928e00be6f
md5: 42bf7eca1a951735fa06c0e3c0d5c8e6
depends:
- libgfortran5 15.2.0 h68bc16d_19
constrains:
- libgfortran-ng ==15.2.0=*_19
license: GPL-3.0-only WITH GCC-exception-3.1
license_family: GPL
purls: []
run_exports: {}
size: 27655
timestamp: 1778269042954
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-15.2.0-h68bc16d_19.conda
sha256: 057978bb69fea29ed715a9b98adf71015c31baecc4aeb2bfc20d4fd5d83579d4
md5: 85072b0ad177c966294f129b7c04a2d5
depends:
- __glibc >=2.17,<3.0.a0
- libgcc >=15.2.0
constrains:
- libgfortran 15.2.0
license: GPL-3.0-only WITH GCC-exception-3.1
license_family: GPL
purls: []
run_exports: {}
size: 2483673
timestamp: 1778269025089
- conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-15.2.0-he0feb66_19.conda
sha256: 5abe4ab9d93f6c9757d654f1969ae2267d4505315c1f2f8fe705fd60af084f1b
md5: faac990cb7aedc7f3a2224f2c9b0c26c
depends:
- __glibc >=2.17,<3.0.a0
license: GPL-3.0-only WITH GCC-exception-3.1
license_family: GPL
purls: []
run_exports:
strong:
- _openmp_mutex >=4.5
size: 603817
timestamp: 1778268942614
- conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.11.0-8_h47877c9_openblas.conda
build_number: 8
sha256: 168e327d737059553e15cc6ec36d76b9bbb3931c2a7721555fd68b4c9348b247
md5: 809be8ba8712c77bc7d44c2d99390dc4
depends:
- libblas 3.11.0 8_h4a7cf45_openblas
constrains:
- blas 2.308 openblas
- libcblas 3.11.0 8*_openblas
- liblapacke 3.11.0 8*_openblas
license: BSD-3-Clause
license_family: BSD
purls: []
run_exports:
weak:
- liblapack >=3.11.0,<3.12.0a0
size: 18790
timestamp: 1779859115086
- conda: https://conda.anaconda.org/conda-forge/linux-64/liblzma-5.8.3-hb03c661_0.conda
sha256: ec30e52a3c1bf7d0425380a189d209a52baa03f22fb66dd3eb587acaa765bd6d
md5: b88d90cad08e6bc8ad540cb310a761fb
depends:
- __glibc >=2.17,<3.0.a0
- libgcc >=14
constrains:
- xz 5.8.3.*
license: 0BSD
purls: []
run_exports:
weak:
- liblzma >=5.8.3,<6.0a0
size: 113478
timestamp: 1775825492909
- conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hb9d3cd8_1.conda
sha256: 927fe72b054277cde6cb82597d0fcf6baf127dcbce2e0a9d8925a68f1265eef5
md5: d864d34357c3b65a4b731f78c0801dc4
depends:
- __glibc >=2.17,<3.0.a0
- libgcc >=13
license: LGPL-2.1-only
license_family: GPL
purls: []
run_exports:
weak:
- libnsl >=2.0.1,<2.1.0a0
size: 33731
timestamp: 1750274110928
- conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.33-pthreads_h94d23a6_0.conda
sha256: 3d9aa85648e5e18a6d66db98b8c4317cc426721ad7a220aa86330d1ccedc8903
md5: 2d3278b721e40468295ca755c3b84070
depends:
- __glibc >=2.17,<3.0.a0
- libgcc >=14
- libgfortran
- libgfortran5 >=14.3.0
constrains:
- openblas >=0.3.33,<0.3.34.0a0
license: BSD-3-Clause
license_family: BSD
purls: []
run_exports:
weak:
- libopenblas >=0.3.33,<1.0a0
size: 5931919
timestamp: 1776993658641
- conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.53.3-h0c1763c_0.conda
sha256: 365376f4815e5e80def2b3462a2419708b7c292da0da85278386c2618621fff4
md5: 4aed8e657e9ff156bdbe849b4df44389
depends:
- __glibc >=2.17,<3.0.a0
- libgcc >=14
- libzlib >=1.3.2,<2.0a0
license: blessing
purls: []
run_exports:
weak:
- libsqlite >=3.53.3,<4.0a0
size: 962119
timestamp: 1782519076616
- conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-15.2.0-h934c35e_19.conda
sha256: dff1058c76ec6b8759e41cefa2508162d00e4a5e6721aa68ec3fd10094e702dc
md5: 5794b3bdc38177caf969dabd3af08549
depends:
- __glibc >=2.17,<3.0.a0
- libgcc 15.2.0 he0feb66_19
constrains:
- libstdcxx-ng ==15.2.0=*_19
license: GPL-3.0-only WITH GCC-exception-3.1
license_family: GPL
purls: []
run_exports: {}
size: 5852044
timestamp: 1778269036376
- conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.42.2-h5347b49_0.conda
sha256: 9b1bdce27a7e31f7d241aeecff67a1f3101d52a2b1e33ccc2cdf2613072bf81f
md5: 01bb81d12c957de066ea7362007df642
depends:
- libgcc >=14
- __glibc >=2.17,<3.0.a0
license: BSD-3-Clause
license_family: BSD
purls: []
run_exports:
weak:
- libuuid >=2.42.2,<3.0a0
size: 40017
timestamp: 1781625522462
- conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda
sha256: 6ae68e0b86423ef188196fff6207ed0c8195dd84273cb5623b85aa08033a410c
md5: 5aa797f8787fe7a17d1b0821485b5adc
depends:
- libgcc-ng >=12
license: LGPL-2.1-or-later
purls: []
run_exports:
weak:
- libxcrypt >=4.4.36
size: 100393
timestamp: 1702724383534
- conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.2-h25fd6f3_2.conda
sha256: 55044c403570f0dc26e6364de4dc5368e5f3fc7ff103e867c487e2b5ab2bcda9
md5: d87ff7921124eccd67248aa483c23fec
depends:
- __glibc >=2.17,<3.0.a0
constrains:
- zlib 1.3.2 *_2
license: Zlib
license_family: Other
purls: []
run_exports:
weak:
- libzlib >=1.3.2,<2.0a0
size: 63629
timestamp: 1774072609062
- conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.6-hdb14827_0.conda
sha256: fc89f74bbe362fb29fa3c037697a89bec140b346a2469a90f7936d1d7ea4d8a3
md5: fc21868a1a5aacc937e7a18747acb8a5
depends:
- __glibc >=2.17,<3.0.a0
- libgcc >=14
license: X11 AND BSD-3-Clause
purls: []
run_exports:
weak:
- ncurses >=6.6,<7.0a0
size: 918956
timestamp: 1777422145199
- conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-2.2.6-py310hefbff90_0.conda
sha256: 0ba94a61f91d67413e60fa8daa85627a8f299b5054b0eff8f93d26da83ec755e
md5: b0cea2c364bf65cd19e023040eeab05d
depends:
- __glibc >=2.17,<3.0.a0
- libblas >=3.9.0,<4.0a0
- libcblas >=3.9.0,<4.0a0
- libgcc >=13
- liblapack >=3.9.0,<4.0a0
- libstdcxx >=13
- python >=3.10,<3.11.0a0
- python_abi 3.10.* *_cp310
constrains:
- numpy-base <0a0
license: BSD-3-Clause
license_family: BSD
purls:
- pkg:pypi/numpy?source=hash-mapping
run_exports:
weak:
- numpy >=1.21,<3
size: 7893263
timestamp: 1747545075833
- conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.6.3-h35e630c_0.conda
sha256: d48f5c22b9897c01e4dff3680f1f57ceb02711ab9c62f74339b080419dfad34b
md5: 79dd2074b5cd5c5c6b2930514a11e22d
depends:
- __glibc >=2.17,<3.0.a0
- ca-certificates
- libgcc >=14
license: Apache-2.0
license_family: Apache
purls: []
run_exports:
weak:
- openssl >=3.6.3,<4.0a0
size: 3159683
timestamp: 1781069855778
- conda: https://conda.anaconda.org/conda-forge/linux-64/perl-5.32.1-7_hd590300_perl5.conda
build_number: 7
sha256: 9ec32b6936b0e37bcb0ed34f22ec3116e75b3c0964f9f50ecea5f58734ed6ce9
md5: f2cfec9406850991f4e3d960cc9e3321
depends:
- libgcc-ng >=12
- libxcrypt >=4.4.36
license: GPL-1.0-or-later OR Artistic-1.0-Perl
purls: []
run_exports:
weak:
- perl >=5.32.1,<5.33.0a0 *_perl5
noarch:
- perl >=5.32.1,<6.0a0 *_perl5
size: 13344463
timestamp: 1703310653947
- conda: https://conda.anaconda.org/conda-forge/linux-64/pyepics-3.5.10-py310hff52083_0.conda
sha256: 969e3b5f9e82f120638f6764e52d39f44c6dbb4ea58529b05405d82bd87e12a1
md5: 7c6b8af3d9441bb131c6209661d84df5
depends:
- epics-base
- importlib_resources
- numpy >=1.26
- pyparsing
- python >=3.10,<3.11.0a0
- python_abi 3.10.* *_cp310
- setuptools
license: EPICS
purls:
- pkg:pypi/pyepics?source=hash-mapping
run_exports: {}
size: 4289463
timestamp: 1779312692993
- conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.10.20-h267e890_1_cpython.conda
build_number: 1
sha256: c15d8585b7a52fdb734bd16dbdcae4b81ed59268862d3a2588eb8ed69c8cbc52
md5: c5eace1c2d8dae0bb08c094617ea8cc7
depends:
- __glibc >=2.17,<3.0.a0
- bzip2 >=1.0.8,<2.0a0
- ld_impl_linux-64 >=2.36.1
- libexpat >=2.8.1,<3.0a0
- libffi >=3.4,<4.0a0
- libgcc >=14
- liblzma >=5.8.3,<6.0a0
- libnsl >=2.0.1,<2.1.0a0
- libsqlite >=3.53.2,<4.0a0
- libuuid >=2.42.1,<3.0a0
- libxcrypt >=4.4.36
- libzlib >=1.3.2,<2.0a0
- ncurses >=6.6,<7.0a0
- openssl >=3.5.7,<4.0a0
- readline >=8.3,<9.0a0
- tk >=8.6.13,<8.7.0a0
- tzdata
constrains:
- python_abi 3.10.* *_cp310
license: Python-2.0
purls: []
run_exports:
weak:
- python_abi 3.10.* *_cp310
noarch:
- python
size: 25403213
timestamp: 1781149348162
- conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.3-py310h3406613_1.conda
sha256: f23de6cc72541c6081d3d27482dbc9fc5dd03be93126d9155f06d0cf15d6e90e
md5: 2160894f57a40d2d629a34ee8497795f
depends:
- __glibc >=2.17,<3.0.a0
- libgcc >=14
- python >=3.10,<3.11.0a0
- python_abi 3.10.* *_cp310
- yaml >=0.2.5,<0.3.0a0
license: MIT
license_family: MIT
purls:
- pkg:pypi/pyyaml?source=hash-mapping
run_exports: {}
size: 176522
timestamp: 1770223379599
- conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.3-h853b02a_0.conda
sha256: 12ffde5a6f958e285aa22c191ca01bbd3d6e710aa852e00618fa6ddc59149002
md5: d7d95fc8287ea7bf33e0e7116d2b95ec
depends:
- __glibc >=2.17,<3.0.a0
- libgcc >=14
- ncurses >=6.5,<7.0a0
license: GPL-3.0-only
license_family: GPL
purls: []
run_exports:
weak:
- readline >=8.3,<9.0a0
size: 345073
timestamp: 1765813471974
- conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.15.22-h462bb3b_0.conda
noarch: python
sha256: 2002c7869a95ed94b03303a033fcc24b608597bdd01c8f01d90c47175616edb9
md5: ad7d8b2d37a1098a04ddd8b34b962481
depends:
- python
- __glibc >=2.17,<3.0.a0
- libgcc >=14
constrains:
- __glibc >=2.17
license: MIT
license_family: MIT
purls:
- pkg:pypi/ruff?source=compressed-mapping
run_exports: {}
size: 9333318
timestamp: 1784237314764
- conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_hd70dff1_3.conda
build_number: 103
sha256: 43624eab22f5f29df7d6ffe914cf442f28fd559b55b290906255492826e636e8
md5: 48a1049e710857572fc2a832aa394d9f
depends:
- __glibc >=2.17,<3.0.a0
- libgcc >=14
- libzlib >=1.3.2,<2.0a0
constrains:
- xorg-libx11 >=1.8.13,<2.0a0
license: TCL
purls: []
run_exports:
weak:
- tk >=8.6.13,<8.7.0a0
size: 3550916
timestamp: 1784229071544
- conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h280c20c_3.conda
sha256: 6d9ea2f731e284e9316d95fa61869fe7bbba33df7929f82693c121022810f4ad
md5: a77f85f77be52ff59391544bfe73390a
depends:
- libgcc >=14
- __glibc >=2.17,<3.0.a0
license: MIT
license_family: MIT
purls: []
run_exports:
weak:
- yaml >=0.2.5,<0.3.0a0
size: 85189
timestamp: 1753484064210
- conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda
sha256: 68f0206ca6e98fea941e5717cec780ed2873ffabc0e1ed34428c061e2c6268c7
md5: 4a13eeac0b5c8e5b8ab496e6c4ddd829
depends:
- __glibc >=2.17,<3.0.a0
- libzlib >=1.3.1,<2.0a0
license: BSD-3-Clause
license_family: BSD
purls: []
run_exports:
weak:
- zstd >=1.5.7,<1.6.0a0
size: 601375
timestamp: 1764777111296
- conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.6.17-hbd8a1cb_0.conda
sha256: f8e3c730fa14ee3f170493779f06522c4acf89169f43db4f039727709b6419cf
md5: a9965dd99f683c5f444428f896635716
depends:
- __unix
license: ISC
purls: []
run_exports: {}
size: 128866
timestamp: 1781708962055
- conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda
sha256: ab29d57dc70786c1269633ba3dff20288b81664d3ff8d21af995742e2bb03287
md5: 962b9857ee8e7018c22f2776ffa0b2d7
depends:
- python >=3.9
license: BSD-3-Clause
license_family: BSD
purls:
- pkg:pypi/colorama?source=hash-mapping
run_exports: {}
size: 27011
timestamp: 1733218222191
- conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda
sha256: ee6cf346d017d954255bbcbdb424cddea4d14e4ed7e9813e429db1d795d01144
md5: 8e662bd460bda79b1ea39194e3c4c9ab
depends:
- python >=3.10
- typing_extensions >=4.6.0
license: MIT and PSF-2.0
purls:
- pkg:pypi/exceptiongroup?source=hash-mapping
run_exports: {}
size: 21333
timestamp: 1763918099466
- conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-7.1.0-pyhd8ed1ab_0.conda
sha256: a563a51aa522998172838e867e6dedcf630bc45796e8612f5a1f6d73e9c8125a
md5: 0ba6225c279baf7ea9473a62ea0ec9ae
depends:
- python >=3.10
- zipp >=3.1.0
constrains:
- importlib-resources >=7.1.0,<7.1.1.0a0
license: Apache-2.0
license_family: APACHE
purls:
- pkg:pypi/importlib-resources?source=hash-mapping
run_exports: {}
size: 34809
timestamp: 1776068839274
- conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.3.0-pyhd8ed1ab_0.conda
sha256: e1a9e3b1c8fe62dc3932a616c284b5d8cbe3124bbfbedcf4ce5c828cb166ee19
md5: 9614359868482abba1bd15ce465e3c42
depends:
- python >=3.10
license: MIT
license_family: MIT
purls:
- pkg:pypi/iniconfig?source=hash-mapping
run_exports: {}
size: 13387
timestamp: 1760831448842
- conda: https://conda.anaconda.org/conda-forge/noarch/packaging-26.2-pyhc364b38_0.conda
sha256: 3906abfb6511a3bb309e39b9b1b7bc38f50a723971de2395489fd1f379255890
md5: 4c06a92e74452cfa53623a81592e8934
depends:
- python >=3.8
- python
license: Apache-2.0
license_family: APACHE
purls:
- pkg:pypi/packaging?source=hash-mapping
run_exports: {}
size: 91574
timestamp: 1777103621679
- conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.6.0-pyhf9edf01_1.conda
sha256: e14aafa63efa0528ca99ba568eaf506eb55a0371d12e6250aaaa61718d2eb62e
md5: d7585b6550ad04c8c5e21097ada2888e
depends:
- python >=3.9
- python
license: MIT
license_family: MIT
purls:
- pkg:pypi/pluggy?source=hash-mapping
run_exports: {}
size: 25877
timestamp: 1764896838868
- conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.20.0-pyhd8ed1ab_0.conda
sha256: cf70b2f5ad9ae472b71235e5c8a736c9316df3705746de419b59d442e8348e86
md5: 16c18772b340887160c79a6acc022db0
depends:
- python >=3.10
license: BSD-2-Clause
license_family: BSD
purls:
- pkg:pypi/pygments?source=hash-mapping
run_exports: {}
size: 893031
timestamp: 1774796815820
- conda: https://conda.anaconda.org/conda-forge/noarch/pyparsing-3.3.2-pyhcf101f3_0.conda
sha256: 417fba4783e528ee732afa82999300859b065dc59927344b4859c64aae7182de
md5: 3687cc0b82a8b4c17e1f0eb7e47163d5
depends:
- python >=3.10
- python
license: MIT
license_family: MIT
purls:
- pkg:pypi/pyparsing?source=hash-mapping
run_exports: {}
size: 110893
timestamp: 1769003998136
- conda: https://conda.anaconda.org/conda-forge/noarch/pytest-9.1.1-pyhc364b38_2.conda
sha256: 430051d80765207a7d782b2b188230ba1489d35c6e75fd9903f76cb9fda4af16
md5: 64c98a12c4e23eb238bf66bbecafdf3c
depends:
- colorama
- pygments >=2.7.2
- python >=3.10
- iniconfig >=1.0.1
- packaging >=22
- pluggy >=1.5,<2
- tomli >=1
- exceptiongroup >=1
- python
constrains:
- pytest-faulthandler >=2
license: MIT
license_family: MIT
purls:
- pkg:pypi/pytest?source=compressed-mapping
run_exports: {}
size: 306724
timestamp: 1782127176429
- conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.10-8_cp310.conda
build_number: 8
sha256: 7ad76fa396e4bde336872350124c0819032a9e8a0a40590744ff9527b54351c1
md5: 05e00f3b21e88bb3d658ac700b2ce58c
constrains:
- python 3.10.* *_cpython
license: BSD-3-Clause
license_family: BSD
purls: []
run_exports: {}
size: 6999
timestamp: 1752805924192
- conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-83.0.0-pyh332efcf_0.conda
sha256: 48a9f96016505debadfc67f06de7ac548decbc38d327409b24b0432ef6f16335
md5: 6bf6acbab2499830180ec88c3aff2fa4
depends:
- python >=3.10
license: MIT
license_family: MIT
purls:
- pkg:pypi/setuptools?source=compressed-mapping
run_exports: {}
size: 642081
timestamp: 1783619174976
- conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.4.1-pyhcf101f3_0.conda
sha256: 91cafdb64268e43e0e10d30bd1bef5af392e69f00edd34dfaf909f69ab2da6bd
md5: b5325cf06a000c5b14970462ff5e4d58
depends:
- python >=3.10
- python
license: MIT
license_family: MIT
purls:
- pkg:pypi/tomli?source=hash-mapping
run_exports: {}
size: 21561
timestamp: 1774492402955
- conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.16.0-pyhcf101f3_0.conda
sha256: 2d888f90af0686044882c74193ec80a90ec1943145d94a7b1b048958acda1848
md5: c70ad746c22219b9700931707482992c
depends:
- python >=3.10
- python
license: PSF-2.0
license_family: PSF
purls:
- pkg:pypi/typing-extensions?source=compressed-mapping
run_exports: {}
size: 52631
timestamp: 1783002732887
- conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2026c-h151e31d_0.conda
sha256: b928c30ddcb0e3f544c6eade8352737e6e610e263276b90232db6a578ef899d8
md5: fcb489df604d100968b737f2cb6076c6
license: LicenseRef-Public-Domain
purls: []
run_exports: {}
size: 118849
timestamp: 1784250406640
- conda: https://conda.anaconda.org/conda-forge/noarch/zipp-4.1.0-pyhcf101f3_0.conda
sha256: 210bd31c22bb88f5e2a167df24c95bb5f152b2ada7502f9b8c49d1f5366db423
md5: ba3dcdc8584155c97c648ae9c044b7a3
depends:
- python >=3.10
- python
license: MIT
license_family: MIT
purls:
- pkg:pypi/zipp?source=compressed-mapping
run_exports: {}
size: 24190
timestamp: 1779159948016
- pypi: ../../../../packages/agebd
name: agebd
requires_dist:
- h5py>=3.16.0
- pyepics>=3.5.10
- typer>=0.23.2
requires_python: ==3.10.*
- pypi: ./
name: agebd-master
requires_dist:
- agebd @ ../../../../packages/agebd
- pyepics>=3.5.8
- pyyaml>=6.0.3
requires_python: ==3.10.*
- pypi: https://files.pythonhosted.org/packages/1e/d3/26bf1008eb3d2daa8ef4cacc7f3bfdc11818d111f7e2d0201bc6e3b49d45/annotated_doc-0.0.4-py3-none-any.whl
name: annotated-doc
version: 0.0.4
sha256: 571ac1dc6991c450b25a9c2d84a3705e2ae7a53467b5d111c24fa8baabbed320
requires_python: '>=3.8'
- pypi: https://files.pythonhosted.org/packages/40/03/26a383c9e58c213199d1aad1c3d353cfc22d4444ec6d2c0bf8ad02523843/typer-0.27.0-py3-none-any.whl
name: typer
version: 0.27.0
sha256: 6f4b27631e47f077871b7dc30e933ec0131c1390fbe0e387ea5574b5bac9ccf1
requires_dist:
- shellingham>=1.3.0
- rich>=13.8.0
- annotated-doc>=0.0.2
- colorama ; sys_platform == 'win32'
requires_python: '>=3.10'
- pypi: https://files.pythonhosted.org/packages/82/3b/64d4899d73f91ba49a8c18a8ff3f0ea8f1c1d75481760df8c68ef5235bf5/rich-15.0.0-py3-none-any.whl
name: rich
version: 15.0.0
sha256: 33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb
requires_dist:
- ipywidgets>=7.5.1,<9 ; extra == 'jupyter'
- markdown-it-py>=2.2.0
- pygments>=2.13.0,<3.0.0
requires_python: '>=3.9.0'
- pypi: https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl
name: mdurl
version: 0.1.2
sha256: 84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8
requires_python: '>=3.7'
- pypi: https://files.pythonhosted.org/packages/b3/81/4da04ced5a082363ecfa159c010d200ecbd959ae410c10c0264a38cac0f5/markdown_it_py-4.2.0-py3-none-any.whl
name: markdown-it-py
version: 4.2.0
sha256: 9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a
requires_dist:
- mdurl~=0.1
- psutil ; extra == 'benchmarking'
- pytest ; extra == 'benchmarking'
- pytest-benchmark ; extra == 'benchmarking'
- commonmark~=0.9 ; extra == 'compare'
- markdown~=3.4 ; extra == 'compare'
- mistletoe~=1.0 ; extra == 'compare'
- mistune~=3.0 ; extra == 'compare'
- panflute~=2.3 ; extra == 'compare'
- markdown-it-pyrs ; extra == 'compare'
- linkify-it-py>=1,<3 ; extra == 'linkify'
- mdit-py-plugins>=0.5.0 ; extra == 'plugins'
- gprof2dot ; extra == 'profiling'
- mdit-py-plugins>=0.5.0 ; extra == 'rtd'
- myst-parser ; extra == 'rtd'
- pyyaml ; extra == 'rtd'
- sphinx ; extra == 'rtd'
- sphinx-copybutton ; extra == 'rtd'
- sphinx-design ; extra == 'rtd'
- sphinx-book-theme~=1.0 ; extra == 'rtd'
- jupyter-sphinx ; extra == 'rtd'
- ipykernel ; extra == 'rtd'
- coverage ; extra == 'testing'
- pytest ; extra == 'testing'
- pytest-cov ; extra == 'testing'
- pytest-regressions ; extra == 'testing'
- pytest-timeout ; extra == 'testing'
- requests ; extra == 'testing'
requires_python: '>=3.10'
- pypi: https://files.pythonhosted.org/packages/cb/92/a8851d936547efe30cc0ce5245feac01f3ec6171f7899bc3f775c72030b3/h5py-3.16.0-cp310-cp310-manylinux_2_28_x86_64.whl
name: h5py
version: 3.16.0
sha256: 8975273c2c5921c25700193b408e28d6bdd0111c37468b2d4e25dcec4cd1d84d
requires_dist:
- numpy>=1.21.2
requires_python: '>=3.10'
- pypi: https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl
name: shellingham
version: 1.5.4
sha256: 7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686
requires_python: '>=3.7'
- pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl
name: pygments
version: 2.20.0
sha256: 81a9e26dd42fd28a23a2d169d86d7ac03b46e2f8b59ed4698fb4785f946d0176
requires_dist:
- colorama>=0.4.6 ; extra == 'windows-terminal'
requires_python: '>=3.9'
@@ -46,3 +46,32 @@ extend-select = ["I"]
[tool.ruff.lint.isort]
known-first-party = ["agebd"]
### PIXI ###
[tool.pixi.workspace]
name = "agebd-master"
channels = ["conda-forge"]
platforms = ["linux-64"]
version = "0.1.0"
[tool.pixi.tasks]
[tool.pixi.dependencies]
python = "3.10.*"
pyepics = ">=3.5.10,<4"
pyyaml = ">=6.0.3,<7"
[tool.pixi.pypi-dependencies]
agebd-master = { path = ".", editable = true }
[tool.pixi.feature.dev.dependencies]
ruff = "*"
pytest = ">=9.1.1,<10"
[tool.pixi.feature.dev.tasks]
test = "pytest"
format = "ruff format"
[tool.pixi.environments]
dev = ["dev"]
+1 -1
View File
@@ -6,7 +6,7 @@ requires-python = "==3.10.*"
dependencies = [
"agebd",
"pyepics>=3.5.8",
"numpy>=2.0.2",
"numpy>=1.22.6,<2.0.0",
"scipy>=1.13.1",
]
@@ -7,7 +7,7 @@ dependencies = [
"agebd",
"pyepics>=3.5.8",
"matplotlib>=3.10.9",
"numpy>=2.0.2",
"numpy>=1.22.6,<2.0.0",
"urllib3>=2.7.0",
]
@@ -6,7 +6,7 @@ requires-python = "==3.10.*"
dependencies = [
"agebd",
"pyepics>=3.5.8",
"numpy>=2.2.6",
"numpy>=1.22.6,<2.0.0",
]
[dependency-groups]
+1 -1
View File
@@ -6,7 +6,7 @@ requires-python = "==3.10.*"
dependencies = [
"agebd",
"pyepics>=3.5.8",
"numpy>=2.0.2",
"numpy>=1.22.6,<2.0.0",
]
[dependency-groups]
+1 -1
View File
@@ -6,7 +6,7 @@ requires-python = "==3.10.*"
dependencies = [
"agebd",
"pyepics>=3.5.8",
"numpy>=2.2.6",
"numpy>=1.22.6,<2.0.0",
]
[dependency-groups]
+1 -1
View File
@@ -6,7 +6,7 @@ requires-python = "==3.10.*"
dependencies = [
"agebd",
"pyepics>=3.5.8",
"numpy>=2.2.6",
"numpy>=1.22.6,<2.0.0",
]
[dependency-groups]
@@ -6,7 +6,7 @@ requires-python = "==3.10.*"
dependencies = [
"agebd",
"pyepics>=3.5.8",
"numpy>=2.2.6",
"numpy>=1.22.6,<2.0.0",
]
[dependency-groups]
+2 -2
View File
@@ -7,9 +7,9 @@ dependencies = [
"agebd",
"pyepics>=3.5.8",
"nafflib>=2.1.1",
"numpy>=2.2.6",
"numpy>=1.22.6,<2.0.0",
"scikit-learn>=1.7.2",
"scipy>=1.15.3",
"scipy>=1.15.2",
]
[dependency-groups]
+3
View File
@@ -8,12 +8,14 @@ version = "0.1.0"
source = { editable = "../../../../packages/agebd" }
dependencies = [
{ name = "h5py" },
{ name = "pyepics" },
{ name = "typer" },
]
[package.metadata]
requires-dist = [
{ name = "h5py", specifier = ">=3.16.0" },
{ name = "pyepics", specifier = ">=3.5.10" },
{ name = "typer", specifier = ">=0.23.2" },
]
@@ -22,6 +24,7 @@ dev = [
{ name = "pyright", specifier = ">=1.1.410" },
{ name = "pytest", specifier = ">=8.4.2" },
{ name = "ruff", specifier = ">=0.15.19" },
{ name = "twine", specifier = ">=6.2.0" },
]
[[package]]
+2 -2
View File
@@ -6,8 +6,8 @@ requires-python = "==3.10.*"
dependencies = [
"agebd",
"pyepics>=3.5.8",
"numpy>=2.2.6",
"scipy>=1.15.3",
"numpy>=1.22.6,<2.0.0",
"scipy>=1.15.2",
]
[dependency-groups]
+1 -1
View File
@@ -6,7 +6,7 @@ requires-python = "==3.10.*"
dependencies = [
"agebd",
"pyepics>=3.5.8",
"numpy>=2.2.6",
"numpy>=1.22.6,<2.0.0",
]
[dependency-groups]
+1 -1
View File
@@ -6,7 +6,7 @@ requires-python = "==3.10.*"
dependencies = [
"agebd",
"pyepics>=3.5.8",
"numpy>=2.2.6",
"numpy>=1.22.6,<2.0.0",
]
[dependency-groups]