Project

General

Profile

Actions

Feature #19690

closed

Project view has more options for columns

Added by Peter Amstutz about 2 years ago. Updated about 2 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
Workbench2
Target version:
Story points:
-
Release relationship:
Auto

Description

Customer request to be able to have more options for columns that can show up in the project list (might be a good idea for search too).

TODO:

  • Come up with a list of columns to add.
  • Review which ones should be enabled or disabled by default.

Sarah will go through API docs for groups, collections, container_requests and workflows and list all the fields that could possibly be interesting.

Also consider how to show user properties -- could have an additional element that lets you put in a property name or select one from the vocabulary and adds that as a column as well.


Subtasks 1 (0 open1 closed)

Task #19729: Review 19690-project-column-optionsResolvedPeter Amstutz12/01/2022Actions

Related issues 2 (2 open0 closed)

Related to Arvados - Feature #17303: List properties and allow filtering by them in the project listingsNewActions
Related to Arvados - Bug #19274: Advanced search should have full set of selectable columnsNewActions
Actions #1

Updated by Peter Amstutz about 2 years ago

  • Description updated (diff)
Actions #3

Updated by Peter Amstutz about 2 years ago

  • Description updated (diff)
Actions #4

Updated by Sarah Zaranek about 2 years ago

Working on this today.

Actions #5

Updated by Sarah Zaranek about 2 years ago

Currently we have:
Name
Status
Type
Owner
File Size
Last Modified
Actions Icon

Note: Owner is optional

Suggestions -
Make status an icon in relevant colors to reduce space (and make it look a little more modern
Have to deal with the fact that owner + owner’s uuid is quite long - either put UUID under the owner name, do a cut off , or just show name and a hyperlink to find the UUID - might be good to figure out who is using the UUID from this panel
Type listed doesn’t match the type for filtering, this is a bit confusing

All of these contain the Common Resource Fields, so first we should include those items that make sense from this list

UUID
Consider placing this either as own column or under the name of the object

Created at:
Consider putting this a column, perhaps just use Created (at is assumed) or come up with a nice single word phrase

The following are not in the Common Resource Fields but might be useful to add (will indicate with object has these properties):

Properties/Metadata Data - might be useful to display, doesn’t make sense in a toggle but we discussed a possible add on filter with tags as a check box on the lhs panel
Found in Groups, Collections, Container Requests

Description - cut off the description but perhaps show part of it - optional column in the middle panel
Found in Groups, Collections, Container Requests, Workflows
trash_at/delete_at : could be an optional panel, again perhaps call it something with the “at” tag, it might be possible to put them in same panel with Trash: Time and Delete: Time to save space
Found in Groups, Collections

Portable_data_hash : Could include as an optional column, or have an ID column that contains both uuid and PDH to save space and not have a empty column for things w/o PDHs
Found in Collections

Version : Could include as an optional column and would like to the list of versions for this object
Found in Collections
File Count: Could include as an optional column and/or include with the size column since both are only found in Collections
Found in Collections

State for Container Requests - I am assuming is used for Status above

Requesting_container_uuid
I am listing this here - but personal not sure this is of use since it doesn’t even have a page in WB2, so it probably is only useful for deep-down debugging
I think more of use would be Parent Process UUID or such

Parent Container Request UUID (see above, probably could call it Parent)

Container_uuid: Could include here as an optional, however it gets into the confusion over the container request uuid and then the container uuid - but perhaps if we name them properly or do it as optional this might be useful. Again it is only useful for deep-down debugging since it doesn’t have a page on WB2
Only for Container Requests

Output_uuid and log_uuid might be useful for easy navigation – as a optional column
Only for Container Requests

Everything else I see for Container Requests seems better served by placing in the more information/advanced information panel instead of in a column view due to the length of the information or really specific nature that seems like you would want to see it in context with the Container Request and wouldn’t be useful from a higher level view. Perhaps we could include the link to the docker container but that is about it.

I have made a document that lists all the properties of the objects here: https://docs.google.com/document/d/1gli25J534olxMyBPGEa-KcsHSrFGtUYowP0U88LjbDk/edit?usp=sharing

Actions #6

Updated by Peter Amstutz about 2 years ago

  • Related to Feature #17303: List properties and allow filtering by them in the project listings added
Actions #7

Updated by Peter Amstutz about 2 years ago

  • Related to Bug #19274: Advanced search should have full set of selectable columns added
Actions #8

Updated by Peter Amstutz about 2 years ago

  • Assigned To set to Lisa Knox
Actions #9

Updated by Peter Amstutz about 2 years ago

  • Status changed from New to In Progress
Actions #10

Updated by Peter Amstutz about 2 years ago

  • Target version changed from 2022-11-23 sprint to 2022-12-07 Sprint
Actions #11

Updated by Peter Amstutz about 2 years ago

19690-project-column-options @ arvados-workbench2|63b6ab236bbe65ffd9f57c64172a8950d4dc9826

First off, this looks great. None of these review comments are criticism, these are mostly details that were not fully worked out in the original requirements.

  • public/config.json shouldn't be checked in.
  • The "State" column actually covers the same information as the "Status" column, so that should be removed (sorry about that)
  • "Output UUID" and "Log UUID" should be clickable hyperlinks (but also keep the "copy to clipboard" button)
  • Sarah overlooked the "modified_by_user_uuid" field but we definitely should include that one
Actions #12

Updated by Peter Amstutz about 2 years ago

  • Target version changed from 2022-12-07 Sprint to 2022-12-21 Sprint
Actions #13

Updated by Peter Amstutz about 2 years ago

19690-project-column-options @ arvados-workbench2|850ea77da5cce0b5c5a9308e3253a7118839863f

I don't think the "description" column shows enough text to be useful, let's get rid of it.

ResourceModifiedByUserUuid should render the name of the user. I think you want to use UserResourceFullName to render it.

This isn't your code, but I noticed it now and it should be fixed -- I think the src/views-components/data-explorer/renderers.tsx/renderFullName method should be using src/models/user.ts/getUserDisplayName method for consistency. You'll have to fiddle with the type annotations a bit to propagate the 'email' and 'username' fields.

Swap the positions of "version" and "portable data hash" in the column list.

Actions #14

Updated by Peter Amstutz about 2 years ago

Apologize, I have one more column I'd like to add

"Runtime"

You can find an example of this column used in another data table here:

workbench2/src/views/all-processes-panel:102

    {
        name: AllProcessesPanelColumnNames.RUNTIME,
        selected: true,
        configurable: true,
        filters: createTree(),
        render: uuid => <ContainerRunTime uuid={uuid} />
    }

This should be easy to drop in, with the one note that you will probably need to tweak the ContainerRunTime component to handle the case where the object lacks startedAt / finishedAt fields used to calculate the runtime, in which case it should render - like we did for the other columns.

Actions #15

Updated by Peter Amstutz about 2 years ago

From chat:

ResourceModifiedByUserUuid displaying user name is more complicated than I assumed, and the request to unify getUserDisplayName was also premised on having all the information on hand. Table these for now, I've moved it to #19871

Actions #16

Updated by Peter Amstutz about 2 years ago

19690-project-column-options @ arvados-workbench2|961b23c084e7f6fd6c0595b33b7988624a43f625

This LGTM, please merge.

Actions #17

Updated by Peter Amstutz about 2 years ago

  • Release set to 47
Actions #18

Updated by Anonymous about 2 years ago

  • Status changed from In Progress to Resolved
Actions

Also available in: Atom PDF