From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: "Damian, Alexandru" <alexandru.damian@intel.com>
Cc: bitbake-devel@lists.openembedded.org
Subject: Re: [PATCH 6/7] bitbake: event: adding events to allow bbclasses to push custom info
Date: Mon, 16 Sep 2013 16:20:07 +0100 [thread overview]
Message-ID: <1379344807.32201.5.camel@ted> (raw)
In-Reply-To: <CAJ2CSBtavqusHtJXRkELi2QfTmxp2c5T31AaZ8X1_srsZ0iJ2A@mail.gmail.com>
On Mon, 2013-09-16 at 14:56 +0100, Damian, Alexandru wrote:
> On Mon, Sep 16, 2013 at 2:46 PM, Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> Your explanation in the commit message isn't as detailed as it could
> be.
>
> I'm guessing but I suspect the problem we have is that the
> event cannot
> be rebuilt on the other side of an XMLRPC connection without
> having the
> event class in a common namespace?
>
> This is therefore a hack to allow the event to exist in all
> the client
> side namespaces.
>
>
> [Alex] Yep, this is an ugly hack.
In future *please* put this kind of information into commit messages.
I'm having a lot of trouble with these patches as the commit messages
don't give me all the information I need to review them.
>
>
> Ideally we should really have an API which allows the classes
> themselves
> to declare their event formats and not require adding to
> event.py every
> time a new piece of code/event is added.
>
> [Alex] I would favor a single "GenericEvent" that will take a set of
> defined parameters,
> that would allow "subclassing" at runtime - sort of introspection if
> you will.
>
> Something like this:
>
>
> class GenericInfo(Event):
>
> def __init__(self, type, data):
> Event.__init__(self)
> self._type = type
> self._data = data
>
> with a call like
>
>
> bb.event.fire(bb.event.GenericInfo("PackageInfo", pkginfolist),
> e.data)
>
>
> the UI handlers / anybody would subscribe to GenericInfo events,
> and the processing code would look like:
>
>
> if isinstance(event, bb.event.GenericInfo):
> if event._type == "PackageInfo":
> savePackageInfo(event)
> elif event._type == "PackageFileSizes":
> ....
>
Lets do it but can you:
a) Stop using the underscores please. I know some older events have them
but the data is not internal so lets not persist broken syntax going
forward.
b) Call this MetadataEvent and put in a header comment explaining what
it is and why/when you'd use it.
c) Convert the user of PackageInfo in OE-Core to use the new event if it
is available, falling back to PackageInfo.
d) Update hob to accept the new event
c/d can come later but I do want to see patches for them ultimately.
We'll remove PackageInfo in the 1.6 cycle.
Cheers,
Richard
next prev parent reply other threads:[~2013-09-16 15:20 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-16 13:32 [PATCH v3 0/7] webhob related changes in bitbake, version 3 Alex DAMIAN
2013-09-16 13:33 ` [PATCH 1/7] bitbake: cooker: clean up code and avoid duplication Alex DAMIAN
2013-09-16 13:33 ` [PATCH 2/7] bitbake: event: send the task dependency tree to UI Alex DAMIAN
2013-09-16 15:32 ` Richard Purdie
2013-09-16 13:33 ` [PATCH 3/7] bitbake: runqueue: add runQueueTaskSkipped event Alex DAMIAN
2013-09-16 14:24 ` Richard Purdie
2013-09-16 14:32 ` Damian, Alexandru
2013-09-16 15:23 ` Richard Purdie
2013-09-16 13:33 ` [PATCH 4/7] bitbake: cooker: add extra recipe information Alex DAMIAN
2013-09-16 14:10 ` Richard Purdie
2013-09-16 13:33 ` [PATCH 5/7] bitbake: cooker, command: add a command to return global data Alex DAMIAN
2013-09-16 13:54 ` Richard Purdie
2013-09-16 13:33 ` [PATCH 6/7] bitbake: event: adding events to allow bbclasses to push custom info Alex DAMIAN
2013-09-16 13:46 ` Richard Purdie
2013-09-16 13:56 ` Damian, Alexandru
2013-09-16 15:20 ` Richard Purdie [this message]
2013-09-16 13:33 ` [PATCH 7/7] bitbake: runqueue: add task hash to Queue events Alex DAMIAN
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=1379344807.32201.5.camel@ted \
--to=richard.purdie@linuxfoundation.org \
--cc=alexandru.damian@intel.com \
--cc=bitbake-devel@lists.openembedded.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.