Haven
Bluesky tools for beamlines managed by the spectroscopy group.
"Don't fly in anything with a Capissen 38 engine, they fall right out of the sky."
Installation
Python Packing Index
Easiest way to install haven is using pip.
$ python -m pip install 'haven-spc'
Development (Conda)
haven can also use mamba for dependency management, and setuptools for installation and development.
First, download the package from github:
$ git clone https://github.com/spc-group/haven.git
$ cd haven
Then create the conda environment with mamba:
$ mamba env create -f environment.yml -n haven
lastly install the package, in developer mode:
$ conda activate haven
$ pip install -e ".[dev]"
Usage
The easiest way to start haven is to use IPython's magic run command.
$ ipython
In [1]: %run -m haven.ipython_startup
This will load some common tools, and print some useful information about how to use Haven.
Running Tests
To run tests, run
$ pytest
firefly
User-facing applications for controlling the beamlines managed by the spectroscopy group. Be sure to include the [gui] extras if you plan to use the GUI.
$ python -m pip install 'haven-spc[gui]'
$ firefly
Versioning
Haven/Firefly uses calendar versioning, with short year and short month for the MAJOR and MINOR versions, then a incremental MICRO version. For example, version 2024.7.2 is the 3rd (2) release in July (7) 2023 (23).
Packaging
Python Package Index (PyPI)
To deploy to PyPI:
$ python -m build
$ python -m twine check dist/*
$ python -m twine upload dist/*
Metadata
Release files for haven-spc 2025.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| haven_spc-2025.2.1.tar.gz | 3.4 MB | Without provenance | Details for haven_spc-2025.2.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| haven_spc-2025.2.1-py3-none-any.whl | Python 3 | none | any | Details for haven_spc-2025.2.1-py3-none-any.whl |
Total release size: 6.7 MB
Release files / haven_spc-2025.2.1.tar.gz
| Download URL | haven_spc-2025.2.1.tar.gz |
|---|---|
| Size | 3.4 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3b1888e23543f9106a2202db9bfe48a35d5d7b7a8c4bb57878e686553678962a
|
|
BLAKE2b-256 checksum How to use checksums |
b376892061622da5a998f18af6047410055213dce7f140c13d8f285732938573
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.10.16
|
Release files / haven_spc-2025.2.1-py3-none-any.whl
| Download URL | haven_spc-2025.2.1-py3-none-any.whl |
|---|---|
| Size | 3.4 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d1baa7df999a4be39568f3900be7328dd66e114a9621f69340cdc86da4a98c7f
|
|
BLAKE2b-256 checksum How to use checksums |
f5ebc97912fa641b7fc297a24d56dd2297ee898ac09848ff64b1834db7273903
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.10.16
|
Security for haven-spc 2025.2.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.