Commit graph

116 commits

Author SHA1 Message Date
Ian Cordasco
4dc1cc386d Add documentation around plugin notifications and pyflakes 2016-02-01 20:33:18 -06:00
Ian Cordasco
5dc7440a2b Start documenting our Trie implementation 2016-02-01 20:09:15 -06:00
Ian Cordasco
51d11d1a30 Note inspiration 2016-02-01 00:00:29 -06:00
Ian Cordasco
f4f68b6442 Document our plugin handling 2016-01-31 23:59:53 -06:00
Ian Cordasco
4cf48b9b77 Add documentation about option aggregation
Add logging around default ignore lists
2016-01-27 21:32:40 -06:00
Ian Cordasco
f59152cc01 Start documenting configuration parsing 2016-01-26 08:40:56 -06:00
Ian Cordasco
938d2c450a Switch to the RTD theme 2016-01-26 08:40:45 -06:00
Ian Cordasco
7898b5c12e Add documentation around Option Management 2016-01-25 22:06:14 -06:00
Ian Cordasco
6590fab3f2 Move docs directories into docs/source 2016-01-25 21:15:04 -06:00
Ian Cordasco
f2ca91372a Start structuring documentation 2016-01-25 20:40:33 -06:00
Ian Cordasco
17a7826dc7 Add integration tests for aggregate_options 2016-01-24 22:14:36 -06:00
Ian Cordasco
2cba89c568 Log extended default values and add a test 2016-01-24 22:14:21 -06:00
Ian Cordasco
a66f43bc39 Extend the default ignore list with plugins' defaults 2016-01-24 22:13:57 -06:00
Ian Cordasco
51bfc6a5b1 Pass arglist to first parse_args call for testing 2016-01-24 22:13:21 -06:00
Ian Cordasco
3a490971b2 Add --config option flag 2016-01-24 22:13:06 -06:00
Ian Cordasco
551bce11a3 Add extend_default_ignore list to OptionManager 2016-01-24 15:19:44 -06:00
Ian Cordasco
5037fab132 Update design document 2016-01-24 15:16:18 -06:00
Ian Cordasco
ebdc935ffc Refactor NotifierBuilder into its own mixin
This allows for easier unit testing
2016-01-24 15:13:58 -06:00
Ian Cordasco
b0a258fe79 Refactor our PluginTypeManager tests
Add tests for PluginTypeManager#{register,provide}_optoins
2016-01-23 23:02:06 -06:00
Ian Cordasco
04556f1a1b Build a Notifier instead of a Trie 2016-01-23 23:01:30 -06:00
Ian Cordasco
6e8e2b9669 Write more PluginTypeManager tests 2016-01-22 09:06:24 -06:00
Ian Cordasco
3b64ff2a1f Make Plugin.load_plugin raise a Flake8 exception
Let's catch exceptions, log them, and re-raise as a FailedToLoad
exception. This also refactors the actually loading of plugins into a
private method on the Plugin class.
2016-01-22 09:04:52 -06:00
Ian Cordasco
6546cf41d4 Add tests for the PluginTypeManager 2016-01-21 22:15:38 -06:00
Ian Cordasco
64edc55061 Add method to build Tries from Notifiers 2016-01-21 22:15:17 -06:00
Ian Cordasco
c67735792b Add documentation to PluginManager.map 2016-01-21 08:32:46 -06:00
Ian Cordasco
916bec859c Finish testing PluginManager 2016-01-21 08:32:35 -06:00
Ian Cordasco
50e8fef125 Add more PluginManager tests 2016-01-21 08:26:05 -06:00
Ian Cordasco
6a72e36681 Start tests for PluginManager 2016-01-19 23:01:07 -06:00
Ian Cordasco
56a75cc391 Add tests for the Plugin class 2016-01-19 22:57:04 -06:00
Ian Cordasco
5a1e6943d8 Stop calling split on a list
--exclude-from-doctests is also parsed by flake8 for us
2016-01-19 07:46:41 -06:00
Ian Cordasco
15d7f7679c Builtins will not be parsed by flake8 for us 2016-01-19 07:45:43 -06:00
Ian Cordasco
83dd81a445 Add missing docstrings to plugin submodule 2016-01-19 07:45:25 -06:00
Ian Cordasco
11be73dbbb Note that we need at least Sphinx 1.3
Exclude sphinx conf.py from flake8
2016-01-19 07:27:39 -06:00
Ian Cordasco
e66fc2efa8 Start creating documentation 2016-01-19 07:19:16 -06:00
Ian Cordasco
4e294af81c Update fixture README with descriptions 2016-01-19 06:43:47 -06:00
Ian Cordasco
dcf696d678 Add tests around new OptionManager methods 2016-01-17 21:45:32 -06:00
Ian Cordasco
d6dbf797bc Add forgotten config file fixtures 2016-01-17 13:08:52 -06:00
Ian Cordasco
dfac6a2131 Record registered plugins and format their versions 2016-01-16 09:50:18 -06:00
Ian Cordasco
ba56c34494 Add venv testenv for testing the new version of flake8 2016-01-16 07:05:12 -06:00
Ian Cordasco
ef0e018fa2 Update setup.py for new entry-points and packages
Comment out mccabe because it is currently broken with flake8 3.0
2016-01-16 07:04:55 -06:00
Ian Cordasco
4d86e44992 Add pyflakes shim from previous flake8
Modify the shim plugin to work with new flake8
2016-01-16 07:04:28 -06:00
Ian Cordasco
45d470927c Load plugins of each type idempotently
* Do not pass too many arguments to provide_options or register_options
* Sub-class PluginTypeManager for both Listeners and Formatters
2016-01-16 07:03:37 -06:00
Ian Cordasco
6ef9089eb7 Add main function entry-point to flake8
* Add --isolated option
* Add --append-config
* Add docstring to flake8.main
2016-01-16 07:02:37 -06:00
Ian Cordasco
d2f4e97c31 Delete unnecessary and dead code 2016-01-15 21:39:33 -06:00
Ian Cordasco
f1010b7733 Make plugin and version loading lazy
Abstract plugin type management into one class and provide specific
classes for each of our known types of plugins
2016-01-15 10:59:51 -06:00
Ian Cordasco
1870811137 Start working on plugin management 2016-01-14 22:25:02 -06:00
Ian Cordasco
8466d1462f Start bulding a bit of the cli for functional testing 2016-01-11 23:15:53 -06:00
Ian Cordasco
4018988585 Add a module with defaults 2016-01-11 23:15:23 -06:00
Ian Cordasco
6940ef3aaf Make log format configurable 2016-01-11 23:15:11 -06:00
Ian Cordasco
cb9231eb9b Add tests around merge_user_and_local_config and parse 2016-01-10 22:07:30 -06:00