Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 0 additions & 17 deletions .bumpversion.cfg

This file was deleted.

4 changes: 1 addition & 3 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,9 @@ end_of_line = crlf
trim_trailing_whitespace = false

[*.yml]
indent_style = space
indent_size = 2

[*.rst]
indent_size = 4

[Makefile]
indent_style = tab
indent_size = 4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
python: ['3.9', '3.10', '3.11', '3.12']

steps:
- uses: compas-dev/compas-actions.build@v3
- uses: compas-dev/compas-actions.build@v4
with:
python: ${{ matrix.python }}
invoke_lint: true
Expand Down
5 changes: 4 additions & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ jobs:
docs:
runs-on: ubuntu-latest
steps:
- uses: compas-dev/compas-actions.docs@v2
- uses: compas-dev/compas-actions.docs@v5
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
use_conda: false
generator: mkdocs
extras: dev
2 changes: 1 addition & 1 deletion .github/workflows/pr-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
name: Check Actions
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v4
- name: Changelog check
uses: Zomzog/changelog-checker@v1.2.0
with:
Expand Down
12 changes: 7 additions & 5 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,25 +6,27 @@ on:
- 'v*'

jobs:
build:
Build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python: ['3.9', '3.10', '3.11','3.12']
python: ['3.9', '3.10', '3.11', '3.12']

steps:
- uses: compas-dev/compas-actions.build@v3
- uses: compas-dev/compas-actions.build@v4
with:
python: ${{ matrix.python }}
invoke_lint: true
invoke_test: true

Publish:
needs: build
needs: Build
runs-on: ubuntu-latest
steps:
- uses: compas-dev/compas-actions.publish@v2
- uses: compas-dev/compas-actions.publish@v3
with:
publish_to_pypi: true
pypi_token: ${{ secrets.PYPI }}
github_token: ${{ secrets.GITHUB_TOKEN }}
python: '3.10'
2 changes: 2 additions & 0 deletions AUTHORS.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Authors

