:::{admonition} Release Date
:class: info
2018-06-16
:::
Project
* Added a CONTRIBUTING description file to describe the code style
* The `zeroconf` dependency is now forced to version 0.19, to stay
compatible with Python 2.7
* Changed them in the documentation (back to standard ReadTheDocs theme)
* Added some reference cards in the documentation:
initial configuration file, shell, shell report
Pelix
* Aded support for Event Listeners Hooks.
See [88](https://github.com/tcalmant/ipopo/pull/88) for more details.
* Fixed `Framework.delete()` when framework was already stopped.
iPOPO
* Added `ValidateComponent` and `InvalidateComponent` decorators.
They allow to define callback methods for component in/validation
with access to component context and properties (read-only).
`Validate` and `Invalidate` decorators are now simple aliases to
those decorators.
* Checked behaviour with *data classes*, introduced in Python 3.7: all
seems to work perfectly. See [89](https://github.com/tcalmant/ipopo/issues/89)
for more details.
Shell
* New shell completion system: completion is now extensible and can
work with both commands and arguments. This system relies on `readline`.
* Added a TLS version of the shell. Its usage and the generation of
certificates are described in the Pelix Shell reference card in the
documentation.
* `ShellSession.write_line()` can now be called without argument
(prints an empty line)
Misc
* Fixed the access bug to the Python LogRecord message in the Log Service