From 720c9262714436188a5826a81e84235926fd73a6 Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Thu, 28 Apr 2016 01:06:19 +1200 Subject: recipetool: create: fix falling back to declared license for npm packages Fix two problems falling back to the "license" field from package.json when no license file is present: 1) The function that was supposed to return the license field value was always explicitly returning None, and this was never noticed (because the test cases never exercised the fallback as they provided license files for each module). 2) Fix the main package not falling back because it had a default of an empty list, which evaluates to '' instead of 'Unknown'. (From OE-Core rev: 59381a9450949ce6b4b03adb717e950b999830f3) (From OE-Core rev: 2d96460f2dcac4263f43ebcb7556722ce55c9918) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie Signed-off-by: Armin Kuster Signed-off-by: Richard Purdie --- scripts/lib/recipetool/create.py | 2 +- scripts/lib/recipetool/create_npm.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'scripts') diff --git a/scripts/lib/recipetool/create.py b/scripts/lib/recipetool/create.py index bb9fb9b049..aade40b5a8 100644 --- a/scripts/lib/recipetool/create.py +++ b/scripts/lib/recipetool/create.py @@ -854,7 +854,7 @@ def split_pkg_licenses(licvalues, packages, outlines, fallback_licenses=None, pn pkglicenses[pn].append(license) outlicenses = {} for pkgname in packages: - license = ' '.join(list(set(pkglicenses.get(pkgname, ['Unknown'])))) + license = ' '.join(list(set(pkglicenses.get(pkgname, ['Unknown'])))) or 'Unknown' if license == 'Unknown' and pkgname in fallback_licenses: license = fallback_licenses[pkgname] outlines.append('LICENSE_%s = "%s"' % (pkgname, license)) diff --git a/scripts/lib/recipetool/create_npm.py b/scripts/lib/recipetool/create_npm.py index b3ffcdbc5b..cc4fb42684 100644 --- a/scripts/lib/recipetool/create_npm.py +++ b/scripts/lib/recipetool/create_npm.py @@ -45,7 +45,7 @@ class NpmRecipeHandler(RecipeHandler): license = data['license'] if isinstance(license, dict): license = license.get('type', None) - return None + return license def _shrinkwrap(self, srctree, localfilesdir, extravalues, lines_before): try: -- cgit v1.2.3-54-g00ecf