Description of problem: Internationalized domain names exist for quite some time (IDNA2003), although the protocols describing them have evolved in an incompatible way (IDNA2008). These incompatibilities will prevent applications written for IDNA2003 to access certain problematic domain names defined with IDNA2008, e.g., faß.de is translated to domain xn--fa-hia.de with IDNA2008, while in IDNA2003 it is translated to fass.de domain. That not only causes incompatibility problems, but may be used as an attack vector to redirect users to different web sites. The change is about deprecating libidn, which supports IDNA2003, and switch all applications using libidn, to libidn2 2.0.0, which supports IDNA2008. The switch should be transparent as the libidn2 library is API compatible. See instructions at: https://libidn.gitlab.io/libidn2/manual/libidn2.html#Converting-from-libidn This is part of the IDNA2008 change: https://fedoraproject.org/wiki/Changes/IDNA2008 If upstream is not aware of that change please involve them on the process.
Why don't you make idna.h a symlink to or a transitive #include of idn2.h (which is supposed to be a drop-in replacement) instead of forcing us to change every single package using the library?
I was not involved in the original upstream decision to have separate libraries, however there are uncommon but still legitimate reasons to stay with libidn on certain applications (e.g., which require stringprep, or require IDNA2003).
The symlink or forwarding header could be shipped by Fedora packaging.
it's fixed in kdelibs3-3.5.10-85.fc27