You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The commits that the submodules (struphy-tutorials and struphy-parameter-files) are pointing to may belong to branches that have been merged and squashed. We do not have a clear strategy of how to handle the submodule commits at the moment.
Accepted solution:
Move tutorials and parameter files into the Struphy repo, under
doc/tutorials/
examples/
Push to separate repos upon new Struphy release
Previously proposed solution (not accepted):
create devel branches in the submodules
merge new features of the submodules into their devel immediately
in a Struphy feature branch, point the submodules to the last commit in the submod's devel before merging
never squash commits in submodules
The main of the submodules remains as the main branch that is cloned by default; it is updated only when a new Struphy release is made
Well, I don't see the benifit of using submodules for tutorials or parameter files at all. These are projects which have a very stong connection to struphy, and I would just prefer moving them back into the repository and avoiding submodules alltogether. If we also want tutorials and parameter files to be accessible in a separate repo, then I would just add a github action that pushes updated versions to these repos each time we update main in struphy.
Well, I don't see the benifit of using submodules for tutorials or parameter files at all. These are projects which have a very stong connection to struphy, and I would just prefer moving them back into the repository and avoiding submodules alltogether. If we also want tutorials and parameter files to be accessible in a separate repo, then I would just add a github action that pushes updated versions to these repos each time we update main in struphy.
I think it can be beneficial to be able to update parameter files and tutorials in separate repos. In particular, it should be possible for people who are not developing Struphy to add files and tutorials. In that case it would not be good to have always two versions of each file, one in Struphy and one in the respective repo.
Well, I don't see the benifit of using submodules for tutorials or parameter files at all. These are projects which have a very stong connection to struphy, and I would just prefer moving them back into the repository and avoiding submodules alltogether. If we also want tutorials and parameter files to be accessible in a separate repo, then I would just add a github action that pushes updated versions to these repos each time we update main in struphy.
I think it can be beneficial to be able to update parameter files and tutorials in separate repos. In particular, it should be possible for people who are not developing Struphy to add files and tutorials. In that case it would not be good to have always two versions of each file, one in Struphy and one in the respective repo.
Ok, I can sort of see what you are going for. But I still disagree that this is worth it.
Typically, I found most codes to simply have an examples/ directory which is always included when cloning the repo. For example:
So that's sort of what I would have assumed would be included if I clone struphy, but now you don't get any of that except if you know you have to clone with --recurse-submodules. I don't really see who a person would be who would like to contribute to the tutorials but can't clone the struphy repo honestly.
It seems like your idea is that the default (main) branch in struphy-tutorials should correspond to main in struphy, but in that case an outsider can't contribute anyway, since they would have to make a PR into devel (which means they need to clone struphy anyway) or PR into main (in which case we later have to merge main into devel). I just feel like all of this structure is much more complex to keep track of than simply having the files in the struphy repo and making sure they are compatible with the code in the current branch 😅
I think you are right. The best solution is probably to have everything in the repo and push to the external repos upon release. Will do the changes asap.
Activity
max-models commentedon Mar 12, 2026
Well, I don't see the benifit of using submodules for tutorials or parameter files at all. These are projects which have a very stong connection to struphy, and I would just prefer moving them back into the repository and avoiding submodules alltogether. If we also want tutorials and parameter files to be accessible in a separate repo, then I would just add a github action that pushes updated versions to these repos each time we update main in struphy.
spossann commentedon Mar 12, 2026
I think it can be beneficial to be able to update parameter files and tutorials in separate repos. In particular, it should be possible for people who are not developing Struphy to add files and tutorials. In that case it would not be good to have always two versions of each file, one in Struphy and one in the respective repo.
max-models commentedon Mar 12, 2026
Ok, I can sort of see what you are going for. But I still disagree that this is worth it.
Typically, I found most codes to simply have an
examples/directory which is always included when cloning the repo. For example:So that's sort of what I would have assumed would be included if I clone struphy, but now you don't get any of that except if you know you have to clone with
--recurse-submodules. I don't really see who a person would be who would like to contribute to the tutorials but can't clone the struphy repo honestly.It seems like your idea is that the default (main) branch in struphy-tutorials should correspond to main in struphy, but in that case an outsider can't contribute anyway, since they would have to make a PR into devel (which means they need to clone struphy anyway) or PR into main (in which case we later have to merge main into devel). I just feel like all of this structure is much more complex to keep track of than simply having the files in the struphy repo and making sure they are compatible with the code in the current branch 😅
spossann commentedon Mar 12, 2026
I think you are right. The best solution is probably to have everything in the repo and push to the external repos upon release. Will do the changes asap.
Remove two submodules (#206)
spossann commentedon Mar 20, 2026
Handled in PR #206
Remove two submodules (#206)
Remove two submodules (#206)