Skip to content

Conversation

jkanche
Copy link
Member

@jkanche jkanche commented Aug 27, 2025

No description provided.

@jkanche jkanche self-assigned this Aug 27, 2025
@jkanche jkanche changed the title Switch to types lists from biocutils Switch to typed lists from biocutils Aug 27, 2025
Copy link

codecov bot commented Aug 27, 2025

Codecov Report

❌ Patch coverage is 76.89243% with 58 lines in your changes missing coverage. Please review.
✅ Project coverage is 72.20%. Comparing base (bb2f8aa) to head (423ea91).
⚠️ Report is 1 commits behind head on master.

Files with missing lines Patch % Lines
src/compressed_lists/split_generic.py 59.52% 10 Missing and 7 partials ⚠️
src/compressed_lists/biocframe_list.py 70.58% 9 Missing and 1 partial ⚠️
src/compressed_lists/numpy_list.py 68.75% 9 Missing and 1 partial ⚠️
src/compressed_lists/bool_list.py 70.83% 6 Missing and 1 partial ⚠️
src/compressed_lists/float_list.py 83.33% 2 Missing and 2 partials ⚠️
src/compressed_lists/integer_list.py 83.33% 3 Missing and 1 partial ⚠️
src/compressed_lists/string_list.py 84.61% 3 Missing and 1 partial ⚠️
src/compressed_lists/base.py 93.10% 2 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master       #5      +/-   ##
==========================================
- Coverage   73.43%   72.20%   -1.24%     
==========================================
  Files           5       10       +5     
  Lines         320      500     +180     
  Branches       30       53      +23     
==========================================
+ Hits          235      361     +126     
- Misses         80      120      +40     
- Partials        5       19      +14     

☔ 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.

@LTLA
Copy link
Member

LTLA commented Aug 27, 2025

Random thoughts:

Also worth having a CompressedNumpyList so that NumPy columns of a CompressedDataFrameList can be easily extracted while preserving its type.

Make sure that the CompressedList base class is non-abstract so that any underlying concatenated store without its own CompressedList subclass won't just crash when you try to make a CompressedList out of it.

Also make a splitAsCompressedList() generic so that third parties can easily extend it with their own classes. For example, CompressedDataFrameList should call splitAsCompressedList() when extracting a column, which ensures that it will dispatch to the appropriate method.

@jkanche
Copy link
Member Author

jkanche commented Aug 27, 2025

awesome, I already have the compressed numpy list. it'll probably need some work as I work on the other two suggestions.

@jkanche
Copy link
Member Author

jkanche commented Sep 17, 2025

Couple of things

  • from_list needs to be implemented in individual classes
  • implement split generic
  • biocframe compressed list

@jkanche
Copy link
Member Author

jkanche commented Sep 18, 2025

running into limitations of python's singledispatch. It can only dispatch on a single type, not on complex types like Union or parameterized generics like List[List[int]]. Need to rethink how this can be implemented

@jkanche jkanche merged commit b5dc347 into master Oct 9, 2025
16 checks passed
@jkanche jkanche deleted the use-biocutils branch October 9, 2025 04:24
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