Skip to content

When running scancode for a small size file, JSON result file is very large #2581

@WisdomZheng

Description

@WisdomZheng

Description

In AOSP(Android Open Source Project) code, there is a file:
external/grpc-grpc/src/objective-c/BoringSSL-GRPC.podspec (242K),
when running scancode cmd:
scancode -clpieu --license-text --license-text-diagnostics --summary --summary-with-details --json-pp result.json external/grpc-grpc/src/objective-c/BoringSSL-GRPC.podspec,
size of JSON result file is 1.9G.

I found this part of code is read recursively. (It will be stored in package section)

BoringSSL is a fork of OpenSSL that is designed to meet Google's needs.

Although BoringSSL is an open source project, it is not intended for general use, as OpenSSL is.
We don't recommend that third parties depend upon it. Doing so is likely to be frustrating
because there are no guarantees of API stability. Only the latest version of this pod is
supported, and every new version is a new major version.

We update Google libraries and programs that use BoringSSL as needed when deciding to make API
changes. This allows us to mostly avoid compromises in the name of compatibility. It works for
us, but it may not work for you.

As a Cocoapods pod, it has the advantage over OpenSSL's pods that the library doesn't need to
be precompiled. This eliminates the 10 - 20 minutes of wait the first time a user does "pod
install", lets it be used as a dynamic framework (pending solution of Cocoapods' issue #4605),
and works with bitcode automatically. It's also thought to be smaller than OpenSSL (which takes
1MB - 2MB per ARM architecture), but we don't have specific numbers yet.

BoringSSL arose because Google used OpenSSL for many years in various ways and, over time, built
up a large number of patches that were maintained while tracking upstream OpenSSL. As Google's
product portfolio became more complex, more copies of OpenSSL sprung up and the effort involved
in maintaining all these patches in multiple places was growing steadily.

Currently BoringSSL is the SSL library in Chrome/Chromium, Android (but it's not part of the
NDK) and a number of other apps/programs.

I'm not sure whether it is expected, but for us, this result is strange.

System configuration

What OS are you running on? Linux (Ubuntu 18.04.2 LTS)
What version of scancode-toolkit was used to generate the scan file? v21.6.7
What installation method was used to install/run scancode? python 3.8.7 + pip install

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions