1+ [project ]
2+ name = " optimum-executorch"
3+ dynamic = [" version" ]
4+ description = " Optimum Executorch is an interface between the Hugging Face libraries and ExecuTorch"
5+ readme = { file = " README.md" , content-type = " text/markdown" }
6+ license = { text = " Apache" }
7+ authors = [
8+ { name = " HuggingFace Inc. Special Ops Team" , email = " hardware@huggingface.co" },
9+ ]
10+ requires-python = " >=3.10.0"
11+ keywords = [" transformers" , " quantization" , " inference" , " executorch" ]
12+ classifiers = [
13+ " Development Status :: 2 - Pre-Alpha" ,
14+ " License :: OSI Approved :: Apache Software License" ,
15+ " Intended Audience :: Developers" ,
16+ " Intended Audience :: Education" ,
17+ " Intended Audience :: Science/Research" ,
18+ " Operating System :: OS Independent" ,
19+ " Programming Language :: Python :: 3" ,
20+ " Programming Language :: Python :: 3.10" ,
21+ " Programming Language :: Python :: 3.11" ,
22+ " Programming Language :: Python :: 3.12" ,
23+ " Topic :: Scientific/Engineering :: Artificial Intelligence" ,
24+ ]
25+
26+ dependencies = [
27+ " optimum~=1.24" ,
28+ " executorch>=1.0.0" ,
29+ " transformers==4.56.1" ,
30+ " pytorch-tokenizers>=1.0.1" ,
31+ " accelerate>=0.26.0" ,
32+ ]
33+
34+ [project .optional-dependencies ]
35+ dev = [
36+ " accelerate>=0.26.0" ,
37+ " coremltools>=8.2.0" ,
38+ " datasets==3.6.0" ,
39+ " parameterized" ,
40+ " pytest" ,
41+ " safetensors" ,
42+ " sentencepiece" ,
43+ " numba!=0.58.0" ,
44+ " librosa" ,
45+ " soundfile" ,
46+ " tiktoken" ,
47+ " black~=23.1" ,
48+ " ruff==0.4.4" ,
49+ ]
50+
51+ [project .urls ]
52+ Homepage = " https://github.com/huggingface/optimum-executorch"
53+
54+ # ---- setuptools config ----
55+
56+ [tool .setuptools ]
57+ # Equivalent of include_package_data=True
58+ include-package-data = true
59+
60+ [tool .setuptools .packages .find ]
61+ # Mirrors find_namespace_packages(include=["optimum*"])
62+ include = [" optimum*" ]
63+ namespaces = true
64+
65+ [tool .setuptools .dynamic ]
66+ # Pull version from the Python attribute
67+ version = { attr = " optimum.executorch.version.__version__" }
68+
69+ # ---- your existing tool configs (kept, but one tweak suggested) ----
70+
171[tool .black ]
272line-length = 119
3- target-version = [' py37' ]
73+ # Recommended to match your supported interpreters:
74+ target-version = [" py310" , " py311" , " py312" ]
475
576[tool .ruff ]
6- # Never enforce `E501` (line length violations).
777ignore = [" C901" , " E501" , " E741" , " W605" ]
878select = [" C" , " E" , " F" , " I" , " W" ]
979line-length = 119
1080
11- # Ignore import violations in all `__init__.py` files.
1281[tool .ruff .per-file-ignores ]
1382"__init__.py" = [" E402" , " F401" , " F403" , " F811" ]
1483
@@ -18,6 +87,10 @@ known-first-party = ["optimum"]
1887
1988[tool .pytest .ini_options ]
2089markers = [
21- " run_slow" ,
22- " portable" ,
90+ " run_slow" ,
91+ " portable" ,
2392]
93+
94+ [build-system ]
95+ requires = [" setuptools >= 77.0.3" , " wheel" ]
96+ build-backend = " setuptools.build_meta"
0 commit comments