You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@superset.apache.org by "FrancescoCastaldi (via GitHub)" <gi...@apache.org> on 2026/08/26 22:24:44 UTC
[PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
FrancescoCastaldi opened a new pull request, #43566:
URL: https://github.com/apache/superset/pull/43566
### SUMMARY
Fixes #42980
This PR adds complete, structured metadata blocks to all remaining database engine specs in \superset/db_engine_specs/\ that previously reported \has_metadata: false\:
- **Amazon Aurora** (\urora.py\):
- \AuroraMySQLDataAPI\
- \AuroraPostgresDataAPI\
- \AuroraMySQLEngineSpec\
- \AuroraPostgresEngineSpec\
- **IBM Db2 for i** (\ibmi.py\):
- \IBMiEngineSpec\
- **ClickHouse** (\clickhouse.py\):
- \ClickHouseEngineSpec\ (legacy sqlalchemy connector)
- **Azure Data Explorer** (\kusto.py\):
- \KustoKqlEngineSpec\ (KQL connector)
- **Databricks** (\databricks.py\):
- \DatabricksHiveEngineSpec\ (Interactive Cluster)
- \DatabricksODBCEngineSpec\ (SQL Endpoint)
- \DatabricksNativeEngineSpec\ (legacy connector)
- **Databend** (\databend.py\):
- \DatabendEngineSpec\ (legacy connector)
- **OpenSearch / OpenDistro** (\lasticsearch.py\):
- \OpenDistroEngineSpec\
Each metadata block provides:
- Accurate descriptions
- Canonical logo references
- Official documentation / homepage URLs
- Relevant \DatabaseCategory\ tags
- Required PyPI packages and connection string templates
- Default port numbers where applicable
### VERIFICATION
Ran \superset/db_engine_specs/lint_metadata.py --json\ and \--strict\:
- **With metadata:** 79/79 (100% of all engine specs now have metadata)
- **All required fields:** 79/79 (100%)
- **Average completeness:** 87.1%
- \ uff check\ and \ uff format\: 0 errors across all modified files.
### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
N/A (Metadata definition enhancement for database selector / documentation)
### TESTING INSTRUCTIONS
Run the metadata linter:
\\\ash
python superset/db_engine_specs/lint_metadata.py --json
python superset/db_engine_specs/lint_metadata.py --strict
\\\
All 79 specs pass required checks.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "rusackas (via GitHub)" <gi...@apache.org>.
rusackas commented on PR #43566:
URL: https://github.com/apache/superset/pull/43566#issuecomment-5432042451
Thanks, I'll take a look as soon as I can find the time... nag me in a day or two if I forget ;)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "codeant-ai-for-open-source[bot] (via GitHub)" <gi...@apache.org>.
codeant-ai-for-open-source[bot] commented on code in PR #43566:
URL: https://github.com/apache/superset/pull/43566#discussion_r3867214535
##########
superset/db_engine_specs/databend.py:
##########
@@ -162,8 +162,24 @@ class DatabendEngineSpec(DatabendBaseEngineSpec):
_show_functions_column = "name"
supports_file_upload = False
- # Note: Primary metadata is in DatabendConnectEngineSpec which provides
- # the native connection UI. This spec exists for backwards compatibility.
+ metadata = {
+ "description": (
+ "Databend is an open-source cloud-native data warehouse built in Rust "
+ "(legacy databend-sqlalchemy connector)."
+ ),
+ "logo": "databend.png",
+ "homepage_url": "https://www.databend.com/",
+ "categories": [
+ DatabaseCategory.CLOUD_DATA_WAREHOUSES,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ DatabaseCategory.PROPRIETARY,
+ ],
Review Comment:
**Suggestion:** The metadata describes Databend as open-source but assigns it the `PROPRIETARY` licensing category. Metadata consumers use these categories for UI and documentation grouping, so this places the engine in the wrong licensing filter and contradicts the description. Replace the licensing category with the appropriate open-source category. [logic error]
<details>
<summary><b>Severity Level:</b> Minor ๐งน</summary>
```mdx
- โ ๏ธ Databend appears under the wrong licensing category.
- โ ๏ธ Database selector and documentation filters become misleading.
```
</details>
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill) [](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=e9470a0c8edc43d0b79b3eebe2de52bb&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset) [](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=e9470a0c8edc43d0b79b3eebe2de52bb&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset/db_engine_specs/databend.py
**Line:** 172:176
**Comment:**
*Logic Error: The metadata describes Databend as open-source but assigns it the `PROPRIETARY` licensing category. Metadata consumers use these categories for UI and documentation grouping, so this places the engine in the wrong licensing filter and contradicts the description. Replace the licensing category with the appropriate open-source category.
Validate the correctness of the flagged issue. If correct, How can I resolve this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask user if the user wants to fix the rest of the comments as well. if said yes, then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=bb44ef3a06e13e26dd0076d0534e7fb8272c01990c168ae92508e542c335b888&reaction=like'>๐</a> | <a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=bb44ef3a06e13e26dd0076d0534e7fb8272c01990c168ae92508e542c335b888&reaction=dislike'>๐</a>
##########
superset/db_engine_specs/databricks.py:
##########
@@ -456,9 +480,22 @@ class DatabricksNativeEngineSpec(DatabricksDynamicBaseEngineSpec):
"databricks+connector://token:{access_token}@{host}:{port}/{database_name}"
)
- # Note: Primary metadata is in DatabricksPythonConnectorEngineSpec which
- # consolidates all Databricks connection methods. This spec exists for
- # backwards compatibility with legacy databricks-dbapi connections.
+ metadata = {
+ "description": (
+ "Legacy Databricks connector using the databricks-dbapi driver."
+ ),
+ "logo": "databricks.png",
+ "homepage_url": "https://www.databricks.com/",
+ "categories": [
+ DatabaseCategory.CLOUD_DATA_WAREHOUSES,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ ],
+ "pypi_packages": ["databricks-dbapi"],
Review Comment:
**Suggestion:** The legacy runtime setup requires the SQLAlchemy extra, as shown by the existing driver metadata and documentation (`databricks-dbapi[sqlalchemy]`), but this new top-level package entry only installs `databricks-dbapi`. Users following the metadata installation instructions can therefore lack the SQLAlchemy integration needed to use the advertised `databricks+connector` URI. Use the package specification with the required extra. [api mismatch]
<details>
<summary><b>Severity Level:</b> Major โ ๏ธ</summary>
```mdx
- โ Legacy Databricks URI setup can lack its SQLAlchemy integration.
- โ ๏ธ Users may receive driver or dialect-loading failures.
```
</details>
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill) [](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=648f35dd5cd74dacac78ba78609777bc&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset) [](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=648f35dd5cd74dacac78ba78609777bc&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset/db_engine_specs/databricks.py
**Line:** 493:493
**Comment:**
*Api Mismatch: The legacy runtime setup requires the SQLAlchemy extra, as shown by the existing driver metadata and documentation (`databricks-dbapi[sqlalchemy]`), but this new top-level package entry only installs `databricks-dbapi`. Users following the metadata installation instructions can therefore lack the SQLAlchemy integration needed to use the advertised `databricks+connector` URI. Use the package specification with the required extra.
Validate the correctness of the flagged issue. If correct, How can I resolve this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask user if the user wants to fix the rest of the comments as well. if said yes, then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=245d487977d528737ea71f576b668f8be227fd684c6758f2d369b23b78cb10e0&reaction=like'>๐</a> | <a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=245d487977d528737ea71f576b668f8be227fd684c6758f2d369b23b78cb10e0&reaction=dislike'>๐</a>
##########
superset/db_engine_specs/databricks.py:
##########
@@ -230,9 +230,22 @@ class DatabricksHiveEngineSpec(HiveEngineSpec):
drivers = {"pyhive": "Hive driver for Interactive Cluster"}
default_driver = "pyhive"
- # Note: Primary metadata is in DatabricksPythonConnectorEngineSpec which
- # consolidates all Databricks connection methods. This spec exists for
- # backwards compatibility with Interactive Cluster connections.
+ metadata = {
+ "description": (
+ "Databricks Interactive Cluster connectivity via the PyHive connector."
+ ),
+ "logo": "databricks.png",
+ "homepage_url": "https://www.databricks.com/",
+ "categories": [
+ DatabaseCategory.CLOUD_DATA_WAREHOUSES,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ ],
+ "pypi_packages": ["pyhive"],
+ "connection_string": (
+ "databricks+pyhive://token:{access_token}@{host}:{port}/{database}"
+ ),
+ "default_port": 443,
+ }
Review Comment:
**Suggestion:** Both advertised legacy Databricks connection templates omit the endpoint-specific `http_path`, which the Databricks driver requires and the existing connection documentation says must be supplied through engine parameters. Because these new metadata blocks have no parameter descriptions or notes explaining that prerequisite, generated setup guidance presents an incomplete connection recipe that fails when used as-is. Include `http_path` in the documented connection configuration or explicitly document the required engine parameters. [incomplete implementation]
<details>
<summary><b>Severity Level:</b> Major โ ๏ธ</summary>
```mdx
- โ ๏ธ Interactive Cluster setup guidance omits required HTTP path.
- โ ๏ธ Generated connection examples may fail during driver initialization.
```
</details>
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill) [](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=ee0a120063394a3a8de340f3368f38c8&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset) [](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=ee0a120063394a3a8de340f3368f38c8&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset/db_engine_specs/databricks.py
**Line:** 243:248
**Comment:**
*Incomplete Implementation: Both advertised legacy Databricks connection templates omit the endpoint-specific `http_path`, which the Databricks driver requires and the existing connection documentation says must be supplied through engine parameters. Because these new metadata blocks have no parameter descriptions or notes explaining that prerequisite, generated setup guidance presents an incomplete connection recipe that fails when used as-is. Include `http_path` in the documented connection configuration or explicitly document the required engine parameters.
Validate the correctness of the flagged issue. If correct, How can I resolve this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask user if the user wants to fix the rest of the comments as well. if said yes, then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=2e6a22aad2b17572f9e9fed5d15b061b858c803b98513f6725c3fd991c27233c&reaction=like'>๐</a> | <a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=2e6a22aad2b17572f9e9fed5d15b061b858c803b98513f6725c3fd991c27233c&reaction=dislike'>๐</a>
##########
superset/db_engine_specs/elasticsearch.py:
##########
@@ -204,6 +204,22 @@ class OpenDistroEngineSpec(BaseEngineSpec): # pylint: disable=abstract-method
engine = "odelasticsearch"
engine_name = "OpenSearch (OpenDistro)"
+ metadata = {
+ "description": (
+ "OpenSearch (OpenDistro) is a community-driven, open-source search "
+ "and analytics suite derived from Elasticsearch."
+ ),
+ "logo": "elasticsearch.png",
+ "homepage_url": "https://opensearch.org/",
Review Comment:
**Suggestion:** The new metadata identifies this engine as OpenSearch but points to the Elasticsearch logo. The database selector and generated documentation will therefore display Elasticsearch branding for an OpenSearch/OpenDistro connection. Use an OpenSearch-specific logo asset or retain an explicitly OpenDistro-compatible description if no such asset is intended. [inconsistent naming]
<details>
<summary><b>Severity Level:</b> Minor ๐งน</summary>
```mdx
- โ ๏ธ OpenSearch branding may appear as Elasticsearch.
- โ ๏ธ Existing metadata intentionally reuses Elasticsearch branding for OpenSearch compatibility.
```
</details>
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill) [](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=838c124655dd4cde9730e69fa463c006&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset) [](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=838c124655dd4cde9730e69fa463c006&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset/db_engine_specs/elasticsearch.py
**Line:** 207:213
**Comment:**
*Inconsistent Naming: The new metadata identifies this engine as OpenSearch but points to the Elasticsearch logo. The database selector and generated documentation will therefore display Elasticsearch branding for an OpenSearch/OpenDistro connection. Use an OpenSearch-specific logo asset or retain an explicitly OpenDistro-compatible description if no such asset is intended.
Validate the correctness of the flagged issue. If correct, How can I resolve this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask user if the user wants to fix the rest of the comments as well. if said yes, then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=93d041316475be667e344af9cb0f4341fd9fa057bab1f47093e5d9de7d8264bd&reaction=like'>๐</a> | <a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=93d041316475be667e344af9cb0f4341fd9fa057bab1f47093e5d9de7d8264bd&reaction=dislike'>๐</a>
##########
superset/db_engine_specs/ibmi.py:
##########
@@ -28,6 +30,22 @@ class IBMiEngineSpec(Db2EngineSpec):
engine_name = "IBM Db2 for i"
max_column_name_length = 128
+ metadata = {
+ "description": (
+ "IBM Db2 for i is an integrated relational database management "
+ "system optimized for IBM i."
+ ),
+ "logo": "ibm-db2.svg",
+ "homepage_url": "https://www.ibm.com/products/db2",
+ "categories": [
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.ENTERPRISE,
+ ],
+ "pypi_packages": ["sqlalchemy-ibmi"],
+ "connection_string": "ibmi://{user}:{password}@{host}:{port}/{database}",
+ "default_port": 50000,
Review Comment:
**Suggestion:** The IBM i connection template uses `{user}`, but the established IBM i metadata contract uses `{username}` and the database parameter is named `username`. Consumers that substitute the standard parameter name will leave `{user}` unresolved or produce an unusable example. Use the same username placeholder as the IBM i compatibility metadata. [api mismatch]
<details>
<summary><b>Severity Level:</b> Minor ๐งน</summary>
```mdx
- โ ๏ธ IBM i setup examples can retain an unresolved username placeholder.
- โ ๏ธ Automated connection-template substitution may produce invalid URIs.
```
</details>
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill) [](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=4b0ab02c2e2c411ebc43fee18cdf51c6&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset) [](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=4b0ab02c2e2c411ebc43fee18cdf51c6&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset/db_engine_specs/ibmi.py
**Line:** 44:46
**Comment:**
*Api Mismatch: The IBM i connection template uses `{user}`, but the established IBM i metadata contract uses `{username}` and the database parameter is named `username`. Consumers that substitute the standard parameter name will leave `{user}` unresolved or produce an unusable example. Use the same username placeholder as the IBM i compatibility metadata.
Validate the correctness of the flagged issue. If correct, How can I resolve this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask user if the user wants to fix the rest of the comments as well. if said yes, then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=a27f98d82af024cc3ea53b929e6066e75ab79ed26bdd072b83330490526d16f4&reaction=like'>๐</a> | <a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=a27f98d82af024cc3ea53b929e6066e75ab79ed26bdd072b83330490526d16f4&reaction=dislike'>๐</a>
##########
superset/db_engine_specs/kusto.py:
##########
@@ -174,6 +174,26 @@ class KustoKqlEngineSpec(BaseEngineSpec): # pylint: disable=abstract-method
allows_sql_comments = False
run_multiple_statements_as_one = True
+ metadata = {
+ "description": (
+ "Azure Data Explorer (Kusto) using native Kusto Query Language (KQL) "
+ "for high-performance log and telemetry analytics."
+ ),
+ "logo": "kusto.png",
+ "homepage_url": "https://azure.microsoft.com/en-us/products/data-explorer/",
+ "categories": [
+ DatabaseCategory.CLOUD_AZURE,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ DatabaseCategory.PROPRIETARY,
+ ],
+ "pypi_packages": ["sqlalchemy-kusto"],
+ "connection_string": (
+ "kustokql+https://{cluster}.kusto.windows.net/{database}"
+ "?msi=False&azure_ad_client_id={client_id}"
+ "&azure_ad_client_secret={client_secret}"
+ ),
+ }
Review Comment:
**Suggestion:** The KQL connection template omits the required Azure AD tenant parameter, while the sibling SQL template includes `azure_ad_tenant_id={tenant_id}` and documents `tenant_id`. Metadata consumers will generate incomplete connection strings for tenants requiring explicit tenant selection. Add the tenant parameter and corresponding parameter description. [api mismatch]
<details>
<summary><b>Severity Level:</b> Major โ ๏ธ</summary>
```mdx
- โ ๏ธ Explicit Azure AD KQL authentication lacks tenant selection.
- โ Generated KQL connection setup can fail authentication.
```
</details>
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill) [](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=2da71504676445ec9b38830f4f58b68b&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset) [](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=2da71504676445ec9b38830f4f58b68b&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset/db_engine_specs/kusto.py
**Line:** 189:195
**Comment:**
*Api Mismatch: The KQL connection template omits the required Azure AD tenant parameter, while the sibling SQL template includes `azure_ad_tenant_id={tenant_id}` and documents `tenant_id`. Metadata consumers will generate incomplete connection strings for tenants requiring explicit tenant selection. Add the tenant parameter and corresponding parameter description.
Validate the correctness of the flagged issue. If correct, How can I resolve this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask user if the user wants to fix the rest of the comments as well. if said yes, then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=85fc772e6f5f83bdf8026cf7e74c09fa55511f2ad3e5aa076b70a2cfe6f0fadb&reaction=like'>๐</a> | <a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=85fc772e6f5f83bdf8026cf7e74c09fa55511f2ad3e5aa076b70a2cfe6f0fadb&reaction=dislike'>๐</a>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "rusackas (via GitHub)" <gi...@apache.org>.
rusackas commented on code in PR #43566:
URL: https://github.com/apache/superset/pull/43566#discussion_r4074721155
##########
superset/db_engine_specs/ibmi.py:
##########
@@ -28,6 +30,29 @@ class IBMiEngineSpec(Db2EngineSpec):
engine_name = "IBM Db2 for i"
max_column_name_length = 128
+ metadata = {
+ "description": (
+ "IBM Db2 for i is an integrated relational database management "
+ "system optimized for IBM i."
+ ),
+ "logo": "ibm-db2.svg",
+ "homepage_url": "https://www.ibm.com/products/db2-for-i",
+ "categories": [
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.PROPRIETARY,
+ ],
+ "pypi_packages": ["sqlalchemy-ibmi"],
+ "connection_string": "ibmi://{username}:{password}@{host}/{database}",
+ "parameters": {
+ "username": "IBM i user profile",
+ "password": "User password",
+ "host": "Hostname or IP address",
+ "database": "Database name",
Review Comment:
```suggestion
"database": "Library/schema name",
```
##########
superset/db_engine_specs/elasticsearch.py:
##########
@@ -324,6 +324,27 @@ class OpenDistroEngineSpec(BaseEngineSpec): # pylint: disable=abstract-method
engine = "odelasticsearch"
engine_name = "OpenSearch (OpenDistro)"
+ metadata = {
Review Comment:
Bito wanted a `drivers` field here to match `ElasticSearchEngineSpec`. It's in `OPTIONAL_FIELDS` in `lint_metadata.py`, not required, and this spec's already at 100% on required fields. Fine to leave for a follow-up if someone wants to flesh it out.
##########
superset/db_engine_specs/kusto.py:
##########
@@ -223,6 +223,34 @@ class KustoKqlEngineSpec(BaseEngineSpec): # pylint: disable=abstract-method
allows_sql_comments = False
run_multiple_statements_as_one = True
+ metadata = {
Review Comment:
Bito wanted a `known_incompatibilities` entry mirroring `KustoSqlEngineSpec`. That's not even in the `lint_metadata.py` schema (required, recommended, or optional), so there's nothing to satisfy here. Not a blocker.
##########
superset/db_engine_specs/aurora.py:
##########
@@ -36,6 +37,27 @@ class AuroraMySQLDataAPI(MySQLEngineSpec):
"region_name={region_name}"
)
+ metadata = {
Review Comment:
Bito also wanted dedicated tests asserting on these metadata dicts. Checked the convention first, `lint_metadata.py --strict` in pre-commit is what actually validates this content across the repo, and only one existing spec test (`test_postgres.py`) even touches `.metadata[...]`. Not a real gap here.
##########
superset/db_engine_specs/aurora.py:
##########
@@ -68,6 +111,24 @@ class AuroraMySQLEngineSpec(MySQLEngineSpec):
engine_name = "Aurora MySQL"
default_driver = "mysqldb"
+ metadata = {
+ "description": (
+ "Amazon Aurora MySQL is a relational database engine that combines "
+ "high-end commercial database speed with the simplicity of "
+ "open-source MySQL."
+ ),
+ "logo": "aws-aurora.jpg",
+ "homepage_url": "https://aws.amazon.com/rds/aurora/",
+ "categories": [
+ DatabaseCategory.CLOUD_AWS,
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.HOSTED_OPEN_SOURCE,
Review Comment:
Bito flagged this as inconsistent with `MySQLEngineSpec`'s `OPEN_SOURCE`, reasoning only the Data API variants qualify for `HOSTED_OPEN_SOURCE`. I don't buy that read, Aurora is AWS-hosted regardless of whether you connect via the Data API or the wire protocol, so `HOSTED_OPEN_SOURCE` across all four Aurora specs is the consistent story, not a mismatch. Leaving as-is.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "bito-code-review[bot] (via GitHub)" <gi...@apache.org>.
bito-code-review[bot] commented on PR #43566:
URL: https://github.com/apache/superset/pull/43566#issuecomment-5433227945
AI Code Review is in progress (usually takes 3 to 15 minutes unless it's a very large PR).
<details>
<summary>
Bito Usage Guide
</summary>
**Commands**
Type the following command in the pull request comment and save the comment.
- `/review` - Manually triggers an incremental AI Review.
- `/review full` - Manually triggers a full AI Review.
- `/pause` - Pauses automatic reviews on this pull request.
- `/resume` - Resumes automatic reviews.
- `/resolve` - Marks all Bito-posted review comments as resolved.
- `/abort` - Cancels all in-progress reviews.
Refer to the <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent/available-commands" target="_blank" rel="noopener noreferrer">documentation</a> for additional commands.
**Configuration**
This repository uses `Superset` You can customize the agent settings <a href="https://alpha.bito.ai/home/ai-agents/code-review-agent" target="_blank" rel="noopener noreferrer">here</a> or contact your Bito workspace admin at evan@preset.io.
**Documentation & Help**
- <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent/getting-started/install-run-using-bito-cloud/create-or-customize-an-agent-instance" target="_blank" rel="noopener noreferrer">Customize agent settings</a>
- <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent/implementing-custom-code-review-rules" target="_blank" rel="noopener noreferrer">Review rules</a>
- <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent" target="_blank" rel="noopener noreferrer">General documentation</a>
- <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent/faqs" target="_blank" rel="noopener noreferrer">FAQ</a>
</details>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "rusackas (via GitHub)" <gi...@apache.org>.
rusackas commented on code in PR #43566:
URL: https://github.com/apache/superset/pull/43566#discussion_r4068662645
##########
superset/db_engine_specs/aurora.py:
##########
@@ -36,6 +37,27 @@ class AuroraMySQLDataAPI(MySQLEngineSpec):
"region_name={region_name}"
)
+ metadata = {
+ "description": (
+ "Amazon Aurora MySQL accessed via the AWS Data API, allowing "
+ "database queries over HTTP without managing persistent connections."
+ ),
+ "logo": "aws-aurora.jpg",
+ "homepage_url": "https://aws.amazon.com/rds/aurora/",
+ "categories": [
+ DatabaseCategory.CLOUD_AWS,
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.HOSTED_OPEN_SOURCE,
+ ],
Review Comment:
The metadata linter (`lint_metadata.py`, runs in pre-commit with `--strict`) reads these blocks statically via `ast`, so a shared constant would come through as just a name and fail validation. The repetition is by design here. Resolving.
##########
superset/db_engine_specs/aurora.py:
##########
@@ -36,6 +37,27 @@ class AuroraMySQLDataAPI(MySQLEngineSpec):
"region_name={region_name}"
)
+ metadata = {
+ "description": (
+ "Amazon Aurora MySQL accessed via the AWS Data API, allowing "
+ "database queries over HTTP without managing persistent connections."
+ ),
+ "logo": "aws-aurora.jpg",
+ "homepage_url": "https://aws.amazon.com/rds/aurora/",
+ "categories": [
+ DatabaseCategory.CLOUD_AWS,
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.HOSTED_OPEN_SOURCE,
+ ],
+ "pypi_packages": ["sqlalchemy-aurora-data-api"],
+ "connection_string": (
+ "mysql+auroradataapi://{aws_access_id}:{aws_secret_access_key}@/"
+ "{database_name}?aurora_cluster_arn={aurora_cluster_arn}&"
+ "secret_arn={secret_arn}®ion_name={region_name}"
+ ),
Review Comment:
Same story as the categories thread: `lint_metadata.py` evaluates `metadata` statically via `ast`, so deriving this from `sqlalchemy_uri_placeholder` or a shared constant would not survive the pre-commit check. Every other spec repeats it the same way. Resolving.
##########
superset/db_engine_specs/elasticsearch.py:
##########
@@ -324,6 +324,27 @@ class OpenDistroEngineSpec(BaseEngineSpec): # pylint: disable=abstract-method
engine = "odelasticsearch"
engine_name = "OpenSearch (OpenDistro)"
+ metadata = {
+ "description": (
+ "OpenSearch (OpenDistro) SQL connector for querying OpenSearch and "
+ "OpenDistro clusters using SQL syntax."
+ ),
+ "logo": "elasticsearch.png",
+ "homepage_url": "https://opensearch.org/",
+ "categories": [
+ DatabaseCategory.SEARCH_NOSQL,
+ DatabaseCategory.OPEN_SOURCE,
+ ],
+ "pypi_packages": ["elasticsearch-dbapi"],
+ "connection_string": "odelasticsearch+https://{user}:{password}@{host}:9200/",
+ "default_port": 9200,
+ "parameters": {
+ "user": "OpenSearch username",
+ "password": "OpenSearch password",
+ "host": "OpenSearch host",
+ },
+ }
Review Comment:
These blocks have to be literal dicts since `lint_metadata.py` evaluates them statically via `ast` in pre-commit, so a shared constant or reusing the sibling dict is not really an option. The main Elasticsearch spec repeats its own driver string the same way. Resolving.
##########
superset/db_engine_specs/kusto.py:
##########
@@ -223,6 +223,34 @@ class KustoKqlEngineSpec(BaseEngineSpec): # pylint: disable=abstract-method
allows_sql_comments = False
run_multiple_statements_as_one = True
+ metadata = {
+ "description": (
+ "Azure Data Explorer (Kusto) using native Kusto Query Language (KQL) "
+ "for high-performance log and telemetry analytics."
+ ),
+ "logo": "kusto.png",
+ "homepage_url": "https://azure.microsoft.com/en-us/products/data-explorer/",
+ "categories": [
+ DatabaseCategory.CLOUD_AZURE,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ DatabaseCategory.PROPRIETARY,
+ ],
+ "pypi_packages": ["sqlalchemy-kusto"],
+ "connection_string": (
+ "kustokql+https://{cluster}.kusto.windows.net/{database}"
+ "?msi=False&azure_ad_client_id={client_id}"
+ "&azure_ad_client_secret={client_secret}"
+ "&azure_ad_tenant_id={tenant_id}"
+ ),
+ "parameters": {
+ "cluster": "Azure Data Explorer cluster name",
+ "database": "Database name",
+ "client_id": "Azure AD application (client) ID",
+ "client_secret": "Azure AD application secret",
+ "tenant_id": "Azure AD tenant ID",
+ },
+ }
Review Comment:
Same constraint as the other threads: `lint_metadata.py` reads `metadata` statically via `ast` in pre-commit, so this has to stay a literal dict rather than reference the driver entry on the SQL spec. Resolving.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "codeant-ai-for-open-source[bot] (via GitHub)" <gi...@apache.org>.
codeant-ai-for-open-source[bot] commented on code in PR #43566:
URL: https://github.com/apache/superset/pull/43566#discussion_r4057852778
##########
superset/db_engine_specs/aurora.py:
##########
@@ -36,6 +37,26 @@ class AuroraMySQLDataAPI(MySQLEngineSpec):
"region_name={region_name}"
)
+ metadata = {
+ "description": (
+ "Amazon Aurora MySQL accessed via the AWS Data API, allowing "
+ "database queries over HTTP without managing persistent connections."
+ ),
+ "logo": "aws-aurora.jpg",
+ "homepage_url": "https://aws.amazon.com/rds/aurora/",
+ "categories": [
+ DatabaseCategory.CLOUD,
+ DatabaseCategory.POPULAR,
+ ],
Review Comment:
โ
**CodeAnt verified this suggestion was addressed in subsequent commits and marked this thread resolved** as of `55a0fe3`.
The Aurora MySQL metadata now uses defined categories: `CLOUD_AWS`, `TRADITIONAL_RDBMS`, and `HOSTED_OPEN_SOURCE`, eliminating the invalid enum references.
<sub>If that's not right, unresolve this thread and CodeAnt will leave it open.</sub>
<!-- codeant-auto-resolve-reply -->
##########
superset/db_engine_specs/aurora.py:
##########
@@ -36,6 +37,26 @@ class AuroraMySQLDataAPI(MySQLEngineSpec):
"region_name={region_name}"
)
+ metadata = {
+ "description": (
+ "Amazon Aurora MySQL accessed via the AWS Data API, allowing "
+ "database queries over HTTP without managing persistent connections."
+ ),
+ "logo": "aws-aurora.jpg",
+ "homepage_url": "https://aws.amazon.com/rds/aurora/",
+ "categories": [
+ DatabaseCategory.CLOUD,
+ DatabaseCategory.POPULAR,
+ ],
+ "pypi_packages": ["auroradataapi"],
Review Comment:
โ
**CodeAnt verified this suggestion was addressed in subsequent commits and marked this thread resolved** as of `55a0fe3`.
The metadata now lists `sqlalchemy-aurora-data-api` in `pypi_packages`, matching the SQLAlchemy dialect package required by the `auroradataapi` driver.
<sub>If that's not right, unresolve this thread and CodeAnt will leave it open.</sub>
<!-- codeant-auto-resolve-reply -->
##########
superset/db_engine_specs/ibmi.py:
##########
@@ -28,6 +30,22 @@ class IBMiEngineSpec(Db2EngineSpec):
engine_name = "IBM Db2 for i"
max_column_name_length = 128
+ metadata = {
+ "description": (
+ "IBM Db2 for i is an integrated relational database management "
+ "system optimized for IBM i."
+ ),
+ "logo": "ibm-db2.svg",
+ "homepage_url": "https://www.ibm.com/products/db2",
+ "categories": [
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.ENTERPRISE,
+ ],
+ "pypi_packages": ["sqlalchemy-ibmi"],
+ "connection_string": "ibmi://{user}:{password}@{host}:{port}/{database}",
+ "default_port": 50000,
Review Comment:
โ
**CodeAnt verified this suggestion was addressed in subsequent commits and marked this thread resolved** as of `55a0fe3`.
The IBM i connection string now uses the established `{{username}}` placeholder, matching the documented `username` parameter.
<sub>If that's not right, unresolve this thread and CodeAnt will leave it open.</sub>
<!-- codeant-auto-resolve-reply -->
##########
superset/db_engine_specs/kusto.py:
##########
@@ -174,6 +174,26 @@ class KustoKqlEngineSpec(BaseEngineSpec): # pylint: disable=abstract-method
allows_sql_comments = False
run_multiple_statements_as_one = True
+ metadata = {
+ "description": (
+ "Azure Data Explorer (Kusto) using native Kusto Query Language (KQL) "
+ "for high-performance log and telemetry analytics."
+ ),
+ "logo": "kusto.png",
+ "homepage_url": "https://azure.microsoft.com/en-us/products/data-explorer/",
+ "categories": [
+ DatabaseCategory.CLOUD_AZURE,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ DatabaseCategory.PROPRIETARY,
+ ],
+ "pypi_packages": ["sqlalchemy-kusto"],
+ "connection_string": (
+ "kustokql+https://{cluster}.kusto.windows.net/{database}"
+ "?msi=False&azure_ad_client_id={client_id}"
+ "&azure_ad_client_secret={client_secret}"
+ ),
+ }
Review Comment:
โ
**CodeAnt verified this suggestion was addressed in subsequent commits and marked this thread resolved** as of `55a0fe3`.
The KQL connection string now includes `azure_ad_tenant_id={{tenant_id}}`, and the metadata documents `tenant_id` as the Azure AD tenant ID.
<sub>If that's not right, unresolve this thread and CodeAnt will leave it open.</sub>
<!-- codeant-auto-resolve-reply -->
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "bito-code-review[bot] (via GitHub)" <gi...@apache.org>.
bito-code-review[bot] commented on PR #43566:
URL: https://github.com/apache/superset/pull/43566#issuecomment-5431825999
AI Code Review is in progress (usually takes 3 to 15 minutes unless it's a very large PR).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "codeant-ai-for-open-source[bot] (via GitHub)" <gi...@apache.org>.
codeant-ai-for-open-source[bot] commented on code in PR #43566:
URL: https://github.com/apache/superset/pull/43566#discussion_r3867211790
##########
superset/db_engine_specs/aurora.py:
##########
@@ -36,6 +37,26 @@ class AuroraMySQLDataAPI(MySQLEngineSpec):
"region_name={region_name}"
)
+ metadata = {
+ "description": (
+ "Amazon Aurora MySQL accessed via the AWS Data API, allowing "
+ "database queries over HTTP without managing persistent connections."
+ ),
+ "logo": "aws-aurora.jpg",
+ "homepage_url": "https://aws.amazon.com/rds/aurora/",
+ "categories": [
+ DatabaseCategory.CLOUD,
+ DatabaseCategory.POPULAR,
+ ],
+ "pypi_packages": ["auroradataapi"],
Review Comment:
**Suggestion:** The Data API metadata advertises `auroradataapi` as the installable PyPI package, but the existing compatible-database metadata identifies the required SQLAlchemy dialect package as `sqlalchemy-aurora-data-api`. Consumers following this new metadata may install a nonexistent or insufficient package and still be unable to load the `auroradataapi` dialect; use the actual package name. [api mismatch]
<details>
<summary><b>Severity Level:</b> Major โ ๏ธ</summary>
```mdx
- โ Aurora Data API setup can fail after following metadata.
- โ ๏ธ Database selector dependency guidance is incorrect.
- โ ๏ธ SQLAlchemy dialect loading may fail for Aurora connections.
```
</details>
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill) [](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=686aa8a444c2452195485fe057081a8c&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset) [](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=686aa8a444c2452195485fe057081a8c&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset/db_engine_specs/aurora.py
**Line:** 51:51
**Comment:**
*Api Mismatch: The Data API metadata advertises `auroradataapi` as the installable PyPI package, but the existing compatible-database metadata identifies the required SQLAlchemy dialect package as `sqlalchemy-aurora-data-api`. Consumers following this new metadata may install a nonexistent or insufficient package and still be unable to load the `auroradataapi` dialect; use the actual package name.
Validate the correctness of the flagged issue. If correct, How can I resolve this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask user if the user wants to fix the rest of the comments as well. if said yes, then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=d7adeec9f9f14fb56dfd0fa388dd7321b21e943b5ed61166abf8f86526d27a70&reaction=like'>๐</a> | <a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=d7adeec9f9f14fb56dfd0fa388dd7321b21e943b5ed61166abf8f86526d27a70&reaction=dislike'>๐</a>
##########
superset/db_engine_specs/aurora.py:
##########
@@ -36,6 +37,26 @@ class AuroraMySQLDataAPI(MySQLEngineSpec):
"region_name={region_name}"
)
+ metadata = {
+ "description": (
+ "Amazon Aurora MySQL accessed via the AWS Data API, allowing "
+ "database queries over HTTP without managing persistent connections."
+ ),
+ "logo": "aws-aurora.jpg",
+ "homepage_url": "https://aws.amazon.com/rds/aurora/",
+ "categories": [
+ DatabaseCategory.CLOUD,
+ DatabaseCategory.POPULAR,
+ ],
Review Comment:
**Suggestion:** These metadata declarations reference `DatabaseCategory.CLOUD` and `DatabaseCategory.POPULAR`, but neither attribute exists on `DatabaseCategory`; importing this module will raise `AttributeError` while creating `AuroraMySQLDataAPI`, preventing Aurora engine specs from loading. Use defined categories such as `CLOUD_AWS` and an appropriate database/licensing category. [import error]
<details>
<summary><b>Severity Level:</b> Critical ๐จ</summary>
```mdx
- โ Aurora engine-spec imports fail immediately.
- โ Aurora database connections cannot resolve their engine specs.
- โ ๏ธ Aurora unit tests and engine registration are blocked.
```
</details>
[](https://docs.codeant.ai/cli/resolve-pr-comments-skill) [](https://app.codeant.ai/fix-in-ide?tool=cursor&prompt_id=84782f5448e34da589f65165725bedc7&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset) [](https://app.codeant.ai/fix-in-ide?tool=vscode-claude&prompt_id=84782f5448e34da589f65165725bedc7&service=github&base_url=https%3A%2F%2Fgithub.com&org=apache&repo=apache%2Fsuperset)
<details>
<summary><b>Prompt for AI Agent ๐ค </b></summary>
```mdx
This is a comment left during a code review.
**Path:** superset/db_engine_specs/aurora.py
**Line:** 47:50
**Comment:**
*Import Error: These metadata declarations reference `DatabaseCategory.CLOUD` and `DatabaseCategory.POPULAR`, but neither attribute exists on `DatabaseCategory`; importing this module will raise `AttributeError` while creating `AuroraMySQLDataAPI`, preventing Aurora engine specs from loading. Use defined categories such as `CLOUD_AWS` and an appropriate database/licensing category.
Validate the correctness of the flagged issue. If correct, How can I resolve this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask user if the user wants to fix the rest of the comments as well. if said yes, then fetch all the comments validate the correctness and implement a minimal fix
```
</details>
<a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=ee038051ec8f45b40ffcbd04495c055e99b0a32ba5d0500a9ccabe03ef16328d&reaction=like'>๐</a> | <a href='https://app.codeant.ai/feedback?pr_url=https%3A%2F%2Fgithub.com%2Fapache%2Fsuperset%2Fpull%2F43566&comment_hash=ee038051ec8f45b40ffcbd04495c055e99b0a32ba5d0500a9ccabe03ef16328d&reaction=dislike'>๐</a>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "rusackas (via GitHub)" <gi...@apache.org>.
rusackas commented on code in PR #43566:
URL: https://github.com/apache/superset/pull/43566#discussion_r4074719083
##########
superset/db_engine_specs/ibmi.py:
##########
@@ -28,6 +30,29 @@ class IBMiEngineSpec(Db2EngineSpec):
engine_name = "IBM Db2 for i"
max_column_name_length = 128
+ metadata = {
+ "description": (
+ "IBM Db2 for i is an integrated relational database management "
+ "system optimized for IBM i."
+ ),
+ "logo": "ibm-db2.svg",
+ "homepage_url": "https://www.ibm.com/products/db2-for-i",
+ "categories": [
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.PROPRIETARY,
+ ],
+ "pypi_packages": ["sqlalchemy-ibmi"],
+ "connection_string": "ibmi://{username}:{password}@{host}/{database}",
+ "parameters": {
+ "username": "IBM i user profile",
+ "password": "User password",
+ "host": "Hostname or IP address",
+ "database": "Database name",
+ },
+ "docs_url": "https://github.com/IBM/sqlalchemy-ibmi",
+ "sqlalchemy_docs_url": "https://github.com/IBM/sqlalchemy-ibmi",
+ }
Review Comment:
Same ast-static-analysis constraint as the other duplication threads on this PR, the two blocks have to stay literal for `lint_metadata.py`, so consolidating them isn't really on the table. But the underlying observation is real: `database` reads "Database name" here and "Library/schema name" in `db2.py`'s `compatible_databases` entry for the same connector. The Db2 one has the right AS/400 terminology. Fix suggested below. Resolving.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "netlify[bot] (via GitHub)" <gi...@apache.org>.
netlify[bot] commented on PR #43566:
URL: https://github.com/apache/superset/pull/43566#issuecomment-5431844109
### <span aria-hidden="true">โ
</span> Deploy Preview for *superset-docs-preview* ready!
| Name | Link |
|:-:|------------------------|
|<span aria-hidden="true">๐จ</span> Latest commit | 455c06a17ccc8e4fccc9ee5c52eb7f0899a094c3 |
|<span aria-hidden="true">๐</span> Latest deploy log | https://app.netlify.com/projects/superset-docs-preview/deploys/6a8f67ac603cdc0008fd633d |
|<span aria-hidden="true">๐</span> Deploy Preview | [https://deploy-preview-43566--superset-docs-preview.netlify.app](https://deploy-preview-43566--superset-docs-preview.netlify.app) |
|<span aria-hidden="true">๐ฑ</span> Preview on mobile | <details><summary> Toggle QR Code... </summary><br /><br /><br /><br />_Use your smartphone camera to open QR code link._</details> |
|<span aria-hidden="true">๐ค</span> Make changes | [Run an agent on this branch](https://app.netlify.com/projects/superset-docs-preview/agent-runs#DcrLCYAwDADQXXK2WCjE4gaOEZNUBfuh7UXE3e3tHd4LpeZYOqwAE-yVEp_DQanPshtNx5XUtKLcTNROQp1GFC13fjYZFckHXIjROha21vog6JzA9wM) |
---
<!-- [superset-docs-preview Preview](https://deploy-preview-43566--superset-docs-preview.netlify.app) -->
_To edit notification comments on pull requests, go to your [Netlify project configuration](https://app.netlify.com/projects/superset-docs-preview/configuration/notifications#deploy-notifications)._
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "FrancescoCastaldi (via GitHub)" <gi...@apache.org>.
FrancescoCastaldi commented on PR #43566:
URL: https://github.com/apache/superset/pull/43566#issuecomment-5752155433
@rusackas Friendly ping as requested! :) Rebased on latest \master\ and resolved the recent Databricks spec conflict. Clean and ready to merge whenever you have a moment.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "bito-code-review[bot] (via GitHub)" <gi...@apache.org>.
bito-code-review[bot] commented on PR #43566:
URL: https://github.com/apache/superset/pull/43566#issuecomment-5753158969
AI Code Review is in progress (usually takes 3 to 15 minutes unless it's a very large PR).
<details>
<summary>
Bito Usage Guide
</summary>
**Commands**
Type the following command in the pull request comment and save the comment.
- `/review` - Manually triggers an incremental AI Review.
- `/review full` - Manually triggers a full AI Review.
- `/pause` - Pauses automatic reviews on this pull request.
- `/resume` - Resumes automatic reviews.
- `/resolve` - Marks all Bito-posted review comments as resolved.
- `/abort` - Cancels all in-progress reviews.
Refer to the <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent/available-commands" target="_blank" rel="noopener noreferrer">documentation</a> for additional commands.
**Configuration**
This repository uses `Superset` You can customize the agent settings <a href="https://alpha.bito.ai/home/ai-agents/code-review-agent" target="_blank" rel="noopener noreferrer">here</a> or contact your Bito workspace admin at evan@preset.io.
**Documentation & Help**
- <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent/getting-started/install-run-using-bito-cloud/create-or-customize-an-agent-instance" target="_blank" rel="noopener noreferrer">Customize agent settings</a>
- <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent/implementing-custom-code-review-rules" target="_blank" rel="noopener noreferrer">Review rules</a>
- <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent" target="_blank" rel="noopener noreferrer">General documentation</a>
- <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent/faqs" target="_blank" rel="noopener noreferrer">FAQ</a>
</details>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "bito-code-review[bot] (via GitHub)" <gi...@apache.org>.
bito-code-review[bot] commented on code in PR #43566:
URL: https://github.com/apache/superset/pull/43566#discussion_r4058339701
##########
superset/db_engine_specs/aurora.py:
##########
@@ -36,6 +37,27 @@ class AuroraMySQLDataAPI(MySQLEngineSpec):
"region_name={region_name}"
)
+ metadata = {
+ "description": (
+ "Amazon Aurora MySQL accessed via the AWS Data API, allowing "
+ "database queries over HTTP without managing persistent connections."
+ ),
+ "logo": "aws-aurora.jpg",
+ "homepage_url": "https://aws.amazon.com/rds/aurora/",
+ "categories": [
+ DatabaseCategory.CLOUD_AWS,
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.HOSTED_OPEN_SOURCE,
+ ],
+ "pypi_packages": ["sqlalchemy-aurora-data-api"],
+ "connection_string": (
+ "mysql+auroradataapi://{aws_access_id}:{aws_secret_access_key}@/"
+ "{database_name}?aurora_cluster_arn={aurora_cluster_arn}&"
+ "secret_arn={secret_arn}®ion_name={region_name}"
+ ),
Review Comment:
<div>
<div id="suggestion">
<div id="issue"><b>Duplicated URI template</b></div>
<div id="fix">
`metadata["connection_string"]` (53-57) is byte-identical to the existing `sqlalchemy_uri_placeholder` (32-38). Two sources of truth for the same URI template invite drift when the Data API connection format changes. Consider deriving one from the other or referencing a shared constant.
</div>
</div>
<small><i>Code Review Run #9cdfb9</i></small>
</div>
---
Should Bito avoid suggestions like this for future reviews? (<a href=https://alpha.bito.ai/home/ai-agents/review-rules>Manage Rules</a>)
- [ ] Yes, avoid them
##########
superset/db_engine_specs/aurora.py:
##########
@@ -36,6 +37,27 @@ class AuroraMySQLDataAPI(MySQLEngineSpec):
"region_name={region_name}"
)
+ metadata = {
+ "description": (
+ "Amazon Aurora MySQL accessed via the AWS Data API, allowing "
+ "database queries over HTTP without managing persistent connections."
+ ),
+ "logo": "aws-aurora.jpg",
+ "homepage_url": "https://aws.amazon.com/rds/aurora/",
+ "categories": [
+ DatabaseCategory.CLOUD_AWS,
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.HOSTED_OPEN_SOURCE,
+ ],
Review Comment:
<div>
<div id="suggestion">
<div id="issue"><b>Repeated category list</b></div>
<div id="fix">
The same `categories` list (and `logo`/`homepage_url`) is repeated in all four new `metadata` dicts (47-51, 87-91, 122-126, 153-157). A shared constant for the Aurora category set would keep the four specs consistent if a category changes.
</div>
</div>
<small><i>Code Review Run #9cdfb9</i></small>
</div>
---
Should Bito avoid suggestions like this for future reviews? (<a href=https://alpha.bito.ai/home/ai-agents/review-rules>Manage Rules</a>)
- [ ] Yes, avoid them
##########
superset/db_engine_specs/ibmi.py:
##########
@@ -28,6 +30,29 @@ class IBMiEngineSpec(Db2EngineSpec):
engine_name = "IBM Db2 for i"
max_column_name_length = 128
+ metadata = {
+ "description": (
+ "IBM Db2 for i is an integrated relational database management "
+ "system optimized for IBM i."
+ ),
+ "logo": "ibm-db2.svg",
+ "homepage_url": "https://www.ibm.com/products/db2-for-i",
+ "categories": [
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.PROPRIETARY,
+ ],
+ "pypi_packages": ["sqlalchemy-ibmi"],
+ "connection_string": "ibmi://{username}:{password}@{host}/{database}",
+ "parameters": {
+ "username": "IBM i user profile",
+ "password": "User password",
+ "host": "Hostname or IP address",
+ "database": "Database name",
+ },
+ "docs_url": "https://github.com/IBM/sqlalchemy-ibmi",
+ "sqlalchemy_docs_url": "https://github.com/IBM/sqlalchemy-ibmi",
+ }
Review Comment:
<div>
<div id="suggestion">
<div id="issue"><b>Duplicated metadata source</b></div>
<div id="fix">
This `metadata` block duplicates the 'IBM Db2 for i (AS/400)' entry in `Db2EngineSpec.compatible_databases` (db2.py:65-84): identical `connection_string`, `pypi_packages`, `docs_url`, `parameters`, `logo`, `homepage_url`. The class docstring says 'Documentation is in Db2EngineSpec's compatible_databases section', so this creates two sources of truth that can diverge (e.g. `database` param is 'Database name' here vs 'Library/schema name' there). Consolidate to one.
</div>
</div>
<small><i>Code Review Run #9cdfb9</i></small>
</div>
---
Should Bito avoid suggestions like this for future reviews? (<a href=https://alpha.bito.ai/home/ai-agents/review-rules>Manage Rules</a>)
- [ ] Yes, avoid them
##########
superset/db_engine_specs/kusto.py:
##########
@@ -223,6 +223,34 @@ class KustoKqlEngineSpec(BaseEngineSpec): # pylint: disable=abstract-method
allows_sql_comments = False
run_multiple_statements_as_one = True
+ metadata = {
+ "description": (
+ "Azure Data Explorer (Kusto) using native Kusto Query Language (KQL) "
+ "for high-performance log and telemetry analytics."
+ ),
+ "logo": "kusto.png",
+ "homepage_url": "https://azure.microsoft.com/en-us/products/data-explorer/",
+ "categories": [
+ DatabaseCategory.CLOUD_AZURE,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ DatabaseCategory.PROPRIETARY,
+ ],
+ "pypi_packages": ["sqlalchemy-kusto"],
+ "connection_string": (
+ "kustokql+https://{cluster}.kusto.windows.net/{database}"
+ "?msi=False&azure_ad_client_id={client_id}"
+ "&azure_ad_client_secret={client_secret}"
+ "&azure_ad_tenant_id={tenant_id}"
+ ),
+ "parameters": {
+ "cluster": "Azure Data Explorer cluster name",
+ "database": "Database name",
+ "client_id": "Azure AD application (client) ID",
+ "client_secret": "Azure AD application secret",
+ "tenant_id": "Azure AD tenant ID",
+ },
+ }
Review Comment:
<div>
<div id="suggestion">
<div id="issue"><b>Duplicated connection metadata</b></div>
<div id="fix">
This `metadata` block duplicates `connection_string`, `parameters`, `categories`, `logo`, `homepage_url`, and `pypi_packages` already in `KustoSqlEngineSpec.metadata` (lines 82-145), whose `drivers` list already documents the KQL driver with the same `kustokql+https://` string. The connection format now lives in 3 places; a future auth/param change must be applied to all. Consider a shared constant or referencing the existing driver entry.
</div>
</div>
<small><i>Code Review Run #9cdfb9</i></small>
</div>
---
Should Bito avoid suggestions like this for future reviews? (<a href=https://alpha.bito.ai/home/ai-agents/review-rules>Manage Rules</a>)
- [ ] Yes, avoid them
##########
superset/db_engine_specs/elasticsearch.py:
##########
@@ -324,6 +324,27 @@ class OpenDistroEngineSpec(BaseEngineSpec): # pylint: disable=abstract-method
engine = "odelasticsearch"
engine_name = "OpenSearch (OpenDistro)"
+ metadata = {
+ "description": (
+ "OpenSearch (OpenDistro) SQL connector for querying OpenSearch and "
+ "OpenDistro clusters using SQL syntax."
+ ),
+ "logo": "elasticsearch.png",
+ "homepage_url": "https://opensearch.org/",
+ "categories": [
+ DatabaseCategory.SEARCH_NOSQL,
+ DatabaseCategory.OPEN_SOURCE,
+ ],
+ "pypi_packages": ["elasticsearch-dbapi"],
+ "connection_string": "odelasticsearch+https://{user}:{password}@{host}:9200/",
+ "default_port": 9200,
+ "parameters": {
+ "user": "OpenSearch username",
+ "password": "OpenSearch password",
+ "host": "OpenSearch host",
+ },
+ }
Review Comment:
<div>
<div id="suggestion">
<div id="issue"><b>duplicated connection string</b></div>
<div id="fix">
The `connection_string` `odelasticsearch+https://{user}:{password}@{host}:9200/` is duplicated verbatim from `ElasticSearchEngineSpec.metadata["drivers"]` (line 167). If the URI template changes, the two copies diverge silently. Extract a shared constant and reference it in both places.
</div>
</div>
<div id="suggestion">
<div id="issue"><b>duplicated metadata block</b></div>
<div id="fix">
This metadata block largely duplicates `ElasticSearchEngineSpec.metadata` (lines 138-153): same `logo`, `categories`, `pypi_packages`, `parameters`, and `default_port`-adjacent fields. Only `description`, `homepage_url`, `connection_string`, and `default_port` differ. Reusing the sibling metadata and overriding the deltas would avoid drift.
</div>
</div>
<small><i>Code Review Run #9cdfb9</i></small>
</div>
---
Should Bito avoid suggestions like this for future reviews? (<a href=https://alpha.bito.ai/home/ai-agents/review-rules>Manage Rules</a>)
- [ ] Yes, avoid them
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "rusackas (via GitHub)" <gi...@apache.org>.
rusackas commented on PR #43566:
URL: https://github.com/apache/superset/pull/43566#issuecomment-5545972529
Thanks @FrancescoCastaldi! This one's green and fixes docs entries that are wrong today (Aurora Data API wearing MySQL's logo, for one). Since #43695 now carries these same six files with different content, I'd rather merge this small one first and rebase that one on top. Sound OK? One question if so: is `default_port: 50000` for IBM i what `sqlalchemy-ibmi` actually uses, or inherited from Db2 LUW?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "rusackas (via GitHub)" <gi...@apache.org>.
rusackas commented on code in PR #43566:
URL: https://github.com/apache/superset/pull/43566#discussion_r4068661582
##########
superset/db_engine_specs/aurora.py:
##########
@@ -36,6 +37,26 @@ class AuroraMySQLDataAPI(MySQLEngineSpec):
"region_name={region_name}"
)
+ metadata = {
+ "description": (
+ "Amazon Aurora MySQL accessed via the AWS Data API, allowing "
+ "database queries over HTTP without managing persistent connections."
+ ),
+ "logo": "aws-aurora.jpg",
+ "homepage_url": "https://aws.amazon.com/rds/aurora/",
+ "categories": [
+ DatabaseCategory.CLOUD,
+ DatabaseCategory.POPULAR,
+ ],
Review Comment:
Confirmed fixed in `55a0fe3`, the categories are `CLOUD_AWS` / `TRADITIONAL_RDBMS` / `HOSTED_OPEN_SOURCE` now. Resolving.
##########
superset/db_engine_specs/aurora.py:
##########
@@ -36,6 +37,26 @@ class AuroraMySQLDataAPI(MySQLEngineSpec):
"region_name={region_name}"
)
+ metadata = {
+ "description": (
+ "Amazon Aurora MySQL accessed via the AWS Data API, allowing "
+ "database queries over HTTP without managing persistent connections."
+ ),
+ "logo": "aws-aurora.jpg",
+ "homepage_url": "https://aws.amazon.com/rds/aurora/",
+ "categories": [
+ DatabaseCategory.CLOUD,
+ DatabaseCategory.POPULAR,
+ ],
+ "pypi_packages": ["auroradataapi"],
Review Comment:
Yep, `55a0fe3` switched this to `sqlalchemy-aurora-data-api`. Resolving.
##########
superset/db_engine_specs/databend.py:
##########
@@ -162,8 +162,24 @@ class DatabendEngineSpec(DatabendBaseEngineSpec):
_show_functions_column = "name"
supports_file_upload = False
- # Note: Primary metadata is in DatabendConnectEngineSpec which provides
- # the native connection UI. This spec exists for backwards compatibility.
+ metadata = {
+ "description": (
+ "Databend is an open-source cloud-native data warehouse built in Rust "
+ "(legacy databend-sqlalchemy connector)."
+ ),
+ "logo": "databend.png",
+ "homepage_url": "https://www.databend.com/",
+ "categories": [
+ DatabaseCategory.CLOUD_DATA_WAREHOUSES,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ DatabaseCategory.PROPRIETARY,
+ ],
Review Comment:
Already fixed in `55a0fe3`, Databend is tagged `OPEN_SOURCE` now. Resolving.
##########
superset/db_engine_specs/databricks.py:
##########
@@ -230,9 +230,22 @@ class DatabricksHiveEngineSpec(HiveEngineSpec):
drivers = {"pyhive": "Hive driver for Interactive Cluster"}
default_driver = "pyhive"
- # Note: Primary metadata is in DatabricksPythonConnectorEngineSpec which
- # consolidates all Databricks connection methods. This spec exists for
- # backwards compatibility with Interactive Cluster connections.
+ metadata = {
+ "description": (
+ "Databricks Interactive Cluster connectivity via the PyHive connector."
+ ),
+ "logo": "databricks.png",
+ "homepage_url": "https://www.databricks.com/",
+ "categories": [
+ DatabaseCategory.CLOUD_DATA_WAREHOUSES,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ ],
+ "pypi_packages": ["pyhive"],
+ "connection_string": (
+ "databricks+pyhive://token:{access_token}@{host}:{port}/{database}"
+ ),
+ "default_port": 443,
+ }
Review Comment:
Covered in `55a0fe3`... the legacy connection string carries `?http_path={http_path}` now and it is documented under `parameters`. Resolving.
##########
superset/db_engine_specs/databricks.py:
##########
@@ -456,9 +480,22 @@ class DatabricksNativeEngineSpec(DatabricksDynamicBaseEngineSpec):
"databricks+connector://token:{access_token}@{host}:{port}/{database_name}"
)
- # Note: Primary metadata is in DatabricksPythonConnectorEngineSpec which
- # consolidates all Databricks connection methods. This spec exists for
- # backwards compatibility with legacy databricks-dbapi connections.
+ metadata = {
+ "description": (
+ "Legacy Databricks connector using the databricks-dbapi driver."
+ ),
+ "logo": "databricks.png",
+ "homepage_url": "https://www.databricks.com/",
+ "categories": [
+ DatabaseCategory.CLOUD_DATA_WAREHOUSES,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ ],
+ "pypi_packages": ["databricks-dbapi"],
Review Comment:
Fixed in `55a0fe3`, the package is `databricks-dbapi[sqlalchemy]` now. Resolving.
##########
superset/db_engine_specs/elasticsearch.py:
##########
@@ -204,6 +204,22 @@ class OpenDistroEngineSpec(BaseEngineSpec): # pylint: disable=abstract-method
engine = "odelasticsearch"
engine_name = "OpenSearch (OpenDistro)"
+ metadata = {
+ "description": (
+ "OpenSearch (OpenDistro) is a community-driven, open-source search "
+ "and analytics suite derived from Elasticsearch."
+ ),
+ "logo": "elasticsearch.png",
+ "homepage_url": "https://opensearch.org/",
Review Comment:
There is no OpenSearch logo asset in the repo, and the existing Amazon OpenSearch Service entry on `master` uses `elasticsearch.png` too, so this matches what we have. A dedicated logo could be a follow-up, but I would not block on it. Resolving.
##########
superset/db_engine_specs/ibmi.py:
##########
@@ -28,6 +30,22 @@ class IBMiEngineSpec(Db2EngineSpec):
engine_name = "IBM Db2 for i"
max_column_name_length = 128
+ metadata = {
+ "description": (
+ "IBM Db2 for i is an integrated relational database management "
+ "system optimized for IBM i."
+ ),
+ "logo": "ibm-db2.svg",
+ "homepage_url": "https://www.ibm.com/products/db2",
+ "categories": [
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.ENTERPRISE,
+ ],
+ "pypi_packages": ["sqlalchemy-ibmi"],
+ "connection_string": "ibmi://{user}:{password}@{host}:{port}/{database}",
+ "default_port": 50000,
Review Comment:
Fixed in `55a0fe3`, the template uses `{username}` now. Resolving.
##########
superset/db_engine_specs/kusto.py:
##########
@@ -174,6 +174,26 @@ class KustoKqlEngineSpec(BaseEngineSpec): # pylint: disable=abstract-method
allows_sql_comments = False
run_multiple_statements_as_one = True
+ metadata = {
+ "description": (
+ "Azure Data Explorer (Kusto) using native Kusto Query Language (KQL) "
+ "for high-performance log and telemetry analytics."
+ ),
+ "logo": "kusto.png",
+ "homepage_url": "https://azure.microsoft.com/en-us/products/data-explorer/",
+ "categories": [
+ DatabaseCategory.CLOUD_AZURE,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ DatabaseCategory.PROPRIETARY,
+ ],
+ "pypi_packages": ["sqlalchemy-kusto"],
+ "connection_string": (
+ "kustokql+https://{cluster}.kusto.windows.net/{database}"
+ "?msi=False&azure_ad_client_id={client_id}"
+ "&azure_ad_client_secret={client_secret}"
+ ),
+ }
Review Comment:
Fixed in `55a0fe3`, the KQL string has `azure_ad_tenant_id={tenant_id}` now and `tenant_id` is documented. Resolving.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "rusackas (via GitHub)" <gi...@apache.org>.
rusackas merged PR #43566:
URL: https://github.com/apache/superset/pull/43566
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "FrancescoCastaldi (via GitHub)" <gi...@apache.org>.
FrancescoCastaldi commented on PR #43566:
URL: https://github.com/apache/superset/pull/43566#issuecomment-5522602119
Note: The metadata additions and spec coverage initiated in this PR have been consolidated, extended with unit test suites for 22 dialects, and updated with AST linter improvements in PR #43695.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "bito-code-review[bot] (via GitHub)" <gi...@apache.org>.
bito-code-review[bot] commented on code in PR #43566:
URL: https://github.com/apache/superset/pull/43566#discussion_r4068663075
##########
superset/db_engine_specs/aurora.py:
##########
@@ -36,6 +37,27 @@ class AuroraMySQLDataAPI(MySQLEngineSpec):
"region_name={region_name}"
)
+ metadata = {
+ "description": (
+ "Amazon Aurora MySQL accessed via the AWS Data API, allowing "
+ "database queries over HTTP without managing persistent connections."
+ ),
+ "logo": "aws-aurora.jpg",
+ "homepage_url": "https://aws.amazon.com/rds/aurora/",
+ "categories": [
+ DatabaseCategory.CLOUD_AWS,
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.HOSTED_OPEN_SOURCE,
+ ],
Review Comment:
<!-- Bito Reply -->
The `/resolve` command is not supported on inline comments. Please use it in a top-level comment instead.
##########
superset/db_engine_specs/elasticsearch.py:
##########
@@ -324,6 +324,27 @@ class OpenDistroEngineSpec(BaseEngineSpec): # pylint: disable=abstract-method
engine = "odelasticsearch"
engine_name = "OpenSearch (OpenDistro)"
+ metadata = {
+ "description": (
+ "OpenSearch (OpenDistro) SQL connector for querying OpenSearch and "
+ "OpenDistro clusters using SQL syntax."
+ ),
+ "logo": "elasticsearch.png",
+ "homepage_url": "https://opensearch.org/",
+ "categories": [
+ DatabaseCategory.SEARCH_NOSQL,
+ DatabaseCategory.OPEN_SOURCE,
+ ],
+ "pypi_packages": ["elasticsearch-dbapi"],
+ "connection_string": "odelasticsearch+https://{user}:{password}@{host}:9200/",
+ "default_port": 9200,
+ "parameters": {
+ "user": "OpenSearch username",
+ "password": "OpenSearch password",
+ "host": "OpenSearch host",
+ },
+ }
Review Comment:
<!-- Bito Reply -->
The reviewer's suggestion to extract a shared constant for the connection string and reuse the metadata block is technically sound for reducing duplication. However, as you noted, the `metadata` dictionary in `lint_metadata.py` is evaluated statically via `ast` in pre-commit, which restricts the use of shared constants or dynamic references. Given this constraint, keeping the definitions literal is the correct approach to ensure compatibility with the static analysis tool.
##########
superset/db_engine_specs/aurora.py:
##########
@@ -36,6 +37,27 @@ class AuroraMySQLDataAPI(MySQLEngineSpec):
"region_name={region_name}"
)
+ metadata = {
+ "description": (
+ "Amazon Aurora MySQL accessed via the AWS Data API, allowing "
+ "database queries over HTTP without managing persistent connections."
+ ),
+ "logo": "aws-aurora.jpg",
+ "homepage_url": "https://aws.amazon.com/rds/aurora/",
+ "categories": [
+ DatabaseCategory.CLOUD_AWS,
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.HOSTED_OPEN_SOURCE,
+ ],
+ "pypi_packages": ["sqlalchemy-aurora-data-api"],
+ "connection_string": (
+ "mysql+auroradataapi://{aws_access_id}:{aws_secret_access_key}@/"
+ "{database_name}?aurora_cluster_arn={aurora_cluster_arn}&"
+ "secret_arn={secret_arn}®ion_name={region_name}"
+ ),
Review Comment:
<!-- Bito Reply -->
The reviewer's suggestion to derive the `connection_string` from a shared constant is technically sound for reducing duplication. However, as noted, the static evaluation of `metadata` via `ast` in `lint_metadata.py` prevents the use of dynamic references or shared constants in this context. Given this constraint, repeating the template is the necessary approach to satisfy the pre-commit checks.
##########
superset/db_engine_specs/kusto.py:
##########
@@ -223,6 +223,34 @@ class KustoKqlEngineSpec(BaseEngineSpec): # pylint: disable=abstract-method
allows_sql_comments = False
run_multiple_statements_as_one = True
+ metadata = {
+ "description": (
+ "Azure Data Explorer (Kusto) using native Kusto Query Language (KQL) "
+ "for high-performance log and telemetry analytics."
+ ),
+ "logo": "kusto.png",
+ "homepage_url": "https://azure.microsoft.com/en-us/products/data-explorer/",
+ "categories": [
+ DatabaseCategory.CLOUD_AZURE,
+ DatabaseCategory.ANALYTICAL_DATABASES,
+ DatabaseCategory.PROPRIETARY,
+ ],
+ "pypi_packages": ["sqlalchemy-kusto"],
+ "connection_string": (
+ "kustokql+https://{cluster}.kusto.windows.net/{database}"
+ "?msi=False&azure_ad_client_id={client_id}"
+ "&azure_ad_client_secret={client_secret}"
+ "&azure_ad_tenant_id={tenant_id}"
+ ),
+ "parameters": {
+ "cluster": "Azure Data Explorer cluster name",
+ "database": "Database name",
+ "client_id": "Azure AD application (client) ID",
+ "client_secret": "Azure AD application secret",
+ "tenant_id": "Azure AD tenant ID",
+ },
+ }
Review Comment:
<!-- Bito Reply -->
Understood. Since the `metadata` block must remain a literal dictionary for static analysis by `ast` in pre-commit, maintaining it as a literal definition is the correct approach to satisfy the linting requirements.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "codeant-ai-for-open-source[bot] (via GitHub)" <gi...@apache.org>.
codeant-ai-for-open-source[bot] commented on code in PR #43566:
URL: https://github.com/apache/superset/pull/43566#discussion_r4068664242
##########
superset/db_engine_specs/elasticsearch.py:
##########
@@ -204,6 +204,22 @@ class OpenDistroEngineSpec(BaseEngineSpec): # pylint: disable=abstract-method
engine = "odelasticsearch"
engine_name = "OpenSearch (OpenDistro)"
+ metadata = {
+ "description": (
+ "OpenSearch (OpenDistro) is a community-driven, open-source search "
+ "and analytics suite derived from Elasticsearch."
+ ),
+ "logo": "elasticsearch.png",
+ "homepage_url": "https://opensearch.org/",
Review Comment:
โ
**Customized review instruction saved!**
**Instruction:**
> Do not flag reuse of elasticsearch.png for OpenSearch/OpenDistro metadata when no dedicated OpenSearch logo asset exists and this matches the existing repository convention.
**Applied to:**
- `superset/db_engine_specs/elasticsearch.py`
---
๐ก *To manage or update this instruction, visit: [CodeAnt AI Settings](https://app.codeant.ai/org/settings/learnings)*
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "bito-code-review[bot] (via GitHub)" <gi...@apache.org>.
bito-code-review[bot] commented on code in PR #43566:
URL: https://github.com/apache/superset/pull/43566#discussion_r4074720732
##########
superset/db_engine_specs/ibmi.py:
##########
@@ -28,6 +30,29 @@ class IBMiEngineSpec(Db2EngineSpec):
engine_name = "IBM Db2 for i"
max_column_name_length = 128
+ metadata = {
+ "description": (
+ "IBM Db2 for i is an integrated relational database management "
+ "system optimized for IBM i."
+ ),
+ "logo": "ibm-db2.svg",
+ "homepage_url": "https://www.ibm.com/products/db2-for-i",
+ "categories": [
+ DatabaseCategory.TRADITIONAL_RDBMS,
+ DatabaseCategory.PROPRIETARY,
+ ],
+ "pypi_packages": ["sqlalchemy-ibmi"],
+ "connection_string": "ibmi://{username}:{password}@{host}/{database}",
+ "parameters": {
+ "username": "IBM i user profile",
+ "password": "User password",
+ "host": "Hostname or IP address",
+ "database": "Database name",
+ },
+ "docs_url": "https://github.com/IBM/sqlalchemy-ibmi",
+ "sqlalchemy_docs_url": "https://github.com/IBM/sqlalchemy-ibmi",
+ }
Review Comment:
<!-- Bito Reply -->
The observation regarding the terminology mismatch for the database parameter is correct. Since the block must remain literal for linting purposes, the current implementation is acceptable as a necessary constraint. No further action is required for this thread.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "codecov[bot] (via GitHub)" <gi...@apache.org>.
codecov[bot] commented on PR #43566:
URL: https://github.com/apache/superset/pull/43566#issuecomment-5432045741
## [Codecov](https://app.codecov.io/gh/apache/superset/pull/43566?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) Report
:white_check_mark: All modified and coverable lines are covered by tests.
:white_check_mark: Project coverage is 66.16%. Comparing base ([`a140e74`](https://app.codecov.io/gh/apache/superset/commit/a140e74f5f54b2ada25e7558d884812facd3375d?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)) to head ([`8c7ab07`](https://app.codecov.io/gh/apache/superset/commit/8c7ab0760e0ef45bd368ba636d6a4ce3a4ac1d1b?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)).
:warning: Report is 1 commits behind head on master.
> :exclamation: There is a different number of reports uploaded between BASE (a140e74) and HEAD (8c7ab07). Click for more details.
>
> <details><summary>HEAD has 41 uploads less than BASE</summary>
>
>| Flag | BASE (a140e74) | HEAD (8c7ab07) |
>|------|------|------|
>|hive|5|1|
>|python|32|3|
>|presto|5|1|
>|sqlite|5|1|
></details>
<details><summary>Additional details and impacted files</summary>
```diff
@@ Coverage Diff @@
## master #43566 +/- ##
===========================================
- Coverage 79.10% 66.16% -12.94%
===========================================
Files 2878 2878
Lines 165634 165647 +13
Branches 38294 38294
===========================================
- Hits 131022 109600 -21422
- Misses 32124 53823 +21699
+ Partials 2488 2224 -264
```
| [Flag](https://app.codecov.io/gh/apache/superset/pull/43566/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | Coverage ฮ | |
|---|---|---|
| [hive](https://app.codecov.io/gh/apache/superset/pull/43566/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `37.96% <100.00%> (+<0.01%)` | :arrow_up: |
| [mysql](https://app.codecov.io/gh/apache/superset/pull/43566/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `?` | |
| [postgres](https://app.codecov.io/gh/apache/superset/pull/43566/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `?` | |
| [presto](https://app.codecov.io/gh/apache/superset/pull/43566/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `39.88% <100.00%> (+<0.01%)` | :arrow_up: |
| [python](https://app.codecov.io/gh/apache/superset/pull/43566/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `57.57% <100.00%> (-26.11%)` | :arrow_down: |
| [sqlite](https://app.codecov.io/gh/apache/superset/pull/43566/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `57.43% <100.00%> (+<0.01%)` | :arrow_up: |
| [unit](https://app.codecov.io/gh/apache/superset/pull/43566/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `?` | |
Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#carryforward-flags-in-the-pull-request-comment) to find out more.
</details>
[:umbrella: View full report in Codecov by Harness](https://app.codecov.io/gh/apache/superset/pull/43566?dropdown=coverage&src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache).
:loudspeaker: Have feedback on the report? [Share it here](https://about.codecov.io/codecov-pr-comment-feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache).
<details><summary> :rocket: New features to boost your workflow: </summary>
- :snowflake: [Test Analytics](https://docs.codecov.com/docs/test-analytics): Detect flaky tests, report on failures, and find test suite problems.
- :package: [JS Bundle Analysis](https://docs.codecov.com/docs/javascript-bundle-analysis): Save yourself from yourself by tracking and limiting bundle sizes in JS merges.
</details>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "FrancescoCastaldi (via GitHub)" <gi...@apache.org>.
FrancescoCastaldi commented on PR #43566:
URL: https://github.com/apache/superset/pull/43566#issuecomment-5550820915
@rusackas Sounds great to me! Merging this smaller PR first and then rebasing #43695 on top is definitely the cleaner approach. I will take care of rebasing #43695 as soon as this lands.
Regarding `default_port: 50000`: great catch! You are 100% right โ it was mistakenly inherited from Db2 LUW (`Db2EngineSpec`), which uses 50000 as its default instance port.
Db2 for i (AS/400) does not use 50000:
- Under the hood, `sqlalchemy-ibmi` uses the IBM i Access ODBC driver (`pyodbc`), which talks to the IBM i database server daemon (`as-database`, `QZDASOINIT`) on port 8471 (or 9471 for TLS/SSL) via the port mapper (`as-port-map`, 449), or 446/448 if using DRDA.
- More importantly, `sqlalchemy-ibmi`'s standard URI convention does not expect a port in the host string (`ibmi://{username}:{password}@{host}/{database}` โ which matches what was already in `Db2EngineSpec.metadata["compatible_databases"]`). Passing a port in the host component can even cause the driver/dialect to fail.
I have just pushed a commit (`ba6c196`) that:
- Removes the inaccurate `default_port: 50000`
- Updates `connection_string` to `ibmi://{username}:{password}@{host}/{database}`
- Removes `port` from `parameters`
- Updates `homepage_url` to `https://www.ibm.com/products/db2-for-i` and adds `docs_url` / `sqlalchemy_docs_url`
Ready to merge whenever you are!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "bito-code-review[bot] (via GitHub)" <gi...@apache.org>.
bito-code-review[bot] commented on PR #43566:
URL: https://github.com/apache/superset/pull/43566#issuecomment-5551757800
AI Code Review is in progress (usually takes 3 to 15 minutes unless it's a very large PR).
<details>
<summary>
Bito Usage Guide
</summary>
**Commands**
Type the following command in the pull request comment and save the comment.
- `/review` - Manually triggers an incremental AI Review.
- `/review full` - Manually triggers a full AI Review.
- `/pause` - Pauses automatic reviews on this pull request.
- `/resume` - Resumes automatic reviews.
- `/resolve` - Marks all Bito-posted review comments as resolved.
- `/abort` - Cancels all in-progress reviews.
Refer to the <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent/available-commands" target="_blank" rel="noopener noreferrer">documentation</a> for additional commands.
**Configuration**
This repository uses `Superset` You can customize the agent settings <a href="https://alpha.bito.ai/home/ai-agents/code-review-agent" target="_blank" rel="noopener noreferrer">here</a> or contact your Bito workspace admin at evan@preset.io.
**Documentation & Help**
- <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent/getting-started/install-run-using-bito-cloud/create-or-customize-an-agent-instance" target="_blank" rel="noopener noreferrer">Customize agent settings</a>
- <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent/implementing-custom-code-review-rules" target="_blank" rel="noopener noreferrer">Review rules</a>
- <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent" target="_blank" rel="noopener noreferrer">General documentation</a>
- <a href="https://docs.bito.ai/bito-dev-agents/ai-code-review-agent/faqs" target="_blank" rel="noopener noreferrer">FAQ</a>
</details>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [PR] feat(db_engine_specs): add metadata blocks to all remaining incomplete engine specs [superset]
Posted by "bito-code-review[bot] (via GitHub)" <gi...@apache.org>.
bito-code-review[bot] commented on PR #43566:
URL: https://github.com/apache/superset/pull/43566#issuecomment-5884526362
**Bito Automatic Review Skipped โ PR Already Merged**<br/><br/>Bito scheduled an automatic review for this pull request, but the review was skipped because this PR was merged before the review could be run.<br/>No action is needed if you didn't intend to review it. To get a review, you can type `/review` in a comment and save it
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org