All of lore.kernel.org
 help / color / mirror / Atom feed
* V3: review request for configure details page
@ 2014-02-27  3:53 Reyna, David
  2014-02-27 12:05 ` Barros Pena, Belen
  0 siblings, 1 reply; 6+ messages in thread
From: Reyna, David @ 2014-02-27  3:53 UTC (permalink / raw)
  To: Barros Pena, Belen, Damian, Alexandru; +Cc: Paul Eggleton, toaster

Hi Belen,

I have implemented the proposed design changes to the "Configure" page. 

   dreyna/configure-detail-view

I did need to make some small changes to the proposed design, as documented below. There are also some outstanding issues, which I also list below.

IMPLEMENTATION:

> 1) "Showing history for all variables"

Done.

> 2) "Searching and filtering" (Hidden file problem)

Done. 

I did however realize that "search" applies to all fields, not just the file list. This is an issue when you for example search the rpwsa for "BBINCLUDED", because suddenly all of the files would disappear because none would match. I do not think that this is what the user would expect when they are searching for variables and not file names.

Here is therefore how I implemented the file filtering:

  'search' 'file filter' Action
  -------- ------------- ----------------------
    -        -           show last file
  value      -           show last file, plus any file names that match search
    -      value         show only file names that match filter
  value    value         show any file names that match either string

I think that this meets out needs, and is a "least surprise" for users.

> 3) "Dealing with long values"

Done. To see it work, turn off the "Description" filter and look at the variable "BBINCLUDED", which is guaranteed to be bigger than 570 characters.

> 4) "What if a variable value is an empty string?"

Done.

> 5) "What do we do with the 613 B_* variables?"

They are now gone from the view.

> 6) "Linking variables to the Yocto Project reference manual"

Done. 

However, the statement "we do know that all variables with a description in documentation.conf have an entry in
the Yocto Project reference manual" is not universally true. Here are some counter examples:

  ALLOW_EMPTY_${PN}-dbg
  ASSUME_PROVIDED
  ASSUME_SHLIBS
  BBFILE_PATTERN_core
  BBFILE_PRIORITY_core
  ...

Some of these are obviously extended patterns, but the code does not know that, and there is no obvious way to filter for that.


LIMITATIONS:

7) There are still the observed defects. I will investigate, but they are outside of the code under review.

  * When you cancel the search string, the column filters are also reset.
  * The search will only test the first file in any vhistory list.
  * When using the search, each row will appear multiple times.

8) I have added the new Javascript code to support the value extender dialog to the file "templates/base.html", and it works! 

I do not know if this the best place. Nor do I know if it will affect other pages that would not otherwise use it.

I do observe that there is currently no way for a page to add local script code to the "<head>" section, which is currently locked inside "base.html". Maybe you can add script code to other sections, but I know that in testing that this new script section would not work when placed anywhere within "templates/configvars.html".

Thanks,
David



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: V3: review request for configure details page
  2014-02-27  3:53 V3: review request for configure details page Reyna, David
@ 2014-02-27 12:05 ` Barros Pena, Belen
  2014-02-27 19:08   ` Reyna, David
  0 siblings, 1 reply; 6+ messages in thread
From: Barros Pena, Belen @ 2014-02-27 12:05 UTC (permalink / raw)
  To: Reyna, David L (Wind River), Damian, Alexandru; +Cc: Paul Eggleton, toaster

Hi David,

Thanks for all the good work. I have commented inline on your email when
required.

There are also a couple of small issues I am still seeing:

* The description filter tooltip says: "Showing only Show only variables
with description". It should say "Showing only variables with
description". If needed, we can change the radio button label to say just
"Variables with description²

* Variables with no value and no file are only there because there is a
description set for them in documentation.conf. They should be excluded
from the view (table, search, sorting and filtering).


Cheers

Belén

On 27/02/2014 03:53, "Reyna, David" <david.reyna@windriver.com> wrote:

>Hi Belen,
>
>I have implemented the proposed design changes to the "Configure" page.
>
>   dreyna/configure-detail-view
>
>I did need to make some small changes to the proposed design, as
>documented below. There are also some outstanding issues, which I also
>list below.
>
>IMPLEMENTATION:
>
>> 1) "Showing history for all variables"
>
>Done.
>
>> 2) "Searching and filtering" (Hidden file problem)
>
>Done. 
>
>I did however realize that "search" applies to all fields, not just the
>file list. This is an issue when you for example search the rpwsa for
>"BBINCLUDED", because suddenly all of the files would disappear because
>none would match. I do not think that this is what the user would expect
>when they are searching for variables and not file names.
>
>Here is therefore how I implemented the file filtering:
>
>  'search' 'file filter' Action
>  -------- ------------- ----------------------
>    -        -           show last file
>  value      -           show last file, plus any file names that match
>search
>    -      value         show only file names that match filter
>  value    value         show any file names that match either string
>
>I think that this meets out needs, and is a "least surprise" for users.

In general, this makes sense to me. My only doubts are about case 2, where
I am not sure it makes sense to show the last file when the search string
is found in any other file for a certain variable.

Also, when I apply a 'set in file' filter, I see the following string on
each cell: FILTER:conf/<filter_applied>

>
>> 3) "Dealing with long values"
>
>Done. To see it work, turn off the "Description" filter and look at the
>variable "BBINCLUDED", which is guaranteed to be bigger than 570
>characters.

This is working in the history modal dialogs, but variable values over 150
characters are not truncated on the table. It's important we do this in
order to keep the table readable.

>
>> 4) "What if a variable value is an empty string?"
>
>Done.
>
>> 5) "What do we do with the 613 B_* variables?"
>
>They are now gone from the view.
>
>> 6) "Linking variables to the Yocto Project reference manual"
>
>Done. 
>
>However, the statement "we do know that all variables with a description
>in documentation.conf have an entry in
>the Yocto Project reference manual" is not universally true. Here are
>some counter examples:
>
>  ALLOW_EMPTY_${PN}-dbg
>  ASSUME_PROVIDED
>  ASSUME_SHLIBS
>  BBFILE_PATTERN_core
>  BBFILE_PRIORITY_core
>  ...
>
>Some of these are obviously extended patterns, but the code does not know
>that, and there is no obvious way to filter for that.

Extended patterns should link to the root variable entry (so
ALLOW_EMPTY_${PN}-dbg links to the ALLOW_EMPTY entry). But you are right:
ASSUME_PROVIDED does not have an entry in the manual. I'll review the
content of documentation.conf to eliminate any mismatches.

>
>
>LIMITATIONS:
>
>7) There are still the observed defects. I will investigate, but they are
>outside of the code under review.
>
>  * When you cancel the search string, the column filters are also reset.
>  * The search will only test the first file in any vhistory list.
>  * When using the search, each row will appear multiple times.
>
>8) I have added the new Javascript code to support the value extender
>dialog to the file "templates/base.html", and it works!

It does work wonderfully :)

> 
>
>I do not know if this the best place. Nor do I know if it will affect
>other pages that would not otherwise use it.
>
>I do observe that there is currently no way for a page to add local
>script code to the "<head>" section, which is currently locked inside
>"base.html". Maybe you can add script code to other sections, but I know
>that in testing that this new script section would not work when placed
>anywhere within "templates/configvars.html".

Any scripting that will be reused by several templates should go on
main.js. Any scripting inside a template should go at the very end of the
markup, but before the closing </body> tag. That way the page loads first
all markup and we show something to users, while the scripts take their
time to load. But I think in general we should aim to have all js neatly
put away in main.js

>
>Thanks,
>David
>



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: V3: review request for configure details page
  2014-02-27 12:05 ` Barros Pena, Belen
