Skip to content

Releases: tcalmant/ipopo

v3.0.0

26 Aug 14:13
Compare
Choose a tag to compare

First release of the v3 branch

  • Dropped support for Python 2.7 and versions earlier than 3.10
  • Kept compability with iPOPO 1.0 on API level
  • Moved from Travis-CI to GitHub actions to test project against Python 3.10, 3.11 and 3.12
  • Added type hints where possible
  • Support types in specifications
  • Documentation updates
  • Fixed most deprecation warnings from Python 3.12
  • Upgraded Eclipse Paho to 2.1
  • Replaced SleekXMPP by SliXMPP
  • Added an etcd3 discovery provider
  • Updated osgiservicebridge to 1.5.7 because of protobuf version issues
  • Fixed link to Karaf

v1.0.2

28 Oct 19:15
Compare
Choose a tag to compare
  • Fixed component not being validated correctly on filter update in the @RequiresVarFilter handler.
    See #119 for more details.

v1.0.1

10 Nov 15:21
Compare
Choose a tag to compare
  • Added a RequiresBroadcast decorator, which injects a proxy that broadcasts
    calls to all services matched by the requirement. It also transparently
    ignores calls when no service matches the requirement.
  • ConfigurationAdmin default persistence can now be disabled by setting the
    pelix.configadmin.persistence.default.disable framework property to any
    non-empty value.
    See #113 for more details.
  • Added a to_record() method in LogEntry objects. This converts the
    Pelix entry to a logging.LogRecord object, which can then be formatted
    using standard formatters.
    Note that some information is missing, like the place the log record is from
    (file path and line).

v1.0.0

19 Jan 15:17
Compare
Choose a tag to compare

First 1.x release of iPOPO!

Note: The Pelix/iPOPO project is now split in two branches: iPOPO (v1 branch) and ipopo2 (v2 branch). The v2 branch requires Python 3.7+, whereas v1 will keep compatibility with Python 2.7.

Bug fixes with this release:

  • Fixed an error when starting the framework after having loaded native modules, e.g. numpy. These modules don't have a __path__ set, which case was not handled when the framework normalizes the existing module paths.
  • Fixed an invalid import of collections abstract classes for Python 3.3+ in pelix.internal.hooks.

v0.8.1

17 Nov 17:11
Compare
Choose a tag to compare

This is a bug fixing release:

  • Fixed a memory leak in the thread pool implementation.
    The patch comes from issue 35 of the jsonrpclib-pelix project.
  • Fixed a deadlock in the Py4J provider (issue #100), contributed by Scott Lewis (@scottslewis).
    See pull request #101 for more details.

v0.8.0

19 Aug 13:46
Compare
Choose a tag to compare

A new step toward 1.0 !

This major new feature of this release is the contribution of the Remote Service Admin implementation by @scottslewis.
The documentation about this new feature is split into 3 parts:

v0.7.1

15 Jun 23:10
Compare
Choose a tag to compare

This is a small release, before version 0.8.0 (unless some issues are detected meanwhile)

This version adds:

  • TLS Remote Shell
  • Shell completion services
  • Shell reference cards in the documentation
  • @In/ValidateComponent decorators, which give more control on the argument of the life-cycle callbacks
  • Bugs fixed:
    • Framework.delete() behavior on stopped frameworks
    • LogService access to Python LogRecord messages

v0.7.0

30 Dec 13:48
Compare
Choose a tag to compare

This version adds:

  • Prototype Service Factories
  • Automatic release of consumed services when a bundle stops. This will avoid some stale references when using service factories. WARNING: This is an important change in behavior, which might break some projects which use stale references to pass information from one bundle version to another during an update (which is a bad way to do it).
  • Deprecation handling of the imp package
  • Added a Framework.delete() method to avoid the need to know about the FrameworkFactory class.

This release also removes some Python 2.6 compatibility code that was remaining. and which is not necessary anymore, as this version of Python is not supported anymore by iPOPO.

A big thank you to @elrhedda for his feedback.

v0.6.5

17 Sep 14:54
Compare
Choose a tag to compare

This version mainly adds:

A big thanks to iPOPO contributors:

v0.6.4

12 Jun 16:37
Compare
Choose a tag to compare

This version adds new decorators to iPOPO:

  • @RequiresVariableFilter, which works as @Requires but also support the use of component properties as variables in LDAP filter.
  • @HiddenProperty, which extends @Property, but ensures that the property key and value won't be seen in the description API nor in the shell.
    (it will stay visible using the standard reflection API of Python)

The "log service" has also been added to this version, though the pelix.misc.log bundle.
It provides the OSGi API to log traces, but also keep track of the traces written with the logging module.
The log entries can be accessed locally (but not through remote services).
They can be printed in the shell using commands provided by pelix.shell.log.

Finally, the HTTP basic component now support HTTPS.
It is activated when given two files (a certificate and a key) in its component properties.
A password can also be given if the key file is encrypted.
This is a prototype feature and should be used carefully.
Also, it should not be used with remote services.