[release-announce] neutron-lib 1.15.0 (rocky)

no-reply at openstack.org no-reply at openstack.org
Thu May 31 22:17:02 UTC 2018


We jubilantly announce the release of:

neutron-lib 1.15.0: Neutron shared routines and utilities

This release is part of the rocky release series.

The source is available from:

    https://git.openstack.org/cgit/openstack/neutron-lib

Download the package from:

    https://pypi.org/project/neutron-lib

Please report issues through launchpad:

    https://bugs.launchpad.net/neutron

For more details, please see below.

1.15.0
^^^^^^


New Features
************

* Add "empty-string-filtering" API extension. This extension
  indicates if the server supports filtering attributes with empty
  value.

* New "PORT_BINDING", "ACTIVATE" and "DEACTIVATE" definitions have
  been added to "neutron_lib.agent.topics", to enable plug-ins to
  notify agents when a port binding has been activated or de-
  activated.

* The "portforwarding" API definition for "FloatingIP``is
  introduced, which allows a ``FloatingIP:Port" to forward packets
  back to a VM's "Internal IP:Port" .

* Add the definitions for the "sfc" and "flowclassifier" API
  extensions of the networking-sfc project.

* Add a "convert_uppercase_ip" converter, convenient to easily
  accept for instance "Ipv4", "IPv4" and "ipv4" independently of the
  case of the first two letters.

* And add a "convert_prefix_forced_case" converter, to allow forcing
  the case of a string prefix

* Add a "uuid_list_non_empty" validator, that will validate that the
  value is a non-empty list of UUIDs

* Add API extensions to advertise the support of standard attributes
  with BGPVPN resources: "standard-attr-bgpvpn", "standard-attr-
  bgpvpn-network-association", "standard-attr-bgpvpn-router-
  association" and "standard-attr-bgpvpn-port-association".


Bug Fixes
*********

