public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Laszlo Ersek" <lersek@redhat.com>
To: Matthew Carlson <macarl@microsoft.com>, devel@edk2.groups.io
Subject: Re: [edk2-devel] FW: Discussion: Basetools a separate repo
Date: Fri, 24 Apr 2020 11:27:48 +0200	[thread overview]
Message-ID: <fe7d49e7-6b39-0f43-8012-307b696f228d@redhat.com> (raw)
In-Reply-To: <328.1587583818041440437@groups.io>

On 04/22/20 21:30, macarl via [] wrote:
> I think you've got it. The version of basetools will be carried via a pip-requirements file.
> 
> Where would "pip install -r pip-requirements.txt" *fetch* the required basetools version from?
> I believe that it has a cache internal to pip. But if you want to fetch a basetools that hasn't been fetched before, yes, it would require a network download. Alternatively, if you're without internet access, you can check it out locally and use the pip install -e.
> 
> Can you please explain the effects of the "pip install -e in more detail?
> So I'm a little murky on how it works but I believe that it creates symlinks or some other mechanism to repoint the global python module (global meaning your pip install or virtualenv). This is something that works automatically. The setup.py in the root of the repo takes care of this since it's used also to package the pip module. You can do pip install -e., and it just works (tm). Any basetools commit you check out (once it is in it's own repo, going back a given basetools commit two years ago is unfortunately not as easy) will work with pip install -e with not setup or configuration on your part as a developer. I use this whenever I work on the pytools and it works quite well. It will also show up in the BuildToolsReport and pip freeze as being locally installed and it will tell you the git commit it is currently at.
> 
> I agree- I think we're trending towards very very frequent releases for basetools to provide high granularity. But that is pending community feedback and the decision of the tools maintainer. It is certainly trivial to automate the release pipeline in such a way that a release with every commit that passes CI is easy and mostly automatic for the maintainers.

Thank you. All of the above sounds nice.

I'm carefully optimistic about these changes, and am not opposing them
at this point. I hope I can find the time to test these features once
they are being proposed in code form.

Regarding the frequent (automatic) release tagging for the separate
basetools repo -- that too sounds great; I just think it will need
manual work on the edk2 side, i.e. to keep "pip-requirements.txt"
bumped. While that work sounds quite "menial", I much hope that it can
be integrated into the basetools development requirements -- "whenever
you get something into basetools, and the system tags a new release
automatically, be sure to post a patch to edk2 for advancing it to the
new basetools release".

Thanks!
Laszlo


  reply	other threads:[~2020-04-24  9:27 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-20 18:23 [edk2-devel] FW: Discussion: Basetools a separate repo Sean
2020-04-21  4:53 ` Purma, Kondal R
2020-04-21 15:49 ` Laszlo Ersek
2020-04-22  0:05   ` Matthew Carlson
2020-04-22 17:12     ` Laszlo Ersek
2020-04-22 19:30       ` Matthew Carlson
2020-04-24  9:27         ` Laszlo Ersek [this message]
2020-04-26  4:47           ` Purma, Kondal R
     [not found] <MWHPR21MB0799442E11A8E5DB4DE9E89ED1DA0@MWHPR21MB0799.namprd21.prod.outlook.com>
     [not found] ` <MWHPR21MB07998A4AD6385569A5703DE5D1DA0@MWHPR21MB0799.namprd21.prod.outlook.com>
     [not found]   ` <734D49CCEBEEF84792F5B80ED585239D5C4FEF0B@SHSMSX104.ccr.corp.intel.com>
     [not found]     ` <MW2PR2101MB0924A5AA30095DA7BB77CC0BE1D80@MW2PR2101MB0924.namprd21.prod.outlook.com>
     [not found]       ` <734D49CCEBEEF84792F5B80ED585239D5C500738@SHSMSX104.ccr.corp.intel.com>
2020-04-17  1:40         ` Ni, Ray
2020-04-20 12:49           ` [edk2-devel] " Laszlo Ersek

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=fe7d49e7-6b39-0f43-8012-307b696f228d@redhat.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