Change Log¶
This is the change log for the cooked_input Python package,
github archive: https://github.com/lwanger/cooked_input
for the latest documentation, see: https://readthedocs.org/projects/cooked-input/
see TODO.md for list of TODO items
- v0.5.2:
- added part two of the tutorial
- fixed bug in create_table when neither tag_str or field_names is provided
- v0.5.1:
- num_rows_per_page in style accepts None (no limit)
- v0.5.0:
- added TableStyle to Tables and get_menu.
- added create_table convenience function for creating tables.
- return_row_action (TABLE_RETURN_ROW) changed to return the whole row including the tag.
- fixed bug in ListConvertor to catch StopIteration exception caused by empty list
- added tk_get_page example.
- v0.3.0:
- added GetInput class
- changed kwargs to options for all calls. Removed options from cleaners and validators
- changed Cleaner, Convertor and Validator to abstract base classes (ABCMeta) and methods to abtract methods
- added get_menu and Table classes (Table, TableItem, etc.)
- added ConvertorError exception. Changed Convertors to use it
- added ChoiceConvertor to support get_menu
- ListConvertor now takes a GetInput instance to apply to each element in the list
- ListValidator now passes the length of the list to the len_validator. Also accepts an error format string for the
- the length validation
- fixed bug: menus now work if rows is a single MenuItem, not a list of MenuItems
- modified get_menu example for new menu structure
- added elem_validators to get_list to validate list items
- added IsFileValidator
- changed parameter names on Regex cleaner to match re.sub parameter names
- added count parameter to RemoveCleaner
- removed TableConvertor. This functionality has been replaced by the Table class.
- added minimum and maximum parameters to get_date
- added requirements to setup.py. Moved __version__ to version.py
- v0.2.12:
- renamed ChoicesValidator to ChoiceValidator
- added case_insentive flag to ChoicesCleaner
- check AnyOf and NoneOf for list of values, not just list of validation functions. Allows saying: NoneOfValidator([‘foo’, ‘bar’])
- put cleaners, convertors and validators in alphabetic order in the documentation
- v0.2.11:
- required option was backwards… fixed
- added last_word style for CapitalizeCleaner
- added isstring function to input_utils for detecting strings (and string-like things). This should handle strings (str, unicode, raw, bytes, etc.) more robustly, including sub-classes.
- added print_function futures import so error_callback works in Python 2.x
- more coverage tests
- v0.2.7:
- Clean up of pypi setup, readme, and documentation.
- Ran code through linters and found several issues.
- v0.2.3:
- Added count option to ReplaceCleaner
- Added RemoveCleaner
- Added RegexCleaner
- Added ChoiceCleaner
- Added cleaner example, for choice, replace and regex cleaners.
- Added default values to get_user_info example and pythonized the user table.
- Added input_utils.py and put compose, make_pretty_table, and put_in_a_list in it.
- Changed RegexValidator parameter from ‘regex’ to ‘pattern’ for consistency with RegexCleaner.
- Fixed 2.7 incompatibilities. Passing all tests in Python 2.7 and 3.6 now. Added future to requirements.txt.
- Calling future.raisefrom in convertors.py broken.
- v0.2.2:
- Added minimum and maximum parameters to get_int and get_float convenience functions.
- v0.2.1:
- Added convenience functions for: get_sring, get_int, get_float, get_boolean, get_list, get_date, and get_yes_no.
- Added examples of calling the convenience functions to the examples (e.g. get_ints, get_lists, get_strs, simple_input).
- Updated the tutorial to use the get_int convenience function. Also show example of PasswordValidator.
- Created exception for: MaxRetriesError (subclassed from RuntimeError), raised when the maximum number of retries is exceeded.
- Created exception for: ValidationError (subclassed from ValueError), raised when a value does not pass validation.
- Get_*, Convertors and validators now raise MaxRetriesExceeded and ValidationError.
- Added pytest tests for getting ints and floats. A lot more case to add.
- v0.2.0:
- Made a major change to how errors are handled. Added error_callbacks, convertor format strings, and
- validation convertor strings. This changed most of the code base and some of the examples.
- Added print_error, log_error, and ignore_error error callback routines.