public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Feng, Bob C" <bob.c.feng@intel.com>
To: Laszlo Ersek <lersek@redhat.com>
Cc: "Gao, Liming" <liming.gao@intel.com>,
	"Bi, Dandan" <dandan.bi@intel.com>,
	 "Carsey, Jaben" <jaben.carsey@intel.com>,
	"edk2-devel@lists.01.org" <edk2-devel@lists.01.org>
Subject: Re: [Patch 0/3] BaseTools: Implement splitquoted function
Date: Fri, 15 Feb 2019 03:19:01 +0000	[thread overview]
Message-ID: <08650203BA1BD64D8AD9B6D5D74A85D160086050@SHSMSX101.ccr.corp.intel.com> (raw)
In-Reply-To: <3c56e074-a0de-124d-5f08-9b333484e84e@redhat.com>

Hi Laszlo,

Thanks for you detailed clarification. 

This patch will not be pushed to edk2 master and Ubuntu user need to install python3-distutils package via "sudo apt-get install python3-distutils" to resolve this issue.

Thanks,
Bob

-----Original Message-----
From: Laszlo Ersek [mailto:lersek@redhat.com] 
Sent: Thursday, February 14, 2019 11:32 PM
To: Feng, Bob C <bob.c.feng@intel.com>
Cc: Gao, Liming <liming.gao@intel.com>; Bi, Dandan <dandan.bi@intel.com>; Carsey, Jaben <jaben.carsey@intel.com>; edk2-devel@lists.01.org
Subject: Re: [edk2] [Patch 0/3] BaseTools: Implement splitquoted function

Hi Bob,

On 02/14/19 03:51, Feng, Bob C wrote:
> Hi Laszlo, Liming, Jaben and Dandan,
>
> I found this is a Ubuntu18 bug. Refer to
> https://bugs.launchpad.net/ubuntu/+source/fdroidserver/+bug/1762183

That Ubuntu bug is *related*, but it's not a bug that matters for us.

The bug above is about another package; it is called "fdroidserver". The "fdroidserver" package has a hard runtime dependency on the python "distutils.util" module.

Package management systems on Linux distributions track inter-package dependencies. That is, if the meta-data on the "fdroidserver" package explicitly lists the "python3-distutils" package as a dependency, then the package management system will automatically install in "python3-distutils" when the user requests "fdroidserver".

However, if the meta-data on the "fdroidserver" package are incorrect (buggy), then the package management system will have no clue. And, if the "python3-distutils" package is not already installed for some other reason, then the user will get an installation or runtime error, when they try to install or run "fdroidserver".

So, to be clear, the bug report you reference describes a *similar* situation to ours (a missing dependency), but it's not the same case.
The bug you refer to is in the "fdroidserver" package, and they fixed it in Ubuntu by updating / correcting the meta-data on the "fdroidserver"
package. The "python3-distutils" package, or other parts of the OS, were not touched.

> And Ubuntu fixed this bug via a Ubuntu18.04.1 update package which was 
> published on 2018-08-09. Refer to
> https://launchpad.net/ubuntu/+source/fdroidserver/1.0.9-1~18.04.1

The link you provide confirms what I wrote above. It is a changelog for the "fdroidserver" package, and the relevant entry says "fix missing Python distutils dependency".

> While the latest Ubuntu 18.04 release
> (ubuntu-18.04.1-desktop-amd64.iso)  on 
> http://releases.ubuntu.com/18.04/ was published on 2018-07-25.  So 
> there is no distutils.util library on Ubuntu18.04 default 
> installation.

No, this statement can't be correct. I'm pretty sure that the "python3-distutils" package *was* available when Ubuntu 18.04 -- not
18.04.1 -- was originally released.

I've just downloaded

  http://old-releases.ubuntu.com/releases/bionic/ubuntu-18.04-desktop-amd64.iso

While the package is not on the ISO, a whole lot of *other* packages are also not there -- for example I can't see any python at all. So I'm thinking that python3-distutils was only available from the network.

But, I'm pretty sure python3-distutils *was* available from the network, when 18.04 was originally released.

What was indeed broken in the original Ubuntu 18.04 release was the meta-data on the "fdroidserver" package.

> But I think it's clear that distutils.util is not *3rd party* python 
> library.

I agree; and that is what matters.

> I have tried that the command "sudo apt upgrade"  can't fix this bug

This "apt" command would only be relevant if you had the *old* fdroidserver package installed (with the missing dependency in its meta-data). Then, "apt" would install the *new* fdroidserver package for you, and it would also act on the now-visible "python3-distutils"
dependency. Thus, "apt" would automatically install in python3-distutils, as a dependency.

For installing "python3-distutils" *in itself*, the above "apt" command is totally useless.

> while the command "sudo apt-get install python3-distutils" works.

Yes, it does, because here you are specifically requesting the python3-distutils package.

And that's what matters. Ubuntu users simply need to install python3-distutils manually, from their official package repositories, if they want to use BaseTools (as part of the upstream edk2 git repo).

So I think this edk2 patch set is not necessary, after all.

Thanks,
Laszlo

  reply	other threads:[~2019-02-15  3:19 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-03  5:55 [Patch 0/3] BaseTools: Implement splitquoted function Feng, Bob C
2019-02-03  5:55 ` [Patch 1/3] BaseTools: Implement splitquoted function in Build tool Feng, Bob C
2019-02-04 15:38   ` Carsey, Jaben
2019-02-03  5:55 ` [Patch 2/3] BaseTools: Implement splitquoted function in UPT Feng, Bob C
2019-02-03  5:55 ` [Patch 3/3] BaseTools: unit test for splitquoted function Feng, Bob C
2019-02-04 19:12 ` [Patch 0/3] BaseTools: Implement " Laszlo Ersek
2019-02-12 12:23   ` Laszlo Ersek
2019-02-12 13:33     ` Gao, Liming
2019-02-12 14:02       ` Laszlo Ersek
2019-02-12 17:16         ` Philippe Mathieu-Daudé
2019-02-12 17:24           ` Laszlo Ersek
2019-02-14  2:51         ` Feng, Bob C
2019-02-14  3:23           ` Gao, Liming
2019-02-14 15:35             ` Laszlo Ersek
2019-02-15 14:35               ` Gao, Liming
2019-02-15 21:54                 ` Laszlo Ersek
2019-02-14 15:32           ` Laszlo Ersek
2019-02-15  3:19             ` Feng, Bob C [this message]
2019-02-12 10:44 ` Gao, Liming

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-list 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=08650203BA1BD64D8AD9B6D5D74A85D160086050@SHSMSX101.ccr.corp.intel.com \
    --to=devel@edk2.groups.io \
    /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