apache/superset

The 'sqlglot<24,>=23.0.2' distribution was not found and is required by apache-superset

Opened this issue · 3 comments

Bug description

This error occurred while upgrading the superset image from version 3.0.1 to version 4.0.2 how to fix this

Screenshots/recordings

photo_2024-11-13_09-56-04

Superset version

master / latest-dev

Python version

3.9

Node version

16

Browser

Chrome

Additional context

This error occurred while upgrading the superset image from version 3.0.1 to version 4.0.2 how to fix this

Checklist

  • I have searched Superset docs and Slack and didn't find a solution to my problem.
  • I have searched the GitHub issue tracker and didn't find a similar bug report.
  • I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.

I couldn't find a specific solution for the 'sqlglot' dependency issue in the context of upgrading from Superset version 3.0.1 to 4.0.2. However, I can suggest a general approach to resolve this kind of dependency issue:

  1. Check Dependency Versions: Ensure that the version of 'sqlglot' specified in your environment matches the requirements for Superset 4.0.2. According to the dependencies for version 4.0.2, 'sqlglot' should be >=25.24.0,<26 [1].

  2. Update Dependencies: You can manually update the 'sqlglot' package to the required version using pip:

    pip install 'sqlglot>=25.24.0,<26'
  3. Rebuild Docker Image: If you are using Docker, make sure to rebuild your Docker image after updating the dependencies:

    docker compose down
    docker compose up --build
  4. Verify Installation: After updating, verify that the correct version of 'sqlglot' is installed by checking the installed packages:

    pip show sqlglot

These steps should help resolve the dependency issue you're encountering. If the problem persists, double-check the pyproject.toml or requirements files for any conflicting version specifications.

To continue talking to Dosu, mention @dosu.

I couldn't find a specific solution for the 'sqlglot' dependency issue in the context of upgrading from Superset version 3.0.1 to 4.0.2. However, I can suggest a general approach to resolve this kind of dependency issue:

  1. Check Dependency Versions: Ensure that the version of 'sqlglot' specified in your environment matches the requirements for Superset 4.0.2. According to the dependencies for version 4.0.2, 'sqlglot' should be >=25.24.0,<26 [1].
  2. Update Dependencies: You can manually update the 'sqlglot' package to the required version using pip:
    pip install 'sqlglot>=25.24.0,<26'
  3. Rebuild Docker Image: If you are using Docker, make sure to rebuild your Docker image after updating the dependencies:
    docker compose down
    docker compose up --build
  4. Verify Installation: After updating, verify that the correct version of 'sqlglot' is installed by checking the installed packages:
    pip show sqlglot

These steps should help resolve the dependency issue you're encountering. If the problem persists, double-check the pyproject.toml or requirements files for any conflicting version specifications.

To continue talking to Dosu, mention @dosu.

RUN apt-get update
&& apt-get install -y --no-install-recommends
libnss3
libdbus-glib-1-2
libgtk-3-0
libx11-xcb1
libasound2
libxtst6
wget tar
libldap2-dev
pkg-config
build-essential
curl
default-libmysqlclient-dev
libsasl2-dev
libsasl2-modules-gssapi-mit
libpq-dev
libecpg-dev
libldap2-dev
&& touch superset/static/version_info.json
&& chown -R superset:superset ./*
&& rm -rf /var/lib/apt/lists/*

RUN pip install 'sqlglot>=25.24.0,<26'

I added it as below and it didn't work