@ 2014-02-27 19:08   ` Reyna, David
  2014-02-28  9:46     ` Barros Pena, Belen
  2014-02-28 11:16     ` Paul Eggleton
  0 siblings, 2 replies; 6+ messages in thread
From: Reyna, David @ 2014-02-27 19:08 UTC (permalink / raw)
  To: Barros Pena, Belen, Damian, Alexandru; +Cc: Paul Eggleton, toaster

Hi Belen,

Thanks, I will address the issues (including the left-over debug statement - opps).

> Extended patterns should link to the root variable entry (so
> ALLOW_EMPTY_${PN}-dbg links to the ALLOW_EMPTY entry).

1) Ok, upon review I see that there are indeed two general patterns that I can easily map to their parent definitions.

  "s/_$.*//" and "s/_[a-z].*//"

2) But what about the rules "do_bootimg" .. "do_vmdkimg"? 

There definitions are scattered within the ref-manual, without specific anchors.

Do you see perhaps a good central anchor for these build rules? I did not see any obvious candidates. The extreme solution of adding a table just to map these values to the respective existing anchor points does not seem like a great solution either.

Hmm, adding a new documentation page might be easier, and of more general use as well.

- David



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: V3: review request for configure details page
  2014-02-27 19:08   ` Reyna, David
@ 2014-02-28  9:46     ` Barros Pena, Belen
  2014-02-28 11:16     ` Paul Eggleton
  1 sibling, 0 replies; 6+ messages in thread
From: Barros Pena, Belen @ 2014-02-28  9:46 UTC (permalink / raw)
  To: Reyna, David L (Wind River), Damian, Alexandru; +Cc: Paul Eggleton, toaster



On 27/02/2014 19:08, "Reyna, David" <david.reyna@windriver.com> wrote:

>Hi Belen,
>
>Thanks, I will address the issues (including the left-over debug
>statement - opps).
>
>> Extended patterns should link to the root variable entry (so
>> ALLOW_EMPTY_${PN}-dbg links to the ALLOW_EMPTY entry).
>
>1) Ok, upon review I see that there are indeed two general patterns that
>I can easily map to their parent definitions.
>
>  "s/_$.*//" and "s/_[a-z].*//"
>
>2) But what about the rules "do_bootimg" .. "do_vmdkimg"?
>
>There definitions are scattered within the ref-manual, without specific
>anchors.
>
>Do you see perhaps a good central anchor for these build rules? I did not
>see any obvious candidates. The extreme solution of adding a table just
>to map these values to the respective existing anchor points does not
>seem like a great solution either.
>
>Hmm, adding a new documentation page might be easier, and of more general
>use as well.

