Skip to content

license_finder report gets stuck with Conan2 #1057

@BjoernAtBosch

Description

@BjoernAtBosch

Running license_finder report --enabled-package-managers=conan with Conan 2 on a folder with a conanfile.py gets "stuck" (runs forever).

LicenseFinder version is 7.2.1.

The issue seems to be within lib/license_finder/package_utils/conan_info_parser_v2.rb, class ConanInfoParserV2, function parse. There it gets stuck in the line

      line = @lines.shift while line != '======== Basic graph information ========'

With recent Conan2 versions (I'm currently using 2.15.1) the output ======== Basic graph information ======== of command conan graph info . is done on stderr not stdout. (stdout just contains the dependencies tree.)
Furthermore, if the output doesn't contain this expected line, it seems to cause an endless loop.

Stacktrace (output after interrupting with Ctrl+C):

 $ license_finder report --enabled-package-managers=conan
LicenseFinder::Conan: is active for '/workspaces/license-check'
^CTraceback (most recent call last):
        23: from /usr/local/bin/license_finder:23:in `<main>'
        22: from /usr/local/bin/license_finder:23:in `load'
        21: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/bin/license_finder:6:in `<top (required)>'
        20: from /var/lib/gems/2.7.0/gems/thor-1.3.2/lib/thor/base.rb:584:in `start'
        19: from /var/lib/gems/2.7.0/gems/thor-1.3.2/lib/thor.rb:538:in `dispatch'
        18: from /var/lib/gems/2.7.0/gems/thor-1.3.2/lib/thor/invocation.rb:127:in `invoke_command'
        17: from /var/lib/gems/2.7.0/gems/thor-1.3.2/lib/thor/command.rb:28:in `run'
        16: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/cli/main.rb:161:in `report'
        15: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/license_aggregator.rb:11:in `dependencies'
        14: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/license_aggregator.rb:49:in `aggregate_packages'
        13: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/license_aggregator.rb:49:in `flat_map'
        12: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/license_aggregator.rb:49:in `each'
        11: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/license_aggregator.rb:51:in `block in aggregate_packages'
        10: from /usr/lib/ruby/2.7.0/forwardable.rb:229:in `acknowledged'
         9: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/core.rb:79:in `decision_applier'
         8: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/core.rb:84:in `current_packages'
         7: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/scanner.rb:42:in `active_packages'
         6: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/scanner.rb:42:in `flat_map'
         5: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/scanner.rb:42:in `each'
         4: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/package_manager.rb:105:in `current_packages_with_relations'
         3: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/package_managers/conan.rb:55:in `current_packages'
         2: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/package_managers/conan.rb:47:in `deps_list'
         1: from /var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/package_managers/conan.rb:42:in `deps_list_conan_v2'
/var/lib/gems/2.7.0/gems/license_finder-7.2.1/lib/license_finder/package_utils/conan_info_parser_v2.rb:14:in `parse': Interrupt

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions