Volker Hilsheimer (13 January 2021 14:37) wrote: > Let me make a more radical proposal: > > The information about which modules depend on which others modules > lives in each module’s dependency.yaml file. This information includes > the sha1 of the modules it has last been successfully tested against. > > This information is (inconsistently) duplicated in .gitmodules. So > proposal: > > * stop using git submodules > > Using them serves no real purposes anymore. We anyway have our own > scripting in form of init-repository to avoid that people have to deal > with that stuff.
Little detail: init-repository relies on the .gitmodules file and uses git submodule. So eliminating git submodule in favour of a script that depends on it isn't an option. In particular, qt5/.gitmodules contains information about module status, whether each is essential, deprecated, in preview, an addon or to be ignored. My scripts to generate the api change reviews use this information to identify which modules are candidates for such a review. So it's not just init-repository (which does also use status info). Not that this argues against more flexible tooling that relegates the super-module-based structure to the background, but we do still need the information presently contained in .gitmodules, although perhaps it's time to eliminate its dependency information in favour of the YAML config files. We could, of course, move the information presently in .gitmodules into some other file within each module (possibly unifying this with what's presently in sync.profile and dependencies.yaml), if you're OK with rewriting init-repository (ideally in python3) as part of your plan. Eddy. _______________________________________________ Development mailing list Development@qt-project.org https://lists.qt-project.org/listinfo/development