I think you are talking about the task descriptions. They are not linked
to the reference manual. They will appear in a help tooltip that shows
when you hover over a task name in the all tasks table and the task table
in the recipe details pages. You can see it working at

http://www.yoctoproject.org/toaster/all-tasks.html

and 

http://www.yoctoproject.org/toaster/recipe-details-busybox.html

Just hover over a task name in any of those tables.

There is a Bugzilla issue to bring those descriptions in that is currently
assigned to Ravi: 

https://bugzilla.yoctoproject.org/show_bug.cgi?id=5748

Cheers

Belén


>
>- David
>



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: V3: review request for configure details page
  2014-02-27 19:08   ` Reyna, David
  2014-02-28  9:46     ` Barros Pena, Belen
@ 2014-02-28 11:16     ` Paul Eggleton
  1 sibling, 0 replies; 6+ messages in thread
From: Paul Eggleton @ 2014-02-28 11:16 UTC (permalink / raw)
  To: Reyna, David; +Cc: toaster

On Thursday 27 February 2014 19:08:12 Reyna, David wrote:
> Thanks, I will address the issues (including the left-over debug statement -
> opps).
> > Extended patterns should link to the root variable entry (so
> > ALLOW_EMPTY_${PN}-dbg links to the ALLOW_EMPTY entry).
> 
> 1) Ok, upon review I see that there are indeed two general patterns that I
> can easily map to their parent definitions.
> 
>   "s/_$.*//" and "s/_[a-z].*//"
> 
> 2) But what about the rules "do_bootimg" .. "do_vmdkimg"?
> 
> There definitions are scattered within the ref-manual, without specific
> anchors.

These should be filtered out of the configuration page; they are unfortunately 
showing up now because we added "doc" varflags for them and in the context of 
your build they are not defined as functions (e.g. because they are defined in a 
class not inherited at the global level), thus they aren't being filtered out 
the normal way task functions are. Unless we split the contents of 
documentation.conf out to the places where the task functions are defined, 
we'll have to just filter these out by name i.e. anything with the prefix do_ 
should be hidden. 

I also have a list of variables for which the link to the manual should not be 
shown:

'ASSUME_PROVIDED ASSUME_SHLIBS BBINCLUDELOGS_LINES BUILD_ARCH BUILD_OS CACHE 
CONF_VERSION CVSDIR DATE GITDIR HOST_ARCH HOST_CC_ARCH HOST_OS HOST_PREFIX 
HOST_VENDOR PACKAGE_ARCHS PACKAGE_INSTALL_ATTEMPTONLY 
PALMTOP_USE_MULTITHREADED_QT PRIORITY SOURCE_MIRROR_FETCH SVNDIR 
SYSVINIT_ENABLED_GETTYS TARGET_PREFIX TARGET_SYS TIME TUNEABI TUNEABI_OVERRIDE 
TUNEABI_WHITELIST TUNECONFLICTS TUNEVALID'.split()

The goal is for documentation.conf and the reference manual to match up so 
that this list is not needed (and I'll work with Scott to ensure that 
happens), but for now we'll have to hardcode it.

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: V3: review request for configure details page
@ 2014-02-27 18:36 Barros Pena, Belen
  0 siblings, 0 replies; 6+ messages in thread
From: Barros Pena, Belen @ 2014-02-27 18:36 UTC (permalink / raw)
  To: Barros Pena, Belen, Reyna, David L (Wind River), Damian, Alexandru
  Cc: Paul Eggleton, toaster

On 27/02/2014 12:05, "Barros Pena, Belen" <belen.barros.pena@intel.com>
wrote:

>However, the statement "we do know that all variables with a description
>in documentation.conf have an entry in
>the Yocto Project reference manual" is not universally true. Here are
>some counter examples:
>
>  ALLOW_EMPTY_${PN}-dbg
>  ASSUME_PROVIDED
>  ASSUME_SHLIBS
>  BBFILE_PATTERN_core
>  BBFILE_PRIORITY_core
>  ...
>
>Some of these are obviously extended patterns, but the code does not know
>that, and there is no obvious way to filter for that.

As agreed, I've reviewed the content of documentation.conf to make sure
includes the same list of variables as the Glossary section of the
reference manual. When a variable was in documentation.conf but not in the
manual, I've commented it out.

You can see the changes here

http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=bbarrosp/f
ront-end-280214&id=33cc676b3593ee030474e9914465d2cd37b4bb33

Belén



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-02-28 11:17 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-02-27  3:53 V3: review request for configure details page Reyna, David
2014-02-27 12:05 ` Barros Pena, Belen
2014-02-27 19:08   ` Reyna, David
2014-02-28  9:46     ` Barros Pena, Belen
2014-02-28 11:16     ` Paul Eggleton
2014-02-27 18:36 Barros Pena, Belen

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.