Skip to content
This repository has been archived by the owner on Nov 3, 2021. It is now read-only.

Commit

Permalink
Merge pull request #1551 from sardana-org/release-Jan21
Browse files Browse the repository at this point in the history
Release 3.1.0 (Jan21)
  • Loading branch information
cpt-majkel committed May 17, 2021
2 parents 32badc0 + 3e89ecb commit 1b7815f
Show file tree
Hide file tree
Showing 113 changed files with 3,587 additions and 862 deletions.
2 changes: 1 addition & 1 deletion .bumpversion.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ commit = True
message = Bump version {current_version} to {new_version}
tag = False
tag_name = {new_version}
current_version = 3.0.3
current_version = 3.1.0
parse = (?P<major>\d+)\.(?P<minor>\d+)\.(?P<patch>\d+)(\-(?P<release>[a-z]+))?
serialize =
{major}.{minor}.{patch}-{release}
Expand Down
23 changes: 23 additions & 0 deletions .github/workflows/tests.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: CI tests

on: [pull_request]

jobs:
tests:
runs-on: ubuntu-latest
container:
image: reszelaz/sardana-test
options: -h sardana-test
steps:
- uses: actions/checkout@v2
- name: Install sardana
run: python3 setup.py install
- name: Start servers
run: |
/usr/bin/supervisord
sleep 10
supervisorctl start Pool
supervisorctl start MacroServer
- name: Run tests
run: xvfb-run -s '-screen 0 1920x1080x24' /bin/bash -c "pytest /usr/local/lib/python3.5/dist-packages/sardana-*.egg/sardana"

8 changes: 0 additions & 8 deletions .gitlab-ci-alba.yml

This file was deleted.

16 changes: 14 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ env:
- secure: "p/0UgVZzPKJQqcvQ/97qMgo9kPCE0cZ6vI+308YEJ2o9xj4a3FsfHCZ/vWtjdsrp1sQbtKVDesx+xmK4CLDzQeC2+Xskv8OZDjaG2jYkHcVosZEM3EGW8rLVKzoDWLr6cTy2wexLgjHPCsmrjukPs49/i5p+WU0no64YoLlZdp9TT+gvWSQJLIk6R4eqt4FHMszPybLv0pvb1SEiCzimlX1WM1pBrE0LHgchd2ZBYSUWTTwe+Koi4HCS4Bads8j20K2e3fFKcmR2u9DfmU+7Mf5HRJsj1LYJgBUF76lUG2/fZfpoDe8sWi+eUewTa3zNM4bhRLpV+pmG0ypplM4pIcdvwiHV03nGSGu6XK6OGQ/Mgsw0fmud4JR4f5g9DgEfERlyJKI4A9mPZQ327OmEwOOl33x2AFJAL05Qvm0yXCkf1dwgYXnZl44SQbAczY1NHFL90t6xbHtmTitJrE2Xb+4BLzMe3OOZj6j/0QeiXA4z1FnZr1s8UoAsm68iW194IuFg1RRG9FTISFWaBew5wzwvAJak0DxkpG0k43VkHiVC7sPHqr5CxXMXO/MuaptK2ti6iLK9xBAEUpO9HluOkeJq5WDIIxBiBS9tPi0i3vIpq87RjHkdw5n7pdIqnuJ1nXUjpWsuUyV3fLkY12fFxSbZgqmNhIE5/o9c5VP/69Y="

matrix:
- TEST="flake8"
- TEST="testsuite" DOCKER_IMG=reszelaz/sardana-test
# - TEST="flake8"
# - TEST="testsuite" DOCKER_IMG=reszelaz/sardana-test
- TEST="doc" DOCKER_IMG=reszelaz/sardana-test


Expand Down Expand Up @@ -53,3 +53,15 @@ script:
# build docs
- if [ $TEST == "doc" ]; then docker exec -t sardana-test /bin/bash -c "cd /sardana ; sphinx-build -W doc/source/ build/sphinx/html" ; fi
- if [ $TEST == "doc" ]; then docker exec -t sardana-test /bin/bash -c "touch /sardana/build/sphinx/html/.nojekyll" ; fi

