Skip to content

Commit fb04ae7

Browse files
ADD files from the main branch to follow the setup of compas python project structure.
1 parent 9b6597d commit fb04ae7

File tree

127 files changed

+1978649
-142
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

127 files changed

+1978649
-142
lines changed

.editorconfig

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# EditorConfig is awesome: http://EditorConfig.org
2+
root = true
3+
4+
[*]
5+
end_of_line = lf
6+
trim_trailing_whitespace = true
7+
insert_final_newline = true
8+
indent_style = space
9+
indent_size = 4
10+
charset = utf-8
11+
max_line_length = 180
12+
13+
[*.{bat,cmd,ps1}]
14+
end_of_line = crlf
15+
16+
[*.md]
17+
trim_trailing_whitespace = false
18+
19+
[*.yml]
20+
indent_size = 2
21+
22+
[Makefile]
23+
indent_style = tab
24+
indent_size = 4
25+
26+
[LICENSE]
27+
insert_final_newline = false

.github/workflows/release.yml

Lines changed: 81 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,96 @@
1+
name: Release
2+
13
on:
24
push:
35
tags:
4-
- "v*"
5-
6-
name: Create Release
6+
- "v*" # Runs only when a version tag (e.g., v1.0.0) is pushed.
77

88
jobs:
9-
build:
9+
create_release:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: actions/checkout@v2
13+
14+
- name: Create GitHub Release
15+
id: create_release
16+
uses: actions/create-release@v1
17+
env:
18+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
19+
with:
20+
tag_name: ${{ github.ref }}
21+
release_name: Release ${{ github.ref }}
22+
draft: false
23+
prerelease: false
24+
25+
build_wheels:
26+
name: Build wheels on ${{ matrix.platform }}
1027
runs-on: ${{ matrix.os }}
1128
strategy:
29+
fail-fast: false
1230
matrix:
13-
os: [macos-latest, windows-latest]
14-
python: ["3.9", "3.10", "3.11", "3.12"]
31+
include:
32+
- os: ubuntu-latest
33+
platform: manylinux
34+
- os: macos-latest
35+
platform: mac
36+
- os: windows-latest
37+
platform: windows
1538

