Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Set up packaging structure #123

Open
M-Kusumgar opened this issue Jan 31, 2025 · 0 comments
Open

Set up packaging structure #123

M-Kusumgar opened this issue Jan 31, 2025 · 0 comments
Assignees

Comments

@M-Kusumgar
Copy link
Contributor

M-Kusumgar commented Jan 31, 2025

We're going to need wrappers in

  • R
  • Python
  • Delphi?
  • Possibly Java

What we want

  • When Jeff or Rachel update the C++ for their R work, or Rob updates it for the Python that does not break the other interfaces
  • Not block one persons work if it breaks the interface of another

Do we do this through branch pinning?
If so maybe we need to split up the repos.

My idea is

  1. A C++ repo built with CMake (see https://github.com/AvenirHealth-org/GoalsARM/tree/main for an example)
  2. Pull that into R wrapper somehow, need to work it out. Submodules?
  3. Pull that into Python via CMake (see https://github.com/AvenirHealth-org/GoalsARMPython/tree/4576cd42b217b76180f7432fe7f135b31adc5237 for an example)
  4. Delphi and Java TBC

Also useful

  1. https://github.com/mrc-ide/frogger/pull/50/files

TODO

  1. Have a look at https://mesonbuild.com/meson-python/ compare to scikit-build-core https://scikit-build-core.readthedocs.io/en/latest/index.html
  2. Have a look at https://github.com/friendlyanon/cmake-init/wiki/Examples for examples of good cmake project
  3. How will this affect code generation

At the end of this ticket we should have

  1. R & C++ building, where we can pin the C++ frogger code that R uses
  2. C++ code compatible with python wrapper
  3. A Python wrapper which builds (but leave pypi pushing until later)
  4. A plan for how we will integrate changes (automatic PRs when someone updates the C++?)
@M-Kusumgar M-Kusumgar self-assigned this Jan 31, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant