Skip to main content
Help us improve Python packaging – donate today!

A service-oriented component model framework

Project Description

README

This is iPOPO, a component model framework for Python based on SOA principles. It is based on Pelix, an SOA framework.

See http://ipopo.coderxpress.net for documentation and more information.

Feedback

Feel free to send feedback on your experience of Pelix/iPOPO, via the mailing lists :

More information at http://ipopo.coderxpress.net/

Release notes

iPOPO 0.5

API Changes

Framework
  • BundleContext.install_bundle() now returns the Bundle object instead of the bundle ID. BundleContext.get_bundle() has been updated to accept both IDs and Bundle objects in order to keep a bit of compatibility
  • Framework.get_symbolic_name() now returns pelix.framework instead of org.psem2m.pelix
  • ServiceEvent.get_type() is renamed get_kind(). The other name is still available but is declared deprecated (a warning is logged on its first use).
Shell
  • Shell command methods now take an IOHandler object in parameter instead of input and output file-like streams. This hides the compatibility tricks between Python 2 and 3 and simplifies the output formatting.

Additions

Project
  • Added this “release notes” page to the web site
Framework
  • BundleContext.install_visiting(path, visitor):
    • Visits the given path and installs the found modules if the visitor accepts them
  • BundleContext.install_package(path) (experimental):
    • Installs all the modules found in the package at the given path
    • Based on install_visiting()
iPOPO
  • Components with a pelix.ipopo.auto_restart property set to True are automatically re-instantiated after their bundle has been updated.
Services
  • Remote Services: use services of a distant Pelix instance
    • Multicast discovery
    • XML-RPC transport (not fully usable)
    • JSON-RPC transport (based on a patched version of jsonrpclib)
  • EventAdmin: send events (a)synchronously

iPOPO 0.4

Version 0.4 fixes many bugs and provides new features:

Pelix

  • create_framework() utility method
  • The framework has been refactored, allowing more efficient services and events handling

iPOPO

  • A component can provide multiple services
  • A service controller can be injected for each provided service, to activate or deactivate its registration
  • Dependency injection and service providing mechanisms have been refactored, using a basic handler concept.

Services

  • Added a HTTP service component, using the concept of servlet
  • Added an extensible shell, interactive and remote, simplifying the usage of a framework instance

iPOPO 0.3

Packages have been renamed. As the project goes public, it may not have relations to isandlaTech projects anymore.

Previous name New name
psem2m pelix
psem2m.service.pelix pelix.framework
psem2m.component pelix.ipopo
psem2m.component.ipopo pelix.ipopo.core

iPOPO 0.2

Version 0.2 is the first public release, under GPLv3 license (see LICENSE).

Compatibility

The package has been tested with:

  • Python 2.6, 2.7, 3.1 and 3.2
  • Pypy 1.8, 1.9

To work with Python 2.6, the importlib module back-port must be installed. It is available on PyPI.

Release history Release notifications

History Node

0.7.0

History Node

0.6.5

History Node

0.6.4

History Node

0.6.3

History Node

0.6.2

History Node

0.6.1

History Node

0.6.0

History Node

0.5.9

History Node

0.5.8

History Node

0.5.7

History Node

0.5.6

History Node

0.5.5

History Node

0.5.4

History Node

0.5.3

History Node

0.5.2

This version
History Node

0.5.1

History Node

0.5

History Node

0.4

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
iPOPO-0.5.1.tar.gz (97.2 kB) Copy SHA256 hash SHA256 Source None Jul 5, 2013

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page