Skip to main content

Library for writing services that behave as SMOK devices

Project description

SMOK

PyPI PyPI version PyPI Documentation Status Maintainability Test Coverage Wheel

smok is a definitive library to write programs that behave as SMOK devices. It is principally a consumer of the SMOK API.

Change log

v0.8

  • patched raising exceptions from the API on staging environment
  • certs will be used in conjunction with HTTPS only in production
  • removed debug logging before data sync
  • no API call will be dispatched if there's no data to sync
  • adjusted macro update interval
  • removed extra logging from smok.threads.executor

v0.7

  • add support for reparse pathpoints
  • add support for getting archive data from sensors
  • fixed a bug with downloading BAOBS
  • fixed a bug with reading sensors via on_read
  • fixed a bug with reporting exceptions
  • BAOBs will be marked as downloaded after 3 attempts were made
  • fixed different exception that OperationFailedError raised during a read to be logged

v0.6

  • add BAOBs
  • Sensor class is now eq-able and hashable
  • added option to disable pathpoints and predicates
  • added archiving data extra DB

v0.5

  • added automatic log compression
  • superficial print() removed
  • added sensor database
  • increased the startup delay to begin communication by 5 seconds to 10 seconds
    • this delay is now programmable
  • fixed a bug with updating metadata
  • removed a debug log upon syncing pathpoints

v0.4

  • fixed a bug where LogPublisherThread would throw during shutdown
  • API will return a ResponseError if something fails
  • fixed a bug where log records sent to the server were not formatted correctly
  • logging was adjusted
  • when formatting the log record fails, it's message will be appended along with it's args
  • fixed a critical bug with storing pathpoint values
  • fixed a bug with executor not recognizing the default execute_a_section
  • fixed a bug wherein timestamps were written 1000 times larger than necessary
  • pathpoints will be uploaded as soon as there's new data

v0.3

  • added SMOKDevice._execute_message_order
  • log publisher has now a timeout
  • clarified Pathpoint.get_archive
  • improving handling error messages from the API

v0.2

  • renamed from smok-client to smok

v0.0.11

  • fixed closing Events
  • added pickling Event and Macro
  • on_read Future can now return None

v0.0.10

  • added Pathpoint.get_archive
  • definitively removed set metadata
  • added custom SMOKDevice.execute_section

v0.0.9

  • added PicklingMetadataDatabase
  • added SMOKDevice.sync_sections
  • added SMOKDevice.open_event and SMOKDevice.close_event and SMOKDevice.get_all_open_events

v0.0.8

  • added support for plain metadata

v0.0.7

  • added logging

v0.0.6

  • renamed BaseEventDatabase.get_data_to_sync to BaseEventDatabase.get_events_to_sync

v0.0.5

  • added an option not to start macros and archives
  • added slots to BaseDatabases

v0.0.4

  • added setting and reading linkstate and instrumentation metadata for slave devices
  • added a true macro database

v0.0.3

  • added pluggable pathpoint value databases
  • Section is now a Future
  • bugfix: timestamp from restored data would be needlessly bumped up
  • added option to create Events

Project details


Release history Release notifications | RSS feed

This version

0.8

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

smok-0.8.tar.gz (59.6 kB view details)

Uploaded Source

Built Distributions

smok-0.8-py3.8.egg (74.1 kB view details)

Uploaded Source

smok-0.8-py2.py3-none-any.whl (77.7 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file smok-0.8.tar.gz.

File metadata

  • Download URL: smok-0.8.tar.gz
  • Upload date:
  • Size: 59.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.44.1 CPython/3.8.0

File hashes

Hashes for smok-0.8.tar.gz
Algorithm Hash digest
SHA256 0347764b93dfb6f2549575dddc277fcbc6b977aae664075bdeb29628f2e16a41
MD5 0f51cee8c0b64b4ebb5641e065aec8b7
BLAKE2b-256 25ba315ea1f2f9ddc32328e8ca5773975235ed5227fa2375e73c535505455962

See more details on using hashes here.

File details

Details for the file smok-0.8-py3.8.egg.

File metadata

  • Download URL: smok-0.8-py3.8.egg
  • Upload date:
  • Size: 74.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.44.1 CPython/3.8.0

File hashes

Hashes for smok-0.8-py3.8.egg
Algorithm Hash digest
SHA256 88e0e46c21b41752e4149bb0897ddc9851cacd793fa5d9531e7c90c772edc7e6
MD5 6c6f8fd41d91b45ee4fab505e350ff68
BLAKE2b-256 ad0aed15f091dae7a6faffb472420c5a02e13d1df764a3bff360b6425a38ec91

See more details on using hashes here.

File details

Details for the file smok-0.8-py2.py3-none-any.whl.

File metadata

  • Download URL: smok-0.8-py2.py3-none-any.whl
  • Upload date:
  • Size: 77.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.44.1 CPython/3.8.0

File hashes

Hashes for smok-0.8-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 31dc16c5cf8c34672038ee093c4226b6194441343cccc0043fc2ea38f1a17768
MD5 924f475e1856e0c949671edf72b163ed
BLAKE2b-256 70cfc7c0d85bd8e3b09689d706b81777721be3b7a06b713408389c22bd170994

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page