| # 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. |
| |
| [project] |
| name = "apache-superset-extensions-cli" |
| version = "0.1.0rc2" |
| description = "Official command-line interface for building, bundling, and managing Apache Superset extensions" |
| readme = "README.md" |
| authors = [ |
| { name = "Apache Software Foundation", email = "dev@superset.apache.org" }, |
| ] |
| license = "Apache-2.0" |
| license-files = ["LICENSE.txt"] |
| requires-python = ">=3.10" |
| keywords = ["superset", "apache", "cli", "extensions", "analytics", "business-intelligence", "development-tools"] |
| classifiers = [ |
| "Development Status :: 3 - Alpha", |
| "Environment :: Console", |
| "Intended Audience :: Developers", |
| "Operating System :: OS Independent", |
| "Programming Language :: Python :: 3", |
| "Programming Language :: Python :: 3.10", |
| "Programming Language :: Python :: 3.11", |
| "Programming Language :: Python :: 3.12", |
| "Topic :: Database", |
| "Topic :: Scientific/Engineering :: Visualization", |
| "Topic :: Software Development :: Build Tools", |
| "Topic :: Software Development :: Libraries :: Python Modules", |
| "Topic :: System :: Software Distribution", |
| ] |
| dependencies = [ |
| # no bounds for apache-superset-core until we have a stable version |
| "apache-superset-core", |
| "click>=8.0.3", |
| "jinja2>=3.1.6", |
| "semver>=3.0.4", |
| "tomli>=2.2.1; python_version < '3.11'", |
| "tomli-w>=1.2.0", |
| "watchdog>=6.0.0", |
| ] |
| |
| [project.urls] |
| Homepage = "https://superset.apache.org/" |
| Documentation = "https://superset.apache.org/docs/" |
| Repository = "https://github.com/apache/superset" |
| "Bug Tracker" = "https://github.com/apache/superset/issues" |
| Changelog = "https://github.com/apache/superset/blob/master/CHANGELOG.md" |
| |
| [project.optional-dependencies] |
| test = [ |
| "pytest", |
| "pytest-cov", |
| "pytest-mock", |
| ] |
| |
| [build-system] |
| requires = ["setuptools>=76.0.0", "wheel"] |
| build-backend = "setuptools.build_meta" |
| |
| [tool.setuptools] |
| package-dir = { "" = "src" } |
| include-package-data = true |
| |
| [tool.setuptools.packages.find] |
| where = ["src"] |
| |
| [tool.setuptools.package-data] |
| superset_extensions_cli = ["templates/**/*"] |
| |
| [project.scripts] |
| superset-extensions = "superset_extensions_cli.cli:app" |
| |
| [tool.pytest.ini_options] |
| testpaths = ["tests"] |
| python_files = ["test_*.py", "*_test.py"] |
| python_classes = ["Test*"] |
| python_functions = ["test_*"] |
| addopts = [ |
| "--strict-markers", |
| "--strict-config", |
| "--verbose", |
| "--cov=superset_extensions_cli", |
| "--cov-report=term-missing", |
| "--cov-report=html:htmlcov" |
| ] |
| markers = [ |
| "unit: Unit tests", |
| "integration: Integration tests", |
| "cli: CLI command tests", |
| "slow: Slow running tests", |
| ] |
| |
| [tool.coverage.run] |
| source = ["src/superset_extensions_cli"] |
| omit = ["*/tests/*", "*/test_*"] |
| |
| [tool.coverage.report] |
| exclude_lines = [ |
| "pragma: no cover", |
| "def __repr__", |
| "if self.debug:", |
| "if settings.DEBUG", |
| "raise AssertionError", |
| "raise NotImplementedError", |
| "if 0:", |
| "if __name__ == .__main__.:", |
| "class .*\\bProtocol\\):", |
| "@(abc\\.)?abstractmethod", |
| ] |
| |
| [tool.ruff.lint.per-file-ignores] |
| "src/superset_extensions_cli/*" = ["TID251"] |