1639
steps:
17-
- uses: compas-dev/compas-actions.build@v4
40+
- uses: actions/checkout@v4
41+
with:
42+
fetch-depth: 0
43+
44+
- name: Install cibuildwheel
45+
run: pipx install cibuildwheel==2.23.1
46+
47+
- name: Build wheels
48+
run: cibuildwheel --output-dir wheelhouse .
49+
50+
- uses: actions/upload-artifact@v4
1851
with:
19-
invoke_lint: true
20-
check_import: true
21-
use_conda: true
22-
python: ${{ matrix.python }}
52+
name: wheels-${{ matrix.platform }}
53+
path: wheelhouse/*.whl
2354

24-
Publish:
25-
needs: build
55+
build_sdist:
56+
name: Build source distribution
2657
runs-on: ubuntu-latest
2758
steps:
28-
- uses: compas-dev/compas-actions.publish@v2
59+
- uses: actions/checkout@v4
2960
with:
30-
pypi_token: ${{ secrets.PYPI }}
31-
github_token: ${{ secrets.GITHUB_TOKEN }}
32-
bdist_wheel: false
61+
fetch-depth: 0
62+
63+
- name: Build SDist
64+
run: pipx run build --sdist
65+
66+
- uses: actions/upload-artifact@v4
67+
with:
68+
name: sdist
69+
path: dist/*.tar.gz
70+
71+
publish:
72+
needs: [build_sdist, build_wheels]
73+
runs-on: ubuntu-latest
74+
environment:
75+
name: pypi
76+
url: https://pypi.org/project/compas_cgal
77+
permissions:
78+
id-token: write # Required for PyPI trusted publishing
79+
80+
steps:
81+
- uses: actions/download-artifact@v4
82+
with:
83+
pattern: wheels-*
84+
path: dist
85+
merge-multiple: true
86+
87+
- uses: actions/download-artifact@v4
88+
with:
89+
name: sdist
90+
path: dist
91+
92+
- name: List files before upload
93+
run: ls -lhR dist
94+
95+
- name: Publish to PyPI
96+
uses: pypa/gh-action-pypi-publish@release/v1

.gitignore

Lines changed: 76 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,88 @@
1-
nanobind_test.egg-info
2-
_skbuild
3-
/dist
4-
__pycache__
5-
build
6-
external
7-
*.pyd
8-
*.egg-info
9-
.vscode
10-
.vs
11-
§
12-
13-
# Build directories
1+
# Python
2+
__pycache__/
3+
*.py[cod]
4+
*$py.class
5+
.Python
6+
env/
147
build/
15-
_build/
16-
_skbuild/
8+
develop-eggs/
179
dist/
10+
eggs/
11+
.eggs/
12+
lib/
13+
lib64/
14+
parts/
15+
sdist/
16+
var/
1817
*.egg-info/
18+
.installed.cfg
19+
*.egg
20+
.pytest_cache
21+
.ruff_cache
1922

20-
# Python cache
21-
__pycache__/
22-
*.py[cod]
23-
24-
# External dependencies
25-
external/
23+
# Build and packaging
24+
_skbuild/
25+
_build/
26+
*.manifest
27+
*.spec
2628

27-
# IDE files
29+
# IDE
2830
.vscode/
2931
.idea/
3032
*.swp
3133
*.swo
34+
.spyderproject
35+
.spyproject
36+
.ropeproject
37+
38+
# Testing and coverage
39+
htmlcov/
40+
.tox/
41+
.coverage
42+
.coverage.*
43+
.cache
44+
nosetests.xml
45+
coverage.xml
46+
*.cover
47+
.hypothesis/
48+
49+
# Documentation
50+
docs/_build/
51+
/site
52+
53+
# Environment
54+
.env
55+
.venv
56+
venv/
57+
ENV/
58+
.python-version
59+
60+
# Jupyter
61+
.ipynb_checkpoints
62+
63+
# Logs and temp files
64+
*.log
65+
pip-log.txt
66+
pip-delete-this-directory.txt
67+
temp/
68+
local_settings.py
69+
70+
# External dependencies
71+
external/
72+
ext/**
73+
!ext/PLACEHOLDER
74+
75+
# Recipe
76+
recipe/**
77+
!recipe/sha256.py
78+
79+
# COMPAS specific
80+
*.3dmbak
81+
*.rhl
82+
src/compas-viewers
83+
generated
84+
*.gz
3285

33-
# OS files
86+
# OS
3487
.DS_Store
3588
Thumbs.db

CHANGELOG.md

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## Unreleased
9+
10+
### Added
11+
12+
### Changed
13+
14+
### Removed
15+
16+
17+
## [0.3.1] 2023-12-05
18+
19+
### Added
20+
21+
### Changed
22+
23+
### Removed
24+
25+
26+
## [0.3.0] 2023-12-05
27+
28+
### Added
29+
30+
### Changed
31+
32+
### Removed
33+
34+
35+
## [0.2.5] 2023-12-05
36+
37+
### Added
38+
39+
### Changed
40+
41+
### Removed
42+
43+
44+
## [0.2.4] 2023-12-05
45+
46+
### Added
47+
48+
### Changed
49+
50+
### Removed
51+
52+
53+
## [0.2.3] 2023-11-23
54+
55+
### Added
56+
57+
### Changed
58+
59+
### Removed
60+
61+
62+
## [0.2.2] 2023-11-22
63+
64+
### Added
65+
66+
### Changed
67+
68+
### Removed
69+
70+
71+
## [0.2.1] 2023-11-22
72+
73+
### Added
74+
75+
### Changed
76+
77+
### Removed
78+
79+
80+
## [0.2.0] 2023-11-22
81+
82+
### Added
83+
84+
### Changed
85+
86+
### Removed

CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
cmake_minimum_required(VERSION 3.15...3.26)
22

3-
project(coompas_libigl LANGUAGES CXX)
3+
project(compas_libigl LANGUAGES CXX)
44

55
set(CMAKE_CXX_STANDARD 20)
66
set(CMAKE_CXX_STANDARD_REQUIRED ON)
@@ -153,8 +153,8 @@ function(add_nanobind_module module_name source_file)
153153
endif()
154154

155155
target_link_libraries(${module_name} PRIVATE Threads::Threads)
156-
install(TARGETS ${module_name} LIBRARY DESTINATION coompas_libigl)
156+
install(TARGETS ${module_name} LIBRARY DESTINATION compas_libigl)
157157
endfunction()
158158

159159
# Add modules
160-
add_nanobind_module(_libigl src/nanobind.cpp)
160+
add_nanobind_module(nanobind src/nanobind.cpp)

0 commit comments

Comments
 (0)