Many of kde developers already heard of kde-builder - a replacement for kdescr-build. But if you did not - it is a reimplementation of kdesrc-build, rewritten in Python. The goal of the project is that it is much easier to hack on/contribute to the Python project vs Perl project.
The current state of the tool is that it is ready to use. But I want to ensure that every developer is satisfied with it. I.e., try to use it for every scenario you use kdesrc-build for. And please provide feedback: did you not noticed any differences or did you found some bug?
In the end, the kdesrc-build would be archived. And when introducing big changes, such as for example, metadata format update, we would need to code in only one tool. The kdesrc-build would then become incompatible. This is why it is important to ensure that everybody are switched, and not staying with kdesrc-build because “it works for you currently”.
@Ashark, as a new contributor (if I can yet be referred to as such), having some documentation advise installing kdesrc-builder, and other advise installing kde-builder, has confused me at times: [1]
Although documentation shall eventually be improved when the replaced tool has been formally deprecated, can they live alongside each other in the meantime?
kdesrc-build is still the default on the Kate website because the maintainers still use it, I believe. Maybe they’d be open to an MR to switch to kde-builder if it’s well tested.
It should just work with kde-builder, with very minor tweaks, the only major difference I see there is now kde-builder --all-kde-projects (kde-builder --all-config-projects as corrected by ashark below) to build everything from KDE instead of just kdesrc-build (no flags).
To be precise, kdesrc-build is equivalent to the kde-builder --all-config-projects, not to the kde-builder --all-kde-projects. Note that many KDE projects do not have config entries in build-configs, because they are built ok with default cmake options.
Usage of --all-config-projects is not normally needed by end users. It is mainly needed for having full zsh completions, i.e. including those third-party projects that are presented in the build configs.