public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Matthew Carlson" <macarl@microsoft.com>
To: Laszlo Ersek <lersek@redhat.com>,devel@edk2.groups.io
Subject: Re: [edk2-devel] FW: Discussion: Basetools a separate repo
Date: Wed, 22 Apr 2020 12:30:18 -0700	[thread overview]
Message-ID: <328.1587583818041440437@groups.io> (raw)
In-Reply-To: <383cfe10-81b8-63be-3ed6-a1d3cb304fb5@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 1800 bytes --]

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 for the excellent questions!

--
- Matthew Carlson

[-- Attachment #2: Type: text/html, Size: 2024 bytes --]

  reply	other threads:[~2020-04-22 19:30 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 [this message]
2020-04-24  9:27         ` Laszlo Ersek
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=328.1587583818041440437@groups.io \
    --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