Skip to content

spc-group/haven

Folders and files

NameName
Last commit message
Last commit date

Latest commit

40c3cf7 · Dec 28, 2024
Oct 25, 2024
Nov 30, 2024
Jul 31, 2024
Dec 28, 2024
Dec 5, 2024
Dec 2, 2022
Sep 4, 2024
Jun 9, 2022
Oct 25, 2024
Nov 27, 2023
Aug 1, 2024
Aug 15, 2024
Dec 19, 2024
Nov 22, 2024
Oct 27, 2024

Repository files navigation

Haven

Build Status Documentation Status Code style: black License

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/*