* Enabled mssql
* Enabling pylint rules in `mysql.py` from `db_engine_specs`:
- added variable to shorten line and enable `line-too-long`
- `import-error` seems not prompting anymore
- specified exception instead broad-except
* Refactored too long line in `oracle.py` from `db_engine_specs`. Enabled too-long-line pylint rule.
* Changed fstring into string `pinot.py` to reenable `f-string-without-interpolation` rule.
* Enabled `unused-import` rule and changed line to adjust to correct number of characters in `db_engine_specs/postgres.py`.
* Enabled unused-import pylint check in `db_engine_specs/presto.py`
* Enabled unused-import pylint check in `db_engine_specs/snowflake.py`
* Enabled unused-import pylint check in `db_engine_specs/sqlite.py`
* Athena.py: cretaed variable for too long line, removed disabled pylint rule.
* Enabled `line-too-long` in `drill.py`. Added variable for too long string.
* Reformatted hana.py:
- changed return statement into two lines to keep line lenght limit
* Enabling pylint rule in hive.py:
- `no-name-in-module` for pyhive in several places
- `line-too-long` and adding new lines
- `unused-import` is not invalid anymore
* Enabled `line-too-long` in `kylin.py`. Added variable for too long string.
* Enabled `unused_import` in `base.py` from db_engine_specs module.
* Enabled `unused_import` in `bigquery.py` from db_engine_specs module.
* Enabled `unused_import` in `druid.py` from db_engine_specs module.
* fix: athena datetime string converting
* fix execute oracle DML statement bug in sqllab
when i execute oracle sql statements like update in SQLLAB, get "oracle error: not a query" error.
Refer https://www.python.org/dev/peps/pep-0249/, superset old version use
`cursor.description` ,because this attribute will be None for operations that do not return rows or if the cursor has not had an operation invoked via the .execute*() method yet.
* Apply suggestions from code review
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
* Update oracle.py
* Update oracle.py
* Update oracle.py
* Apply suggestions from code review
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
* Update oracle.py
* Update superset/db_engine_specs/oracle.py
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
* chore: Adding pip-compile-multi et al
* Specify requirements.txt path for fossa
* [ci] Fixing CI
Co-authored-by: John Bodley <john.bodley@airbnb.com>
Co-authored-by: Jesse Yang <jesse.yang@airbnb.com>
* Support more table properties for the hive upload
Refactor
Add tests, and refactor them to be pytest friendly
Use lowercase table names
Ignore isort
* Use sql params
Co-authored-by: bogdan kyryliuk <bogdankyryliuk@dropbox.com>
* feat: add support for alerts
* Add ModelViews
* First pass at adding scheduled Alert support
* Fix syntax errors
* Add log_retention and database to model
* Improving screenshots
* Still refactoring screenshots
* Pass down thumb_size properly
* Progress on screenshot endpoint
* Add alerts.last_eval_dttm and alert query logic
* Getting ready to split compute_screenshot and screenshot/{SHA}
* split the endpoints
* Improving alerting loop
* empty methods
* Add CLI command 'superset alert' that runs a sched loop
* Getting things to work
* email delivery
* A working email\!
* Add feature flag
* Add some description_columns to AlertModelView
* Little tweaks
* Use database.get_df, eval cells for truthiness
* Migrate thumbnail/screenshot functions to use new arg pattern
* Addressing PR feedback
* Update alerts DB migration down_revision
* Resolve _deliver_email arg conflict
* Make mypy happy
* Make isort happy
* Make pylint happy
Co-authored-by: Rob DiCiuccio <rob.diciuccio@gmail.com>
* fix: make auth for hive optional
This will make allow the admin to setup a root connection which can be impersonated.
* style: black lint conform
* style: clean up unnecessary condition expansion
* feat: Add new timegrains and convert_dttm to Druid engine spec
* Add TemporalType enum and fix test case
* Remove DATETIME for athena (original spec)
* Bump pylint version to 2.5.3
* Add a global disable for the most common new pylint error
* Fix a bunch of files containing very few errors
* More pylint tweakage, low-hanging fruit
* More easy stuff...
* Fix more erroring files
* Fix the last couple of errors, clean pylint!
* Black
* Fix mypy issue in connectors/druid/models.py