Skip to content

Add Arrow buffer panels - #31

Merged
raulcd merged 10 commits into
raulcd:mainfrom
AlenkaF:buffers-tab
May 21, 2026
Merged

Add Arrow buffer panels#31
raulcd merged 10 commits into
raulcd:mainfrom
AlenkaF:buffers-tab

Conversation

@AlenkaF

@AlenkaF AlenkaF commented May 19, 2026

Copy link
Copy Markdown
Collaborator

This PR adds a tab on the IPC interactive view where the buffers are visualised for the first 2 record batches and first 10 rows (slice of the buffer). The layout has been inspired by the diagrams in the Arrow Format Intro docs and it uses Python memoryview to get the content of each buffer. The validity buffer is manipulated to be in logical order matching the position in the array.

Screenshot 2026-05-19 at 14 30 47

Note, this has been done by Claude and I delegated tasks and checked the changes. I also suggested the use of nanoarrow to get the buffers content but unfortunately it doesn't support all the types. Might be good idea in the future.

@AlenkaF
AlenkaF marked this pull request as draft May 19, 2026 12:53
@AlenkaF

AlenkaF commented May 20, 2026

Copy link
Copy Markdown
Collaborator Author

Found some issues with nested types and some things that could be improved in general. Trying to guide Claude, hopefully it doesn't get confused =) Will mark the PR ready for review once I am done.

@raulcd raulcd left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

Thanks @AlenkaF that looks cool. I saw that the string view also shows the views buffer without showing prefix, variadic buffer index, size, offset. Could be interesting to show that if possible too (or as an improvement for the future).

@raulcd

raulcd commented May 20, 2026

Copy link
Copy Markdown
Owner

To be fair, as an initial concept and as a PoC looks really cool! Thanks!

@AlenkaF

AlenkaF commented May 20, 2026

Copy link
Copy Markdown
Collaborator Author

Exactly! I have made some updates, the more complex types should be ok now and I have created an example table to mimic the Introduction diagrams. Will add a print screen after lunch, pushing linter fixes now.

@AlenkaF

AlenkaF commented May 20, 2026

Copy link
Copy Markdown
Collaborator Author
Screenshot 2026-05-20 at 13 13 05 Screenshot 2026-05-20 at 13 13 15 Screenshot 2026-05-20 at 13 13 39 Screenshot 2026-05-20 at 13 13 55

@AlenkaF

AlenkaF commented May 20, 2026

Copy link
Copy Markdown
Collaborator Author

@raulcd see current visualization above. I still plan to add support for other types that are currently missing. But the structure and current state should be good for a review.

@AlenkaF

AlenkaF commented May 21, 2026

Copy link
Copy Markdown
Collaborator Author

Added support for missing types, see:

Screenshot 2026-05-21 at 11 46 08 Screenshot 2026-05-21 at 11 45 40

@AlenkaF
AlenkaF marked this pull request as ready for review May 21, 2026 09:48

@raulcd raulcd left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

This is great @AlenkaF !
The only thing I find we could improve is for the views buffer to show the length when the string is less than 12, currently it only shows the value but not the size, even though the size is part of the views buffer:

Image

We can follow up this as a future improvement! What do you think?

@AlenkaF

AlenkaF commented May 21, 2026

Copy link
Copy Markdown
Collaborator Author

Good catch! I would like to correct it now. Am already working on it ;)

@AlenkaF

AlenkaF commented May 21, 2026

Copy link
Copy Markdown
Collaborator Author

Done:

Screenshot 2026-05-21 at 12 24 28

I have also updated the example for list view, so it is easier to compare to the diagrams from our docs:

Screenshot 2026-05-21 at 12 24 44

I might post the example code somewhere so it is easy to duplicate.

@raulcd raulcd left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

I am merging this and probably kicking off a new 0.3.1 release afterwards so we have this released for our following talk

@raulcd
raulcd merged commit 5eaaf83 into raulcd:main May 21, 2026
2 checks passed
@AlenkaF
AlenkaF deleted the buffers-tab branch May 21, 2026 10:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants