Bug #114018 MySQL Shell source contains nonfree license for ConvertUTF
Submitted: 16 Feb 14:57 Modified: 19 Feb 5:38
Reporter: Lena Voytek Email Updates:
Status: Verified Impact on me:
Category:Shell General / Core Client Severity:S4 (Feature request)
Version:8.0.36 OS:Any
Assigned to: CPU Architecture:Any

[16 Feb 14:57] Lena Voytek
The MySQL Shell source code contains the external library linenoise-ng, which contains the files ConvertUTF.h and ConvertUTF.cpp which are currently licensed under the nonfree 2001-2004 Unicode copyright. This version of the license does not allow for modification of the files and has since been updated by Unicode.

This is also an issue for Chromium in the past - https://bugs.chromium.org/p/google-breakpad/issues/detail?id=270
Likewise more similarly for projects such as NixOS - https://github.com/NixOS/nix/issues/2014

Here is the bug provided to the linenoise-ng project - https://github.com/arangodb/linenoise-ng/issues/20

How to repeat:
Check the copyright headers in ext/linenoise-ng/src/ConvertUTF.h and ext/linenoise-ng/src/ConvertUTF.h along with the LICENSE file at ext/linenoise-ng/LICENSE.

Also when building MySQL Shell as a Debian source package, then running lintian, it will return the error
E: mysql-shell source: license-problem-convert-utf-code [ext/linenoise-ng/src/ConvertUTF.cpp]

Suggested fix:
Since linenoise-ng has been out of support for a while now, it may be a good idea to swap to a different library. Alternatively, the ConvertUTF files could always be replaced with free versions, such as those provided by LLVM.
[19 Feb 5:38] MySQL Verification Team
Hello Lena Voytek,

Thank you for the report and feedback!