Skip to content
Snippets Groups Projects
Select Git revision
1 result Searching

rotation_behavior.hpp

Blame
  • setup.py 2.61 KiB
    # Licensed to the Apache Software Foundation (ASF) under one
    # or more contributor license agreements.  See the NOTICE file
    # distributed with this work for additional information
    # regarding copyright ownership.  The ASF licenses this file
    # to you under the Apache License, Version 2.0 (the
    # "License"); you may not use this file except in compliance
    # with the License.  You may obtain a copy of the License at
    #
    #   http://www.apache.org/licenses/LICENSE-2.0
    #
    # Unless required by applicable law or agreed to in writing,
    # software distributed under the License is distributed on an
    # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    # KIND, either express or implied.  See the License for the
    # specific language governing permissions and limitations
    # under the License.
    import json
    import os
    import subprocess
    
    from setuptools import find_packages, setup
    
    BASE_DIR = os.path.abspath(os.path.dirname(__file__))
    PACKAGE_JSON = os.path.join(BASE_DIR, "superset-frontend", "package.json")
    
    
    with open(PACKAGE_JSON) as package_file:
        version_string = json.load(package_file)["version"]
    
    
    def get_git_sha() -> str:
        try:
            output = subprocess.check_output(["git", "rev-parse", "HEAD"])  # noqa: S603, S607
            return output.decode().strip()
        except Exception:  # pylint: disable=broad-except
            return ""
    
    
    GIT_SHA = get_git_sha()
    version_info = {"GIT_SHA": GIT_SHA, "version": version_string}
    print("-==-" * 15)
    print("VERSION: " + version_string)
    print("GIT SHA: " + GIT_SHA)
    print("-==-" * 15)
    
    VERSION_INFO_FILE = os.path.join(BASE_DIR, "superset", "static", "version_info.json")
    
    with open(VERSION_INFO_FILE, "w") as version_file:
        json.dump(version_info, version_file)
    
    # translating 'no version' from npm to pypi to prevent warning msg
    version_string = version_string.replace("-dev", ".dev0")
    
    setup(
        version=version_string,
        packages=find_packages(),
        include_package_data=True,
        zip_safe=False,
        entry_points={
            "console_scripts": ["superset=superset.cli.main:superset"],
            # the `postgres` and `postgres+psycopg2://` schemes were removed in SQLAlchemy 1.4  # noqa: E501
            # add an alias here to prevent breaking existing databases
            "sqlalchemy.dialects": [
                "postgres.psycopg2 = sqlalchemy.dialects.postgresql:dialect",
                "postgres = sqlalchemy.dialects.postgresql:dialect",
                "superset = superset.extensions.metadb:SupersetAPSWDialect",
            ],
            "shillelagh.adapter": [
                "superset=superset.extensions.metadb:SupersetShillelaghAdapter"
            ],
        },
        download_url="https://www.apache.org/dist/superset/" + version_string
    )