Concert

Latest version: v0.31.0

Safety actively analyzes 630094 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 3

0.7

-----------

Released on February 17th 2014.

Improvements
~~~~~~~~~~~~

- Added beam finding and centering
- ``threaded`` decorator uses daemonic threads
- Added ``downsize``, ``queue``, ``stall``, ``PickSlice`` to coroutine
filters
- Added reconstruction of the whole volume using UFO Framework
- Documentation was restructured significantly (split to usage/API)
- Added tomography helper functions
- Crio motor support continuous rotation
- ``PyplotViewer`` can be configured for faster drawing capabilities
using ``blit``
- Added dummy ``Scales``
- Tests cover all devices (at least try to instantiate them)
- Added pixel units, ``q.pixel`` (shorthand ``q.px``)
- Changed prompt color to terminal default
- Added ``Positioner`` device
- Added ``Detector`` device


API Breaks
~~~~~~~~~~

- Finite state machine was reworked significantly
- Motors were cleaned from mixins and hard-limit was incorporated into them
- recording() context was added to cameras
- ``backprojector`` coroutine filter was significantly simplified
- ``average_images`` arguments changed
- Experiments were completely restructured based on usage of ``Acquisition``
- ``PyplotViewer`` plotting signature changed
- Remove leftover beam line specific shutters
- Many getters/setters were replaced by properties, especially in the
``concert.ext.viewers`` module
- Appropriate ``get_`` ``set_`` functions were replaced by non-prefixed ones


Fixes
~~~~~

- 118, 128, 132, 133, 139, 148, 149, 150, 157, 159, 165, 169,
173, 174, 175, 176, 178, 179, 181, 184, 189, 192

0.6

-----------

Released on December 10th 2013.

Improvements
~~~~~~~~~~~~

- Concert now comes with an experimental gevent backend that will eventually
replace the thread pool executor based asynchronous infrastructure.
- Each device can now have an explicit ``State`` object and ``transition``
applied to function which will change the state depending on the successful
outcome of the decorated function.
- 1D data plotting is implemented as ``PyplotCurveViewer``.
- The ``concert`` binary now knows the ``cp`` command to make a copy of a
session. The ``start`` command can receive a log level and with the
``--non-interactive`` option run a session as a script.
- Devices and parameters can store their current parameter values with ``stash``
and restore them later with ``restore``.
- Changed the IPython prompt.
- Added the NewPort 74000 Monochromator.
- Provide a ``require`` function that will scream when the required Concert
version is not installed.


API breaks
~~~~~~~~~~

- ``Motor`` is renamed to ``LinearMotor`` for all devices.
- ``Parameter`` objects are now declared at class-level instead of at run-time
within the class constructor.
- ``concert.storage.create_folder`` renamed to
``concert.storage.create_directory``
- ``concert.ext.viewers.PyplotViewer`` substituted by 1D and 2D viewers
``concert.ext.viewers.PyplotCurveViewer`` and
``concert.ext.viewers.PyplotImageViewer``
- To wait on a Future you have to call ``.join`` instead of ``.wait``.
- Coroutine functions and decorators moved to ``concert.coroutines[.base]``,
asynchronous functions and decorators moved to ``concert.async``.
- Removed ``is_async``
- Configuration moved to ``concert.config``
- Method names of ``concert.ext.ufo.InjectProcess`` changed.


Fixes
~~~~~

- 168, 166, 152, 147, 158, 150, 157, 95, 138
- Many more concerning the camera implementation.

0.5

-----------

Released on October 31st 2013.

Improvements
~~~~~~~~~~~~

- Python 3 is supported and can be tested with tox.
- Most imports are delayed in the concert binary to reduce startup time.
- We do not depend on Logbook anymore but use Python's logging module.
- Experiments can now be modelled with the ``concert.experiments`` module.
- ``concert.ext.viewers.PyplotViewer`` can be used to show 2D image data.
- Spyder command plugin is now available. That means if you have Spyder
installed you can control Concert from an IDE instead of from IPython.
- Tests were restructured for easier access.

API breaks
~~~~~~~~~~

- ``concert.connections`` package moved to ``concert.networking`` module
- Renamed ``concert.helpers.multicast`` to ``broadcast`` to reflect its true
purpose.
- Session helpers such as ``dstate`` and ``ddoc`` have been moved to
``concert.session.utils``.
- Frames grabbed with the libuca devices will return a copy instead of the same
buffer.

Fixes:

- 106, 113 and many more which did not deserve an issue number.

0.4

-----------

Released on October 7th 2013.

Improvements
~~~~~~~~~~~~

- Tests and rotation axis alignment is faster now.
- Soft limits were added to the parameter (accessible with ``.lower`` and
``.upper``)
- Cleaner inet connection implemention.
- Base pumps and scales were added.
- Concert no longer depends on testfixtures for running tests.
- Started work on flexible data processing schemes for light computation based
on a coroutine approach.
- Integrated tifffile.py in case libtiff is not available.
- ``concert mv`` renames sessions.
- ``threaded`` decorator can be used to run a function in its own thread.
- ``Scanner`` parameters can now be set in the constructor.
- Parameters can now be locked independently of the parent device. However, if
done so, no one else can lock the device.
- Add ``code_of`` function to show the source of a function.
- Introduced coroutine based data processing facility.

API breaks
~~~~~~~~~~

- Renamed ``to_steps`` to ``to_device`` and do not drop units
- ``camera.grab`` returns `None` if no data is available
- ``uca.Camera`` exposes the wrapped GObject camera as an attribute called
``uca`` instead of ``camera``.
- ``minimum``, ``maximum`` and ``intervals`` are now longer implemented as
``Parameter`` objects of ``Scanner`` but simple attributes.
- ``asynchronous`` module content has been moved to ``helpers``
- Removed ``Scanner`` class in favor of ``scan`` function.

Fixes:

- Integration with all IPython releases works again.
- runtests.py returns 0 on success.
- 19, 55, 71, 78, 79

0.3

-----------

Released on August 19th 2013.

*Note*: This release breaks Python 2.6 compatibility!

- ``Calibration`` classes moved to ``concert.devices.calibration``
- Remove ``concert.processes.focus`` and reorganize ``concert.optimization``
package, the focusing can be implemented by Maximizer with a proper feedback.
- Add ``--repo`` parameter to the ``fetch`` command. With this flag, session
files version controlled with Git can be imported.
- Use pint instead of quantities. pint is faster for smaller Numpy arrays,
stricter and does not depend on Numpy.
- Things can now run serialized if ``concert.asynchronous.DISABLE`` is set to
``True``.
- Restructured tests into separate directories.
- Fix PDF generation of the docs.
- Fix problem with IPython version >= 0.10.

0.2

-----------

Released on July 14th 2013.

- Move third-party code to ``concert.ext``. For example ``get_tomo_scan_result``
must be imported from ``concert.ext.nexus``.
- Adds ``concert fetch`` to pull session files from remote locations.
- Code cleanup

Page 2 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.