Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: Mark Hatle <mark.hatle@windriver.com>
Cc: "Rifenbark, Scott M" <scott.m.rifenbark@intel.com>,
	openembedded-core@lists.openembedded.org
Subject: Re: OE-Core and Bitbake wrapper changes (min 2.7.3 python version)
Date: Fri, 07 Jun 2013 16:28:53 +0100	[thread overview]
Message-ID: <1370618933.6864.45.camel@ted> (raw)
In-Reply-To: <51B1FBA9.2050005@windriver.com>

On Fri, 2013-06-07 at 10:26 -0500, Mark Hatle wrote:
> On 6/7/13 10:12 AM, Richard Purdie wrote:
> > On Fri, 2013-06-07 at 10:06 -0500, Mark Hatle wrote:
> >> On 6/7/13 5:47 AM, Richard Purdie wrote:
> >>> Its not secret that I hate the current bitbake wrapper script and want
> >>> to remove it for 101 different reasons.
> >>>
> >>> I now have code which removes the need for the double execution of
> >>> bitbake which was the only fundamental reason we had it. The question
> >>> therefore remains, what to do with the other pieces of the wrapper,
> >>> specifically the tar and git versions checks.
> >>>
> >>> As a reminder for those who don't remember the problem here, the git
> >>> version is checked since we use certain parameters in the git fetcher
> >>> which need certain versions of git and git is in ASSUME_PROVIDED these
> >>> days. Its possible to trigger git operations at part time to resolve
> >>> revisions. tar is even more ugly since the wrong version has issues
> >>> extracting sstate archives. These issues mean injecting building them
> >>> into the dependency chain at the right point is hard.
> >>>
> >>> Personally, I think we carry around a bit too much legacy these days and
> >>> its starting to hurt us. I would therefore like to propose that we take
> >>> this opportunity to do some spring cleaning and simply error on:
> >>>
> >>> * broken tar versions
> >>> * too old versions of git
> >>> * python < 2.7.3
> >>>
> >>> The python version check would move to the oe-init-build-env script, the
> >>> git/tar versions to sanity.bbclass.
> >>
> >> Can we also add the python check to bitbake as well?  My concern is not everyone
> >> uses the oe-init-build-env script, so ensuring that bitbake stops immediately
> >> and tells the user what's wrong is important.
> >
> > We do have checks in there and these will move to the new versions. The
> > issue we've had before is that you get a syntax error from python trying
> > to *parse* bin/bitbake. We obviously try and avoid that but it can slip
> > in for older python versions.
> >
> >>> The recommendation for anyone with these older versions would be to
> >>> install our standalone tools tarball which would have python 2.7.3 and
> >>> working versions of tar/git.
> >>>
> >>> The reason for the python version change is so we can embrace the
> >>> unittest improvements in 2.7 and drop all of the workarounds for pre
> >>> 2.7.3 bugs in bitbake. This starts to move us towards python 3, if this
> >>> tarball works well, we'd use the same approach to move to python 3.
> >>>
> >>> Any objections?
> >>
> >> No objection, this seems fine.  It would be nice if there was a simple way (for
> >> the tar and git cases) to be able to build them as a user step and then be able
> >> to use them, but that "nice experience" can easily be handled by documentation
> >> as well.
> >
> > "bitbake tar-native-replacement git-native-replacement" will still be
> > available as things stand but you'd have to put something into the
> > sanity check to look at the recipes being targeted and skip the sanity
> > tests. Its complexity I'd prefer not to have and will suck from a
> > usability perspective since the user would have to remember to do this
> > each time. The question "can't bitbake do this itself" then comes back
> > but you really do need a wrapper as there is too much version specific
> > knowledge. So in summary, I don't want to go here for the rapidly
> > reducing number of users this affects.
> 
> Sorry, I wasn't clear.  I meant that when it fails, it points the user at 
> documentation that explains how they can build git/tar, etc..  Adding the code 
> to do the build automatically should not be needed.

I was thinking of just pointing them at a link to the manual which in
turn would link to a tarball they could download and install...

Cheers,

Richard



      reply	other threads:[~2013-06-07 15:29 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-07 10:47 OE-Core and Bitbake wrapper changes (min 2.7.3 python version) Richard Purdie
2013-06-07 12:40 ` Otavio Salvador
2013-06-07 13:31   ` Chris Larson
2013-06-07 15:06 ` Mark Hatle
2013-06-07 15:12   ` Richard Purdie
2013-06-07 15:26     ` Mark Hatle
2013-06-07 15:28       ` Richard Purdie [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=1370618933.6864.45.camel@ted \
    --to=richard.purdie@linuxfoundation.org \
    --cc=mark.hatle@windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=scott.m.rifenbark@intel.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