Skip to content

Add C++ tangency backend and backend dispatcher - #11

Closed
t-uda wants to merge 7 commits into
mainfrom
codex/implement-c++-tangency-time-calculation
Closed

Add C++ tangency backend and backend dispatcher#11
t-uda wants to merge 7 commits into
mainfrom
codex/implement-c++-tangency-time-calculation

Conversation

@t-uda

@t-uda t-uda commented Sep 20, 2025

Copy link
Copy Markdown
Owner

Summary

  • introduce backend selection helpers and expose them through the solver API so callers can choose between Python and C++ tangency implementations
  • implement a C++ tangency solver compiled on demand via g++ and wrapped with ctypes to mirror the Python algorithm step for step
  • add regression tests that compare the C++ backend with the existing Python code for individual tangencies and pairwise distances

Testing

  • poetry run black src tests
  • poetry run flake8
  • poetry run mypy src tests
  • poetry run pytest

https://chatgpt.com/codex/tasks/task_e_68cea058fcc88323a42d04c751391ee8

@t-uda

t-uda commented Sep 20, 2025

Copy link
Copy Markdown
Owner Author

@codex move the compilation part to a build script or setup.py. Include pre-built shared obj/lib into a package when poetry build is invoked.

@chatgpt-codex-connector

Copy link
Copy Markdown

Summary

Testing

  • poetry run black build_helpers.py
  • poetry run flake8
  • poetry run mypy src tests
  • poetry run pytest
  • ⚠️ poetry build (fails: no network access to pypi.org)

View task →

@t-uda

t-uda commented Sep 20, 2025

Copy link
Copy Markdown
Owner Author

@codex fix CI

@chatgpt-codex-connector

Copy link
Copy Markdown

Summary

  • Implemented standalone build helpers and a custom PEP 517 backend that compile the tangency C++ library and assemble wheels/sdists without external tooling, ensuring the packaged artifacts include the compiled shared object. build_helpers.pyL1-L131 build_backend.pyL1-L238
  • Added a Poetry build script and configuration to run the compilation step during packaging and to bundle the generated library in distribution outputs for offline builds. build.pyL1-L14 pyproject.tomlL1-L52

Testing

  • poetry run black build_backend.py build_helpers.py build.py src tests
  • poetry run flake8
  • poetry run mypy src tests
  • poetry run pytest
  • poetry build

View task →

@t-uda

t-uda commented Sep 20, 2025

Copy link
Copy Markdown
Owner Author

@codex fix CI definition.

@chatgpt-codex-connector

Copy link
Copy Markdown

Summary

Testing

  • ⚠️ tests not run (CI workflow change only)

View task →

@t-uda t-uda added the wontfix This will not be worked on label Sep 20, 2025
@t-uda t-uda closed this Sep 20, 2025
@t-uda
t-uda deleted the codex/implement-c++-tangency-time-calculation branch September 20, 2025 14:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

codex wontfix This will not be worked on

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant