.. _revision:

Revision
--------

:Contributers: T\. Coutinho

:Last Update: |today|

.. _history-modifications:

History of modifications:

+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| Date     | Revision                                                                         | Description                                         | Author                |
+==========+==================================================================================+=====================================================+=======================+
| 18/07/03 | 1.0                                                                              | Initial Version                                     | M\. Ounsy             |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 06/10/03 | 2.0                                                                              | Extension of the "Getting Started" paragraph        | A\. Buteau/M\. Ounsy  |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 14/10/03 | 3.0                                                                              | Added Exception Handling paragraph                  | M\. Ounsy             |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 13/06/05 | 4.0                                                                              | Ported to Latex, added events, AttributeProxy       | V\. Forchì            |
|          |                                                                                  | and ApiUtil                                         |                       |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
|          |                                                                                  | fixed bug with python 2.5 and and state events      |                       |
| 13/06/05 | 4.1                                                                              | new Database constructor                            | V\. Forchì            |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 15/01/06 | 5.0                                                                              | Added Device Server classes                         | E\.Taurel             |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 15/03/07 | 6.0                                                                              | Added AttrInfoEx, AttributeConfig events, 64bits,   | T\. Coutinho          |
|          |                                                                                  | write_attribute                                     |                       |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 21/03/07 | 6.1                                                                              | Added groups                                        | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 15/06/07 | `6.2 <http://www.tango-controls.org/Documents/bindings/PyTango-3.0.3.pdf>`_      | Added dynamic attributes doc                        | E\. Taurel            |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 06/05/08 | `7.0 <http://www.tango-controls.org/Documents/bindings/PyTango-3.0.4.pdf>`_      | Update to Tango 6.1. Added DB methods, version info | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 10/07/09 | `8.0 <http://www.tango-controls.org/static/PyTango/v7/doc/html/index.html>`_     | Update to Tango 7. Major refactoring. Migrated doc  | T\. Coutinho/R\. Suñe |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 24/07/09 | `8.1 <http://www.tango-controls.org/static/PyTango/v7/doc/html/index.html>`_     | Added migration info, added missing API doc         | T\. Coutinho/R\. Suñe |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 21/09/09 | `8.2 <http://www.tango-controls.org/static/PyTango/v7/doc/html/index.html>`_     | Added migration info, release of 7.0.0beta2         | T\. Coutinho/R\. Suñe |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 12/11/09 | `8.3 <http://www.tango-controls.org/static/PyTango/v71/doc/html/index.html>`_    | Update to Tango 7.1.                                | T\. Coutinho/R\. Suñe |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| ??/12/09 | `8.4 <http://www.tango-controls.org/static/PyTango/v71rc1/doc/html/index.html>`_ | Update to PyTango 7.1.0 rc1                         | T\. Coutinho/R\. Suñe |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 19/02/10 | `8.5 <http://www.tango-controls.org/static/PyTango/v711/doc/html/index.html>`_   | Update to PyTango 7.1.1                             | T\. Coutinho/R\. Suñe |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 06/08/10 | `8.6 <http://www.tango-controls.org/static/PyTango/v712/doc/html/index.html>`_   | Update to PyTango 7.1.2                             | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 05/11/10 | `8.7 <http://www.tango-controls.org/static/PyTango/v713/doc/html/index.html>`_   | Update to PyTango 7.1.3                             | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 08/04/11 | `8.8 <http://www.tango-controls.org/static/PyTango/v714/doc/html/index.html>`_   | Update to PyTango 7.1.4                             | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 13/04/11 | `8.9 <http://www.tango-controls.org/static/PyTango/v715/doc/html/index.html>`_   | Update to PyTango 7.1.5                             | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 14/04/11 | `8.10 <http://www.tango-controls.org/static/PyTango/v716/doc/html/index.html>`_  | Update to PyTango 7.1.6                             | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 15/04/11 | `8.11 <http://www.tango-controls.org/static/PyTango/v720/doc/html/index.html>`_  | Update to PyTango 7.2.0                             | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 12/12/11 | `8.12 <http://www.tango-controls.org/static/PyTango/v722/doc/html/index.html>`_  | Update to PyTango 7.2.2                             | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 24/04/12 | `8.13 <http://www.tango-controls.org/static/PyTango/v723/doc/html/index.html>`_  | Update to PyTango 7.2.3                             | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 21/09/12 | `8.14 <http://www.tango-controls.org/static/PyTango/v800/doc/html/index.html>`_  | Update to PyTango 8.0.0                             | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 10/10/12 | `8.15 <http://www.tango-controls.org/static/PyTango/v802/doc/html/index.html>`_  | Update to PyTango 8.0.2                             | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 20/05/13 | `8.16 <http://www.tango-controls.org/static/PyTango/v803/doc/html/index.html>`_  | Update to PyTango 8.0.3                             | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 28/08/13 | `8.13 <http://www.tango-controls.org/static/PyTango/v723/doc/html/index.html>`_  | Update to PyTango 7.2.4                             | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+
| 27/11/13 | `8.18 <http://www.tango-controls.org/static/PyTango/v810/doc/html/index.html>`_  | Update to PyTango 8.1.1                             | T\. Coutinho          |
+----------+----------------------------------------------------------------------------------+-----------------------------------------------------+-----------------------+

