Skip to content

Commit

Permalink
Initial public release of VAMP
Browse files Browse the repository at this point in the history
Co-authored-by: Wil Thomason <[email protected]>
  • Loading branch information
zkingston and wbthomason committed Apr 23, 2024
1 parent 8cf3f42 commit f067ade
Show file tree
Hide file tree
Showing 251 changed files with 369,092 additions and 4 deletions.
57 changes: 57 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
---
BasedOnStyle: Google

AccessModifierOffset: -4
AlignEscapedNewlinesLeft: false
AlignTrailingComments: true
AllowAllParametersOfDeclarationOnNextLine: false
AllowShortBlocksOnASingleLine: false
AllowShortFunctionsOnASingleLine: false
AllowShortIfStatementsOnASingleLine: false
AllowShortLoopsOnASingleLine: false
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: true
AlignAfterOpenBracket: AlwaysBreak
BinPackArguments: false
BinPackParameters: false
BreakBeforeBinaryOperators: false
BreakBeforeBraces: Allman
BreakBeforeTernaryOperators: false
BreakConstructorInitializersBeforeComma: true
ColumnLimit: 110
ConstructorInitializerAllOnOneLineOrOnePerLine: true
ConstructorInitializerIndentWidth: 2
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
DerivePointerBinding: false
ExperimentalAutoDetectBinPacking: false
IndentCaseLabels: true
IndentFunctionDeclarationAfterType: false
IndentWidth: 4
InsertBraces: true
Language: Cpp
MaxEmptyLinesToKeep: 1
NamespaceIndentation: All
ObjCSpaceBeforeProtocolList: true
PenaltyBreakBeforeFirstCallParameter: 19
PenaltyBreakComment: 60
PenaltyBreakFirstLessLess: 1000
PenaltyBreakString: 1
PenaltyExcessCharacter: 1000
PenaltyReturnTypeOnItsOwnLine: 90
PointerAlignment: Right
PointerBindsToType: false
SeparateDefinitionBlocks: Always
SortIncludes: false
SpaceAfterControlStatementKeyword: true
SpaceBeforeAssignmentOperators: true
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 2
SpacesInAngles: false
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
Standard: Cpp11
TabWidth: 4
UseTab: Never
QualifierAlignment: Custom
QualifierOrder: ['inline', 'static', 'constexpr', 'const', 'type']
21 changes: 21 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
docker/
.git/
.gitignore
.gitmodules


build/
.cache/
compile_commands.json
*.out.*
*.swp
*.swo
resources/*/problems/
*.log
*.png
__pycache__/
problems.json
problems.pkl
*.pyc
*.pyo
*.pyd
26 changes: 26 additions & 0 deletions .github/ISSUE_TEMPLATE/bug-error.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
---
name: Bug/Error
about: Describe a technical issue
title: ''
labels: bug
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. ...

**Expected behavior**
A clear and concise description of what you expected to happen.

**Environment:**
- OS: [e.g. iOS]
- Python version:
- GCC/Clang version:

**Additional context**
Add any other context about the problem here.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
92 changes: 92 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
name: Build Check

on:
push:
paths:
- src/impl/**
- CMakeLists.txt
- cmake/Dependencies.cmake
branches:
- main

pull_request:
paths:
- src/impl/**
- CMakeLists.txt
- cmake/Dependencies.cmake
branches:
- main

workflow_dispatch:

jobs:
build:
runs-on: ${{ matrix.os }}

strategy:
fail-fast: false
matrix:
os: [ubuntu-20.04, ubuntu-22.04, macos-latest]
build_type: [Release]
c_compiler: [gcc, clang]
include:
- os: ubuntu-20.04
c_compiler: gcc
cpp_compiler: g++
- os: ubuntu-20.04
c_compiler: clang
cpp_compiler: clang++
- os: ubuntu-22.04
c_compiler: gcc
cpp_compiler: g++
- os: ubuntu-22.04
c_compiler: clang
cpp_compiler: clang++
- os: macos-latest
c_compiler: clang
cpp_compiler: clang++
- os: macos-latest
c_compiler: gcc
cpp_compiler: g++

steps:
- uses: actions/checkout@v4

- name: Set reusable strings
id: strings
shell: bash
run: |
echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT"
- name: Install packages (Linux)
if: runner.os == 'Linux'
run: >
sudo apt-get install -y libeigen3-dev llvm
- name: Install packages (MacOS)
if: runner.os == 'macOS'
run: >
brew install eigen
- name: Install GCC (MacOS)
if: runner.os == 'macOS' && matrix.c_compiler == 'gcc'
run: >
brew install gcc
- name: Install Python packages
run: >
pip install typing_extensions
- name: Configure CMake
run: >
cmake -B ${{ steps.strings.outputs.build-output-dir }}
-DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }}
-DCMAKE_C_COMPILER=${{ matrix.c_compiler }}
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
-S ${{ github.workspace }}
- name: Build
run: cmake --build ${{ steps.strings.outputs.build-output-dir }} --config ${{ matrix.build_type }}
43 changes: 43 additions & 0 deletions .github/workflows/format.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Format Check

on:
push:
paths:
- src/**
- scripts/**
branches:
- main

pull_request:
paths:
- src/**
- scripts/**
branches:
- main

workflow_dispatch:

jobs:
formatting-check:
name: Formatting Check

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Install packages
run: |
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
yes | sudo ./llvm.sh 16 || true
sudo apt-get install -y clang-format-16 python3-pip
pip install yapf
- name: Run clang-format style check.
run: >
find . -iname *.hh -o -iname *.cc | xargs -I{} clang-format-16 --dry-run -Werror {}
- name: Run yapf style check.
run: >
find . -iname *.py | xargs -I{} yapf -d {}
20 changes: 20 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
build/
.cache/
compile_commands.json
*.out.*
*.swp
*.swo
resources/*/problems/
*.log
*.png
__pycache__/
problems.json
problems.pkl
*.pyc
*.pyo
*.pyd
*.el
venv/
/resources/panda/*.json
/resources/panda/*.pkl
src/vamp/_core/*.pyi
21 changes: 21 additions & 0 deletions .style.yapf
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
[style]
based_on_style = pep8
column_limit = 110

spaces_around_default_or_named_assign = true
spaces_before_comment = 4, 6, 8, 10, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52

split_before_first_argument = true
split_all_top_level_comma_separated_values = true
split_before_dot = true
split_before_logical_operator = true
split_complex_comprehension = true

blank_line_before_nested_class_or_def = true
blank_lines_around_top_level_definition = 2

indent_closing_brackets = true
align_closing_bracket_with_visual_indent = true

use_tabs = False
indent_width = 4
8 changes: 8 additions & 0 deletions CITATION.bib
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
@InProceedings{vamp,
title = {Motions in Microseconds via Vectorized Sampling-Based Planning},
author = {Thomason, Wil and Kingston, Zachary and Kavraki, Lydia E.},
booktitle = {IEEE International Conference on Robotics and Automation},
date = {2024},
url = {http://arxiv.org/abs/2309.14545},
note = {To Appear.}
}
Loading

0 comments on commit f067ade

Please sign in to comment.