* Pylint rule: not necesary unused-import in extensions.py. Autofomatted
* Pylint rule: not necesary unused-import in jinja_context.py. Autofomatted
* Pylint rule: not necesary no-value-for-parameter in stats_logger.py. Autofomatted
* Pylint rule: not necesary no-member in viz.py
* Pylint rule: not necesary no-member in viz_sip38.py
* re-enable pylint for superset/config.py
* re-enable pylint on superset/migrations/env.py
* re-enable pylint for superset/legacy.py
* re-enable pylint for superset/forms.py
* re-enable pylint for superset/stats_logger.py
* Tweaks to make mypy and pylint happy
* black
* Add ability to inject statsd client; some py test/reqs updates
- Updated the metrics logger to allow construction with an existing
statsd client, so that it can be configured by external systems or libs.
- added requirements to requirements-dev.txt which are needed to run
tests-eg coverage, nose
- removed dependency on mock lib, it is in python stdlib now
- updated tox.ini to remove the now-superfluous deps
* add license to test file, and remove blank line at EOF
* Use py3's f-strings instead of s.format(**locals())
In light of the bug reported here
https://github.com/apache/incubator-superset/issues/6347, which seems
like an odd `.format()` issue in py3, I greped and replaced all
instances of `.format(**locals())` using py3's f-strings
* lint
* fix tests
* upgrade celery to 4.0.2
* using Redis for unit tests (sqla broker not supported in Celery 4)
* Setting Celery's soft_time_limit based on `SQLLAB_ASYNC_TIME_LIMIT_SEC` config
* Better error handling in async tasks
* Better statsd logging in async tasks
* show [pending/running] query status in Results tab
* systematically using sqla NullPool on worker (async) to limit number
of database connections