| Summary: | FAIL: test_recipetool_create_github (oeqa.selftest.recipetool.RecipetoolTests) | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Juro Bystricky <juro.bystricky> | ||||||
| Component: | core | Assignee: | Ross Burton <ross.burton> | ||||||
| Status: | VERIFIED FIXED | QA Contact: | |||||||
| Severity: | normal | ||||||||
| Priority: | Medium+ | CC: | bluelightning, kergoth, meta.mr.watcher, meta.watcher, oscarx.lopez.arandas, richard.purdie | ||||||
| Version: | 2.1.3 | ||||||||
| Target Milestone: | 2.1.3 | ||||||||
| Hardware: | x86 | ||||||||
| OS: | Multiple | ||||||||
| Whiteboard: | |||||||||
| OS type for building Yocto: | --- | Type of Regression: | --- | ||||||
| Verified: | Documentation change: | No (bug/feature does not impact docs) | |||||||
| Attachments: |
|
||||||||
|
Description
Juro Bystricky
2017-05-22 19:32:32 UTC
Well this is exciting.
Current morty generates this:
LICENSE = "Apache-2.0 Unknown"
LIC_FILES_CHKSUM = "file://COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://docs/theme/extra/templates/license.html;md5=8490f984473ca7fa3bdcfe2a919e6249 \
file://docs/markdown/legal.md;md5=56b096e9d5a688ac2ecce3670434871a"
Whereas master generates this:
# NOTE: multiple licenses have been detected; they have been separated with &
# in the LICENSE value for now since it is a reasonable assumption that all
# of the licenses apply. If instead there is a choice between the multiple
# licenses then you should change the value to separate the licenses with |
# instead of &. If there is any doubt, check the accompanying documentation
# to determine which situation is applicable.
#
# The following license files were not able to be identified and are
# represented as "Unknown" below, you will need to check them yourself:
# docs/theme/extra/templates/license.html
# docs/markdown/legal.md
#
# NOTE: License in setup.py/PKGINFO is: Apache License, Version 2.0
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://docs/theme/extra/templates/license.html;md5=8490f984473ca7fa3bdcfe2a919e6249 \
file://docs/markdown/legal.md;md5=56b096e9d5a688ac2ecce3670434871a"
We probe the Meson repository but that has recently changed so those new files are found but not identified. Master still passes selftest because it fails to put Unknown in the LICENSE field despite the comment it generates saying that it will be.
CCing Paul.
1) can we lock the recipetool create invocation to a specific tag so we don't get caught with upstream changes?
2) Is Unknown not being in LICENSE a bug in master? (I suspect so)
1) Yes we can (sorry I should have done that in the first place). 2) This is tricky. When Chris implemented the python module handling, he made it overwrite what's in the LICENSE string to match what the python package information has recorded (if what is there can be translated appropriately). Unfortunately the comments we now write out don't match that and there's a chance that some code with associated license file gets included in the tree and thus picked up by the code and yet it might not be represented if its license isn't mentioned in the package info. In any event that has been the case since the python handling code was introduced - we could decide to go back on that but it hasn't been discussed yet. What has changed since though is that we try to be a bit more intelligent about handing the License and Classifier fields so that handling common licenses is a bit more likely, however that change went in in September so it's a bit of a puzzle as to why it's only breaking now. 1) Cool. What's the syntax? 2) I think the change to meson was only recently made and we haven't ran a morty selftest for a while. You can specify the revision by adding ;rev=<revision> to the end of the URL. Don't forget to enclose the whole thing in quotes or the shell will eat that part though. (FYI Rebecca is adding an explicit option to specify SRCREV so that this isn't as hard to deal with in future.) Fixed in oe-core master as of b35bedd209092432c560e998043b6a8c5c2e4d34 and backported to the stable branches. This fault also comes out in krogoth
[krogoth]test_recipetool_create_github(oeqa.selftest.recipetool.RecipetoolTests)
STEPS TO REPRODUCE:
1.-clone poky
2.-source oe-init-build-env
3.-oe-selftest oe-selftest --run-all
EXPECTED RESULT
All test cases should be OK
ACTUAL RESULT
When running selftest on GDC AB Ubuntu16.04 is failing with below output:
==============================================================================
FAIL: test_recipetool_create_github (oeqa.selftest.recipetool.RecipetoolTests)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/ab/autobuilder/yocto-worker/nightly-oe-selftest-ubuntu1604/build/meta/lib/oeqa/selftest/recipetool.py", line 457, in test_recipetool_create_github
self._test_recipe_contents(recipefile, checkvars, inherits)
File "/home/ab/autobuilder/yocto-worker/nightly-oe-selftest-ubuntu1604/build/meta/lib/oeqa/selftest/devtool.py", line 49, in _test_recipe_contents
self.assertEqual(value, needvalue, 'values for %s do not match' % var)
AssertionError: Items in the second set but not the first:
'Unknown' : values for LICENSE do not match.
----------------------------------------------------------------------
Full log attached:
Created attachment 3807 [details]
ubuntu_1604_krogoth
What SHA did you use? The stuff that went to QA was broken, the fix landed immediately afterwards. BUILD: 2.1.3: rc1-fe7fb002216f7886d49942333ea6d8592339bb05 ENVIRONMENT: ubuntu 16.04 x86_64 This was fixed in the commit immediately after this, http://git.yoctoproject.org/cgit.cgi/poky/commit/?h=krogoth&id=3565a9697f53ba975a1b7235b802f659418746c3. Its not worth respinning the point release for. Resolve as per the last comment This was resolved in the commit added immediately: 3565a9697f53ba975a1b7235b802f659418746c3 STATUS: IDLE BUILD: 2.1.3: 3565a9697f53ba975a1b7235b802f659418746c3 ENVIRONMENT: ubuntu 16.04 x86_64 STEPS TO REPRODUCE: 1.-clone poky 2.-source oe-init-build-env 3.-oe-selftest oe-selftest --run-all EXPECTED RESULT All test cases should be OK ACTUAL RESULT All test cases should be OK |