CHANGES
=======

0.0.19
------

* Fixing up Lint issues
* Fix bash errors
* Clean State Machine Graphs
* Inverse the logic in run\_tests.sh
* Ignore W1618
* Require python3 for chewie
* Clean up some leftover code climate cruft
* Remove unused environment variables
* Add .stickler.yml
* Move Docker Pull into Integration Stage in .travis
* Remove CodeClimate from Chewie
* Split Travis Functions into Stages
* Remove outdated developer documentation
* Whitespace tidy
* Update dependency pytype to v2019.8.9
* Lock to known good version of eventlet
* Update dockerfile for chewie to use faucet/python3
* Allow Multiple Authentication Attempts on MAB Ports
* Add .pylintrc for Explicit Linting Options for Evenlet.Green.Socket
* Rename IPActivity to MAB
* BUGFIX: Remove Port State Machines on Port Down Event
* Add Logging to Socket Setup
* Refactor Sockets to Remove Redundant Code
* fixed dependency to array
* Update dependency pytype to v2019.7.30
* Add Graphs to State Machines
* Add Integration Tests
* Move Unit Test to test/unit directory
* Refactor Test Run Script
* Update dependency pytype to v2019
* In python3 exceptions no longer have .message
* Remove EAP Message Assumption for Concat Radius Datatype
* Add Michael Washer to AUTHORS file
* If we don't specify an explict version PBR will calculate from git tags
* Add Readme to Docs
* Refactor Attribute Type
* Add Configuration for ReadTheDocs

0.0.18
------

* Update API Interface to use \*\*kwarg
* Configure .renovaterc.json
* Add renovate.json
* Preversion 0.0.18

0.0.17
------

* BUGFIX: Fix EAP Response to Preemptive Requests from Chewie
* Speed up deploy stage

0.0.16
------

* Switch to using travis build stages
* Preversion 0.0.17
* Add Tests for MAB Functionality
* Add MAB Functionality to Chewie and Clean up State Machines SoC
* BUGFIX - Fix Chewie Pytest Red Build Issues
* use a different timeout for radius resedning
* Preversion 0.0.16

0.0.15
------

* possible fix for aaa\_identity == None, if receiving chewie initiated reply

0.0.14
------

* add interface for filterid
* add vlan name to auth handler
* send vlan name to faucet on logon
* Preversion 0.0.15
* 0 is an allowed id
* remove exception logger (faucet will now crash and log)
* change log levels
* check next timerid request job is added to queue. Continously send id requests after port up if no one 'active' on port
* fix unit test for port status
* skip broken test
* signature had changed
* change reauth period to use session timeout value
* periodic reauth (currently 40 seconds). should probably increase
* send (delayed by 20 seconds) identity request on port up
* add tunnel, filter, nas ip radius attributes
* id request
* send preemptive identity request on port up
* add port id to state machine logger prefix
* preversion v.0.0.14

0.0.13
------

* Remove unwanted dependencies from Dockerfile.test
* Automatically lookup ubuntu/debian releases for CI package push
* add hexlify
* handle validate authenticator case for both request and response radius messages
* check message\_authenticator and response\_authenticator if possible
* Fix tests using wrong message type. Which uncovered bug where attempting to parse packet which should be discarded
* Fix error where RADIUS State attribute was incorrectly returned when authentication process is restarted during another
* change formatter to support ports numbered up to 65535
* Port-Up State to Ignore Previous Requests
* missing commas. and version 0.0.13
* use PBR

0.0.12
------

* Release chewie v0.0.12
* Update debian package dependencies

0.0.11
------

* pylint
* increase eventlet.sleep to 1
* pytype ignore invalid name on process() created by transitions
* add transitions to install\_requires
* use pytransitions for state machine
* Release chewie v0.0.11
* use snake case for rfc variables/functions
* ignore 'from collections import ...' error with pytype
* remove debug print
* change tuple from eap/radius output queue to a namedtuple
* allow transition from timeout\_failure(2) by providing identity response
* Add information to the README.md
* Add Dockerfile.test for running tests locally
* Add PEAP Functionality to Chewie
* remove empty test\_fuzzer\_finds.py
* fix MessageParseError exception constructor inputs
* test against MessageParser.one\_x\_parse() instead of eap\_parse()
* pylint
* remove unused imports
* Add dictionary that always returns None
* fuzz radius

0.0.10
------

* Release chewie v0.0.10
* fix a bug where client could not authenticate after the state machine enters timeout failure
* use \_\_cause\_\_ instead of original\_error parameter
* cahnge last struct.unpack exceptions
* convert a struct.error to MessageParseError
* more raise MessageParseError when radius parsing fails
* Add 'Raises' to docstring
* Use put\_nowait() instead of put()
* 4 main chewie methods tested with mocks
* leaving with broken test until we factor out the radius code
* pylint
