-
Notifications
You must be signed in to change notification settings - Fork 14.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(db_engine_specs): added support for Denodo Virtual DataPort #29927
feat(db_engine_specs): added support for Denodo Virtual DataPort #29927
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #29927 +/- ##
===========================================
+ Coverage 60.48% 83.91% +23.42%
===========================================
Files 1931 534 -1397
Lines 76236 38728 -37508
Branches 8568 0 -8568
===========================================
- Hits 46114 32499 -13615
+ Misses 28017 6229 -21788
+ Partials 2105 0 -2105
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
Feel free to add the logo, too! They can appear on the website and readme. You can also test compatibility and add it to this automated report: @betodealmeida might be able to provide a tiny bit of guidance on the latter. |
As @michael-s-molina commented on #29927 that new features can only be accepted for 4.1, we are focusing on this PR. We've just added a couple of changes to the db_engine_spec in order to fine-tune timestamp handling and resolve most of the items the pylint was complaining about.
Will do. Is there a specific order to be followed for adding logos? It's not alphabetic...
Yes please, any hints on how to do this would be useful. |
@denodo-research-labs Ideally, you would only merge this to master and let the release manager determine in which minor version this should be included. For 4.1, the release manager is @sadpandajoe. |
@denodo-research-labs If you wish to know more details about our release process you can check https://github.com/apache/superset/wiki/Release-Process |
@betodealmeida Any guidance on how to perform the compatibility tests and updating the automated report in https://github.com/apache/superset/blob/master/superset/db_engine_specs/README.md? Are we meant to execute |
Just checking: anything else needed from our side? Are those modifications on |
We are trying to make plans regarding Superset support in some of our components: is there any possibility that this gets included in 4.1? |
@denodo-research-labs this PR has a conflict against master branch. So at minimum, it will need to be rebased. Ideally, you should also add unit tests under |
dfb3706
to
0c8bb48
Compare
b9be57e
to
953013d
Compare
@villebro PR rebased on master, added unit tests. |
Running |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is great!
@@ -119,6 +119,7 @@ databricks = [ | |||
"sqlalchemy-databricks>=0.2.0", | |||
] | |||
db2 = ["ibm-db-sa>0.3.8, <=0.4.0"] | |||
denodo = ["denodo-sqlalchemy~=1.0.6"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, TIL about ~=
!
superset/db_engine_specs/denodo.py
Outdated
|
||
|
||
# Internal class for defining error message patterns (for translation) | ||
class _ErrorPatterns: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
❤️
Just added a new commit to make the automated PR code checks happier: replaced |
Any chance this PR can get the review it still needs before 4.1 is out? This affects our plans for the integration of Apache Superset with some parts of our software, so if by now it is clear that this integration won't happen for 4.1, it would be great to know as soon as possible in order to remake our plans accordingly. |
@denodo-research-labs please check CI results: a required lint check is still failing: Other than that it looks good to go. |
Thanks @villebro Isn't this the error that is being reported by the linter?
But there's not much that can be done about that in an implementation of a DB Engine Spec... it is basically a class only overwriting those attributes / methods that need to be overwritten. Perhaps we are missing anything else here? |
@denodo-research-labs you can add |
@denodo-research-labs as this is a new feature, I suspect it won't make it into 4.1 anymore, as the cut for this release has already been made (generally only bugfixes get cherried into the release after the cut). But let's try to get this merged asap so it doesn't miss the 5.0 cut. |
OK, now unless we've broken something :) both pylint and ruff should be happy. We added the pylint
Thanks for the info @villebro. Is there a planned date for 5.0 already? |
@denodo-research-labs you can check the release process here: https://github.com/apache/superset/wiki/Release-Process . Work for 5.0 should start soon after 4.1 is out. |
It seems there's still some linting issues. I recommend setting up pre-commit hooks, as they'll automatically take care of simple linting issues like those in this PR: https://superset.apache.org/docs/contributing/development/#git-hooks |
We did that, but everything looks fine on our end:
Unfortunately the GitHub task does not give much info, only that ruff is still not happy:
But ruff says everything is alright:
Any pointers on how to find out what is happening? ruff version is 0.7.1, pylint 3.3.1 |
…ff reformatting the file
@villebro found it, our fault. We were only focusing on ruff liking the Now
Sorry for all the fuss. |
Great to see this merged. Thanks for all the help @villebro @michael-s-molina @betodealmeida @rusackas |
SUMMARY
Following up on #20656, this PR adds basic support for connecting to Denodo Virtual DataPort (aka VDP Server) from Superset.
This includes:
superset/db_engine_specs/denodo.py
).pyproject.toml
).docs/docs/configuration/databases.mdx
).ADDITIONAL INFORMATION