.. _version-history:

Version history
---------------

+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| version  | Changes                                                                                                                                                           |
+==========+===================================================================================================================================================================+
| 8.1.1    | Features:                                                                                                                                                         |
|          | - Implemented tango C++ 8.1 API                                                                                                                                   |
|          |                                                                                                                                                                   |
|          | Bug fixes:                                                                                                                                                        |
|          | - `527: set_value() for ULong64 <https://sourceforge.net/p/tango-cs/bugs/527/>`_                                                                                  |
|          | - `573: [pytango] python3 error with unregistered device <https://sourceforge.net/p/tango-cs/bugs/573/>`_                                                         |
|          | - `611: URGENT fail to write attribute with PyTango 8.0.3 <https://sourceforge.net/p/tango-cs/bugs/611/>`_                                                        |
|          | - `612: [pytango][8.0.3] failed to build from source on s390 <https://sourceforge.net/p/tango-cs/bugs/612/>`_                                                     |
|          | - `615: Threading problem when setting a DevULong64 attribute <https://sourceforge.net/p/tango-cs/bugs/615/>`_                                                    |
|          | - `622: PyTango broken when running on Ubuntu 13 <https://sourceforge.net/p/tango-cs/bugs/622/>`_                                                                 |
|          | - `626: attribute_history extraction can raised an exception <https://sourceforge.net/p/tango-cs/bugs/626/>`_                                                     |
|          | - `628: Problem in installing PyTango 8.0.3 on Scientific Linux 6 <https://sourceforge.net/p/tango-cs/bugs/628/>`_                                                |
|          | - `635: Reading of ULong64 attributes does not work <https://sourceforge.net/p/tango-cs/bugs/635/>`_                                                              |
|          | - `636: PyTango log messages are not filtered by level <https://sourceforge.net/p/tango-cs/bugs/636/>`_                                                           |
|          | - `637: [pytango] segfault doing write_attribute on Group <https://sourceforge.net/p/tango-cs/bugs/637/>`_                                                        |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 8.1.0    | *SKIPPED*                                                                                                                                                         |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 8.0.3    | Features:                                                                                                                                                         |
|          | - `88: Implement Util::server_set_event_loop method in python <https://sourceforge.net/p/tango-cs/feature-requests/88>`_                                          |
|          |                                                                                                                                                                   |
|          | Bug fixes:                                                                                                                                                        |
|          | - `3576353: [pytango] segfault on 'RestartServer' <https://sourceforge.net/tracker/?func=detail&aid=3576353&group_id=57612&atid=484769>`_                         |
|          | - `3579062: [pytango] Attribute missing methods <https://sourceforge.net/tracker/?func=detail&aid=3579062&group_id=57612&atid=484769>`_                           |
|          | - `3586337: [pytango] Some DeviceClass methods are not python safe <https://sourceforge.net/tracker/?func=detail&aid=3586337&group_id=57612&atid=484769>`_        |
|          | - `3598514: DeviceProxy.__setattr__ break python's descriptors <https://sourceforge.net/tracker/?func=detail&aid=3598514&group_id=57612&atid=484769>`_            |
|          | - `3607779: [pytango] IPython 0.10 error <https://sourceforge.net/tracker/?func=detail&aid=3607779&group_id=57612&atid=484769>`_                                  |
|          | - `598: Import DLL by PyTango failed on windows <https://sourceforge.net/p/tango-cs/bugs/598/>`_                                                                  |
|          | - `605: [pytango] use distutils.version module <https://sourceforge.net/p/tango-cs/bugs/605/>`_                                                                   |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 8.0.2    | Bug fixes:                                                                                                                                                        |
|          | - `3570970: [pytango] problem during the python3 building <https://sourceforge.net/tracker/?func=detail&aid=3570970&group_id=57612&atid=484769>`_                 |
|          | - `3570971: [pytango] itango does not work without qtconsole <https://sourceforge.net/tracker/?func=detail&aid=3570971&group_id=57612&atid=484769>`_              |
|          | - `3570972: [pytango] warning/error when building 8.0.0 <https://sourceforge.net/tracker/?func=detail&aid=3570972&group_id=57612&atid=484769>`_                   |
|          | - `3570975: [pytango] problem during use of python3 version <https://sourceforge.net/tracker/?func=detail&aid=3570975&group_id=57612&atid=484769>`_               |
|          | - `3574099: [pytango] compile error with gcc < 4.5 <https://sourceforge.net/tracker/?func=detail&aid=3574099&group_id=57612&atid=484769>`_                        |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 8.0.1    | *SKIPPED*                                                                                                                                                         |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 8.0.0    | Features:                                                                                                                                                         |
|          | - Implemented tango C++ 8.0 API                                                                                                                                   |
|          | - Python 3k compatible                                                                                                                                            |
|          | Bug fixes:                                                                                                                                                        |
|          | - `3023857: DevEncoded write attribute not supported <https://sourceforge.net/tracker/?func=detail&aid=3023857&group_id=57612&atid=484769>`_                      |
|          | - `3521545: [pytango] problem with tango profile <https://sourceforge.net/tracker/?func=detail&aid=3521545&group_id=57612&atid=484769>`_                          |
|          | - `3530535: PyTango group writting fails <https://sourceforge.net/tracker/?func=detail&aid=3530535&group_id=57612&atid=484769>`_                                  |
|          | - `3564959: EncodedAttribute.encode_xxx() methods don't accept bytearray  <https://sourceforge.net/tracker/?func=detail&aid=3564959&group_id=57612&atid=484769>`_ |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 7.2.4    | Bug fixes:                                                                                                                                                        |
|          | - from sourceforge:                                                                                                                                               |
|          | - `551: [pytango] Some DeviceClass methods are not python safe <https://sourceforge.net/p/tango-cs/bugs/551/>`_                                                   |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 7.2.3    | Features:                                                                                                                                                         |
|          | - `3495607: DeviceClass.device_name_factory is missing <https://sourceforge.net/tracker/?func=detail&aid=3495607&group_id=57612&atid=484772>`_                    |
|          |                                                                                                                                                                   |
|          | Bug fixes:                                                                                                                                                        |
|          | - `3103588: documentation of PyTango.Attribute.Group <https://sourceforge.net/tracker/?func=detail&aid=3103588&group_id=57612&atid=484769>`_                      |
|          | - `3458336: Problem with pytango 7.2.2 <https://sourceforge.net/tracker/?func=detail&aid=3458336&group_id=57612&atid=484769>`_                                    |
|          | - `3463377: PyTango memory leak in read encoded attribute <https://sourceforge.net/tracker/?func=detail&aid=3463377&group_id=57612&atid=484769>`_                 |
|          | - `3487930: [pytango] wrong python dependency <https://sourceforge.net/tracker/?func=detail&aid=3487930&group_id=57612&atid=484769>`_                             |
|          | - `3511509: Attribute.set_value_date_quality for encoded does not work <https://sourceforge.net/tracker/?func=detail&aid=3511509&group_id=57612&atid=484769>`_    |
|          | - `3514457: [pytango]  TANGO_HOST multi-host support <https://sourceforge.net/tracker/?func=detail&aid=3514457&group_id=57612&atid=484769>`_                      |
|          | - `3520739: command_history(...) in  PyTango <https://sourceforge.net/tracker/?func=detail&aid=3520739&group_id=57612&atid=484769>`_                              |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 7.2.2    | Features:                                                                                                                                                         |
|          | - `3305251: DS dynamic attributes discards some Attr properties <https://sourceforge.net/tracker/?func=detail&aid=3305251&group_id=57612&atid=484769>`_           |
|          | - `3365792: DeviceProxy.<cmd_name> could be documented <https://sourceforge.net/tracker/?func=detail&aid=3365792&group_id=57612&atid=484772>`_                    |
|          | - `3386079: add support for ipython 0.11 <https://sourceforge.net/tracker/?func=detail&aid=3386079&group_id=57612&atid=484772>`_                                  |
|          | - `3437654: throw python exception as tango exception <https://sourceforge.net/tracker/?func=detail&aid=3437654&group_id=57612&atid=484772>`_                     |
|          | - `3447477: spock profile installation <https://sourceforge.net/tracker/?func=detail&aid=3447477&group_id=57612&atid=484772>`_                                    |
|          |                                                                                                                                                                   |
|          | Bug fixes:                                                                                                                                                        |
|          | - `3372371: write attribute of DevEncoded doesn't work <https://sourceforge.net/tracker/?func=detail&aid=3372371&group_id=57612&atid=484769>`_                    |
|          | - `3374026: [pytango] pyflakes warning <https://sourceforge.net/tracker/?func=detail&aid=3374026&group_id=57612&atid=484769>`_                                    |
|          | - `3404771: PyTango.MultiAttribute.get_attribute_list missing <https://sourceforge.net/tracker/?func=detail&aid=3404771&group_id=57612&atid=484769>`_             |
|          | - `3405580: PyTango.MultiClassAttribute missing <https://sourceforge.net/tracker/?func=detail&aid=3405580&group_id=57612&atid=484769>`_                           |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 7.2.1    | *SKIPPED*                                                                                                                                                         |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 7.2.0    | Features:                                                                                                                                                         |
|          | - from sourceforge:                                                                                                                                               |
|          | - `3286678: Add missing EncodedAttribute JPEG methods <https://sourceforge.net/tracker/?func=detail&aid=3286678&group_id=57612&atid=484772>`_                     |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 7.1.6    | Bug fixes:                                                                                                                                                        |
|          | - 7.1.5 distribution is missing some files                                                                                                                        |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 7.1.5    | Bug fixes:                                                                                                                                                        |
|          | - from sourceforge:                                                                                                                                               |
|          | - `3284174: 7.1.4 does not build with gcc 4.5 and tango 7.2.6 <https://sourceforge.net/tracker/?func=detail&aid=3284174&group_id=57612&atid=484769>`_             |
|          | - `3284265: [pytango][7.1.4] a few files without licence and copyright <https://sourceforge.net/tracker/?func=detail&aid=3284265&group_id=57612&atid=484769>`_    |
|          | - `3284318: copyleft vs copyright <https://sourceforge.net/tracker/?func=detail&aid=3284318&group_id=57612&atid=484769>`_                                         |
|          | - `3284434: [pytango][doc] few ERROR during the doc generation <https://sourceforge.net/tracker/?func=detail&aid=3284434&group_id=57612&atid=484769>`_            |
|          | - `3284435: [pytango][doc] few warning during the doc generation <https://sourceforge.net/tracker/?func=detail&aid=3284435&group_id=57612&atid=484769>`_          |
|          | - `3284440: [pytango][spock] the profile can't be installed <https://sourceforge.net/tracker/?func=detail&aid=3284440&group_id=57612&atid=484769>`_               |
|          | - `3285185: PyTango Device Server does not load Class Properties values <https://sourceforge.net/tracker/?func=detail&aid=3285185&group_id=57612&atid=484769>`_   |
|          | - `3286055: PyTango 7.1.x DS using Tango C++ 7.2.x seg faults on exit <https://sourceforge.net/tracker/?func=detail&aid=3286055&group_id=57612&atid=484769>`_     |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 7.1.4    | Features:                                                                                                                                                         |
|          | - `3274309: Generic Callback for events <https://sourceforge.net/tracker/?func=detail&aid=3274309&group_id=57612&atid=484772>`_                                   |
|          |                                                                                                                                                                   |
|          | Bug fixes:                                                                                                                                                        |
|          | - `3011775: Seg Faults due to removed dynamic attributes <https://sourceforge.net/tracker/?func=detail&aid=3011775&group_id=57612&atid=484769>`_                  |
|          | - `3105169: PyTango 7.1.3 does not compile with Tango 7.2.X <https://sourceforge.net/tracker/?func=detail&aid=3105169&group_id=57612&atid=484769>`_               |
|          | - `3107243: spock profile does not work with python 2.5 <https://sourceforge.net/tracker/?func=detail&aid=3107243&group_id=57612&atid=484769>`_                   |
|          | - `3124427: PyTango.WAttribute.set_max_value() changes min value <https://sourceforge.net/tracker/?func=detail&aid=3124427&group_id=57612&atid=484769>`_          |
|          | - `3170399: Missing documentation about is_<attr>_allowed method <https://sourceforge.net/tracker/?func=detail&aid=3170399&group_id=57612&atid=484769>`_          |
|          | - `3189082: Missing get_properties() for Attribute class <https://sourceforge.net/tracker/?func=detail&aid=3189082&group_id=57612&atid=484769>`_                  |
|          | - `3196068: delete_device() not called after server_admin.Kill() <https://sourceforge.net/tracker/?func=detail&aid=3196068&group_id=57612&atid=484769>`_          |
|          | - `3257286: Binding crashes when reading a WRITE string attribute <https://sourceforge.net/tracker/?func=detail&aid=3257286&group_id=57612&atid=484769>`_         |
|          | - `3267628: DP.read_attribute(, extract=List/tuple) write value is wrong <https://sourceforge.net/tracker/?func=detail&aid=3267628&group_id=57612&atid=484769>`_  |
|          | - `3274262: Database.is_multi_tango_host missing <https://sourceforge.net/tracker/?func=detail&aid=3274262&group_id=57612&atid=484769>`_                          |
|          | - `3274319: EncodedAttribute is missing in PyTango (<= 7.1.3) <https://sourceforge.net/tracker/?func=detail&aid=3274319&group_id=57612&atid=484769>`_             |
|          | - `3277269: read_attribute(DevEncoded) is not numpy as expected <https://sourceforge.net/tracker/?func=detail&aid=3277269&group_id=57612&atid=484769>`_           |
|          | - `3278946: DeviceAttribute copy constructor is not working <https://sourceforge.net/tracker/?func=detail&aid=3278946&group_id=57612&atid=484769>`_               |
|          |                                                                                                                                                                   |
|          | Documentation:                                                                                                                                                    |
|          | - Added :ref:`utilities` chapter                                                                                                                                  |
|          | - Added :ref:`encoded` chapter                                                                                                                                    |
|          | - Improved :ref:`server` chapter                                                                                                                                  |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 7.1.3    | Features:                                                                                                                                                         |
|          | - tango logging with print statement                                                                                                                              |
|          | - tango logging with decorators                                                                                                                                   |
|          | - from sourceforge:                                                                                                                                               |
|          | - `3060380: ApiUtil should be exported to PyTango  <https://sourceforge.net/tracker/?func=detail&aid=3060380&group_id=57612&atid=484772>`_                        |
|          |                                                                                                                                                                   |
|          | Bug fixes:                                                                                                                                                        |
|          | - added licence header to all source code files                                                                                                                   |
|          | - spock didn't work without TANGO_HOST env. variable (it didn't recognize                                                                                         |
|          | tangorc)                                                                                                                                                          |
|          | - spock should give a proper message if it tries to be initialized outside                                                                                        |
|          | ipython                                                                                                                                                           |
|          | - from sourceforge:                                                                                                                                               |
|          | - `3048798: licence issue GPL != LGPL <https://sourceforge.net/tracker/?func=detail&aid=3048798&group_id=57612&atid=484769>`_                                     |
|          | - `3073378: DeviceImpl.signal_handler raising exception crashes DS <https://sourceforge.net/tracker/?func=detail&aid=3073378&group_id=57612&atid=484769>`_        |
|          | - `3088031: Python DS unable to read DevVarBooleanArray property <https://sourceforge.net/tracker/?func=detail&aid=3088031&group_id=57612&atid=484769>`_          |
|          | - `3102776: PyTango 7.1.2 does not work with python 2.4 & boost 1.33.0 <https://sourceforge.net/tracker/?func=detail&aid=3102776&group_id=57612&atid=484769>`_    |
|          | - `3102778: Fix compilation warnings in linux <https://sourceforge.net/tracker/?func=detail&aid=3102778&group_id=57612&atid=484769>`_                             |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 7.1.2    | Features:                                                                                                                                                         |
|          | - from sourceforge:                                                                                                                                               |
|          | - `2995964: Dynamic device creation <https://sourceforge.net/tracker/?func=detail&aid=2995964&group_id=57612&atid=484772>`_                                       |
|          | - `3010399: The DeviceClass.get_device_list that exists in C++ is missing <https://sourceforge.net/tracker/?func=detail&aid=3010399&group_id=57612&atid=484772>`_ |
|          | - `3023686: Missing DeviceProxy.<attribute name> <https://sourceforge.net/tracker/?func=detail&aid=3023686&group_id=57612&atid=484772>`_                          |
|          | - `3025396: DeviceImpl is missing some CORBA methods <https://sourceforge.net/tracker/?func=detail&aid=3025396&group_id=57612&atid=484772>`_                      |
|          | - `3032005: IPython extension for PyTango <https://sourceforge.net/tracker/?func=detail&aid=3032005&group_id=57612&atid=484772>`_                                 |
|          | - `3033476: Make client objects pickable <https://sourceforge.net/tracker/?func=detail&aid=3033476&group_id=57612&atid=484772>`_                                  |
|          | - `3039902: PyTango.Util.add_class would be useful <https://sourceforge.net/tracker/?func=detail&aid=3039902&group_id=57612&atid=484772>`_                        |
|          |                                                                                                                                                                   |
|          | Bug fixes:                                                                                                                                                        |
|          | - from sourceforge:                                                                                                                                               |
|          | - `2975940: DS command with DevVarCharArray return type fails <https://sourceforge.net/tracker/?func=detail&aid=2975940&group_id=57612&atid=484769>`_             |
|          | - `3000467: DeviceProxy.unlock is LOCKING instead of unlocking! <https://sourceforge.net/tracker/?func=detail&aid=3000467&group_id=57612&atid=484769>`_           |
|          | - `3010395: Util.get_device_* methods don't work <https://sourceforge.net/tracker/?func=detail&aid=3010395&group_id=57612&atid=484769>`_                          |
|          | - `3010425: Database.dev_name does not work <https://sourceforge.net/tracker/?func=detail&aid=3010425&group_id=57612&atid=484769>`_                               |
|          | - `3016949: command_inout_asynch callback does not work <https://sourceforge.net/tracker/?func=detail&aid=3016949&group_id=57612&atid=484769>`_                   |
|          | - `3020300: PyTango does not compile with gcc 4.1.x <https://sourceforge.net/tracker/?func=detail&aid=3020300&group_id=57612&atid=484769>`_                       |
|          | - `3030399: Database put(delete)_attribute_alias generates segfault <https://sourceforge.net/tracker/?func=detail&aid=3030399&group_id=57612&atid=484769>`_       |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 7.1.1    | Features:                                                                                                                                                         |
|          | - Improved setup script                                                                                                                                           |
|          | - Interfaced with PyPI                                                                                                                                            |
|          | - Cleaned build script warnings due to unclean python C++ macro definitions                                                                                       |
|          | - from sourceforge:                                                                                                                                               |
|          | - `2985993: PyTango numpy command support <https://sourceforge.net/tracker/?func=detail&aid=2985993&group_id=57612&atid=484772>`_                                 |
|          | - `2971217: PyTango.GroupAttrReplyList slicing <https://sourceforge.net/tracker/?func=detail&aid=2971217&group_id=57612&atid=484772>`_                            |
|          |                                                                                                                                                                   |
|          | Bug fixes:                                                                                                                                                        |
|          | - from sourceforge:                                                                                                                                               |
|          | - `2983299: Database.put_property() deletes the property <https://sourceforge.net/tracker/?func=detail&aid=2983299&group_id=57612&atid=484769>`_                  |
|          | - `2953689: can not write_attribute scalar/spectrum/image <https://sourceforge.net/tracker/?func=detail&aid=2953689&group_id=57612&atid=484769>`_                 |
|          | - `2953030: PyTango doc installation <https://sourceforge.net/tracker/?func=detail&aid=2953030&group_id=57612&atid=484769>`_                                      |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 7.1.0    | Features:                                                                                                                                                         |
|          | - from sourceforge:                                                                                                                                               |
|          | - `2908176: read_*, write_* and is_*_allowed() methods can now be defined <https://sourceforge.net/tracker/?func=detail&aid=2908176&group_id=57612&atid=484772>`_ |
|          | - `2941036: TimeVal conversion to time and datetime <https://sourceforge.net/tracker/?func=detail&aid=2941036&group_id=57612&atid=484772>`_                       |
|          | - added str representation on Attr, Attribute, DeviceImpl and DeviceClass                                                                                         |
|          |                                                                                                                                                                   |
|          | Bug fixes:                                                                                                                                                        |
|          | - from sourceforge:                                                                                                                                               |
|          | - `2903755: get_device_properties() bug reading DevString properties <https://sourceforge.net/tracker/?func=detail&aid=2903755group_id=57612&atid=484769>`_       |
|          | - `2909927: PyTango.Group.read_attribute() return values <https://sourceforge.net/tracker/?func=detail&aid=2909927&group_id=57612&atid=484769>`_                  |
|          | - `2914194: DevEncoded does not work <https://sourceforge.net/tracker/?func=detail&aid=2914194&group_id=57612&atid=484769>`_                                      |
|          | - `2916397: PyTango.DeviceAttribute copy constructor does not work <https://sourceforge.net/tracker/?func=detail&aid=2916397&group_id=57612&atid=484769>`_        |
|          | - `2936173: PyTango.Group.read_attributes() fails <https://sourceforge.net/tracker/?func=detail&aid=2936173&group_id=57612&atid=484769>`_                         |
|          | - `2949099: Missing PyTango.Except.print_error_stack <https://sourceforge.net/tracker/?func=detail&aid=2949099&group_id=57612&atid=484769>`_                      |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 7.1.0rc1 | Features:                                                                                                                                                         |
|          | - v = image_attribute.get_write_value() returns square sequences (arrays of                                                                                       |
|          | arrays, or numpy objects) now instead of flat lists. Also for spectrum                                                                                            |
|          | attributes a numpy is returned by default now instead.                                                                                                            |
|          | - image_attribute.set_value(v) accepts numpy arrays now or square sequences                                                                                       |
|          | instead of just flat lists. So, dim_x and dim_y are useless now. Also the                                                                                         |
|          | numpy path is faster.                                                                                                                                             |
|          | - new enum AttrSerialModel                                                                                                                                        |
|          | - Attribute new methods: set(get)_attr_serial_model, set_change_event,                                                                                            |
|          | set_archive_event, is_change_event, is_check_change_event,                                                                                                        |
|          | is_archive_criteria, is_check_archive_criteria, remove_configuration                                                                                              |
|          | - added support for numpy scalars in tango operations like write_attribute                                                                                        |
|          | (ex: now a DEV_LONG attribute can receive a numpy.int32 argument in a                                                                                             |
|          | write_attribute method call)                                                                                                                                      |
|          |                                                                                                                                                                   |
|          | Bug fixes:                                                                                                                                                        |
|          | - DeviceImpl.set_value for scalar attributes                                                                                                                      |
|          | - DeviceImpl.push_***_event                                                                                                                                       |
|          | - server commands with DevVar***StringArray as parameter or as return type                                                                                        |
|          | - in windows,a bug in PyTango.Util prevented servers from starting up                                                                                             |
|          | - DeviceImpl.get_device_properties for string properties assigns only first                                                                                       |
|          | character of string to object member instead of entire string                                                                                                     |
|          | - added missing methods to Util                                                                                                                                   |
|          | - exported SubDevDiag class                                                                                                                                       |
|          | - error in read/events of attributes of type DevBoolean READ_WRITE                                                                                                |
|          | - error in automatic unsubscribe events of DeviceProxy when the object                                                                                            |
|          | disapears (happens only on some compilers with some optimization flags)                                                                                           |
|          | - fix possible bug when comparing attribute names in DeviceProxy                                                                                                  |
|          | - pretty print of DevFailed -> fix deprecation warning in python 2.6                                                                                              |
|          | - device class properties where not properly fetched when there is no                                                                                             |
|          | property value defined                                                                                                                                            |
|          | - memory leak when converting DevFailed exceptions from C++ to python                                                                                             |
|          | - python device server file without extension does not start                                                                                                      |
|          |                                                                                                                                                                   |
|          | Documentation:                                                                                                                                                    |
|          | - Improved FAQ                                                                                                                                                    |
|          | - Improved compilation chapter                                                                                                                                    |
|          | - Improved migration information                                                                                                                                  |
+----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+
