Skip to content

fermi-ad/acsys-python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ACSys Python DPM Client

acsys is the interface to Fermilab data acquisition and control.

EXAMPLES: If you are looking for examples to dive in on, please see the wiki examples.

Installing

acsys is available via a Fermi hosted pip repository.

python3 -m pip install acsys --extra-index-url https://www-bd.fnal.gov/pip3

The command above will get you up and going quickly. See usage examples in the wiki.

If you need to perform settings, you will need the optional authentication library, gssapi.

python3 -m pip install "acsys[settings]" --extra-index-url https://www-bd.fnal.gov/pip3

Note: This package only authenticates you as a user. There are other requirements to be able to set devices. Please make a request to the Controls Department for setting access.

Building and Distributing

All dependencies are managed via pyproject.toml.

Start by creating and activating a virtual environment.

python3 -m venv venv
source ./venv/bin/activate

To build the project, ensure you have your development dependencies installed.

pip install -e ".[dev]"

This command installs your project in an editable mode along with all its development dependencies, like build and wheel.

Make sure pyproject.toml has the correct version number.

make

will create a source distribution at ./dist.

This should only be used for development.

make all

The above will generate "built distributions" as well as the source distributions from make.

Releasing a New Version

Set the new version

Ensure all your changes are committed to Git. Create a new Git tag for the version you are releasing. The tag name should follow the semver format vX.Y.Z.

git tag vVID

Deploy the distributions

Run the deploy make target to build the package and push it to the pip server. This process will automatically use the new version from your Git tag.

make deploy

Push the tags

Finally, push the new tag to the remote repository. This makes the new version official in your project's history.

git push --tags

Development

To get started with development, simply follow the "Building and Distributing" section. The pip install -e ".[dev]" command will set up your virtual environment so that any changes you make to the source code will be immediately reflected in your venv.

About

Python module to access the Fermilab Control System

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •