-
Notifications
You must be signed in to change notification settings - Fork 67
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
Feather files #390
base: dev
Are you sure you want to change the base?
Feather files #390
Conversation
An important design choice is left to be made: |
Tests are failing because of an installation issue with |
Merge dev and do new release
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## dev #390 +/- ##
===========================================
- Coverage 85.33% 71.70% -13.64%
===========================================
Files 13 13
Lines 3158 3220 +62
===========================================
- Hits 2695 2309 -386
- Misses 463 911 +448
... and 2 files with indirect coverage changes Continue to review full report in Codecov by Sentry.
|
Hi @AaronDJohnson, I finally looked into this. As you know, I fully agree with making tempo2/pint optional. That is really great. Are there any negatives that can come from use of feather files? And do we really need to abandon pickles altogether? I would love to abandon pickles, but at the same time some workflows might rely on them. |
Really great work by the way, this is a significant update |
If the feather files don't include a part that is necessary for the models, then we could encounter issues. I have made sure that the tests pass, so hopefully this is sufficient. I have strong opinions about using and passing around pickles. Personally, my reasons against them are two-fold: 1. There are very serious security concerns with using pickles (especially in the way that they have been used in the past with people passing them around), and 2. If the pickle is made using a different version of the software, it may become unusable. On top of this, they should be unnecessary at this point and take up far more space than the feather files. We can leave them in, and I will do so if people want it, but I don't think it's a good idea to do so. |
I fully agree with your sentiment. My one concern is that pickle files have been passed around a lot, and people will want to keep using them. Will those pickles still load if we update Enterprise? The same modules are there, but will we get problems if we remove the to_pickle functions? |
Hi @AaronDJohnson , this one also supersedes #340 , right? Shall we close that? |
@vhaasteren, yes it does supersede that one. We can close it as soon as this one is merged. There are a couple of things to finish before merging this. At the moment, the feather files fail when DMX isn't present. An update has been made to Discovery to fix this issue, and when I have a moment, I will update this PR with that change. After that change has been made, I'll check the pickle files too and make sure that legacy pickle files will load with the modifications. |
Adds the ability to store Pulsar objects and noise dictionaries into FeatherPulsar objects which can be saved and read using pyarrow feather types.
Additionally, this
to_pickle
fromBasePulsar
: pickles should be removed and discouraged for many reasonsto_feather
toBasePulsar
FeatherPulsar
type which holds data and allows for reading/writing Pulsar objectsto_pickle
test and addsto_feather
test