deploy:
- provider: pages
local_dir: build/sphinx/html
repo: sardana-org/sardana-doc
skip_cleanup: true
github_token: $GITHUB_TOKEN # Set in the settings page of your repository, as a secure variable
keep_history: true
fqdn: sardana-controls.org # Set custom domain
on:
branch: develop
condition: "$TEST == doc"
102 changes: 101 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,106 @@ All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/).
This file follows the formats and conventions from [keepachangelog.com]

## [3.1.0] 2021-05-17

### Added

* _H5 write session_ to avoid file locking problems and to introduce SWMR mode support (#1124, #1457)
* `h5_start_session`, `h5_start_session_path`, `h5_end_session`, `h5_end_session_path`
and `h5_ls_session` macros
* `h5_write_session` context manager
* `shape` controller axis parameter (plugin), `shape` experimental channel
attribute (kernel) and `Shape` Tango attribute to the experimental channels
(#1296, #1466)
* *scan information* and *scan point* forms to the *showscan online* widget (#1386, #1477, #1479)
* `ScanPlotWidget`, `ScanPlotWindow`, `ScanInfoForm`, `ScanPointForm` and `ScanWindow`
widget classes for easier composition of custom GUIs involving online scan plotting (#1386)
* Handle `pre-move` and `post-move` hooks by: `mv`, `mvr`, `umv`, `umvr`, `br`, `ubr` (#1471, #1480)
* `motors` attribute to these macros which contains list of motors that will be moved
* `sardanacustomettings.PRE_POST_MOVE_HOOK_IN_MV` for disabling these hooks
* Include trigger/gate elements in the per-measurement preparation (#1432, #1443, #1468)
* Add `PrepareOne()` to TriggerGate controller.
* Call TriggerGate controller preparation methods in the _acquision action_
* Add `ScanUser` environment variable (#1355)
* Support `PosFormat` _ViewOption_ in `umv` macro (#176, #1555)
* Allow to programmatically disable *deterministic scan* optimization (#1426, #1427)
* Initial delay in position domain to the synchronization description
in *ct* like continuous scans (#1428)
* Avoid double printing of user units in PMTV: read widget and units widget (#1424)
* Allowed hooks to macro description in Spock (#1523)
* Assert motor sign is -1 or 1 (#1345, #1507)
* _last macro_ concept to the `MacroExecutor` (kernel) #1559
* Documentation on how to write 1D and 2D controllers (#1494)
* Mechanism to call `SardanaDevice.sardana_init_hook()` before entering in the server event loop (#674, #1545)
* Missing documentation of SEP18 concepts to how-to counter/timer controller (#995, #1492)
* Document how to properly deal with exceptions in macros in order to not interfer
with macro stopping/aborting (#1461)
* Documentation on how to start Tango servers on fixed IP - ORBendPoint (#1470)
* Documentation example on how to more efficiently access Tango with PyTango
in macros/controllers (#1456)
* "What's new?" section to docs (#1584)
* More clear installation instructions (#727, #1580)
* napoleon extension to the sphinx configuration (#1533)
* LICENSE file to python source distribution (#1490)

### Changed

* Experimental channel shape is now considered as a result of the configuration
and not part of the measurement group configuration (#1296, #1466)
* Use `LatestDeviceImpl` (currently `Device_5Impl`) for as a base class of the Sardana Tango
devices (#1214, #1301, #1531)
* Read experimental channel's `value` in serial mode to avoid involvement of a worker thread (#1512)
* Bump taurus requirement to >= 4.7.1.1 on Windows (#1583)

### Removed

* `shape` from the measurement group configuration and `expconf` (#1296, #1466)

### Fixed

* Subscribing to Pool's Elements attribute at Sardana server startup (#674, #1545)
* Execute per measurement preparation in `mesh` scan macro (#1437)
* Continously read value references in hardware synchronized acquisition
instead of reading only at the end (#1442, #1448)
* Ensure order of moveables is preserved in Motion object (#1505)
* Avoid problems when defining different, e.g. shape, standard attributes,
e.g. pseudo counter's value, in controllers (#1440, #1446)
* Storing string values in PreScanSnapshot in NXscanH5_FileRecorder (#1486)
* Storing string values as custom data in NXscanH5_FileRecorder (#1485)
* Stopping/aborting grouped movement when backlash correction would be applied (#1421, #1474, #1539)
* Storing string datasets with `h5py` > 3 (#1510)
* Fill parent_macro in case of executing XML hooks e.g. in sequencer (#1497)
* Remove redundant print of positions at the end of umv (#1526)
* Problems with macro id's when `sequencer` executes from _plain text_ files (#1215, #1216)
* `sequencer` loading of plain text sequences in spock syntax with macro functions (#1422)
* MacroServer crash at exit on Windows by avoiding the abort of the already finished macro (#1077, #1559)
* Allow running Spock without Qt bindings (#1462, #1463)
* Spock issues at startup on Windows (#536)
* Fix getting macroserver from remote door in Sardana-Taurus Door extension (#1506)
* MacroServer opening empty environment files used with dumb backend (#1425, #1514, #1517, #1520)
* Respect timer/monitor passed in measurement group configuration (#1516, #1521)
* Setting `Hookable.hooks` to empty list (#1522)
* `Macro.hasResult()` and `Macro.hasParams()` what avoids adding empty _Parameters_ and _Result_
sections in the macro description in Spock (#1524)
* Apply position formatting (configured with `PosFormat` _view option_)
to the limits in the `wm` macro (#1529, #1530)
* Prompt in QtSpock when used with new versions of the `traitlets` package (#1566)
* Use equality instead of identity checks for numbers and strings (#1491)
* Docstring of QtSpockWidget (#1484)
* Recorders tests helpers (#1439)
* Disable flake8 job in travis CI (#1455)
* `createMacro()` and `prepareMacro()` docstring (#1460, #1444)
* Make write of MeasurementGroup (Taurus extension) integration time more robust (#1473)
* String formatting when rising exceptions in pseudomotors (#1469)
* h5storage tests so they pass on Windows and mark the `test_VDS` as xfail (#1562, #1563).
* Recorder test on Windows - use `os.pathsep` as recorder paths separator (#1556)
* Measurement group tango tests - wrong full name composition (#1557)
* Avoid crashes of certain combinations of tests on Windows at process exit (#1558)
* Skip execution of Pool's `DeleteElement` Tango command in tests for Windows in order to
avoid server crashes (#540, #1567)
* Skip QtSpock `test_get_value` test if qtconsole >= 4.4.0 (#1564)
* Increase timeout for QtSpock tests (#1568)

## [3.0.3] 2020-09-18

### Added
Expand Down Expand Up @@ -947,7 +1047,7 @@ Main improvements since sardana 1.5.0 (aka Jan15):


[keepachangelog.com]: http://keepachangelog.com
[Unreleased]: https://github.com/sardana-org/sardana/compare/3.0.3...HEAD
[3.1.0]: https://github.com/sardana-org/sardana/compare/3.1.0...3.0.3
[3.0.3]: https://github.com/sardana-org/sardana/compare/3.0.3...2.8.6
[2.8.6]: https://github.com/sardana-org/sardana/compare/2.8.6...2.8.5
[2.8.5]: https://github.com/sardana-org/sardana/compare/2.8.5...2.8.4
Expand Down
1 change: 1 addition & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,4 @@ exclude .ropeproject
exclude build_*

include CHANGELOG.md
include LICENSE
Binary file added doc/source/_static/showscan-online-infopanels.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions doc/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@ def type_getattr(self, name):
'sardanaextension',
'ipython_console_highlighting',
'spock_console_highlighting',
'sphinxcontrib.napoleon'
]

try:
Expand Down
1 change: 1 addition & 0 deletions doc/source/devel/api/api_controller.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ Controller API reference
* :class:`ZeroDController` - 0D controller API
* :class:`PseudoMotorController` - PseudoMotor controller API
* :class:`PseudoCounterController` - PseudoCounter controller API
* :class:`TriggerGateController` - Trigger/Gate controller API
* :class:`IORegisterController` - IORegister controller API

.. _sardana-controller-data-type:
Expand Down
20 changes: 20 additions & 0 deletions doc/source/devel/api/api_macro.rst
Original file line number Diff line number Diff line change
Expand Up @@ -42,3 +42,23 @@ imacro decorator
:members:
:undoc-members:

StopException
-------------

.. autoclass:: StopException
:members:
:undoc-members:

AbortException
--------------

.. autoclass:: AbortException
:members:
:undoc-members:

InterruptException
------------------

.. autoclass:: InterruptException
:members:
:undoc-members:
1 change: 1 addition & 0 deletions doc/source/devel/api/sardana/macroserver/macros.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
env <macros/env>
expconf <macros/expconf>
expert <macros/expert>
h5storage <macros/h5storage>
hkl <macros/hkl>
ioregister <macros/ioregister>
lists <macros/lists>
Expand Down
6 changes: 6 additions & 0 deletions doc/source/devel/api/sardana/macroserver/macros/h5storage.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
:mod:`~sardana.macroserver.macros.h5storage`
============================================

.. automodule:: sardana.macroserver.macros.h5storage
:imported-members:
:members:
4 changes: 2 additions & 2 deletions doc/source/devel/api/sardana/macroserver/scan.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ GScan
:show-inheritance:
:members:

GScan
-----
Scan
----

.. inheritance-diagram:: SScan
:parts: 1
Expand Down
24 changes: 24 additions & 0 deletions doc/source/devel/api/sardana/pool/controller.rst
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
:columns: 3

* :class:`Readable`
* :class:`Referable`
* :class:`Startable`
* :class:`Stopable`
* :class:`Loadable`
Expand All @@ -44,6 +45,7 @@
* :class:`OneDController`
* :class:`TwoDController`
* :class:`PseudoCounterController`
* :class:`TriggerGateController`
* :class:`IORegisterController`


Expand All @@ -58,6 +60,17 @@ Readable interface
:members:
:undoc-members:

Referable interface
-------------------

.. inheritance-diagram:: Referable
:parts: 1

.. autoclass:: Referable
:show-inheritance:
:members:
:undoc-members:


Startable interface
-------------------
Expand Down Expand Up @@ -216,6 +229,17 @@ Pseudo Counter Controller API
:undoc-members:


Trigger/Gate Controller API
---------------------------

.. inheritance-diagram:: TriggerGateController
:parts: 1

.. autoclass:: TriggerGateController
:show-inheritance:
:members:
:undoc-members:

IO Register Controller API
----------------------------

Expand Down
1 change: 1 addition & 0 deletions doc/source/devel/api/sardana/taurus/core/tango/sardana.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@

pool <sardana/pool>
macroserver <sardana/macroserver>
macro <sardana/macro>

.. autofunction:: registerExtensions
.. autofunction:: unregisterExtensions
37 changes: 37 additions & 0 deletions doc/source/devel/api/sardana/taurus/core/tango/sardana/macro.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
.. currentmodule:: sardana.taurus.core.tango.sardana.macro


:mod:`~sardana.taurus.core.tango.sardana.macro`
===============================================

.. automodule:: sardana.taurus.core.tango.sardana.macro

.. rubric:: Classes

.. hlist::
:columns: 4

* :class:`Macro`
* :class:`MacroInfo`

Macro
-----

.. inheritance-diagram:: Macro
:parts: 1

.. autoclass:: Macro
:show-inheritance:
:members:
:undoc-members:

MacroInfo
---------

.. inheritance-diagram:: MacroInfo
:parts: 1

.. autoclass:: MacroInfo
:show-inheritance:
:members:
:undoc-members:
4 changes: 4 additions & 0 deletions doc/source/devel/guide_migration/2to3.rst
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,10 @@ Sardana v3 was reduced by long time ago deprecated features. You can
find a list of them together with the suggested substitutes in this
`table <https://github.com/sardana-org/sardana/issues/1315>`_.

For migrating the measurement group configurations (non-URI model names) you
can use the `upgrade_mntgrp.py <https://github.com/sardana-org/sardana/blob/develop/scripts/upgrade/upgrade_mntgrp.py>`_
script.




Expand Down
Loading

0 comments on commit 1b7815f

Please sign in to comment.