Skip to content

Instantly share code, notes, and snippets.

@bc-lee
Last active September 25, 2023 12:18
Show Gist options
  • Save bc-lee/94140a57fb3cda37e2c18fb179c44a20 to your computer and use it in GitHub Desktop.
Save bc-lee/94140a57fb3cda37e2c18fb179c44a20 to your computer and use it in GitHub Desktop.
Compares ELF files in two directories
[
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/clang",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/clang",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/clang++",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/clang++",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/clang-13",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/clang-13",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/clang-cache",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/clang-cache",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/clang-cl",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/clang-cl",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/clang-cpp",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/clang-cpp",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/clangd",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/clangd",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/docc",
"glibc_version": "2.16",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/docc",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/ld.lld",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5",
"libxml2.so.2"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/ld.lld",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6",
"libxml2.so.2"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/ld64.lld",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5",
"libxml2.so.2"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/ld64.lld",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6",
"libxml2.so.2"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/lld",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5",
"libxml2.so.2"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/lld",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6",
"libxml2.so.2"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/lld-link",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5",
"libxml2.so.2"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/lld-link",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6",
"libxml2.so.2"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/lldb",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"liblldb.so.13git",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/lldb",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.21",
"shared_objects": [
"liblldb.so.13git",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/lldb-argdumper",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.11",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/lldb-argdumper",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.29",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/lldb-server",
"glibc_version": "2.15",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libedit.so.0",
"libform.so.5",
"libncurses.so.5",
"libpanel.so.5",
"libswiftCore.so",
"libtinfo.so.5",
"libuuid.so.1",
"libxml2.so.2"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/lldb-server",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libedit.so.2",
"libform.so.6",
"libncurses.so.6",
"libpanel.so.6",
"libswiftCore.so",
"libtinfo.so.6",
"libuuid.so.1",
"libxml2.so.2"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libedit.so.0",
"libedit.so.2",
"libform.so.5",
"libform.so.6",
"libncurses.so.5",
"libncurses.so.6",
"libpanel.so.5",
"libpanel.so.6",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/llvm-ar",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/llvm-ar",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.29",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/llvm-cov",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/llvm-cov",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/llvm-profdata",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/llvm-profdata",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/plutil",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libdispatch.so",
"libicudataswift.so.65",
"libicui18nswift.so.65",
"libicuucswift.so.65",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/plutil",
"glibc_version": "2.35",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libdispatch.so",
"libicudataswift.so.65",
"libicui18nswift.so.65",
"libicuucswift.so.65",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/repl_swift",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/repl_swift",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/sourcekit-lsp",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.5",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/sourcekit-lsp",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.6",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libncurses.so.5",
"libncurses.so.6",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.5",
"libuuid.so.1"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.6",
"libuuid.so.1"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-api-digester",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.5",
"libuuid.so.1"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-api-digester",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.6",
"libuuid.so.1"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-api-extract",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.5",
"libuuid.so.1"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-api-extract",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.6",
"libuuid.so.1"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-autolink-extract",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.5",
"libuuid.so.1"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-autolink-extract",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.6",
"libuuid.so.1"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-build",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.5",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-build",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.6",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libncurses.so.5",
"libncurses.so.6",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-build-sdk-interfaces",
"glibc_version": "2.15",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libncurses.so.5",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-build-sdk-interfaces",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libncurses.so.6",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libncurses.so.5",
"libncurses.so.6",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-build-tool",
"glibc_version": "2.15",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libncurses.so.5",
"libsqlite3.so.0",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-build-tool",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libncurses.so.6",
"libsqlite3.so.0",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libncurses.so.5",
"libncurses.so.6",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-demangle",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libswiftCore.so",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-demangle",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.29",
"shared_objects": [
"libswiftCore.so",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-driver",
"glibc_version": "2.15",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libncurses.so.5",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-driver",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libncurses.so.6",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libncurses.so.5",
"libncurses.so.6",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-experimental-sdk",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.5",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-experimental-sdk",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.6",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libncurses.so.5",
"libncurses.so.6",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-frontend",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.5",
"libuuid.so.1"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-frontend",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.6",
"libuuid.so.1"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-help",
"glibc_version": "2.15",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-help",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-package",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.5",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-package",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.6",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libncurses.so.5",
"libncurses.so.6",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-package-collection",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.5",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-package-collection",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.6",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libncurses.so.5",
"libncurses.so.6",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-package-registry",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.5",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-package-registry",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.6",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libncurses.so.5",
"libncurses.so.6",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-plugin-server",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so",
"libtinfo.so.5",
"libuuid.so.1"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-plugin-server",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.29",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so",
"libtinfo.so.6",
"libuuid.so.1"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-run",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.5",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-run",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.6",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libncurses.so.5",
"libncurses.so.6",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-symbolgraph-extract",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.5",
"libuuid.so.1"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-symbolgraph-extract",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.6",
"libuuid.so.1"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swift-test",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.5",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swift-test",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libFoundationNetworking.so",
"libFoundationXML.so",
"libdispatch.so",
"libncurses.so.6",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libncurses.so.5",
"libncurses.so.6",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/swiftc",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.5",
"libuuid.so.1"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/swiftc",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.6",
"libuuid.so.1"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/bin/wasm-ld",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5",
"libxml2.so.2"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/bin/wasm-ld",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6",
"libxml2.so.2"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/libIndexStore.so",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.14",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/libIndexStore.so",
"glibc_version": "2.33",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/libIndexStore.so.13git",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.14",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/libIndexStore.so.13git",
"glibc_version": "2.33",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/libLTO.so",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/libLTO.so",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/libLTO.so.13git",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/libLTO.so.13git",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/liblldb.so",
"glibc_version": "2.15",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libedit.so.0",
"libform.so.5",
"libncurses.so.5",
"libpanel.so.5",
"libpython3.6m.so.1.0",
"libswiftCore.so",
"libtinfo.so.5",
"libuuid.so.1",
"libxml2.so.2"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/liblldb.so",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libedit.so.2",
"libform.so.6",
"libncurses.so.6",
"libpanel.so.6",
"libpython3.10.so.1.0",
"libswiftCore.so",
"libtinfo.so.6",
"libuuid.so.1",
"libxml2.so.2"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libedit.so.0",
"libedit.so.2",
"libform.so.5",
"libform.so.6",
"libncurses.so.5",
"libncurses.so.6",
"libpanel.so.5",
"libpanel.so.6",
"libpython3.10.so.1.0",
"libpython3.6m.so.1.0",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/liblldb.so.13.0.0git",
"glibc_version": "2.15",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libedit.so.0",
"libform.so.5",
"libncurses.so.5",
"libpanel.so.5",
"libpython3.6m.so.1.0",
"libswiftCore.so",
"libtinfo.so.5",
"libuuid.so.1",
"libxml2.so.2"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/liblldb.so.13.0.0git",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libedit.so.2",
"libform.so.6",
"libncurses.so.6",
"libpanel.so.6",
"libpython3.10.so.1.0",
"libswiftCore.so",
"libtinfo.so.6",
"libuuid.so.1",
"libxml2.so.2"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libedit.so.0",
"libedit.so.2",
"libform.so.5",
"libform.so.6",
"libncurses.so.5",
"libncurses.so.6",
"libpanel.so.5",
"libpanel.so.6",
"libpython3.10.so.1.0",
"libpython3.6m.so.1.0",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/liblldb.so.13git",
"glibc_version": "2.15",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libedit.so.0",
"libform.so.5",
"libncurses.so.5",
"libpanel.so.5",
"libpython3.6m.so.1.0",
"libswiftCore.so",
"libtinfo.so.5",
"libuuid.so.1",
"libxml2.so.2"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/liblldb.so.13git",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libedit.so.2",
"libform.so.6",
"libncurses.so.6",
"libpanel.so.6",
"libpython3.10.so.1.0",
"libswiftCore.so",
"libtinfo.so.6",
"libuuid.so.1",
"libxml2.so.2"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libedit.so.0",
"libedit.so.2",
"libform.so.5",
"libform.so.6",
"libncurses.so.5",
"libncurses.so.6",
"libpanel.so.5",
"libpanel.so.6",
"libpython3.10.so.1.0",
"libpython3.6m.so.1.0",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/libsourcekitdInProc.so",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libBlocksRuntime.so",
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libdispatch.so",
"libswiftCore.so",
"libtinfo.so.5",
"libuuid.so.1"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/libsourcekitdInProc.so",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libBlocksRuntime.so",
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libdispatch.so",
"libswiftCore.so",
"libtinfo.so.6",
"libuuid.so.1"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/libswiftDemangle.so",
"glibc_version": "2.14",
"libstdcpp_version": "3.4.18",
"shared_objects": [
"libswiftCore.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/libswiftDemangle.so",
"glibc_version": "2.14",
"libstdcpp_version": "3.4.29",
"shared_objects": [
"libswiftCore.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": true,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/clang/13.0.0/lib/linux/libclang_rt.asan-x86_64.so",
"glibc_version": "2.16",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/clang/13.0.0/lib/linux/libclang_rt.asan-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/clang/13.0.0/lib/linux/libclang_rt.dyndd-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/clang/13.0.0/lib/linux/libclang_rt.dyndd-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/clang/13.0.0/lib/linux/libclang_rt.hwasan-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/clang/13.0.0/lib/linux/libclang_rt.hwasan-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/clang/13.0.0/lib/linux/libclang_rt.hwasan_aliases-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/clang/13.0.0/lib/linux/libclang_rt.hwasan_aliases-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/clang/13.0.0/lib/linux/libclang_rt.memprof-x86_64.so",
"glibc_version": "2.16",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/clang/13.0.0/lib/linux/libclang_rt.memprof-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/clang/13.0.0/lib/linux/libclang_rt.scudo-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/clang/13.0.0/lib/linux/libclang_rt.scudo-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/clang/13.0.0/lib/linux/libclang_rt.scudo_minimal-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/clang/13.0.0/lib/linux/libclang_rt.scudo_minimal-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/clang/13.0.0/lib/linux/libclang_rt.scudo_standalone-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/clang/13.0.0/lib/linux/libclang_rt.scudo_standalone-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/clang/13.0.0/lib/linux/libclang_rt.tsan-x86_64.so",
"glibc_version": "2.16",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/clang/13.0.0/lib/linux/libclang_rt.tsan-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/clang/13.0.0/lib/linux/libclang_rt.ubsan_minimal-x86_64.so",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/clang/13.0.0/lib/linux/libclang_rt.ubsan_minimal-x86_64.so",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/clang/13.0.0/lib/linux/libclang_rt.ubsan_standalone-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/clang/13.0.0/lib/linux/libclang_rt.ubsan_standalone-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/clang/lib/linux/libclang_rt.asan-x86_64.so",
"glibc_version": "2.16",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/clang/lib/linux/libclang_rt.asan-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/clang/lib/linux/libclang_rt.dyndd-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/clang/lib/linux/libclang_rt.dyndd-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/clang/lib/linux/libclang_rt.hwasan-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/clang/lib/linux/libclang_rt.hwasan-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/clang/lib/linux/libclang_rt.hwasan_aliases-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/clang/lib/linux/libclang_rt.hwasan_aliases-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/clang/lib/linux/libclang_rt.memprof-x86_64.so",
"glibc_version": "2.16",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/clang/lib/linux/libclang_rt.memprof-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/clang/lib/linux/libclang_rt.scudo-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/clang/lib/linux/libclang_rt.scudo-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/clang/lib/linux/libclang_rt.scudo_minimal-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/clang/lib/linux/libclang_rt.scudo_minimal-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/clang/lib/linux/libclang_rt.scudo_standalone-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/clang/lib/linux/libclang_rt.scudo_standalone-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/clang/lib/linux/libclang_rt.tsan-x86_64.so",
"glibc_version": "2.16",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/clang/lib/linux/libclang_rt.tsan-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/clang/lib/linux/libclang_rt.ubsan_minimal-x86_64.so",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/clang/lib/linux/libclang_rt.ubsan_minimal-x86_64.so",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/clang/lib/linux/libclang_rt.ubsan_standalone-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/clang/lib/linux/libclang_rt.ubsan_standalone-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/host/libSwiftBasicFormat.so",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftSyntax.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/host/libSwiftBasicFormat.so",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftSyntax.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/host/libSwiftCompilerPluginMessageHandling.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/host/libSwiftCompilerPluginMessageHandling.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/host/libSwiftDiagnostics.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftSyntax.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/host/libSwiftDiagnostics.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftSyntax.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/host/libSwiftOperators.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftDiagnostics.so",
"libSwiftParser.so",
"libSwiftSyntax.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/host/libSwiftOperators.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftDiagnostics.so",
"libSwiftParser.so",
"libSwiftSyntax.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/host/libSwiftParser.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftDiagnostics.so",
"libSwiftSyntax.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/host/libSwiftParser.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftDiagnostics.so",
"libSwiftSyntax.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/host/libSwiftParserDiagnostics.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftDiagnostics.so",
"libSwiftParser.so",
"libSwiftSyntax.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/host/libSwiftParserDiagnostics.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftDiagnostics.so",
"libSwiftParser.so",
"libSwiftSyntax.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/host/libSwiftSyntax.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/host/libSwiftSyntax.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/host/libSwiftSyntaxBuilder.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftDiagnostics.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/host/libSwiftSyntaxBuilder.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftDiagnostics.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/host/libSwiftSyntaxMacroExpansion.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftDiagnostics.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/host/libSwiftSyntaxMacroExpansion.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftDiagnostics.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/host/libSwiftSyntaxMacros.so",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftDiagnostics.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/host/libSwiftSyntaxMacros.so",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftDiagnostics.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/host/lib_InternalSwiftScan.so",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.5",
"libuuid.so.1"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/host/lib_InternalSwiftScan.so",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.6",
"libuuid.so.1"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/host/plugins/libObservationMacros.so",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/host/plugins/libObservationMacros.so",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/host/plugins/libSwiftMacros.so",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftDiagnostics.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/host/plugins/libSwiftMacros.so",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftDiagnostics.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libBlocksRuntime.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libBlocksRuntime.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libFoundation.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libdispatch.so",
"libicui18nswift.so.65",
"libicuucswift.so.65",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libFoundation.so",
"glibc_version": "2.35",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libdispatch.so",
"libicudataswift.so.65",
"libicui18nswift.so.65",
"libicuucswift.so.65",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": true,
"shared_object_diffs": [
"libicudataswift.so.65"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libFoundationNetworking.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libcurl.so.4",
"libdispatch.so",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libFoundationNetworking.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libcurl.so.4",
"libdispatch.so",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libFoundationXML.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so",
"libxml2.so.2"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libFoundationXML.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so",
"libxml2.so.2"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libXCTest.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libXCTest.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/lib_InternalSwiftScan.so",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.5",
"libuuid.so.1"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/lib_InternalSwiftScan.so",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libSwiftBasicFormat.so",
"libSwiftCompilerPluginMessageHandling.so",
"libSwiftDiagnostics.so",
"libSwiftOperators.so",
"libSwiftParser.so",
"libSwiftParserDiagnostics.so",
"libSwiftSyntax.so",
"libSwiftSyntaxBuilder.so",
"libSwiftSyntaxMacroExpansion.so",
"libSwiftSyntaxMacros.so",
"libswiftCore.so",
"libtinfo.so.6",
"libuuid.so.1"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/lib_InternalSwiftStaticMirror.so",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libswiftCore.so",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/lib_InternalSwiftStaticMirror.so",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.29",
"shared_objects": [
"libswiftCore.so",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libdispatch.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libdispatch.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libicudataswift.so",
"glibc_version": null,
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libicudataswift.so",
"glibc_version": null,
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libicudataswift.so.65",
"glibc_version": null,
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libicudataswift.so.65",
"glibc_version": null,
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libicudataswift.so.65.1",
"glibc_version": null,
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libicudataswift.so.65.1",
"glibc_version": null,
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libicui18nswift.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libicudataswift.so.65",
"libicuucswift.so.65"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libicui18nswift.so",
"glibc_version": "2.29",
"libstdcpp_version": null,
"shared_objects": [
"libicudataswift.so.65",
"libicuucswift.so.65"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libicui18nswift.so.65",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libicudataswift.so.65",
"libicuucswift.so.65"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libicui18nswift.so.65",
"glibc_version": "2.29",
"libstdcpp_version": null,
"shared_objects": [
"libicudataswift.so.65",
"libicuucswift.so.65"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libicui18nswift.so.65.1",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libicudataswift.so.65",
"libicuucswift.so.65"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libicui18nswift.so.65.1",
"glibc_version": "2.29",
"libstdcpp_version": null,
"shared_objects": [
"libicudataswift.so.65",
"libicuucswift.so.65"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libicuucswift.so",
"glibc_version": "2.14",
"libstdcpp_version": "3.4.11",
"shared_objects": [
"libicudataswift.so.65"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libicuucswift.so",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libicudataswift.so.65"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libicuucswift.so.65",
"glibc_version": "2.14",
"libstdcpp_version": "3.4.11",
"shared_objects": [
"libicudataswift.so.65"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libicuucswift.so.65",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libicudataswift.so.65"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libicuucswift.so.65.1",
"glibc_version": "2.14",
"libstdcpp_version": "3.4.11",
"shared_objects": [
"libicudataswift.so.65"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libicuucswift.so.65.1",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libicudataswift.so.65"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libswiftCore.so",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.18",
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libswiftCore.so",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.29",
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libswiftDispatch.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libdispatch.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libswiftDispatch.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libdispatch.so",
"libswiftCore.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libswiftDistributed.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswiftGlibc.so",
"libswift_Concurrency.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libswiftDistributed.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswiftGlibc.so",
"libswift_Concurrency.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libswiftGlibc.so",
"glibc_version": "2.4",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libswiftGlibc.so",
"glibc_version": "2.35",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libswiftObservation.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswift_Concurrency.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libswiftObservation.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswift_Concurrency.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libswiftRegexBuilder.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswiftGlibc.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libswiftRegexBuilder.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswiftGlibc.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libswiftRemoteMirror.so",
"glibc_version": "2.16",
"libstdcpp_version": "3.4.18",
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libswiftRemoteMirror.so",
"glibc_version": "2.32",
"libstdcpp_version": "3.4.29",
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libswiftSwiftOnoneSupport.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libswiftSwiftOnoneSupport.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libswift_Backtracing.so",
"glibc_version": "2.15",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswift_Concurrency.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libswift_Backtracing.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswift_Concurrency.so"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libswift_Concurrency.so",
"glibc_version": "2.17",
"libstdcpp_version": "3.4.18",
"shared_objects": [
"libdispatch.so",
"libswiftCore.so",
"libswiftGlibc.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libswift_Concurrency.so",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.29",
"shared_objects": [
"libdispatch.so",
"libswiftCore.so",
"libswiftGlibc.so"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libswift_Differentiation.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswiftGlibc.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libswift_Differentiation.so",
"glibc_version": "2.29",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswiftGlibc.so"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libswift_RegexParser.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswiftGlibc.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libswift_RegexParser.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswiftGlibc.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/linux/libswift_StringProcessing.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswiftGlibc.so",
"libswift_RegexParser.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/linux/libswift_StringProcessing.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswiftGlibc.so",
"libswift_RegexParser.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/pm/ManifestAPI/libPackageDescription.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/pm/ManifestAPI/libPackageDescription.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/pm/PluginAPI/libPackagePlugin.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/pm/PluginAPI/libPackagePlugin.so",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_StringProcessing.so"
]
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift/pm/llbuild/libllbuildSwift.so",
"glibc_version": "2.15",
"libstdcpp_version": "3.4.19",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libncurses.so.5",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so",
"libtinfo.so.5"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift/pm/llbuild/libllbuildSwift.so",
"glibc_version": "2.34",
"libstdcpp_version": "3.4.30",
"shared_objects": [
"libBlocksRuntime.so",
"libFoundation.so",
"libdispatch.so",
"libncurses.so.6",
"libsqlite3.so.0",
"libswiftCore.so",
"libswiftDispatch.so",
"libswiftGlibc.so",
"libswift_Concurrency.so",
"libswift_RegexParser.so",
"libswift_StringProcessing.so",
"libtinfo.so.6"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": true,
"shared_objects": true,
"shared_object_diffs": [
"libncurses.so.5",
"libncurses.so.6",
"libtinfo.so.5",
"libtinfo.so.6"
]
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift_static/clang/lib/linux/libclang_rt.asan-x86_64.so",
"glibc_version": "2.16",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift_static/clang/lib/linux/libclang_rt.asan-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift_static/clang/lib/linux/libclang_rt.dyndd-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift_static/clang/lib/linux/libclang_rt.dyndd-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift_static/clang/lib/linux/libclang_rt.hwasan-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift_static/clang/lib/linux/libclang_rt.hwasan-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift_static/clang/lib/linux/libclang_rt.hwasan_aliases-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift_static/clang/lib/linux/libclang_rt.hwasan_aliases-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift_static/clang/lib/linux/libclang_rt.memprof-x86_64.so",
"glibc_version": "2.16",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift_static/clang/lib/linux/libclang_rt.memprof-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift_static/clang/lib/linux/libclang_rt.scudo-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift_static/clang/lib/linux/libclang_rt.scudo-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift_static/clang/lib/linux/libclang_rt.scudo_minimal-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift_static/clang/lib/linux/libclang_rt.scudo_minimal-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift_static/clang/lib/linux/libclang_rt.scudo_standalone-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift_static/clang/lib/linux/libclang_rt.scudo_standalone-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift_static/clang/lib/linux/libclang_rt.tsan-x86_64.so",
"glibc_version": "2.16",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift_static/clang/lib/linux/libclang_rt.tsan-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift_static/clang/lib/linux/libclang_rt.ubsan_minimal-x86_64.so",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift_static/clang/lib/linux/libclang_rt.ubsan_minimal-x86_64.so",
"glibc_version": "2.2",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": false,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/lib/swift_static/clang/lib/linux/libclang_rt.ubsan_standalone-x86_64.so",
"glibc_version": "2.17",
"libstdcpp_version": null,
"shared_objects": []
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/lib/swift_static/clang/lib/linux/libclang_rt.ubsan_standalone-x86_64.so",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": []
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
},
{
"left": {
"path": "swift-5.9-RELEASE-centos7/usr/libexec/swift/linux/swift-backtrace",
"glibc_version": "2.14",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswiftGlibc.so",
"libswiftSwiftOnoneSupport.so",
"libswift_Backtracing.so"
]
},
"right": {
"path": "swift-5.9-RELEASE-ubuntu22.04/usr/libexec/swift/linux/swift-backtrace",
"glibc_version": "2.34",
"libstdcpp_version": null,
"shared_objects": [
"libswiftCore.so",
"libswiftGlibc.so",
"libswiftSwiftOnoneSupport.so",
"libswift_Backtracing.so"
]
},
"differences": {
"glibc_version": true,
"libstdcpp_version": false,
"shared_objects": false,
"shared_object_diffs": []
}
}
]
#!/usr/bin/env python3
# Copyright (C) 2023 Byoungchan Lee
#
# Permission to use, copy, modify, and distribute this software and its
# documentation for any purpose with or without fee is hereby granted,
# provided that the above copyright notice and this permission notice
# appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
"""
Compares ELF files in two directories and reports differences in
glibc/libstdc++ versions and dependencies.
Usage: run.py <dir1> <dir2>
TODO: Optimize the script to run faster.
"""
import filecmp
import os
import sys
import subprocess
import re
import json
from dataclasses import dataclass
from typing import List, Optional
# third_party
from elftools.elf.elffile import ELFFile
RE_GLIBC_VERSION = re.compile(r'GLIBC_(2\.[0-9]+(\.[0-9]+)?)')
RE_LIBSTDCPP_VERSION = re.compile(r'GLIBCXX_3\.4(\.([0-9]+))?')
IGNORED_SYSTEM_LIBRARIES = [
"ld-linux-x86-64.so.2",
"libc.so.6",
"libdl.so.2",
"libgcc_s.so.1",
"libm.so.6",
"libpthread.so.0",
"librt.so.1",
"libstdc++.so.6",
"libutil.so.1", # is it safe to ignore?
"libz.so.1", # is it safe to ignore?
]
@dataclass
class FileDiff:
left: str
right: str
@dataclass
class ElfFile:
glibc_version: Optional[str]
libstdcpp_version: Optional[str]
shared_objects: List[str]
def is_executable_or_shared_object(filename: str) -> bool:
try:
with open(filename, 'rb') as f:
return ELFFile(f).header.e_type in ('ET_EXEC', 'ET_DYN')
except:
return False
def find_different_shared_object(dir1, dir2) -> List[FileDiff]:
result: List[FileDiff] = []
comparison = filecmp.dircmp(dir1, dir2)
for filename in comparison.diff_files:
if is_executable_or_shared_object(os.path.join(dir1, filename)) and \
is_executable_or_shared_object(os.path.join(dir2, filename)):
result.append(
FileDiff(os.path.join(dir1, filename), os.path.join(dir2, filename)))
for sub_dir, _ in comparison.subdirs.items():
result.extend(
find_different_shared_object(
os.path.join(dir1, sub_dir), os.path.join(dir2, sub_dir)))
return result
def parse_elf(filename: str):
with open(filename, 'rb') as f:
elf = ELFFile(f)
dynamic_section = elf.get_section_by_name('.dynamic')
glibc_minor_version = None
libstdcpp_minor_version = None
shared_objects = []
cmd = ["nm", "-D", filename]
output = subprocess.check_output(cmd).decode("utf-8")
for line in output.splitlines():
if ' U ' not in line:
continue
match = RE_GLIBC_VERSION.search(line)
if match:
current_glibc_minor_version = int(match.group(1).split('.')[1])
if glibc_minor_version is None or current_glibc_minor_version > glibc_minor_version:
glibc_minor_version = current_glibc_minor_version
continue
match = RE_LIBSTDCPP_VERSION.search(line)
if not match:
continue
current_libstdcpp_minor_version = int(match.group(2) or 0)
if libstdcpp_minor_version is None or current_libstdcpp_minor_version > libstdcpp_minor_version:
libstdcpp_minor_version = current_libstdcpp_minor_version
for tag in dynamic_section.iter_tags():
if tag.entry.d_tag == 'DT_NEEDED':
shared_objects.append(tag.needed)
shared_objects = sorted(set(shared_objects) - set(IGNORED_SYSTEM_LIBRARIES))
return ElfFile(glibc_minor_version, libstdcpp_minor_version, shared_objects)
def main(args):
if len(args) != 2:
print('Usage: run.py <dir1> <dir2>')
return 1
dir1 = args[0]
dir2 = args[1]
files_diff = find_different_shared_object(dir1, dir2)
result = []
for file_diff in files_diff:
old_elf = parse_elf(file_diff.left)
new_elf = parse_elf(file_diff.right)
shared_object_diffs = sorted(
set(old_elf.shared_objects) ^ set(new_elf.shared_objects))
result.append({
'left': {
'path':
file_diff.left,
'glibc_version':
f"2.{old_elf.glibc_version}" if old_elf.glibc_version else None,
'libstdcpp_version':
f"3.4.{old_elf.libstdcpp_version}"
if old_elf.libstdcpp_version else None,
'shared_objects':
old_elf.shared_objects
},
'right': {
'path':
file_diff.right,
'glibc_version':
f"2.{new_elf.glibc_version}" if new_elf.glibc_version else None,
'libstdcpp_version':
f"3.4.{new_elf.libstdcpp_version}"
if new_elf.libstdcpp_version else None,
'shared_objects':
new_elf.shared_objects
},
'differences': {
'glibc_version':
old_elf.glibc_version != new_elf.glibc_version,
'libstdcpp_version':
old_elf.libstdcpp_version != new_elf.libstdcpp_version,
'shared_objects':
not not shared_object_diffs,
'shared_object_diffs':
shared_object_diffs
}
})
json.dump(result, sys.stdout, indent=2)
if __name__ == '__main__':
sys.exit(main(sys.argv[1:]))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment