osprey-connectors
Lean control-system and archiver connectors for OSPREY: EPICS, DOOCS, and mock/virtual-accelerator connectors for reading and writing control-system channels, plus matching archiver connectors (EPICS Archiver Appliance, DOOCS local history, MongoDB, mock) for historical data. The package also carries the small set of support modules those connectors depend on — configuration loading, logging setup, the error/exception taxonomy, and the data-driven simulation core used by the mock connectors — without pulling in the rest of the OSPREY framework (agents, capabilities, web UI, etc.).
Install
pip install osprey-connectors
Import map
osprey-framework still imports every one of these from their historical
osprey.* paths. Those old paths are compatibility shims — the real code
now lives under osprey_connectors.*, and new code should import from there
directly.
Old path (osprey.*) |
New path (osprey_connectors.*) |
|---|---|
osprey.connectors |
osprey_connectors |
osprey.connectors.factory |
osprey_connectors.factory |
osprey.connectors.types |
osprey_connectors.types |
osprey.connectors.channel_taxonomy |
osprey_connectors.channel_taxonomy |
osprey.connectors.control_system |
osprey_connectors.control_system |
osprey.connectors.control_system.base |
osprey_connectors.control_system.base |
osprey.connectors.control_system.epics_connector |
osprey_connectors.control_system.epics_connector |
osprey.connectors.control_system.doocs_connector |
osprey_connectors.control_system.doocs_connector |
osprey.connectors.control_system.mock_connector |
osprey_connectors.control_system.mock_connector |
osprey.connectors.control_system.va_connector |
osprey_connectors.control_system.va_connector |
osprey.connectors.control_system.limits_validator |
osprey_connectors.control_system.limits_validator |
osprey.connectors.archiver |
osprey_connectors.archiver |
osprey.connectors.archiver.base |
osprey_connectors.archiver.base |
osprey.connectors.archiver.epics_archiver_connector |
osprey_connectors.archiver.epics_archiver_connector |
osprey.connectors.archiver.doocs_archiver_connector |
osprey_connectors.archiver.doocs_archiver_connector |
osprey.connectors.archiver.mongodb_archiver_connector |
osprey_connectors.archiver.mongodb_archiver_connector |
osprey.connectors.archiver.mock_archiver_connector |
osprey_connectors.archiver.mock_archiver_connector |
osprey.errors |
osprey_connectors.errors |
osprey.utils.config |
osprey_connectors.config |
osprey.utils.logger |
osprey_connectors.logger |
osprey.utils.relative_time |
osprey_connectors.relative_time |
osprey.simulation |
osprey_connectors.simulation |
osprey.simulation.engine |
osprey_connectors.simulation.engine |
osprey.simulation.expressions |
osprey_connectors.simulation.expressions |
osprey.simulation.machine |
osprey_connectors.simulation.machine |
osprey.simulation.series |
osprey_connectors.simulation.series |
Optional runtime dependencies
Only the connectors you actually use need their backing libraries installed;
none of the following are declared as hard dependencies of this package, so
importing osprey_connectors never requires them:
- EPICS Channel Access client libraries —
pyepicsitself is a declared dependency, but it needs a workinglibcaat runtime to talk to real IOCs. Installepicscorelibs(or otherwise make a per-architecturelibcaavailable) if you useEPICSConnectororEPICSArchiverConnectoragainst a live control system;PYEPICS_LIBCAcan also point at one explicitly. pymongo— required byMongoDBArchiverConnector. Install withpip install pymongoif you archive to MongoDB.doocs4py— required byDOOCSConnectorandDOOCSArchiverConnector. Install separately (it is not on PyPI in all environments) if you connect to a DOOCS control system.
Stability
osprey-connectors follows semantic versioning starting at 0.1.0.
The exception taxonomy in osprey_connectors.errors is public API: the class
names ChannelWriteBlockedError, ChannelWriteFailedError, and
ChannelLimitsViolationError, and their reason codes, are load-bearing for
callers that branch on them.
ChannelWriteBlockedError— the write was never attempted (refused before anycaput).reasonis one ofWRITES_DISABLED,LIMITS,VALIDATION_ERROR.ChannelWriteFailedError— the write was attempted but did not verifiably succeed.reasonis one ofCAPUT_FAILED,READBACK_UNVERIFIED.ChannelLimitsViolationError— a channel write violated configured safety limits (range, read-only, step size, or unlisted channel).
Removing or renaming any of these classes or reason codes is a major version bump. Adding new classes or reason codes is a minor version bump.
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 osprey_connectors-0.1.0.tar.gz.
File metadata
- Download URL: osprey_connectors-0.1.0.tar.gz
- Upload date:
- Size: 128.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
35ffca4b259d857c2760629ef1d62cb5755bba149f910bb693427dcbe546ecc7
|
|
| MD5 |
5899be942da9f0cf5a8c4bc42c1c4a85
|
|
| BLAKE2b-256 |
92e8539501627a585a23dc7a1d75e7a289faf46641045b8423feb2130c0d3d66
|
Provenance
The following attestation bundles were made for osprey_connectors-0.1.0.tar.gz:
Publisher:
release.yml on als-apg/osprey
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
osprey_connectors-0.1.0.tar.gz -
Subject digest:
35ffca4b259d857c2760629ef1d62cb5755bba149f910bb693427dcbe546ecc7 - Sigstore transparency entry: 2490694386
- Sigstore integration time:
-
Permalink:
als-apg/osprey@e49ba04de54a9d13395f9cc5e2ea2fadb6719712 -
Branch / Tag:
refs/tags/osprey-connectors-v0.1.0 - Owner: https://github.com/als-apg
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@e49ba04de54a9d13395f9cc5e2ea2fadb6719712 -
Trigger Event:
push
-
Statement type:
File details
Details for the file osprey_connectors-0.1.0-py3-none-any.whl.
File metadata
- Download URL: osprey_connectors-0.1.0-py3-none-any.whl
- Upload date:
- Size: 152.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b024179a9316fbfa2e212613b70735f459171237a7bfba0a9062123dd0e19ee8
|
|
| MD5 |
fca3fb77921d083355a74aa26fdf1479
|
|
| BLAKE2b-256 |
ebcacaeb576e1a58055a089121600e4ae9db4db14266aed877528347c8cfd9cf
|
Provenance
The following attestation bundles were made for osprey_connectors-0.1.0-py3-none-any.whl:
Publisher:
release.yml on als-apg/osprey
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
osprey_connectors-0.1.0-py3-none-any.whl -
Subject digest:
b024179a9316fbfa2e212613b70735f459171237a7bfba0a9062123dd0e19ee8 - Sigstore transparency entry: 2490694453
- Sigstore integration time:
-
Permalink:
als-apg/osprey@e49ba04de54a9d13395f9cc5e2ea2fadb6719712 -
Branch / Tag:
refs/tags/osprey-connectors-v0.1.0 - Owner: https://github.com/als-apg
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@e49ba04de54a9d13395f9cc5e2ea2fadb6719712 -
Trigger Event:
push
-
Statement type: