* [PATCHv3 1/3] buildhistory: remove duplicate entries from dot graph
@ 2012-03-22 15:25 Koen Kooi
2012-03-22 15:25 ` [PATCHv3 2/3] buildhistory: record all builds Koen Kooi
` (2 more replies)
0 siblings, 3 replies; 10+ messages in thread
From: Koen Kooi @ 2012-03-22 15:25 UTC (permalink / raw)
To: openembedded-core; +Cc: Koen Kooi
There are various conditions that lead to duplicate entries in the dot graph which need to get fixed, but this patch is a catchall. A previous attempt to address this only works on rpm which gives a \n seperated output, opkg doesn't.
Another benefit is that the sort order is now know, leading to less spurious diffs in buildhistory commits.
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
meta/classes/buildhistory.bbclass | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass
index f99aa7f..764e1e8 100644
--- a/meta/classes/buildhistory.bbclass
+++ b/meta/classes/buildhistory.bbclass
@@ -291,6 +291,7 @@ buildhistory_get_image_installed() {
# Produce installed package file and size lists and dependency graph
echo -n > ${BUILDHISTORY_DIR_IMAGE}/installed-packages.txt
echo -n > ${BUILDHISTORY_DIR_IMAGE}/installed-package-sizes.tmp
+ echo -n > ${BUILDHISTORY_DIR_IMAGE}/depends.tmp
echo -e "digraph depends {\n node [shape=plaintext]" > ${BUILDHISTORY_DIR_IMAGE}/depends.dot
for pkg in $INSTALLED_PKGS; do
pkgfile=`get_package_filename $pkg`
@@ -300,16 +301,18 @@ buildhistory_get_image_installed() {
echo $pkgsize $pkg >> ${BUILDHISTORY_DIR_IMAGE}/installed-package-sizes.tmp
fi
- deps=`list_package_depends $pkg | sort | uniq`
+ deps=`list_package_depends $pkg`
for dep in $deps ; do
- echo "$pkg OPP $dep;" | sed -e 's:-:_:g' -e 's:\.:_:g' -e 's:+::g' | sed 's:OPP:->:g' >> ${BUILDHISTORY_DIR_IMAGE}/depends.dot
+ echo "$pkg OPP $dep;" | sed -e 's:-:_:g' -e 's:\.:_:g' -e 's:+::g' | sed 's:OPP:->:g' >> ${BUILDHISTORY_DIR_IMAGE}/depends.tmp
done
- recs=`list_package_recommends $pkg | sort | uniq`
+ recs=`list_package_recommends $pkg`
for rec in $recs ; do
- echo "$pkg OPP $rec [style=dotted];" | sed -e 's:-:_:g' -e 's:\.:_:g' -e 's:+::g' | sed 's:OPP:->:g' >> ${BUILDHISTORY_DIR_IMAGE}/depends.dot
+ echo "$pkg OPP $rec [style=dotted];" | sed -e 's:-:_:g' -e 's:\.:_:g' -e 's:+::g' | sed 's:OPP:->:g' >> ${BUILDHISTORY_DIR_IMAGE}/depends.tmp
done
done
+ cat ${BUILDHISTORY_DIR_IMAGE}/depends.tmp | sort | uniq >> ${BUILDHISTORY_DIR_IMAGE}/depends.dot
+ rm ${BUILDHISTORY_DIR_IMAGE}/depends.tmp
echo "}" >> ${BUILDHISTORY_DIR_IMAGE}/depends.dot
cat ${BUILDHISTORY_DIR_IMAGE}/installed-package-sizes.tmp | sort -n -r | awk '{print $1 "\tKiB " $2}' > ${BUILDHISTORY_DIR_IMAGE}/installed-package-sizes.txt
--
1.7.2.5
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCHv3 2/3] buildhistory: record all builds
2012-03-22 15:25 [PATCHv3 1/3] buildhistory: remove duplicate entries from dot graph Koen Kooi
@ 2012-03-22 15:25 ` Koen Kooi
2012-03-23 14:33 ` Paul Eggleton
2012-03-22 15:25 ` [PATCHv3 3/3] buildhistory: make seperate commits for every changed top level entry in the buildhistory dir Koen Kooi
2012-03-22 15:41 ` [PATCHv3 1/3] buildhistory: remove duplicate entries from dot graph Chris Larson
2 siblings, 1 reply; 10+ messages in thread
From: Koen Kooi @ 2012-03-22 15:25 UTC (permalink / raw)
To: openembedded-core; +Cc: Koen Kooi
When nothing has changed an empty commit prefixed with "No changes" will get generated
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
meta/classes/buildhistory.bbclass | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass
index 764e1e8..2305b50 100644
--- a/meta/classes/buildhistory.bbclass
+++ b/meta/classes/buildhistory.bbclass
@@ -408,6 +408,8 @@ buildhistory_commit() {
if [ "${BUILDHISTORY_PUSH_REPO}" != "" ] ; then
git push -q ${BUILDHISTORY_PUSH_REPO}
fi
+ else
+ git commit ${BUILDHISTORY_DIR}/ --allow-empty -m "No changes: Build ${BUILDNAME} of ${DISTRO} ${DISTRO_VERSION} for machine ${MACHINE} on $HOSTNAME" --author "${BUILDHISTORY_COMMIT_AUTHOR}" > /dev/null
fi) || true
}
--
1.7.2.5
^ permalink raw reply related [flat|nested] 10+ messages in thread* Re: [PATCHv3 2/3] buildhistory: record all builds
2012-03-22 15:25 ` [PATCHv3 2/3] buildhistory: record all builds Koen Kooi
@ 2012-03-23 14:33 ` Paul Eggleton
2012-03-23 14:46 ` Koen Kooi
0 siblings, 1 reply; 10+ messages in thread
From: Paul Eggleton @ 2012-03-23 14:33 UTC (permalink / raw)
To: Koen Kooi; +Cc: openembedded-core
On Thursday 22 March 2012 16:25:40 Koen Kooi wrote:
> When nothing has changed an empty commit prefixed with "No changes" will get
> generated
So I guess what's missing from this commit message is an explanation of why
you want this.
Cheers,
Paul
--
Paul Eggleton
Intel Open Source Technology Centre
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCHv3 2/3] buildhistory: record all builds
2012-03-23 14:33 ` Paul Eggleton
@ 2012-03-23 14:46 ` Koen Kooi
2012-03-23 15:24 ` Paul Eggleton
0 siblings, 1 reply; 10+ messages in thread
From: Koen Kooi @ 2012-03-23 14:46 UTC (permalink / raw)
To: Paul Eggleton; +Cc: openembedded-core
Op 23 mrt. 2012, om 15:33 heeft Paul Eggleton het volgende geschreven:
> On Thursday 22 March 2012 16:25:40 Koen Kooi wrote:
>> When nothing has changed an empty commit prefixed with "No changes" will get
>> generated
>
> So I guess what's missing from this commit message is an explanation of why
> you want this.
Drat, I had assumed the commit title would be enough for that :)
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCHv3 2/3] buildhistory: record all builds
2012-03-23 14:46 ` Koen Kooi
@ 2012-03-23 15:24 ` Paul Eggleton
2012-03-23 15:48 ` Koen Kooi
0 siblings, 1 reply; 10+ messages in thread
From: Paul Eggleton @ 2012-03-23 15:24 UTC (permalink / raw)
To: Koen Kooi; +Cc: openembedded-core
On Friday 23 March 2012 15:46:23 Koen Kooi wrote:
> Op 23 mrt. 2012, om 15:33 heeft Paul Eggleton het volgende geschreven:
> > On Thursday 22 March 2012 16:25:40 Koen Kooi wrote:
> >> When nothing has changed an empty commit prefixed with "No changes" will
> >> get generated
> >
> > So I guess what's missing from this commit message is an explanation of
> > why
> > you want this.
>
> Drat, I had assumed the commit title would be enough for that :)
My personal opinion (probably backed up by the commit policy, I haven't
refreshed my memory on it recently) is that commit messages should explain the
reasoning behind a change and not just be a restatement of the change in
human-readable form - although that is often useful in addition.
Cheers,
Paul
--
Paul Eggleton
Intel Open Source Technology Centre
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCHv3 2/3] buildhistory: record all builds
2012-03-23 15:24 ` Paul Eggleton
@ 2012-03-23 15:48 ` Koen Kooi
2012-03-23 15:53 ` Paul Eggleton
0 siblings, 1 reply; 10+ messages in thread
From: Koen Kooi @ 2012-03-23 15:48 UTC (permalink / raw)
To: Paul Eggleton; +Cc: openembedded-core
Op 23 mrt. 2012, om 16:24 heeft Paul Eggleton het volgende geschreven:
> On Friday 23 March 2012 15:46:23 Koen Kooi wrote:
>> Op 23 mrt. 2012, om 15:33 heeft Paul Eggleton het volgende geschreven:
>>> On Thursday 22 March 2012 16:25:40 Koen Kooi wrote:
>>>> When nothing has changed an empty commit prefixed with "No changes" will
>>>> get generated
>>>
>>> So I guess what's missing from this commit message is an explanation of
>>> why
>>> you want this.
>>
>> Drat, I had assumed the commit title would be enough for that :)
>
> My personal opinion (probably backed up by the commit policy, I haven't
> refreshed my memory on it recently) is that commit messages should explain the
> reasoning behind a change and not just be a restatement of the change in
> human-readable form - although that is often useful in addition.
I get that, but I'm having trouble coming up with something that isn't already covered but the "record all builds" statement :(
regards,
Koen
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCHv3 2/3] buildhistory: record all builds
2012-03-23 15:48 ` Koen Kooi
@ 2012-03-23 15:53 ` Paul Eggleton
2012-03-23 16:24 ` Koen Kooi
0 siblings, 1 reply; 10+ messages in thread
From: Paul Eggleton @ 2012-03-23 15:53 UTC (permalink / raw)
To: Koen Kooi; +Cc: openembedded-core
On Friday 23 March 2012 16:48:35 Koen Kooi wrote:
> I get that, but I'm having trouble coming up with something that isn't
> already covered but the "record all builds" statement :(
I know what you mean, but I think that just stating its "so that the commit
log of the buildhistory repo provides a complete log of all builds performed,
not just those that resulted in changes" would be sufficient.
Cheers,
Paul
--
Paul Eggleton
Intel Open Source Technology Centre
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCHv3 2/3] buildhistory: record all builds
2012-03-23 15:53 ` Paul Eggleton
@ 2012-03-23 16:24 ` Koen Kooi
0 siblings, 0 replies; 10+ messages in thread
From: Koen Kooi @ 2012-03-23 16:24 UTC (permalink / raw)
To: Paul Eggleton; +Cc: openembedded-core
Op 23 mrt. 2012, om 16:53 heeft Paul Eggleton het volgende geschreven:
> On Friday 23 March 2012 16:48:35 Koen Kooi wrote:
>> I get that, but I'm having trouble coming up with something that isn't
>> already covered but the "record all builds" statement :(
>
> I know what you mean, but I think that just stating its "so that the commit
> log of the buildhistory repo provides a complete log of all builds performed,
> not just those that resulted in changes" would be sufficient.
Added that, thanks!
I'll respin 3/3 with Chris' feedback as well.
regards,
Koen
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCHv3 3/3] buildhistory: make seperate commits for every changed top level entry in the buildhistory dir
2012-03-22 15:25 [PATCHv3 1/3] buildhistory: remove duplicate entries from dot graph Koen Kooi
2012-03-22 15:25 ` [PATCHv3 2/3] buildhistory: record all builds Koen Kooi
@ 2012-03-22 15:25 ` Koen Kooi
2012-03-22 15:41 ` [PATCHv3 1/3] buildhistory: remove duplicate entries from dot graph Chris Larson
2 siblings, 0 replies; 10+ messages in thread
From: Koen Kooi @ 2012-03-22 15:25 UTC (permalink / raw)
To: openembedded-core; +Cc: Koen Kooi
This seperates out image changes from package changes making the image diffs a lot easier to read.
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
---
meta/classes/buildhistory.bbclass | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass
index 2305b50..fad51bc 100644
--- a/meta/classes/buildhistory.bbclass
+++ b/meta/classes/buildhistory.bbclass
@@ -404,7 +404,10 @@ buildhistory_commit() {
if [ "$repostatus" != "" ] ; then
git add ${BUILDHISTORY_DIR}/*
HOSTNAME=`hostname 2>/dev/null || echo unknown`
- git commit ${BUILDHISTORY_DIR}/ -m "Build ${BUILDNAME} of ${DISTRO} ${DISTRO_VERSION} for machine ${MACHINE} on $HOSTNAME" --author "${BUILDHISTORY_COMMIT_AUTHOR}" > /dev/null
+ # porcelain output looks like "?? packages/foo/bar"
+ for entry in `echo $repostatus | awk '{print $2}' | awk -F/ '{print $1}' | sort | uniq` ; do
+ git commit ${BUILDHISTORY_DIR}/$entry -m "$entry: Build ${BUILDNAME} of ${DISTRO} ${DISTRO_VERSION} for machine ${MACHINE} on $HOSTNAME" --author "${BUILDHISTORY_COMMIT_AUTHOR}" > /dev/null
+ done
if [ "${BUILDHISTORY_PUSH_REPO}" != "" ] ; then
git push -q ${BUILDHISTORY_PUSH_REPO}
fi
--
1.7.2.5
^ permalink raw reply related [flat|nested] 10+ messages in thread* Re: [PATCHv3 1/3] buildhistory: remove duplicate entries from dot graph
2012-03-22 15:25 [PATCHv3 1/3] buildhistory: remove duplicate entries from dot graph Koen Kooi
2012-03-22 15:25 ` [PATCHv3 2/3] buildhistory: record all builds Koen Kooi
2012-03-22 15:25 ` [PATCHv3 3/3] buildhistory: make seperate commits for every changed top level entry in the buildhistory dir Koen Kooi
@ 2012-03-22 15:41 ` Chris Larson
2 siblings, 0 replies; 10+ messages in thread
From: Chris Larson @ 2012-03-22 15:41 UTC (permalink / raw)
To: Patches and discussions about the oe-core layer; +Cc: Koen Kooi
On Thu, Mar 22, 2012 at 8:25 AM, Koen Kooi <koen@dominion.thruhere.net> wrote:
> - deps=`list_package_depends $pkg | sort | uniq`
> + deps=`list_package_depends $pkg`
> for dep in $deps ; do
> - echo "$pkg OPP $dep;" | sed -e 's:-:_:g' -e 's:\.:_:g' -e 's:+::g' | sed 's:OPP:->:g' >> ${BUILDHISTORY_DIR_IMAGE}/depends.dot
> + echo "$pkg OPP $dep;" | sed -e 's:-:_:g' -e 's:\.:_:g' -e 's:+::g' | sed 's:OPP:->:g' >> ${BUILDHISTORY_DIR_IMAGE}/depends.tmp
> done
>
> - recs=`list_package_recommends $pkg | sort | uniq`
> + recs=`list_package_recommends $pkg`
> for rec in $recs ; do
> - echo "$pkg OPP $rec [style=dotted];" | sed -e 's:-:_:g' -e 's:\.:_:g' -e 's:+::g' | sed 's:OPP:->:g' >> ${BUILDHISTORY_DIR_IMAGE}/depends.dot
> + echo "$pkg OPP $rec [style=dotted];" | sed -e 's:-:_:g' -e 's:\.:_:g' -e 's:+::g' | sed 's:OPP:->:g' >> ${BUILDHISTORY_DIR_IMAGE}/depends.tmp
> done
> done
> + cat ${BUILDHISTORY_DIR_IMAGE}/depends.tmp | sort | uniq >> ${BUILDHISTORY_DIR_IMAGE}/depends.dot
> + rm ${BUILDHISTORY_DIR_IMAGE}/depends.tmp
{
deps=`list_package_depends $pkg`
for dep in $deps ; do
echo "$pkg OPP $dep;" | sed -e 's:-:_:g' -e 's:\.:_:g' -e
's:+::g' | sed 's:OPP:->:g'
done
recs=`list_package_recommends $pkg`
for rec in $recs ; do
echo "$pkg OPP $rec [style=dotted];" | sed -e 's:-:_:g' -e
's:\.:_:g' -e 's:+::g' | sed 's:OPP:->:g'
done
} | sort | uniq >> ${BUILDHISTORY_DIR_IMAGE}/depends.dot
--
Christopher Larson
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2012-03-23 16:33 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-22 15:25 [PATCHv3 1/3] buildhistory: remove duplicate entries from dot graph Koen Kooi
2012-03-22 15:25 ` [PATCHv3 2/3] buildhistory: record all builds Koen Kooi
2012-03-23 14:33 ` Paul Eggleton
2012-03-23 14:46 ` Koen Kooi
2012-03-23 15:24 ` Paul Eggleton
2012-03-23 15:48 ` Koen Kooi
2012-03-23 15:53 ` Paul Eggleton
2012-03-23 16:24 ` Koen Kooi
2012-03-22 15:25 ` [PATCHv3 3/3] buildhistory: make seperate commits for every changed top level entry in the buildhistory dir Koen Kooi
2012-03-22 15:41 ` [PATCHv3 1/3] buildhistory: remove duplicate entries from dot graph Chris Larson
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.