| Well, I appreciate the desire to treat the problem in depth, but given the nature of the issue, I'd think it warrants a quick workaround first, such that a better solution can be developed without so much pressure. I think the obvious workaround is to use "" instead of "%" in escapes and screen "" with another "_"; this is as close to the current scheme as possible and will keep the bi-directionality of the mapping. (Actually, I personally would have used a modified PunyCode scheme in the first place, but ...). Most build systems don't have problems with underscores, the changes required are minimal and one can then take time to think of and properly implement a better scheme. Currently, multibranch subprojects do not work with the following build systems:
- Make (it interprets % in rule targets as a wildcard, and no escaping that I've tried seems to work)
- Boost Jam (fails with obscure error messages, have not identified the underlying problem yet)
- CMake (as reported in related bugs)
- MSBuild (as reported in related bugs)
- Apparently, a number of other build systems / application containers, etc.
- Large number of plugins (cppcheck, cifs, ...)
Of course, one could rightfully argue that all this software is broken, but I hope that some practical solution can be found quickly. This issue is absolutely critical to the usability of the multibranch stuff. |