bam/pyproject.toml
Upstream Snapshot 8be13016bc Import upstream snapshot 57d13ead53206a6bf0db3d66f86506ae8c2ce01a
Upstream: https://github.com/pollen-robotics/bam
Upstream-Commit: 57d13ead53206a6bf0db3d66f86506ae8c2ce01a
Upstream-Branch: mjlab_frictionloss
2026-08-28 15:42:08 +08:00

78 lines
2.0 KiB
TOML

[build-system]
requires = ["setuptools>=77.0"]
build-backend = "setuptools.build_meta"
[project]
name = "better-actuator-models"
version = "1.0.1"
description = "BAM: Better Actuator Models is a Python library dedicated to the identification and simulation of advanced actuator models."
readme = "README.md"
requires-python = ">=3.12,<3.13"
license = "Apache-2.0"
authors = [
{ name = "Marc Duclusaud" },
{ name = "Grégoire Passault" },
]
keywords = ["robot", "robotics", "actuator", "simulation", "friction"]
classifiers = [
"Programming Language :: Python :: 3",
"Operating System :: OS Independent",
]
dependencies = [
"numpy",
"colorama",
]
[project.optional-dependencies]
# Use identified models in a MuJoCo (CPU) simulation.
mujoco = [
"mujoco",
]
# Use identified models in MuJoCo Warp via mjlab (GPU).
mjlab = [
"mjlab>=1.3,<1.4",
# mjlab 1.3 targets the MuJoCo Warp 3.7 era: it uses `ls_parallel` (removed in
# mujoco-warp 3.9.1) and `wp.context` (removed in warp-lang 1.15). Pin the
# simulation stack to that compatible combo, otherwise Simulation() raises
# "ls_parallel was removed" / "module 'warp' has no attribute 'context'".
"mujoco-warp>=3.7,<3.8",
"mujoco>=3.7,<3.8",
"warp-lang>=1.12,<1.13",
"scipy"
]
# Identify your own motors: hardware drivers, optimization, logging, plotting.
identification = [
"zmq",
"protobuf>=3.20,<4.0",
"dynamixel_sdk",
"rustypot>=1.5.0",
"optuna",
"cmaes",
"wandb",
"matplotlib",
"PyQt5"
]
# Everything at once.
all = [
"better-actuator-models[mujoco,mjlab,identification]",
]
[project.urls]
Homepage = "https://github.com/Rhoban/bam"
Repository = "https://github.com/Rhoban/bam"
[tool.setuptools.packages.find]
include = ["bam*"]
[tool.setuptools.package-data]
bam = ["params/**/*.json"]
[tool.ruff]
line-length = 88
target-version = "py312"
extend-exclude = ["docs/_build"]
[tool.ruff.format]
quote-style = "double"
indent-style = "space"