* For Infiniband support, Ironic needs to send the "client-id" DHCP
  option as a number in order for IP address assignment to work. This
  is now supported in Neutron, and can be specified as option number
  61 as defined in RFC 4776.  For more information see bug 1770932
  (https://bugs.launchpad.net/neutron/+bug/1770932)

Changes in neutron-lib 1.14.0..1.15.0
-------------------------------------

2b5d1fd Fix list_resource_providers filters
e17b655 Switch to stestr
a948801 Add DHCP_OPT_CLIENT_ID_NUM
1bca904 bgpvpn API definition: add API_PREFIX
0f625d4 Update api-ref to reflect update allowed for subnet segment_id
6ad1a62 api-ref: document sorting parameters for address scope
7f75b63 api-ref: add 'project_id' as sort_key
5730aa2 Add API extensions to advertise support of std attributes for BGPVPN
65da70c Adding tags to responses for relevant resources
61f8615 Documenting L3 agent scheduler
06fe7a9 api-ref: add filter parameters to agents
b8be5da api-ref: add filter parameters to resource management
34b984e api-ref: several fixes on security group rules
2d99856 Adding qos policy to the different port and network operations
0de474f Introduce API definition of Floating IP Port Forwarding
47fed0e Add empty-string-filtering API extension
1c7d634 Documenting L3 External gateway mode
e4d3946 Add timestamp attributes to standard resources
0d20694 api-ref: add filter parameters to rbac
341f8a1 api-ref: document sorting for resource management
1d645c8 Add port bindings to RPC topics resources
a508fa1 'sfc' and 'flowclassifier' API extension definitions (networking-sfc)
67fc665 Add documentation for callback priority
5693e90 Trivial: Update pypi url to new url
a24bf98 Add placement calls for bandwith resource provider


Diffstat (except docs and test files)
-------------------------------------

.gitignore                                         |   1 +
.testr.conf                                        |   8 -
api-ref/source/v2/address-scopes.inc               |   1 +
api-ref/source/v2/agents.inc                       |  14 +-
api-ref/source/v2/flavors.inc                      |  16 +
api-ref/source/v2/floatingips.inc                  |  17 +
api-ref/source/v2/index.rst                        |   1 +
api-ref/source/v2/intro.inc                        |  10 +
api-ref/source/v2/l3-agent-scheduler.inc           | 165 +++++++++
api-ref/source/v2/logging.inc                      |  14 +
api-ref/source/v2/metering.inc                     |  31 +-
api-ref/source/v2/networks.inc                     |  36 +-
api-ref/source/v2/parameters.yaml                  | 408 +++++++++++++++++++--
api-ref/source/v2/ports.inc                        |  56 ++-
api-ref/source/v2/qos.inc                          |  45 ++-
api-ref/source/v2/rbac-policy.inc                  |   7 +
api-ref/source/v2/routers.inc                      |  57 ++-
.../agents/agent-l3-router-add-request.json        |   3 +
.../agents/agent-l3-router-remove-request.json     |   3 +
.../agents/agent-l3-routers-list-response.json     |  75 ++++
.../agents/router-l3-agent-list-response.json      |  32 ++
.../floatingips/floating-ips-list-response.json    |   6 +-
.../floatingips/floatingip-create-response.json    |   3 +-
.../floatingip-disassociate-response.json          |   3 +-
.../floatingips/floatingip-show-response.json      |   3 +-
.../floatingips/floatingip-update-response.json    |   1 +
.../v2/samples/logs/log-create-response.json       |   2 +
.../source/v2/samples/logs/log-list-response.json  |   2 +
.../source/v2/samples/logs/log-show-response.json  |   2 +
.../v2/samples/logs/log-update-response.json       |   2 +
.../samples/networks/network-create-response.json  |   1 +
.../networks/network-multi-create-response.json    |   1 +
.../networks/network-multi-show-response.json      |   1 +
.../networks/network-provider-create-response.json |   1 +
.../networks/network-provider-show-response.json   |   1 +
.../v2/samples/networks/network-show-response.json |   1 +
.../samples/networks/network-update-response.json  |   1 +
.../networks/networks-bulk-create-response.json    |   2 +
.../networks/networks-provider-list-response.json  |   4 +
.../v2/samples/ports/port-bind-create-request.json |   3 +-
.../samples/ports/port-bind-create-response.json   |   4 +
.../v2/samples/ports/port-bind-show-response.json  |   4 +-
.../v2/samples/ports/port-bind-update-request.json |   3 +-
.../samples/ports/port-bind-update-response.json   |   4 +
.../v2/samples/ports/port-create-request.json      |   1 +
.../v2/samples/ports/port-create-response.json     |   4 +-
.../v2/samples/ports/port-show-response.json       |   4 +-
.../v2/samples/ports/port-update-request.json      |   3 +-
.../v2/samples/ports/port-update-response.json     |   4 +
.../v2/samples/ports/ports-bind-list-response.json |  10 +
.../samples/ports/ports-bulk-create-request.json   |   3 +-
.../samples/ports/ports-bulk-create-response.json  |   8 +
.../v2/samples/ports/ports-list-response.json      |   8 +
.../v2/samples/qos/policies-list-response.json     |   5 +-
.../v2/samples/qos/policy-create-response.json     |   5 +-
.../v2/samples/qos/policy-show-response.json       |   5 +-
.../v2/samples/qos/policy-update-response.json     |   5 +-
.../routers/router-add-interface-response.json     |   3 +-
.../v2/samples/routers/router-create-response.json |   5 +-
.../routers/router-remove-interface-response.json  |   1 +
.../v2/samples/routers/router-show-response.json   |   5 +-
.../v2/samples/routers/router-update-response.json |   5 +-
.../v2/samples/routers/routers-list-response.json  |  10 +-
.../security-group-create-response.json            |  10 +
.../security-group-rule-create-response.json       |   2 +
.../security-group-rule-show-response.json         |   2 +
.../security-group-rules-list-response.json        |   8 +
.../security-group-show-response.json              |  15 +
.../security-group-update-response.json            |   5 +-
.../security-groups-list-response.json             |  15 +
.../samples/segments/segment-create-response.json  |   2 +
.../v2/samples/segments/segment-show-response.json |   2 +
.../samples/segments/segment-update-response.json  |   2 +
.../samples/segments/segments-list-response.json   |   4 +
.../v2/samples/subnets/subnet-create-response.json |   1 +
.../v2/samples/subnets/subnet-show-response.json   |   3 +-
.../v2/samples/subnets/subnet-update-response.json |   5 +-
.../subnets/subnetpool-create-response.json        |   3 +
.../samples/subnets/subnetpool-show-response.json  |   3 +-
.../subnets/subnetpool-update-response.json        |   5 +-
.../samples/subnets/subnetpools-list-response.json |  10 +-
.../subnets/subnets-create-bulk-response.json      |   2 +
.../v2/samples/subnets/subnets-list-response.json  |   2 +
api-ref/source/v2/security-group-rules.inc         |  25 +-
api-ref/source/v2/security-groups.inc              |  26 ++
api-ref/source/v2/segments.inc                     |  14 +
api-ref/source/v2/subnetpools.inc                  |  35 +-
api-ref/source/v2/subnets.inc                      |  58 ++-
api-ref/source/v2/tags.inc                         |   3 +-
api-ref/source/v2/trunk.inc                        |  21 ++
neutron_lib/agent/topics.py                        |   4 +
neutron_lib/api/converters.py                      |  43 +++
neutron_lib/api/definitions/__init__.py            |  16 +
neutron_lib/api/definitions/base.py                |   6 +
neutron_lib/api/definitions/bgpvpn.py              |   3 +
neutron_lib/api/definitions/bgpvpn_stdattrs.py     |  29 ++
.../api/definitions/bgpvpn_stdattrs_net_assoc.py   |  29 ++
.../api/definitions/bgpvpn_stdattrs_port_assoc.py  |  29 ++
.../definitions/bgpvpn_stdattrs_router_assoc.py    |  29 ++
.../api/definitions/empty_string_filtering.py      |  25 ++
neutron_lib/api/definitions/extra_dhcp_opt.py      |   2 +
.../api/definitions/floating_ip_port_forwarding.py | 129 +++++++
neutron_lib/api/definitions/flowclassifier.py      | 173 +++++++++
neutron_lib/api/definitions/sfc.py                 | 281 ++++++++++++++
neutron_lib/api/validators/__init__.py             |  26 +-
neutron_lib/clients/placement.py                   | 226 +++++++++++-
neutron_lib/constants.py                           |   3 +
neutron_lib/exceptions/placement.py                |   8 +
neutron_lib/plugins/constants.py                   |   1 +
.../definitions/test_bgpvpn_net_assoc_stdattrs.py  |  18 +
.../definitions/test_bgpvpn_port_assoc_stdattrs.py |  18 +
.../test_bgpvpn_router_assoc_stdattrs.py           |  18 +
.../unit/api/definitions/test_bgpvpn_stdattrs.py   |  18 +
.../api/definitions/test_empty_string_filtering.py |  18 +
.../test_floating_ip_port_forwarding.py            |  23 ++
.../unit/api/definitions/test_flowclassifier.py    |  30 ++
...g-filtering-api-extension-44cb392025dc359c.yaml |   5 +
...ngs-resource-messages-rpc-1382ba9842561cdb.yaml |   5 +
...ent-id-number-dhcp-option-a099f927eb8f99af.yaml |   8 +
...floatingip-portforwarding-17c284080541bc78.yaml |   6 +
.../notes/sfc-api-def-4f46632eadfe895a.yaml        |  11 +
.../std_attributes_bgpvpn-5a1c63f68d1ff6be.yaml    |   8 +
test-requirements.txt                              |   1 +
tox.ini                                            |  14 +-
129 files changed, 2803 insertions(+), 189 deletions(-)


Requirements updates
--------------------

diff --git a/test-requirements.txt b/test-requirements.txt
index f54decc..792e907 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -13,0 +14 @@ reno>=2.5.0  # Apache-2.0
+stestr>=1.0.0 # Apache-2.0






More information about the Release-announce mailing list