# SPDX-FileCopyrightText: Copyright 2023 Arm Limited and/or its affiliates <open-source-office@arm.com>
#
# SPDX-License-Identifier: Apache-2.0
#
# Licensed 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
#
# 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 = "ethos-u-vela"
description = "Neural network model compiler for Arm Ethos-U NPUs"
requires-python = "~=3.9"
authors = [{name = "Arm Ltd", email = "mlg-vela@arm.com"}]
license = {text= "Apache License 2.0"}
classifiers = [
    "Development Status :: 5 - Production/Stable",
    "Intended Audience :: Developers",
    "License :: OSI Approved :: Apache Software License",
    "Operating System :: POSIX :: Linux",
    "Operating System :: Microsoft :: Windows :: Windows 10",
    "Programming Language :: C",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.10",
    "Topic :: Scientific/Engineering :: Artificial Intelligence",
    "Topic :: Software Development :: Compilers",
]
keywords = ["ethos-u", "vela compiler", "tflite", "npu"]
dependencies = [
    "flatbuffers==23.5.26",
    "numpy",
    "lxml>=4.5.2"
]
dynamic = ["readme", "version"]

[project.optional-dependencies]
dev = [
    "pytest",
    "pytest-cov",
    "pre-commit",
    "build",
    "setuptools_scm[toml]~=7.1.0"
]

[project.urls]
Homepage = "https://review.mlplatform.org/plugins/gitiles/ml/ethos-u/ethos-u-vela"

[project.scripts]
vela = "ethosu.vela.vela:main"

[build-system]
requires = [
    "numpy",
    "setuptools_scm[toml]~=7.1.0"
]
build-backend = "setuptools.build_meta"

[tool.pytest.ini_options]
minversion = "6.0"
addopts = ["-ra", "--showlocals", "--strict-markers", "--strict-config"]
xfail_strict = true
filterwarnings = ["error"]
testpaths = ["ethosu/mlw_codec/test", "ethosu/vela/test"]