- Gonzalo Casas <<casas@arch.ethz.ch>> [@gonzalocasas](https://github.com/gonzalocasas)
- Chen Kasirer <<ckasirer@ethz.ch>> [@chenkasirer](https://github.com/chenkasirer)
- Victor Leung <<yck011522@gmail.com>> [@yck011522](https://github.com/yck011522)
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Added

* Added `compas_robots.model.JointType` enum exposing the supported URDF joint types, including `JointType.from_urdf(name)` and `JointType.urdf_name` for converting to/from URDF strings.
* Added new functions to extract Visual and Collision meshes from `RobotModel`.
* Added `RobotModel.get_link_visual_meshes` and `RobotModel.get_link_collision_meshes`
for extracting meshes from a specific link.
Expand All @@ -17,6 +18,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Changed

* Fixed several issues on Blender support for robot models and improved the handling of collections and objects in the Blender scene.
* Migrated documentation to MkDocs and docstrings from reStructuredText to Markdown.
* Migrated build configuration to `pyproject.toml` (removed `setup.py`, `setup.cfg`, `.bumpversion.cfg`).
* Added PEP 484 type hints to all public APIs across `compas_robots`, moving type information from docstrings to function/method signatures.
* Fixed docstring inaccuracies.
* Fixed bug in `compas_viewer` due to import of `RobotModelObject` inside registration function.
* Fixed a double transformation issue with `RobotModelObject` for `compas_viewer>=1.4.0`.

Expand All @@ -27,6 +33,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Added

* Added basic support for COLLADA / DAE files to the mesh loader.
* Added a UR5e URDF model with COLLADA meshes including materials.

### Changed

* Fixed no scene object registered for `RobotModel` in context `Rhino`.
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ In short, this is how that works.
3. Install development dependencies:

```bash
pip install -r requirements-dev.txt
pip install -e .[dev]
```

4. Make sure all tests pass:
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2023-2024 COMPAS Association
Copyright (c) 2023-2026 COMPAS Association

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
5 changes: 3 additions & 2 deletions MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,13 @@ include README.md
include AUTHORS.md
include CHANGELOG.md
include requirements.txt
include requirements-dev.txt

exclude compas_robots.jpg
exclude requirements-dev.txt
exclude pytest.ini .bumpversion.cfg .editorconfig
exclude pytest.ini .editorconfig
exclude tasks.py
exclude CONTRIBUTING.md
exclude conftest.py
exclude mkdocs.yml

global-exclude *.py[cod] __pycache__ *.dylib *.nb[ic] .DS_Store
8 changes: 2 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,17 +45,13 @@ Code convention follows [PEP8](https://pep8.org/) style guidelines and line leng

### Documentation

Documentation is generated automatically out of docstrings and [RST](https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html) files in this repository
Documentation is generated automatically out of docstrings and Markdown files in this repository using [MkDocs](https://www.mkdocs.org/) with the [Material](https://squidfunk.github.io/mkdocs-material/) theme and [mkdocstrings](https://mkdocstrings.github.io/).

1. Generate the docs

invoke docs

2. Check links in docs are valid

invoke linkcheck

3. Open docs in your browser (file explorer -> `dist/docs/index.html`)
2. Open docs in your browser (file explorer -> `dist/docs/index.html`)


### Testing
Expand Down
Binary file added docs/_logo/compas_logo_white_transparent.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/_logo/favicon.ico
Binary file not shown.
8 changes: 0 additions & 8 deletions docs/api.rst

This file was deleted.

1 change: 1 addition & 0 deletions docs/api/compas_robots.blender.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# ::: compas_robots.blender.scene
1 change: 1 addition & 0 deletions docs/api/compas_robots.files.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# ::: compas_robots.files
1 change: 1 addition & 0 deletions docs/api/compas_robots.ghpython.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# ::: compas_robots.ghpython.scene
1 change: 1 addition & 0 deletions docs/api/compas_robots.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# ::: compas_robots
1 change: 1 addition & 0 deletions docs/api/compas_robots.model.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# ::: compas_robots.model
74 changes: 0 additions & 74 deletions docs/api/compas_robots.model.rst

This file was deleted.

1 change: 1 addition & 0 deletions docs/api/compas_robots.resources.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# :::compas_robots.resources
21 changes: 0 additions & 21 deletions docs/api/compas_robots.resources.rst

This file was deleted.

1 change: 1 addition & 0 deletions docs/api/compas_robots.rhino.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# ::: compas_robots.rhino.scene
22 changes: 0 additions & 22 deletions docs/api/compas_robots.rst

This file was deleted.

1 change: 1 addition & 0 deletions docs/api/compas_robots.scene.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# ::: compas_robots.scene
14 changes: 0 additions & 14 deletions docs/api/compas_robots.scene.rst

This file was deleted.

1 change: 1 addition & 0 deletions docs/api/compas_robots.viewer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# ::: compas_robots.viewer.scene
13 changes: 13 additions & 0 deletions docs/api/core/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Core

Platform-independent modules. These work everywhere `compas_robots` can be
imported and form the foundation that the integrations build on top of.

- **[compas_robots](../compas_robots.md)**: top-level package exports such as [Configuration][compas_robots.Configuration], [RobotModel][compas_robots.RobotModel], [ToolModel][compas_robots.ToolModel].
- **[compas_robots.model](../compas_robots.model.md)**: the parts that make up a robot model: [Link][compas_robots.model.Link], [Joint][compas_robots.model.Joint], [LinkGeometry][compas_robots.model.LinkGeometry], [JointType][compas_robots.model.JointType], etc.
- **[compas_robots.resources](../compas_robots.resources.md)**: loaders
that fetch externally referenced meshes (local files, packages, GitHub).
- **[compas_robots.scene](../compas_robots.scene.md)**: scene-graph
objects for visualizing a [RobotModel][compas_robots.RobotModel]. The integration packages provide the host-specific implementations.
- **[compas_robots.files](../compas_robots.files.md)**: URDF parsing and
serialization.
12 changes: 12 additions & 0 deletions docs/api/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# API Reference

The `compas_robots` API is split into two groups:

- **[Core](core/index.md)**: the platform-independent modules for describing
robots, parsing URDF, loading resources and building scene graphs.
Use these regardless of where your code runs.
- **[Integrations](integrations/index.md)**: CAD and viewer-specific bindings
for Blender, Rhino, Grasshopper and the COMPAS viewer. These depend on the
host environment and are only imported when running inside it.

If you are getting started, head to **Core** first.
Loading
Loading