Recent Releases of https://github.com/cnpem/sophys-cli-core

https://github.com/cnpem/sophys-cli-core - 1.4.0

New features

  • (82a929c) Allow ignoring command blacklist in 'cs' magic
  • (7cf0d66) Add a way to override the 'D' variable rendering on extensions
  • (62929b6, c833c74) Add '--profile' option to facilitate performance debugging
  • (88bb648) Add pausing indicator in 'pause' magic
  • (9fb98df) Add environment variable for kafka topic definition

Bug Fixes

  • (0ce2af7) Pass bootstrapservers to createkafka_monitor in local mode
  • (a9a8ef2) Don't swallow exceptions in createkafkamonitor in local mode
  • (ffbfdf7) Apply extra arguments as separate items in KBL magic
  • (948c9ef) Remove available modules to banner in local mode
  • (e3369a3, 730ceb1) Properly support Python 3.11
  • (7d5d426) Actually check if remote mode is available

Code changes

  • (0ffafaa) Switch preexecution to an extension loading
  • (b54a253) Make 'pre_execution' an importable module
  • (421e512) Change ENVVARS helper to directly get variable values
  • (c68d4fe) Replace sophys-xxx import with env. variables at pre execution
  • (10abf16) Move simple Bluesky plan magics definitions to separate file

Documentation

  • (9449d67) Add docstrings to extension setup helper functions
  • (5d2581d) Add docstrings for PlanWhitelist and PlanInformation
  • (d83a396) Add note about additional keys in extra_props for PlanInformation

CI/CD

  • (e795099) Add matrix for testing in different Python versions
  • (cfd5306) Update setup-python version to latest

Testing

  • (fee4611) Add test mode of operation
  • (fa9f340) Add tests for reload_devices magic
  • (42da864) Expose IPython / HTTP test utilities to other packages
  • (678f686) Add simple tests for some base_configuration functions
  • (4ff1755) Add tests for environment variable functionality
  • (de910ae) Use exec instead of locals() manipulation in magic calls
  • (9bf9b9e) Improve execution time of 'skip' extension

- Python
Published by flowln about 1 year ago

https://github.com/cnpem/sophys-cli-core - 1.3.1

This is just to fix a mistake I made, unknowingly disabling the kafka monitor in the remote setting.

- Python
Published by flowln over 1 year ago

https://github.com/cnpem/sophys-cli-core - 1.3.0

New features

Improvements

  • (263e1c5) Allow specifying kbl extra arguments through a static property.
  • (93bd046) Run the IPython kernel with a non-default profile. This avoids "corrupting" the IPython history with unrelated commands.

Bug Fixes

  • (b4fbcf3) Make shutdown logic in RemoteSessionHandler more robust.
  • (0f44838) Wait until thread is ready to read new messages before yielding control.
  • (f8d2bd8) Pass reload parameter on in typed RM.status.
  • (70f8f12) Maintain command list spacing when blacklisting whole color sections.
  • (856cd51) Skip line skip logic when nothing is being rendered.

CI/CD

  • (2b79e32) Add testing CI workflow on pull requests to main.
  • (49dc6dd) Run testing CI on pushes to main.

Code changes

  • (83a8a1e) Add basic tests for DataSources.
  • (c01eea3) Add tests for http utilities.
  • (ae9ece7) Separate IPython kernel creation from argument parsing.
  • (fb8fb6f) Move pre_execution logic to separate functions.
  • (34981a7) Import IPython instead of copying get_ipython to module scope.
  • (e6564ad) Make getmanager and gethistory methods static.
  • (1c14e47) Add simple http magics tests.
  • (dd24293) Add tests for query_history magic.
  • (841b728) Improve performance of 'skip' extension kernel loading.

Full Changelog: https://github.com/cnpem/sophys-cli-core/compare/1.2.0...1.3.0

- Python
Published by flowln over 1 year ago

https://github.com/cnpem/sophys-cli-core - 1.2.0

New features: - (902016d) Add a way to disable authentication when interacting with httpserver. - (d8cfc54) Add a new metadata key (MAIN_COUNTER) for specifying the main detector of a scan. This can be used by plans or downstream visualizers and clients to change their behavior accordingly.

Improvements: - (55671bd) Block and print a descriptive error message when trying to execute a plan with an invalid device name on non-local mode. This checks the internal devices list retrieved from httpserver against the given name. - (a30a6ba) Reload both devices and plans from httpserver when performing an environment reload, since these are usually connected logically. - (5228017) Print an error message when failing to request the status of httpserver, instead of showing a full traceback.

Bug fixes: - (24294e6) Block using --local without --test. Now, using --local implies --test, so there's no way to use local mode without test mode too, since it doesn't seem to make much sense otherwise. - (baeabbb) Maintain the Kafka bootstrap IP in local mode, only changing the topic name, since we usually don't have a locally running Kafka server. - (8f033af) Remove beamline-specific code in pre-execution. This was a leftover from the split between core and extensions repositories. - (4037522) Show device names in local mode the same way we do in remote mode, without accessing the device objects.

Code changes: - (55631a2) Create an REManager class with typehints to improve code completions in LSPs.

Full Changelog: https://github.com/cnpem/sophys-cli-core/compare/1.1.0...1.2.0

- Python
Published by flowln over 1 year ago

https://github.com/cnpem/sophys-cli-core - Release 1.1.0

This is the first release with a changelog, so forgive me for the lack of clearness.

This release, compared to version 1.0.0, sees the following changes:

  • Improve testing mode usage, making it totally de-coupled from the actual production running conditions.
  • Extend customization of plan execution to enable extension-specific exception handling mechanisms.
  • Improve Ctrl+C handler inner workings, particularly in the context of wait_for_idle.
  • Improve *args generic handling logic for plan magics, eliminating some false positive matches.
  • Fix BEC printing inside the query_history pager context (ignore new events, a better approach in the future would be to cache them to display after exiting the pager).

- Python
Published by flowln over 1 year ago