Skip to content

Releases: tcalmant/ipopo

v0.6.3

25 Oct 14:51
Compare
Choose a tag to compare

Project

  • iPOPO now has a logo ! (thanks to @debbabi)
  • README file has been rewritten
  • Better PEP-8 compliance
  • Updated jsonrpclib requirement version to 0.2.6

Pelix

  • Optimization of the service registry (less dictionaries, use of sets, ...)
  • Added the hide_bundle_services() to the service registry.
    It is by the framework to hide the services of a stopping bundle from
    get_service_reference methods, and before those services will be
    unregistered.
  • Removed the deprecated ServiceEvent.get_type() method

iPOPO

  • Optimization of StoredInstance (handlers, use of sets, ...)

HTTP

  • Added a is_header_set() method to the HTTPServletResponse bean.
  • Response headers are now sent on end_headers(), not on set_header(),
    to avoid duplicate headers.
  • The request queue size of the basic HTTP server can now be set as a component
    property (pelix.http.request_queue_size)

Shell

  • The pelix.shell.console module can now be run as a main script
  • Added the report shell command
  • Added the name of varargs in the signature of commands
  • Corrected the signature shown in the help description for static methods
  • Corrected the thread and threads shell commands for pypy

Remote Services

  • Added support for keyword arguments in most of remote services transports
    (all except XML-RPC)
  • Added support for pelix.remote.export.only and
    pelix.remote.export.none service properties. ..only tells the
    exporter to export the given specifications only, while ..none forbids
    the export of the service.

Utilities

  • Updated the MQTT client to follow the new API of Eclipse Paho MQTT Client

Tests

  • Travis-CI: Added Python 3.5 and Pypy3 targets
  • Better configuration of coverage
  • Added tests for the remote shell
  • Added tests for the MQTT client and for MQTT-RPC

v0.6.2

18 Jun 07:35
Compare
Choose a tag to compare

iPOPO


  • The properties of a component can be updated when calling the
    retry_erroneous() method. This allows to modifiy the configuration of
    a component before trying to validate it again (HTTP port, ...).
  • The get_instance_details() dictionary now always contains a filter
    entry for each of the component requirement description, even if not filter
    has been set.

Shell


  • The ipopo.retry shell command accepts properties to be reconfigure the
    instance before trying to validate it again.
  • The bundle commands (start, stop, update, uninstall) now prints the
    name of the bundle along with its ID.
  • The threads and threads shell commands now accept a stack depth limit
    argument.

HTTP


  • Protect the ServletRequest.read_data() method against empty or invalid
    Content-Length headers

v0.6.1

20 Apr 13:03
Compare
Choose a tag to compare

iPOPO


  • The stack trace of the exception that caused a component to be in the
    ERRONEOUS state is now kept, as a string. It can be seen throught the
    instance shell command.

Shell


  • The command parser has been separated from the shell core service. This
    allows to create custom shells without giving access to Pelix administration
    commands.
  • Added cd and pwd shell commands, which allow changing the working
    directory of the framework and printing the current one.
  • Corrected the encoding of the shell output string, to avoid exceptions when
    printing special characters.

Remote Services


  • Corrected a bug where an imported service with the same endpoint name as an
    exported service could be exported after the unregistration of the latter.

v0.6.0

12 Mar 10:46
Compare
Choose a tag to compare
  • iPOPO doesn't support Python 2.6 anymore
  • pelix.misc.xmpp: Added a workaround to connect servers with anonymous login on SSL/StartSSL connections (see SleekXMPP issue 351)

v0.5.9

18 Feb 10:56
Compare
Choose a tag to compare

Main additions

  • iPOPO now works with IronPython (tested inside Unity 3D)
  • Components raising an error during validation goes in the ERRONEOUS state/
  • The @SingletonFactory decorator ensures that only one component of this
    factory can be instantiated at a time.
  • The @Temporal requirement decorator allows to require a service and to
    wait a given amount of time for its replacement before invalidating the
    component or while using the requirement.
  • @RequiresBest ensures that it is always the service with the best
    ranking that is injected in the component.
  • The @PostRegistration and @PreUnregistration callbacks allows the
    component to be notified right after one of its services has been registered
    or will be unregistered.
  • The HTTP service 404 and 500 error pages can be customized by a hook service.
  • The ThreadPool class is now a cached thread pool. It now has a minimum
    and maximum number of threads: only the required threads are alive.
    A thread waits for a task during 60 seconds (by default) before stopping.

0.5.8

13 Oct 13:37
Compare
Choose a tag to compare
0.5.8 Pre-release
Pre-release

Main additions:

  • immediate_rebind flag in the @Requires decorator
  • The Pelix Shell now uses ShellSession beans and has basic support for variables

0.5.7

18 Sep 12:25
Compare
Choose a tag to compare
0.5.7 Pre-release
Pre-release
Updated README and CHANGELOG