[OE-core] [PATCH] classes/buildhistory: fix expansion of escape sequences
Saul Wold
sgw at linux.intel.com
Wed Feb 5 19:26:56 UTC 2014
On 01/25/2014 02:10 PM, Khem Raj wrote:
> Thanks for fixing it. Looks correct to me
>
There still might be an issue:
> ERROR: Error executing a python function in /srv/hdd/poky/meta/recipes-support/ca-certificates/ca-certificates_20130610.bb:
>
> The stack trace of python calls that resulted in this exception/failure was:
> File: 'buildhistory_emit_pkghistory', lineno: 220, function: <module>
> 0216:
> 0217: write_pkghistory(pkginfo, d)
> 0218:
> 0219:
> *** 0220:buildhistory_emit_pkghistory(d)
> 0221:
> File: 'buildhistory_emit_pkghistory', lineno: 217, function: buildhistory_emit_pkghistory
> 0213: pkginfo.filelist = " ".join(filelist)
> 0214:
> 0215: pkginfo.size = int(pkgdata['PKGSIZE'])
> 0216:
> *** 0217: write_pkghistory(pkginfo, d)
> 0218:
> 0219:
> 0220:buildhistory_emit_pkghistory(d)
> 0221:
> File: 'buildhistory.bbclass', lineno: 38, function: write_pkghistory
> 0034: if pkginfo.rconflicts:
> 0035: f.write("RCONFLICTS = %s\n" % pkginfo.rconflicts)
> 0036: f.write("PKGSIZE = %d\n" % pkginfo.size)
> 0037: f.write("FILES = %s\n" % pkginfo.files)
> *** 0038: f.write("FILELIST = %s\n" % pkginfo.filelist)
> 0039:
> 0040: for filevar in pkginfo.filevars:
> 0041: filevarpath = os.path.join(pkgpath, "latest.%s" % filevar)
> 0042: val = pkginfo.filevars[filevar]
> Exception: UnicodeEncodeError: 'ascii' codec can't encode character u'\xed' in position 337: ordinal not in range(128)
>
I tried to delete the buildhistory for ca-certs and rebuild without any
sstate, but it still failed to build. correctly.
Sau!
> ERROR: Function failed: buildhistory_emit_pkghistory
> ERROR: Logfile of failure stored in: /srv/hdd/builds/world/tmp/work/all-poky-linux/ca-certificates/20130610-r0/temp/log.do_packagedata.14089
> ERROR: Task 9 (/srv/hdd/poky/meta/recipes-support/ca-certificates/ca-certificates_20130610.bb, do_packagedata) failed with exit code '1'
> Acked-by: Khem Raj <raj.khem at gmail.com>
>
> On Sat, Jan 25, 2014 at 1:25 PM, Paul Eggleton
> <paul.eggleton at linux.intel.com> wrote:
>> OE-Core commit 259b8718a31b886f8a158aeb5de164840c9a28b2 fixed UTF-8
>> errors but broke decoding of escape sequences in strings (e.g.
>> pkg_postinst scripts had \n \t in them instead of newlines and tabs.)
>> We need a second call to decode() here as specifying 'string_escape' as
>> the second parameter won't do anything.
>>
>> Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
>> ---
>> meta/classes/buildhistory.bbclass | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass
>> index e9a9c3b..debeea8 100644
>> --- a/meta/classes/buildhistory.bbclass
>> +++ b/meta/classes/buildhistory.bbclass
>> @@ -190,7 +190,7 @@ python buildhistory_emit_pkghistory() {
>> key = item[0]
>> if key.endswith('_' + pkg):
>> key = key[:-len(pkg)-1]
>> - pkgdata[key] = item[1].decode('utf-8', 'string_escape')
>> + pkgdata[key] = item[1].decode('utf-8').decode('string_escape')
>>
>> pkge = pkgdata.get('PKGE', '0')
>> pkgv = pkgdata['PKGV']
>> --
>> 1.8.5.3
>>
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core at lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
More information about the Openembedded-core
mailing list