Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Grygorii Tertychnyi <gtertych@cisco.com>
To: akuster808 <akuster808@gmail.com>
Cc: xe-linux-external@cisco.com, openembedded-core@lists.openembedded.org
Subject: Re: [PATCH v3] lib/oe/utils: add eol to format_pkg_list()
Date: Thu, 11 Oct 2018 01:16:23 +0300	[thread overview]
Message-ID: <87k1mpo3bc.fsf@cisco.com> (raw)
In-Reply-To: <6238cb7b-8148-a707-89c6-151e1148bb76@gmail.com>


akuster808 writes:

> Grygorii,
>
>
> On 10/10/2018 09:26 AM, grygorii tertychnyi via Openembedded-core wrote:
>> Append '\n' to the non-empty formatted string before return. If you
>> write it to the (manifest) file, it will ensure file ends with a newline.
>>
>> Many GNU utilities have problems processing the last line of a file
>> if it is not '\n' terminated. E.g. if the last line is not terminated
>> by a newline character, then "read" will read it but return false,
>> leaving the broken partial line in the read variable(s).
>> It can also break or adversely affect some text processing tools,
>> that operate on the file.
>
> is this needed for the cve patches?

No

>
> - armin
>> Signed-off-by: grygorii tertychnyi <gtertych@cisco.com>
>> ---
>>
>> Changes in v3:
>>  o write_image_manifest(): remove extra '\n'
>>
>> PASS bitbake buildtools-tarball
>> PASS bitbake core-image-minimal                                                                                              
>> PASS bitbake core-image-sato -c do_populate_sdk_ext
>> PASS oe-selftest --run-tests manifest.VerifyManifest.test_image_manifest_entries
>>
>>  meta/classes/rootfs-postcommands.bbclass | 1 -
>>  meta/lib/oe/utils.py                     | 8 +++++++-
>>  2 files changed, 7 insertions(+), 2 deletions(-)
>>
>> diff --git a/meta/classes/rootfs-postcommands.bbclass b/meta/classes/rootfs-postcommands.bbclass
>> index e816824f28..bde58ad6cd 100644
>> --- a/meta/classes/rootfs-postcommands.bbclass
>> +++ b/meta/classes/rootfs-postcommands.bbclass
>> @@ -253,7 +253,6 @@ python write_image_manifest () {
>>      pkgs = image_list_installed_packages(d)
>>      with open(manifest_name, 'w+') as image_manifest:
>>          image_manifest.write(format_pkg_list(pkgs, "ver"))
>> -        image_manifest.write("\n")
>>  
>>      if os.path.exists(manifest_name):
>>          manifest_link = deploy_dir + "/" + link_name + ".manifest"
>> diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
>> index 93b0763b0a..d05f517a70 100644
>> --- a/meta/lib/oe/utils.py
>> +++ b/meta/lib/oe/utils.py
>> @@ -347,7 +347,13 @@ def format_pkg_list(pkg_dict, ret_format=None):
>>          for pkg in sorted(pkg_dict):
>>              output.append(pkg)
>>  
>> -    return '\n'.join(output)
>> +    output_str = '\n'.join(output)
>> +
>> +    if output_str:
>> +        # make sure last line is newline terminated
>> +        output_str += '\n'
>> +
>> +    return output_str
>>  
>>  def host_gcc_version(d, taskcontextonly=False):
>>      import re, subprocess



      reply	other threads:[~2018-10-10 22:16 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-10 16:26 [PATCH v3] lib/oe/utils: add eol to format_pkg_list() grygorii tertychnyi
2018-10-10 20:29 ` akuster808
2018-10-10 22:16   ` Grygorii Tertychnyi [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87k1mpo3bc.fsf@cisco.com \
    --to=gtertych@cisco.com \
    --cc=akuster808@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=xe-linux-external@cisco.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox