CHANGES
=======

0.1
---

* Refactor to simplify use of factories promote reuse
* Added tests for attached checks
* Compatibility fixes between various python versions
* Embrace python 3 first
* Re-ordered params (--nocolor is now a top level argument)
* Always use loggers based on __name__
* Tweaks to docs/comments
* Added option to execute checks on startup
* Improved logging by configuring default logging settings prior to loading settings, allow settings logging to be reported
* Change config_definitions to use a cached property, this simplifies the implementation somewhat
* Change to check name to use setting (this makes more sense for plugin factory, as it's not as likely to be sub-classed)
* Changes to checks to ensure config definitions are valid for running checks (due to differing ways of loading them from settings)
* Tweak to get configuration from settings file on request (works around an issue fetching the settings before they are loaded)
* Improved reporting of names for class checks
* Attempt to auto import application specific checks (if they exist)
* Added a simple way to ensure checks are imported
* Updated tests to support changes to conf helpers
* Simplify configuration factory
* Added a sample application
* Rename factories to plugins, create much simplier factories into helpers
* Update settings to pass settings as kwarg
* Changes to how checks are called (settings is a kwarg again as this simplifies a lot), changes on how names are generated
* Make settings a positional argument rather than a named argument (as settings is used in context)
* Removed duplicate test
* Added NamedConfiguration helper (to allow for named config groups to be defined in settings, these are similar to factories but do not produce instances)
* Updated tests to handle change to tag storage location
* Refactor of where factory sits (makes sense to be a conf helper). Auto register for checks (thanks to checks registry now supporting this use-case)
* Obsessed..
* Support objects that have a checks method as a check
* Added sphinx docs and greatly improved inline docs
* Added python3.6 to travis CI
* Move out check import
* Added checks to factory
* Fixed bug when cli help from the __doc__ was being extracted from the wrong variable
* Added message level filtering
* Tweak to bottom border to make it clearer what each block of text relates to
* Fixed bug that causes an error if colorama is not installed (library should operate with or without colorama)
* Slight tweak to improve code score
* Fixed issue where no_color didn't default to *True* when colorama is not installed
* Tweak travis config to ensure colorama is installed
* Improved report to generate nice output (in colour). Test cases etc
* Removed CLI as it does not provide anything useful at this point
* Some clean up and test cases for the main CliApplication and associated objects
* Moved version into app class (default version to 1)
* Include logging version
* Updated gitignore
* Code clean up
* Added ThreadLocalNamedSingletonFactory, documentation improvements
* Added abc checks, more tests
* Pep8 fixes
* Remove circular import
* Introduced factory classes
* Added is_configured option to settings
* Pep8 code/cleanup fixes
* Updated tests back to unix style for tests, breaks windows but meh
* Added configuration for settings and logging
* Updated checks processing
* Updated test to run on windows
* Updated registry to support yielding check results
* Setup checks execution, trying out some ideas around defining arguments etc
* Started integration of check report
* Roughed dispatch
* Initial CLI interface
* Simplification of setup file
* Added main entry point
* Big update to pyapp module to better support pbr and set a default logger
* Added arg-complete to nice CLI options
* Added additional test for un-covered branch
* Added check for DEBUG setting
* Ensure settings are configured for tests
* Added a mechanism to apply temporary changes to settings (for testing)
* Migrated DEBUG check into "security"
* Added description of InvalidConfiguration exception
* Added initial checks for conf. - DEBUG check
* Added convenience imports for checks and some initial placeholder documentation
* Added tags object to hold built-in tags
* Ignore artifacts from pbr build
* Migrated to using OpenStack pbr for building packages
* Tweak to tests to ensure alternate branch in code is checked
* Renamed Warning to Warn (avoid warnings from landscape.io)
* More tests for registry
* Additional documentation
* Tweak to name
* Set correct development status
* Tweak to project name
* Tests for CheckRegistry.register
* Added comparison (__eq__ and __ne__) methods and added tests for the whole message class
* Removed unused import
* Added placeholder for CheckRegistry tests
* Added basic tests for CheckMessage
* Added tests for utils
* Docs and pep8 updates
* Added register method and tests to cover
* Changed LOADER Map into a registry object
* Brought across a rought version of Django Checks
* Added reference to Django
* Added messages output (largely from Django)
* Added tests for additional loaders and includes
* Added/update tests for loaders
* Updated factory method to use urllib.parse module.  Moved ModuleLoader into the base
* Fixed exception added branch reporting for coverage
* Removed encoding for Py27
* Added tests for files
* More tests
* Added exceptions
* Tweaks to the __repr__ option to more closely align with builtin python types. Calling iter explicitly is not required
* Added a factory method to load configuration from a settings URI
* Expanded documentation added scheme and use InvalidConfiguration exception
* Added a file loader that can load JSON files for settings
* Fixed spacing to fix github
* Tweaked
* Added badges from various checking services
* Updated code climate config (based on their very nice recommendations)
* Update documentation
* Added framework for setup, code climate, travis coverage tools etc
* Started docs for configuration
* Basic readme
* Updated test for warning
* Added test to prevent loading some file multiple times
* Initial tests
* Supply default to pop (else an exception is raised)
* Render loader name to match url "scheme"
* Fixed some bugs from brain dump and added some performance tweaks
* Initial commit
