CHANGES
=======

2.0.0
-----

* Revert "Switch to using hacking checks from neutron-lib"
* Set defaultbranch to stable/mitaka
* Add documents of NWA
* Switch to using hacking checks from neutron-lib
* Drop documentation on OpenFlow plugin
* doc: fix formatting error
* Fixed bug that old VLAN ID is used in multi-POD environment
* Fixes limitation of nwa create tenant
* Add unit tests
* Fixed delete_tenant at nwa error response
* Fixed nwalib.client.create_tenant
* doc: fix typos
* doc: use readthedocs.org for document hosting
* doc: update section titles
* doc: Use default theme
* doc: link nwa/devstack to avoid warnings
* Remove unnecessary spaces in test data JSON file
* Fixed bug of deleting vm that is created with port
* Use constrainted environments for testing
* Fix a bug that delete_tenant_fw does not work
* Fix a bug that L3 RPC does not work properly
* Make delete_port_precommit of necnwa mech driver work
* Ensure floating IP status to DOWN when disassociated
* Ensure update_tenant_fw is called in router-interface-add/delete
* fixed bugs: change keyword to 'SUCCEED' from 'SUCCESS'
* Use neutron stable/mitaka until mitaka version is released
* fixed error of NetworkSegment
* Updated from global requirements
* UT: Merge TestNwaClientBase and TestUtNwaClientBase
* nwalib: Split LBaaS/FWaaS methods to separate modules
* nwalib: Drop unused semaphore methods
* devstack: document NWA devstack
* devstack: Allow to specify L3 plugin
* Define main() in networking_nec.cmd.eventlet.nwa_agent
* Fix parameters of _device_to_port_id
* nwalib: Split tenant/L2/L3 methods to separate modules
* NwaClient: remove unused eventlet.pool
* Move workflow.NwaWorkflow.path(
* UT: cleanup test_client
* nwalib: Move workflow related stuff in NwaClient to NwaRestClient
* nwalib: Move workflow related stuff in RestClient to NwaRestCilent
* nwalib.restclient: rearrange internal methods
* Refactor nwalib client and unit tests
* Drop unused method nwa.l2.utils.update_port_status
* Cleanup TODO comments
* Use resource_group_file option
* Rewrite TestNwaClientScenario scenarios to more readable one
* Use testscenarios.WithScenarios instead of load_tests
* Move TestNWAAgentBase to a separate module
* Remove unnecessary LOG variable from unit test code
* Use cfg.CONF from oslo_config directly
* Disable unused-import in pylint
* Move plugins.necnwa to one more upper directory
* Move nwa unit tests under tests/unit
* Do not pass all proxy_* instance to individual constructors
* Maintain nwa_data in one place
* proxy_l3: Use AgentProxyException for failure operation
* Rewrite test_proxy_l2 with testscenarios
* test_proxy_l2: Move test data to JSON files
* Update requirements
* Update documentation
* Drop unnecessary ok, ng, ctx arguments from client
* Add NWA L3 functions
* Cleanup unit tests
* Drop 'new' arg from n_rpc.create_connection
* Remove apply_async and old call_workflow
* Rewrite TestNwaClient.test_setting_fw_policy
* Remove apply_async usage in LBaaS/FWaaS related methods
* Remove apply_async usage in L3-related client methods
* Remove apply_async usage with meaningless callback
* Drop fwaas and lbaas files
* Disable pylint interface-not-implemented rule
* DevStack plugin support for NWA plugin
* Use SqlTestCaseLight for db-involving test cases
* Use neutron_lib in unit tests
* Do not evaluate strings when calling logging methods
* Make coverage work
* Simplify agent/proxy_* logic using AgentProxyException
* Make log_method_return_value decorator log exception
* Remove too-many-locals in proxy_l2.py
* Add log_method_return_value decorator
* Enable pylint check too-many-locals
* Enable pylint rules: too-many-{instance-attributes,public-methods}
* Enable pylint rule superfluous-parens
* Use 'from xxx import yyy" pattern
* Enable abstract-method pylint check
* Delete non-existing method calls
* neutron-lib support
* Enable pylint check unused-variable
* Enable pylint checks redefined-builtin and redefined-outer-name
* Enable pylint check super-init-not-called
* Enable rules with no errors
* renamt NWATenantBindingN to NWATenantKeyValue
* Update requirements
* UT: Remove unnecessary config ini file preparation
* Remove unused config option: port_map
* Support JSON file for resource_group
* Use _(
* Use log_method_call decorator to log method args
* Remove unnecessary len(xxx
* Use 'if val' / 'if not val' for boolean logic
* Move return to inside try
* Fix typos
* Remove unnecessary usage of <dict>.keys(
* Use {} instead dict(
* Rewrite nose-specific yield tests with testscenarios
* Remove unnecessary wait in unit tests
* Use set_override to change cfg.CONF in unit tests
* Remove unnecessary eventlet.monkeypatch
* Fix RPC callback initialization
* NECNWA Plugin Core
* Support db migration for networking-nec
* tox.ini cleanup
* Use _ from oslo i18n wrapper
* Drop openstack-common.conf
* Add python3 support
* Remove bytecode before running tests
* Drop OpenFlow plugin
* Fix misspelling
* Drop CLI commands related to OpenFlow plugin
* Update translation setup
* Split nwalib unit test into submodules
* NWA client library
* Consume oslo i18n wrapper from local repository
* Define has_neutron_plugin_security_group using override-defaults
* _get_tenant_id_for_create is now deprecated
* Sync the logic of _get_router_for_floatingip with Neutron
* Updated from global requirements
* LOG.warn -> LOG.warning
* Enable neutron hacking check
* Add neutron client packet-filter support
* Add developer tips
* Make docs build detect warnings an errors
* Update global requirements
* Rename i18n to _i18n
* Drop python 3.3 support from setup.cfg
* Consume _ from networking_nec.i18n
* Update global-requirements
* Update a method name in a comment
* remove python 2.6 trove classifier
* Fix pep8 and py27 unit tests
* Update doc to catch up stackforge retirement
* Update .gitreview to catch up stackforge retirement
* Add plugin deprecation notice
* Avoid using include to outside in document
* Update the document
* Change ignore-errors to ignore_errors
* Define AGENT_TYPE_NEC in networking-nec repo
* Catch up with signature change of L3 agent notifier
* Decomposition phase2 of NEC plugin
* Skip DVR related agent scheduler unit tests
* README: add how to run stable branch
* Stop using neutron.common.test_lib
* Stop specifying neutron in tox.ini
* Consume loopingcall from oslo_service instead of oslo-incubator
* Remove usage of python 2.6 style exc.message
* Remove usage of contextlib.nested
* Update global requirements
* Consume test_agent_schedule from a new location
* tests: stop overwriting neutron BaseTestCase configuration files
* update get_port_and_sgs to new signature
* Refer to MIN/MAX_VLAN_TAG from neutron.plugins.common.constants
* Open Liberty development

2015.1.1
--------

* Consume ovs_lib from neutron.agent.common
* Pin unit test dependency to neutron stable/kilo
* Switch from neutron.common.log.log to oslo_log.helpers.log_method_call
* Catch up neutron unit test reorganization
* Honor status set by caller to create_port

2015.1.0
--------

* Remove data_files entry from setup.cfg
* Skip test_router_add_gateway_no_subnet for OpenFlow router
* Ignore (Port)NotFound exception in status update
* Move unit test for utils to its test module
* Ignore StaleDataError in port status update during deactivate_port
* Update devstack README
* Run test on neutron master branch
* Revert usage of RPC namespace from server to agent
* Make pylint check networking_nec module
* devstack: Increase OVS logging level
* Update README
* Move plugin-specific devstack code to its own repo
* Update .gitignore
* Remove entry_points for plugin and agent
* Updated from global requirements
* Fix remaining hacking and pep8 errors
* Update hacking to 0.10 series
* Enable pylint check
* Replace IPv4 and IPv6 default addresses with constants
* Remove remaining do_delete from unit tests
* Fix nec config and agent in planned neutron after decomposition
* Remove duplicated code planned to be kept in Neutron
* Update README
* Remove root_helper arg for ovs_lib and SecurityGroupAgentRpc
* Move portinfo_changed check to l2manager
* Remove unnecessary "NEC plugin specific" comments
* Remove unused _vendor_extensions attr from NECPluginV2Impl
* Add TODO and NOTE to l2manager
* Remove _backend suffix from l2manager methods
* Scope NEC agent rpc api using a messaging namespace
* Initialize OFC manager in the top plugin class
* Move update_resource_status* to separate functions
* Move the L2 related actual logic to L2Manager
* Make BackendImpl method names called from others public
* Move PortBindingMixin to separate module
* Rename nec_router.py to router.py
* Split logic which communicates backend into separate class
* Show progress output while running unit tests
* Move RPC API and callback to a separate module
* Lookup policy.json from neutron in unit tests
* Update documents a bit
* Update README.rst
* Add README of devstack plugin
* Fix the logic to get the repo top dir
* Add devstack plugin for networking-nec
* Split plugin class to sync with neutron decomposition code
* Split neutron core and vendor extensions
* Register plugin-specific options explicitly
* Remove NECPluginApi dependency on agent_rpc.PluginApi
* Refer consolidated db models
* Update tox.ini to point github work repo
* Remove manually configured extension path from test plugin
* Remove __main__ check in l2_agent
* Fix unit test failures
* Set OS_LOG_CAPTURE in .testr.conf
* Remove config shortcuts
* Use extensions from neutron code base
* Use plugin db model from neutron code base
* NEC: Consolidate NEC plugin models
* Update test-requirements
* Rename nec_plugin.py to plugin.py
* Fix setup.cfg
* Fix pep8 issues
* Move plugins.openflow.common.* to the plugin top dir
* Prepare own i18n module
* Update requirements.txt
* Fix import order
* Add oslo libraries to requirements.txt
* Use graduated oslo_log and oslo_utils.uuidutils
* Add openstack.common module
* Rename neutron.openstack.common
* Fix import paths from neutron to networking_nec
* Add neutron dependency
* Add missing __init__.py
* Update README
* Rename neutron to networking_nec
* Initial Cookiecutter Commit
* Generated new .gitreview file for networking-nec
* oslo: migrate to namespace-less import paths

2015.1.0b2
----------

* Add option to remove networks from dead DHCP agents
* Add and use SecurityGroupAgentRpc
* tests: don't spread fixtures.TempDir throughout test cases
* nec: drop usage of SecurityGroupServerRpcApiMixin
* hacking: enable H238 (old style class declaration, use new style)
* Remove _delete_port_security_group_bindings from delete_port
* Avoid unnecessary explicit str() conversion around exceptions

2015.1.0b1
----------

* Use comments rather than no-op string statements
* Enforce log hints
* Update i18n translation for NEC plugin log msg's
* Convert several uses of RpcCallback
* Migrate to oslo.utils
* Drop RpcProxy usage from nec plugin
* Drop RpcProxy usage from neutron.agent.rpc.PluginApi
* switch to oslo.serialization
* Use RPC instead of neutron client in metadata agent
* Remove XML support
* NEC plugin: Allow to apply Packet filter on OFC router interface
* Empty files should not contain copyright or license

2014.2
------

* remove openvswitch plugin
* Set vif_details to reflect enable_security_group
* HA routers master state now distributed amongst agents
* Remove @author(s) from copyright statements
* UTs: Disable auto deletion of ports/subnets/nets
* Remove hints from schedule_router
* Remove unused arg to config.setup_logging()

2014.2.b3
---------

* Improve some plugins help strings
* Make SecurityGroupsRpcCallback a separate callback class
* Make DhcpRpcCallback a separate callback class
* Make L3RpcCallback a separate callback class
* Refresh rpc_backend values in unit tests to those from oslo.messaging
* Remove auto-generation of db schema from models at startup
* Use jsonutils instead of stdlib json
* Return 403 instead of 404 on attr policy failures
* Add L3 Scheduler Changes for Distributed Routers

2014.2.b2
---------

* Change all occurences of no_delete to do_delete
* Avoid notifying while inside transaction opened in delete_port()
* Moved rpc_compat.py code back into rpc.py
* Remove the useless vim modelines
* Removed create_rpc_dispatcher methods
* Renamed consume_in_thread -> consume_in_threads
* Port to oslo.messaging
* Configure agents using neutron.common.config.init (formerly .parse)
* Introduced rpc_compat.create_connection()
* Introduce RpcCallback class
* Consistently use jsonutils instead of specific implementation

2014.2.b1
---------

* Monkey patch threading module as early as possible
* Added RpcProxy class
* NEC plugin: Bump L3RPC callback version to 1.1
* Remove redundant default=None for config options
* Allowed Addresspairs: Removing check for overlap with fixed ips
* Ensure core plugin deallocation after every test
* Fix H302 violations in plugins package
* Fix H302 violations in unit tests
* Enable flake8 E711 and E712 checking
* Replace HTTPSConnection in NEC plugin
* Enable hacking H301 check
* Remove last parts of Quantum compatibility shim
* Delete disassociated floating ips on external network deletion

2014.1.rc1
----------

* UT: do not hide an original error in test resource ctxtmgr
* Adds OVS_HYBRID_PLUG flag to portbindings
* nec plugin: allow to delete resource with ERROR status
* NEC plugin: Rename quantum_id column to neutron_id
* NEC plugin: Allow to add prefix to OFC REST URL
* NEC plugin: Remove a colon from binding:profile key due to XML problem
* Use save_and_reraise_exception when reraise exception
* Add enable_security_group option
* NEC plugin: Honor Retry-After response from OFC
* Change report_interval from 4 to 30, agent_down_time from 9 to 75
* Remove individual cfg.CONF.resets from tests
* Avoid long transaction in plugin.delete_ports()
* Fix ml2 & nec plugins for allowedaddresspairs tests
* Removes calls to mock.patch.stopall in unit tests
* Stop mock patches by default in base test class
* Fix bug:range() is not same in py3.x and py2.x
* NEC plugin: delete old OFC ID mapping tables

2014.1.b3
---------

* Replaces network:* strings by constants
* replace rest of q_exc to n_exc in code base
* NEC plugin: PFC packet fitler support
* nec plugin: Avoid long transaction in delete_ports
* Update License Headers to replace Nicira with VMware
* Replace binding:capabilities with binding:vif_details
* Plugins should call __init__ of db_base_plugin for db.configure
* Use "!=" instead of "is not" when comparing two values
* Handle racing condition in OFC port deletion
* nec plugin: Compare OFS datapath_id as hex int

2014.1.b2
---------

* Remove plugin_name_v2 and extension_manager in test_config
* Remove root_helper config from plugin ini

2014.1.b1
---------

* Rebind allowed address pairs only if they changed
* Added check on plugin.supported_extension_aliases
* Replace mox in unit tests with mock
* Apply six for metaclass
* Utilizes assertIsNone and assertIsNotNone
* Remove uneeded variable AGENT_NAME
* Enable one disabled tests in NEC plugin that blocked by 1229954
* Utilizes assertIn
* NEC plugin: Fix nec-agent unexpected exit due to RPC exception

2013.2.rc1
----------

* Allowed Address Pairs support in NEC plugin
* Fix port deletion in NEC Plugin
* Handle long integer conversion in NEC portinfo validation tests
* Use built-in print() instead of print statement
* Adds support for L3 routing/NAT as a service plugin
* Fix message i18n error
* fix conversion type missing

2013.2.b3
---------

* Allow None for binding:profile attribute
* OpenFlow distributed router support in NEC plugin
* Export portinfo thru portbinding ext in NEC plugin
* Fix resource status in NEC Plugin
* Separate packet filter activation from port operation in NEC Plugin
* Make NEC Plugin ignore duplicated messgae from the agent
* Delete useless and wrong comments in NEC Plugin
* Avoid overwrite value of deprecated name in conf
* Make NEC Plugin keep error resources
* refactor port binding codes
* Add agent scheduling for LBaaS namespace agent

2013.2.b2
---------

* Improve packet-filter test coverage in NEC Plugin
* Fix random OverflowError exceptions in gate-neutron-python26 tests
* rename quantum into neutron
* Refactor unit tests for NEC Plugin
* Ensure a name of packet filter is stored in NEC plugin
* Improve DHCP agent performance
* Register agent schedulers options in one place
* Divide dhcp and l3 agent scheduling into separate extensions
* Rename Quantum to Neutron

2013.2.b1
---------

* Pushing initial started code based on Glance project and infrstructure work done by the melange team
