Revision history for Control-CLI-AvayaData

0.01	2011-06-07
	* Initial internal posting

0.02	2011-06-16
	* Changed login() & connect() to return output of login sequence with new return_output argument
	* Errmode argument for all methods was not working
	* Updated pod with Control::CLI 1.03 new eof method

0.03	2011-06-19
	* Re-worded pod description section

0.04	2011-08-24
	* Updated matching patterns
	* Modified 0.02 changes and removed return_output argument for login() & connect()
	* Now login() & connect() will return output if an array is seeked as return argument
	* Now login() & connect() accept return_reference argument
	* Detection of generic family type now only carps if errmode is 'die' or 'croak'
	* Added read_attemps argument to login() & connect()

0.05	2011-09-02
	* Added VSP-7000 support

0.05	2011-09-07
	* Corrected warnings about uninitialized value when cmd() timed out before family_type detection 

0.06	2011-09-11
	* Added config_context method
	* Fixed some issues with prompt pattern matching
	* Modified test script

0.07	2011-10-06
	* Modified command error matching regex for ACLI PassportERS under _determineOutcome()
	* Modified InitPrompt regex strings

0.08	2011-10-07
	* Moved syntax error patterns away from _determineOutcome() into global variables

0.09	2011-11-27
	* Added new attributes: 'slots', 'ports', 'is_dual_cpu'
	* Modified test script to test above new attributes
	* Also enhanced test script to show optional attributes

0.10	2012-09-01
	* Modified error patterns for BaystackERS, PassportERS & Accelar family types
	* Method last_cmd_errmsg suppresses the bell character from error messages
	* Modified prompt and more patterns for SecureRouter
	* Optimized port attribute to use cli commands with less output on PassportERS
	* Added stp_mode, sysname, base_mac attributes
	* Changed login() to prioritize login pattern matches to avoid false prompt detections
	* Increased default login() read_attempts from 5 to 10
	* Modified login banner detection patterns
	* Bug in login(); a failed login was not detected if resuming login() from password
	* Added wake_console method and argument to connect() and login()

0.11	2014-06-01
	* login() now remembers loginstage even after failed telnet authentication
	* Modified error patterns for BaystackERS
	* Attribute stp_mode was not being set correctly on older stackables pre-dating rstp/mstp
	* Updated y/n prompt match regex to also match yes/no
	* Updated wake_console sequence as it was not working on SecureRouter
	* Updated login() to match SSH exception changes made in login() of Control::CLI v1.05
	* Fixed shorthand syntax for connect($host) which was not working
	* Shorthand connect syntax now connect($host [$port]) which will work also with IPv6 addresses
	* Updated new & connect methods for new Control:CLI v1.05 connection_timeout
	* flush_credentials method is re-defined in this class to also handle enable-password
	* Code changes to pass Perl Critic severity 4 and above violations
	* Updated exporter tags to include new Control:CLI v1.05 useIPv6 symbol
	* login() method was not always returning output on login failure
	* Modified more prompt match patterns to remove a carriage return under PassportERS family type
	* Setting debug on constructor was failing to enable debug() on parent class Control::CLI
	* cmd_prompted() now also accepts 'progress_dots' argument like cmd() does
	* last_prompt() was sometimes returning the last prompt with a carriage return pre-pended
	* Changed naming from 'Avaya Data' to 'Avaya Networking'

0.12	2014-07-26
	* Discovery of family_type can no longer be based on prompt match alone and uses extended discovery
	* Modified extended discovery which also now covers PassportERS and BaystackERS family types
	* Method login() now may set the family_type attribute even on login failure if it matches a banner pattern
	* Made login more robust when connecting via serial console; wake_console is now simply a carriage return
	* Updated error patterns
	* Added debug_file() method to send debug messages to file 

1.00    2014-07-29
        * First version to publish on CPAN

2.00	2015-03-15
	* As of this version, these methods support a non-blocking mode and have their own polling method:
	  connect(), login(), cmd(), attribute(), change_baudrate(), enable(), device_more_paging(), device_peer_cpu()
	  (requires Control::CLI version 2.01)
	* Debug messages now rely on Control::CLI debug level and use bits 4 & 8
	* Attribute port was not picking up fastEthernet ports on older ERS8300 & ERS8600 in ACLI/NNCLI mode
	* Added argument "feed_list" to cmd_prompted()
	* Method config_context now returns an empty string if the device is not in config mode
	* New attributes 'oob_ip', 'oob_virt_ip', 'oob_standby_ip', 'is_oob_connected', 'mgmt_vlan', 'mgmt_ip'
	* New attributes 'baudrate' and 'max_baud'; also change_baudrate() now makes use of them
	* change_baudrate() with baudrate set to 'max' now forgiving (returns success) if baudrate cannot be increased
	* Module now supports the same export tags for class methods as Control::CLI
	* prompt_credentials can now be set either as a code ref or as an array ref where the 1st element is a code ref
	* Added console() method to better control wake_console sequence sending
	* Made changes to 'ports' attribute to accomodate 40GbE channelized interfaces which are new in VSP VOSS 4.2

2.01	2016-02-07
	* Exteneded discovery was incorrectly setting up WLAN9100 family_type device with SecureRouter prompt patterns
	* Updated error patterns for detecting error generated on Avaya device and to use single line patterns
	* Updated login() & connect() methods to leverage new Control::CLI data_with_error() with new argument
	  (requires Control::CLI version 2.02)
	* Fixed telnet handling of WLAN9100 which generates unprintable characters in telnet output (but not with SSH)
	* Locking onto WLAN9100 prompt was not working properly if calling login() on a configuration context prompt
	* Sub-classing method syntax changed to more flexible hash style arguments (old list style format still accepted)
	* Patterns for responding to device confirmation yes/no prompts updated