-
Notifications
You must be signed in to change notification settings - Fork 8
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
Numpy 2.x+ compatibility #80
Comments
Hi Gregor and Lukas, FlowIO is an essential dependency of FlowKit and as such is actively maintained. I've been tempted to add NumPy as a dependency to FlowIO but felt it was best to leave it with zero dependencies for situations like this. It's purpose is to read and write FCS files and that's what it does. If you all do choose to use FlowIO, I'd point out one caveat. Since it reads the event data exactly as it is stored in the FCS file, any gain defined by a channel (in the metadata) is not applied. This pre-processing is rather straight-forward to implement and an example of doing so can be found in the FlowKit Sample class constructor. Or, you could just use FlowKit to get this functionality of the Sample class, the transforms implemented in FlowUtils and other features. Hope this helps, |
@mbuttner what do you think? @whitews if Maren thinks that this is a good idea, would you be willing to make the changes in Pytometry to onboard FlowIO? You'd probably be best suited for this task. I can't comment on the whole preprocessing topic that you outlined and consider y'all the actual experts for that. |
If Maren is onboard, I'll give it a shot. |
@Zethson Lukas, thank you for bringing this up. I agree that onboarding to FlowIO for the read/write functions of FCS files is the most reasonable way forward. @whitews Scott, as for your point whether to use FlowIO or Flowkit: So I'm absolutely onboard with this change! Please let me know if I can support you here further. |
Hi @whitews |
Note that |
Apologies, I've been busy on other projects and my flow library development time has been limited. After some more thought, I think the best solution is to perform the gain pre-processing in FlowIO so that any user of the library doesn't have to perform this step (or even know to do it). This means adding NumPy as a FlowIO dependency. The use of NumPy would be quite trivial and should support either version 1 or 2. Would this work for everyone? |
Totally fine with me. Numpy is universal enough in scientific computing that you can add it as a dependency for parsers. |
Sounds great to me, too! |
@whitews please let us know if you need any help. |
Description of feature
Hi,
the CI and therefore users currently install numpy 1.26 because https://github.com/eyurtsev/fcsparser is not numpy 2.0.0 compatible and therefore readfcs isn't either.
What is the longterm plan here? https://github.com/eyurtsev/fcsparser is not maintained anymore according to the numpy 2.0.0 issue
The text was updated successfully, but these errors were encountered: