[Toaster] V2: [review-request] 6682 - Implement changes needed in the "All Projects" page

Reyna, David david.reyna at windriver.com
Tue Feb 24 00:48:45 PST 2015


Hi Belén,

Have you had a chance to look at this?

I think that of the two remaining issues, (a) the searching cannot be done at this time, (b) the page has done all it can for the anchors and the rest is up to the receiving Angular implementation.

I would therefore recommend that you accept the rest of this work so that we can close out this page.

Thanks,
David

      _____________________________________________
      From: Reyna, David
      Sent: Wednesday, February 18, 2015 10:33 PM
      To: belen.barros.pena at intel.com; Damian, Alexandru (alexandru.damian at intel.com)
      Cc: 'toaster at yoctoproject.org'
      Subject: V2: [Toaster] [review-request] 6682 - Implement changes needed in the "All Projects" page


      Hi Belen,

      I have implemented your changes (where possible, see the two exceptions below).

         dreyna/all_projects_6682

      [Here is what does not work]

        1) "The machine and target columns are not searchable (they should be)"

      As I mentioned in an earlier email,  this will not work for these synthetic values, for the same reason that the sort mechanism will not allow them.

        Exception Type:         FieldError
        Exception Value:

        Cannot resolve keyword 'get_current_machine_name' into field. Choices are: bitbake_version, build, buildrequest, created, id, layer_version, name, projectlayer, projecttarget, projectvariable, release, short_description, updated, user_id

        2) "link to #project-details", link to "#machine-distro"

      I have implemented this, but the Angular rendering apparently does not make the jump to the anchors. If I manually select the URL (after it is rendered by Angular), it does jump. Here is the use case.

        * Hover over any machine name in the All Project page. Observe that the URL is of the form:

           "http://127.0.0.1:8000/toastergui/project/3/#machine-distro"

        * Click on that link and observe that the browser does go to that page with the URL:

           "http://127.0.0.1:8000/toastergui/project/3/#/machine-distro"

      Notice the inserted "/" after the "#", but that is supposed to still work with HTML.

        * Observe that the page is at the top, not at the anchor.

        * Remove the "/" after the "#" and go. Observe that the page now jumps to the anchor. If you refresh the page with that URL, it jumps back to the top. For these reasons I think there is an issue with Angular.


      [These items are now working]

         * Something funky going on in the Edit columns menu. If you deselect last
      build, last errors, last image files, last outcome, last target and last
      warnings the table heading for last errors and last warnings are hidden,
      but not the data cells.

        *  The number of builds should be a link to the project builds page
      (except with the number of builds is 0)

        * The last build date should be a link to the build dashboard page

        * The default sorting for the last build column should be in inverse
      chronological order (most recent build on top). If a project has no
      builds, they should always show at the bottom, but this might not be
      possible (I am not sure)

        * When you search and the search returns just one item, the heading should
      say "1 project found". Right now it says "1 projects found"

        * In the all builds table, the project column needs to move next to the
      machine column (see page 26 of the design document). It doesn't matter if
      the project column is not sortable, but it should be searchable. Also, the
      project filter should go away: the way it's implemented will break down
      the moment you have more than 5 or 6 projects

      - David

            _____________________________________________
            From: Reyna, David
            Sent: Wednesday, February 18, 2015 12:36 AM
            To: belen.barros.pena at intel.com<mailto:belen.barros.pena at intel.com>; Damian, Alexandru (alexandru.damian at intel.com<mailto:alexandru.damian at intel.com>)
            Cc: toaster at yoctoproject.org<mailto:toaster at yoctoproject.org>
            Subject: [Toaster] [review-request] 6682 - Implement changes needed in the "All Projects" page


            Hi Belen and Alex,

            1) I have implement all but the sorting (see below) changes for the "All Projects" page.

                dreyna/all_projects_6682

            2) I could not get the sorting to work with the synthetic "get_last_*" values. It appears that these "def" values are not accepted as sortable columns. Unless Alex has some magic I think we should skip this enhancement.

            * Here is the error:
              "Invalid ordering model:<class 'orm.models.Project'>(u'get_last_target', ['bitbake_version', 'build', 'buildrequest', 'created', u'id', 'layer_version', 'name', 'projectlayer', 'projecttarget', 'projectvariable', 'release', 'short_description', 'updated', 'user_id'])"

            * Here is the code snippet I had tested:

            Models.py:: Project()
            -   search_allowed_fields = ['name', 'short_description', 'release__name', 'release__branch_name']
            +   search_allowed_fields = ['name', 'short_description', 'release__name', 'release__branch_name', 'get_last_target']

            Views.py:: projects()
                                {'name': 'Last target', 'clclass': 'ltarget',
                                'qhelp': "The last project build target(s): one or more recipes or image recipes",
            +                    'orderfield': _get_toggle_order(request, "get_last_target"),
            +                    'ordericon':_get_toggle_order_icon(request, "get_last_target"),
            +                    'orderkey' : 'get_last_target',
                                },

            3) Here is what is working

              [x] In the Edit columns menu, the "Last image files" checkbox only shows /hide the table heading, and not the cells in the table body
              [x] The 'last updated' column change the column heading  to "last build' and move the column to right after the 'number of builds' one
              [x] The release in the table should link to the 'Project details' section of the corresponding project page
              [x] The data for the following columns is not being displayed: Machine, Number of builds, Last outcome, Last target, Last errors, Last warnings, Last image files
              [x] The heading should show the number of results returned when you search
              [x] The 'no results' page is not in place

            I also ported the fancy column entry formatting from the "builds" page.

            - David


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/toaster/attachments/20150224/a6cfbe3c/attachment.html>


More information about the toaster mailing list