CHANGES
=======

1.6.22
------

* Fix ln -s for pre-commit
* Update version
* Revert "Upgrade DPDK to 18.02."
* Upgrade DPDK to 18.02
* Docs for ACL mirror action
* TODOs
* Put faucet pipeline config in own file
* Use common start/stop watchers
* Start watchers
* Add start/stop watcher helpers
* Switch from coveralls to codecov
* Revert "Faucet and Gauge can use same signal handler."
* Revert "RyuAppBase."
* RyuAppBase
* Faucet and Gauge can use same signal handler
* Still a list
* Still incorrect watchers iterator
* Watchers is a dict itself
* Revert "enumerate order."
* enumerate order
* Gauge should hang up on unknown DPs
* Increase min test coverage
* Add coverage for add/del route
* Test coverage for add/del route
* Test coverage for datapath disconnect
* Test coverage for learn FIB route from packet
* Provide initial configuration for pyup
* Increase min coverage
* MirrorACL test case fix
* Test coverage for TFM
* Only call learn\_hosts() where necessary
* pylint
* Remove unnecessary test attributes
* Reorganize Valve tests to base class without tests
* Re-enable pytype
* pytype
* pytype
* pytype
* Revert test\_valve.py change to base class
* Revert pytype
* Revert "Revert "pytype.""
* Disable pytype to investigate coverage decrease
* Revert "pytype."
* pytype
* pytype
* Revert "pytype."
* pytype
* Pre-version v1.6.21

1.6.21
------

* Release v1.6.21
* appease 2to3
* Add --display-labels option to fctl
* Exclude base class from testing
* pylint
* Test LLDP results in packet outs
* Remove unused matches
* Remove unneeded ryuapp variables
* Move common initializers to valve\_ryuapp.py
* Miss call to self.get\_setting()
* Setting needs to be upper
* Move get\_setting() method to valve\_ryuapp.py
* Revert "Move more common features to valve\_ryuapp.py."
* Revert "Move common logging/setting parsing to valve\_ryuapp."
* Move common logging/setting parsing to valve\_ryuapp
* Move more common features to valve\_ryuapp.py
* Use common RyuApp class
* Test request\_reload\_config()
* Increase test coverage for valves manager loads\_configs()
* Add testing for valve managers load\_configs()
* Move hard to test code out of faucet.py
* reload\_config() doesn't need to return cold start flag
* Add coveralls.io badge
* Increase minimum test coverage
* Increase test coverage for fctl
* Reparse args for testability
* Test new\_valve()
* pylint
* Add test coverage for main
* Increase minimum test coverage
* Don't have to hardcode astroid
* Test coverage for fctl
* pytype found corner case with no resolver flows
* New pytype workaround
* Prevsion 1.6.21

1.6.20
------

* Revert "Test new\_valve()."
* Version bump for release
* Test config file change detection
* Test new\_valve()
* Test parse\_configs()
* Move new\_valve to valves manager
* pylint
* Fix ofdescstats handler
* Increase minimum unit test coverage
* Use port state helper
* Add port state decoder
* Move ofdescstats\_handler to valve
* Move more un-unit testable code out of faucet.py
* Test valve packet in
* More test coverage for valves manager
* Need to give callable to valves manager so can send flows to DP by ID
* Initial coverage for valves manager
* faucet.py no longer needs config hashes
* Move config change stat to valves\_manager
* BGP gets metrics as initializer
* Incremental move of BGP to valves manager
* Incremental move of update\_metrics to valves\_manager
* Incremental move faucet.py state to valves\_manager
* Add ValvesManager class (incremental change)
* Ryu 4.22
* Need to reset nexthop retries if we get more packets for long-term dead nexthop
* Clarify ACL change detection
* Test other valves which may not be stacked
* Verify stacking flooding
* Clarify flooding test messages further
* Clarify messages from flooding test
* Run docker pull explicitly to avoid Travis timeout
* Increase test coverage handling packet in
* pylint
* Move pkt\_meta parsing to valve
* Test handling of unknown port number
* Check port number is known for port status handling messages
* Use common mirroring actions implementation
* Fix port name reference in interface mirroring
* Simplify use of resolve\_port()
* dp ref
* Consider only other stacked values
* Updated configuration docs with new config changes
* Fixed controller crash on using port names instead of number
* Updated documentation to include PKI Setup
* Resolves issue #1547. Mirror interface supports more than one port. Modified config to allow single mirror port and list. Added unit tests to check multi port mirroring
* Learn test tuning
* Increase minimum coverage
* Force initialization of test stack
* Update minimum code coverage threshold
* Coverage for update\_config\_metrics
* Add valve\_flood coverage
* pylint
* Sanity check stacking
* Test coverage for mirroring
* More adaptive timeout for Learn test. Add coverage for Prometheus config variables
* pytype for check\_faucet\_config.py
* Add coverage for ofchannel\_log
* Quiten test\_check\_config.py
* Add test coverage for check\_faucet\_config
* Fix Learn test
* git hook path
* pre-commit update
* pre-commit update
* Doc changes to recommend pre-commit hook
* Fail int tests if code coverage drops below minimum
* Test ping unknown neighbor
* Add route for which gateway unresolvable
* Test run of event notifier
* Fix unclosed file warning
* Sanity test TFM parser
* Add support for lists of acls\_in
* Reduce Learn test pace slightly (unrealistically low latency)

1.6.19
------

* Re-install blackhole FIB routes periodically
* Bump versions for release
* Clean up documentation on installing and running faucet
* Test stack and non stack DPs
* Move test suite onto new faucet start script
* Move VM documentation to Sphinx
* Fix config parsing for meters
* avoid hardcoded port in FaucetDeleteConfigReloadTest
* Test opstatus\_reconf
