Repository navigation
Expand file tree
/
Copy pathpyproject.toml
More file actions
104 lines (92 loc) · 3.59 KB
/
Copy pathpyproject.toml
File metadata and controls
104 lines (92 loc) · 3.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
# Copyright (c) Meta Platforms, Inc. and affiliates.
#
# 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
#
# 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.
[build-system]
requires = ["setuptools>=77", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "superdex-dev"
version = "1.0.1"
requires-python = ">=3.12"
description = "Local editable development workspace for SuperDex"
readme = "README.md"
license = "Apache-2.0"
license-files = ["LICENSE"]
dependencies = []
# Blocks upload: this resolves through local paths, so a published copy would be a shell.
classifiers = ["Private :: Do Not Upload"]
[project.optional-dependencies]
build = [
"cmake>=3.26",
"ninja>=1.5",
"scikit-build-core>=1.0",
]
core = [
"superdex-dev[build]",
"superdex-lab",
"superdex-physics",
"superdex-robotics",
]
double = [
"superdex-dev[fp64]",
]
fp64 = [
"superdex-dev[core]",
"superdex-physics-fp64",
"superdex-robotics-fp64",
]
gui = [
"superdex-dev[core]",
"superdex-mesh-cli",
"superdex-physics-debugger",
"superdex-studio",
]
[project.urls]
Homepage = "https://github.com/facebookresearch/project_superdex"
Repository = "https://github.com/facebookresearch/project_superdex"
[tool.setuptools]
py-modules = []
[tool.uv]
# Wheel users install the published distributions into `.venv` and run the examples
# from this checkout. Do not replace that environment with the local development
# project or install source-build tooling unless it is explicitly requested.
package = false
# The native distributions share one CMake build tree (see `build-dir` in each of their
# pyproject.toml files) and ninja takes no lock on a build directory. uv builds distributions
# concurrently by default -- including ones that depend on each other, because a runtime
# dependency orders installs, not builds -- so without this two of them configure into the
# same tree at once and it fails, typically on a half-written `.skbuild-info.json`.
#
# This costs no wall time. Each build still uses every core, and going one at a time is what
# lets a later distribution reuse the objects an earlier one just built.
concurrent-builds = 1
no-build-isolation-package = [
"superdex-mesh-cli",
"superdex-physics",
"superdex-physics-debugger",
"superdex-physics-fp64",
"superdex-robotics",
"superdex-robotics-fp64",
"superdex-studio",
]
[tool.uv.sources]
# Source builds are explicit root-project extras. The component projects are unmanaged
# so `uv run` never turns a script invocation into an implicit source build.
superdex-lab = {path = "superdex_lab", editable = true}
superdex-mesh-cli = {path = "superdex_mesh_cli", editable = true}
superdex-physics = {path = "superdex_physics/wheels/superdex-physics", editable = true}
superdex-physics-debugger = {path = "superdex_physics_debugger", editable = true}
superdex-physics-fp64 = {path = "superdex_physics/wheels/superdex-physics-fp64", editable = true}
superdex-robotics = {path = "superdex_robotics/wheels/superdex-robotics", editable = true}
superdex-robotics-fp64 = {path = "superdex_robotics/wheels/superdex-robotics-fp64", editable = true}
superdex-studio = {path = "superdex_studio", editable = true}