Jump to: navigation, search


This page is expected to capture all the relevant information about potential and real neutron library API breakages that go merged in the tree.


Neutron started to spin out both advanced services (LBaaS, VPNaaS, FWaaS) and vendor plugins and ml2 drivers into separate git repositories in Kilo. Code that was already split out still uses lots of symbols from neutron.* namespace, assuming neutron is a library with stable API. It's not really the case, and so there may be changes in the tree that will break external code (*aas, vendor libraries) that use those symbols.

The idea is to eventually stabilize some parts of neutron tree and convert them into a public library with some kind of API stability guarantees. That said, it's not going to happen immediately, so breakages are expected in the short term.


General note: no plugins should rely on neutron.openstack.* contents, for multiple reasons. Main thing, the contents can be removed at any time. Instead, either use graduated oslo libraries directly, or copy oslo-incubator files into your repos.

Date Patch that causes breakage Brief description of the change Possible solutions Severity
07/02/15 Merged Simplify use of COMMON_PREFIX Switch to using declarative property as done here High (your CI should catch it)
07/01/15 Merged Adopt oslo.service Switch using oslo_service.* namespace. Stop using ANY neutron.openstack.* contents Low (detected, plugins must not rely on that subtree)
05/07/15 Merged Reuse caller's session in DB methods Add context to args and reuse High (mostly undetected, because 3rd party CI run Tempest tests only)
03/13/15 Merged switches to oslo.log, removes neutron.openstack.common.log a) switch to oslo.log; b) copy log module into your tree and use it (may not work due to conflicts between the module and oslo.log configuration options) High (most CI systems are affected)
04/06/15 Merged Implements reorganize-unit-test-tree spec Code affected need to update existing unit tests to reflect new locations. High (mostly undetected, because 3rd party CI run Tempest tests only).
04/20/15 Merged drop linux/ovs_lib compat layer switch to using neutron/agent/common/ovs_lib.py High (most CI systems are affected)