Skip to content

Releases: pcdshub/hutch-python

v1.18.2 (2023-04-11)

11 Apr 18:16
1aee4e0

Choose a tag to compare

Maintenance

  • Fix an issue where the test suite would not run with the latest
    lightpath. This was a test-suite only bug, not a runtime
    function bug.
  • Fix an issue where pypi/conda upload builds would not have
    proper authentication.

Contributors

  • zllentz

v1.18.1 (2023-04-04)

04 Apr 22:32
7917557

Choose a tag to compare

Bugfixes

  • Fix an edge case where all hutch devices may be skipped in the load
    if all of them are missing from lightpath.

Maintenance

  • hutch-python no longer uses Travis CI and has migrated to GitHub Actions for
    continuous integration, testing, and documentation deployment.
  • hutch-python has been migrated to use setuptools-scm, replacing versioneer, as its
    version-string management tool of choice.
  • hutch-python has been migrated to use the modern pyproject.toml, replacing
    setup.py and related files.
  • Older language features and syntax found in the repository have been updated
    to Python 3.9+ standards by way of pyupgrade.
  • Sphinx 6.0 is now supported for documentation building.
    docs-versions-menu replaces doctr-versions-menu and doctr usage
    for documentation deployment on GitHub Actions. The deployment key is now no
    longer required.
  • pyupgrade was used to update annotations, and pycln was used to clean up
    imports.

Contributors

v1.18.0 (2022-10-25)

26 Oct 23:24
b06c514

Choose a tag to compare

Features

  • Updates database loading to utilize updated lightpath (v1.0.0)
    for loading devices. This makes the newer, reworked version of
    lightpath available in the session instead of the old version.

Maintenance

  • Fix issues with running tests offline on LCLS servers.

Contributors

  • tangkong
  • zllentz

Full Changelog: v1.17.0...v1.18.0

v1.17.0 (2022-07-27)

27 Jul 23:36
4482196

Choose a tag to compare

Features

  • In the facility logger, show the source of the exception in the facility
    log message summary. This will make it easier to understand the cause of
    uncaught exceptions that get sent to the facility logger.

Contributors

v1.16.0 (2022-06-03)

03 Jun 20:09
2234f40

Choose a tag to compare

Features

  • Add the obj_config key to the conf.yml configuration file. This allows the user to pass in the path to a file that contains object reconfiguration information. Currently, tab completion whitelists/blacklists and ophyd component kind configuration are supported.
  • Switch the best effort callback instance bec to use the BECOptionsPerRun callback from nabs instead of the previous BestEffortCallback from bluesky. This new class is a subclass of BestEffortCallback that allows us to configure its options on a per-scan basis by setting metadata keys. This means we can do things like disabling plots on scans where it makes no sense, and perhaps more features in the future.

Contributors

v1.15.0 (2022-05-02)

02 May 17:58
960bc9d

Choose a tag to compare

Features

  • Add automatic ELOG post configuration to the run engine.
  • Add a much more helpful startup banner that calls out specific
    helpful objects in the namespace.

Fixes

  • Make the dev package identifier very robust.

Maintenance

  • Configure and satisfy pre-commit checks.
  • Rework and clean up the post-IPython initialization.

Contributors

v1.14.0 (2022-03-31)

01 Apr 00:05
5f77e01

Choose a tag to compare

Features

  • Ctrl+C now aborts the current run, returning the RunEngine to a
    ready / idle state. The old pause functionality has been moved to
    Ctrl+\.
  • Include per-device load times for devices loaded from happi.
  • Load a run-engine wrapped namespace (lowercase re) as a replacement
    for the proliferation of roll-your-own wrappers, and also add wrapped
    daq scan functions to the daq object.
  • Add plan wrappers to all plans to make it clear which are plans and
    which are functions.
  • Show the environment information at startup so the user knows what
    version of the software they are running.

Contributors

v1.13.2 (2022-02-11)

11 Feb 19:30
7f55e3d

Choose a tag to compare

Fixes and Maintenance

Configure IPython to disable black input reformatting,for three reasons:

  1. Throws errors in our terminal after the first input
  2. Conflicts with advice in the black github issues that assert that black is not ready to be used as an import.
  3. I don't think it's a good fit for the scientific computing and expect that it will be annoying in practice.

Contributors

  • zllentz

v1.13.1 (2022-02-07)

07 Feb 22:59
f390d35

Choose a tag to compare

Fixes and Maintenance

  • Noisy logger detection is now configured but disabled by default.
  • Noisy logger detection is split between the file and the console.
  • Allow both QtAgg and Qt5Agg as valid matplolib backends for the loaded
    environment.
  • Include daq_type and daq_host in the list of valid keys for the
    purpose of warning the user about a malformed config. These have been
    valid, but produce an incorrect warning.
  • Expand the default LCLS2 DAQ timeout from 1 second to 10 seconds to fix
    an issue where we would time out on expected long operations.

Contributors

v1.13.0 (2021-11-10)

10 Nov 19:12
0fbbc8a

Choose a tag to compare

Features

  • Noisy loggers will automatically be filtered based on message rate metrics
    as to not disturb the user.
  • Warnings will be redirected to the logging stream, making them show up
    in the log files.
  • Warnings will only be shown once each per session per warning source,
    rather than after every IPython line, via demoting them to DEBUG level
    in the console, as to not disturb the user.
  • Callback exception log messages will be demoted to DEBUG level in the
    console as to not disturb the user.

Fixes and Maintenance

  • Add documentation about the log namespace.
  • Fix an issue where certain helpful namespaces inside of helpful namespaces
    in specific situations would not render properly.
  • Fix various issues with the CI and move it to Python 3.9 only.
  • Remove no longer needed inflection dependency