Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Zed Table #2626

Merged
merged 66 commits into from
Jan 26, 2023
Merged

Zed Table #2626

merged 66 commits into from
Jan 26, 2023

Conversation

jameskerr
Copy link
Member

@jameskerr jameskerr commented Dec 22, 2022

  • The height of the table needs to account for the fixed header
  • The header must scroll left along with the table
  • Resize columns
  • Autosize columns
  • Expand complex values
  • Use robust cell and value ids
  • Configure preview limits in the
  • Auto detect the size of the cells
  • Multi-shape design?
  • Infinite Scroll
  • Header groups for nested records
  • Figure out an id scheme for nexted columns
  • Keep track of which records you want to expand headers for
  • Make sure the styles are the same when you are measuring (font-family)
  • Store the columns widths per shape, since zed identities are stable
  • Re-style the header
  • Add the right click menus
  • Column Visibility
  • Fix button styles and border colors
  • Fix style around zeek histogram
  • Add custom styling for cells just like in the old days
  • The sort indicators on the headers
  • Sorting nested headers, get the field name right
  • Show non-record types
  • Multiple Shapes View
  • Resize header performance on many columns
  • Style the header properly during the autosize, right now headers are cut off
  • Performance on Giant Tables
  • When new results come in, it doesn't render
  • Hide Column in Column Menu
  • Column Chooser Pane
  • Fix Exporting results when some columns are not visible
  • Clicking a row should show that record in the detail pane
  • Highlight a row upon clicking it in the table view.
  • Right click to open detail window needs to work
  • Remove port decorators
  • Scroll position
  • Scroll to item
  • Scroll to index
  • Render a message at the end (end of results)
  • Render an empty message (no results)
  • Sync the selection with the detail pane
  • Show headers / hide headers
  • Have a message if the headers are hidden
  • Fix expand all and collapse all buttons.

Not going to make it in this PR

  • Column Ordering
  • Cell selection to match google docs
  • Toolbar button to expand all headers and collapse all headers
  • Right click on selected cells menu

Fixes #1881
Fixes #2539
Fixes #2453
Closes #559
Fixes #2537
Fixes #2556
Closes #1791
Closes #1499

@philrz
Copy link
Contributor

philrz commented Dec 29, 2022

Testing this branch at commit 4014451.

I know we talked about this one on Zoom, but just to put it on the official wish list: Would be great to get back the "Query Pool" label and gray background for this magnifying glass to help draw the user's attention to it.

Used to be:

image

Currently:

image

@philrz
Copy link
Contributor

philrz commented Jan 25, 2023

Testing this branch at commit 164c847.

I've noticed that if I click Expand Headers and then re-execute the existing Zed query, the headers go back to their original state. It seems the header settings would be good to persist if we can.

Repro.mp4

@philrz
Copy link
Contributor

philrz commented Jan 25, 2023

Testing this branch at commit 3fca790.

I went back to do some re-test with the deeply-nested JSON test data from the Zed repo prs.json shown above in #2626 (comment). The good news is that there's no longer a stack dump. However, as shown in the attached video, if I click the chevron from the Table view as if I want to expand it, nothing is rendered. Also, I happened to notice that collapsing and expanding the Detail panel made the chevron disappear.

Repro.mp4

Copy link
Contributor

@philrz philrz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

While I've spotted a few loose ends in comments here and discussed others directly with @jameskerr out-of-band, overall my tests on this branch have been solid and I'm in favor of getting it merged soon so we can give it some time with the Zui Insiders users before we push to finalize the Zui v1.0 release. Therefore I'm clicking Approve on this one so @jameskerr can merge when ready, and once it goes in I'll do final verification of what's fixed and open new issues for any remaining loose ends.

@philrz
Copy link
Contributor

philrz commented Jan 25, 2023

Testing this branch at commit 7723a2d.

Using this test data that's a mix of string and record:

$ cat data.zson 
"Hello world"
{a: 1}

Dragging it into the app and clicking Query Pool triggers the following stack dump:

image

@philrz
Copy link
Contributor

philrz commented Jan 25, 2023

Testing this branch at commit 7723a2d.

I was auditing some open issues to see if any had been magically fixed by this PR, and when checking on #2590 I found something unexpected: As shown in the attached video, the Expand/Collapse buttons are disabled on the Inspector view. This does not seem to be case in the current tip of main.

Repro.mp4

@philrz
Copy link
Contributor

philrz commented Jan 25, 2023

Testing this branch at commit 7723a2d.

As shown in the attached video, after dragging in the attached test data one-weird.zeek.gz, when I expand the single-field nested "id" record, the value is not shown.

Repro.mp4

@philrz
Copy link
Contributor

philrz commented Jan 26, 2023

Testing this branch at commit 7bd659b.

As shown in the attached video, after loading a pcap and clicking on a conn record, the Wireshark button no longer becomes active and clickable. @jameskerr has confirmed that he's addressing this as part of another issue he's fixing, so I'm just putting it down here as a note-to-self to verify when it's fixed.

Repro.mp4

@philrz
Copy link
Contributor

philrz commented Jan 26, 2023

Of the items in the initial PR description notes that were left unchecked or described as "not going to make it in this PR", see the following open issues to track their ongoing progress.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment