Skip to content

Conversation

@juliohm
Copy link
Member

@juliohm juliohm commented Jul 17, 2025

This PR refactors the internal TableSelection type to avoid runtime checks in the wrong places. This type is intended for developers of TableTransforms.jl so the only check that should occur about the columns names is in the constructor. All further calls to Tables.getcolumn should assume the existence of columns for performance.

I also refactored the field type to a static tuple to improve the performance in downstream algorithm given the number of columns at compile time. It is also more consistent with other table types that return tuples in Tables.columnnames.

@eliascarv is there any particular reason we used Vector{Symbol} for the names or are we ok replacing it with tuple?

@juliohm juliohm requested a review from eliascarv July 17, 2025 13:29
@eliascarv
Copy link
Member

No particular reason. When the tests pass I will approve.

@codecov-commenter
Copy link

codecov-commenter commented Jul 17, 2025

Codecov Report

Attention: Patch coverage is 87.50000% with 3 lines in your changes missing coverage. Please review.

Project coverage is 98.30%. Comparing base (2ed7f99) to head (b1db9c0).

Files with missing lines Patch % Lines
src/tableselection.jl 81.25% 3 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #299      +/-   ##
==========================================
+ Coverage   98.24%   98.30%   +0.06%     
==========================================
  Files          49       49              
  Lines        1424     1416       -8     
==========================================
- Hits         1399     1392       -7     
+ Misses         25       24       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@juliohm
Copy link
Member Author

juliohm commented Jul 17, 2025

I will do an extra refactor to remove the oinds field. It is not needed either.

@juliohm juliohm merged commit 2fc501b into master Jul 17, 2025
8 checks passed
@juliohm juliohm deleted the refactor-select branch July 17, 2025 14:12
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.

4 participants