@sbillinge this method ensures that an object is serialized even if it contains problematic floating-point values by falling back to a simpler serialization protocol if the default one fails.
In Python 3, the pickle module uses more recent protocols, and the SystemError related to frexp() is less likely to occur. So I think the fallback to ASCII protocol (protocol 0) is not necessary any more.
@sbillinge This is along with the utf-8 string issue when dropping py2 support. As I mentioned before this is for serialization protocols. Even if the related error (SystemError related to frexp() as I saw people mentioned) is less likely to occur in py3, it's still no harm to just follow a simpler serialization protocol and have files in the basic ASCII encoding. Also another reason is this function is still being used by other modules so some changes and tests are needed before removing this function.
If we are shooting for cleaning things up as much as possible, then we still want to keep this issue.
Activity
Tieqiong commented on Aug 26, 2024
@sbillinge this method ensures that an object is serialized even if it contains problematic floating-point values by falling back to a simpler serialization protocol if the default one fails.
In Python 3, the pickle module uses more recent protocols, and the SystemError related to frexp() is less likely to occur. So I think the fallback to ASCII protocol (protocol 0) is not necessary any more.
Yes test would be the right thing to do
bobleesj commented on Sep 24, 2024
@Tieqiong will take care of it for v3.1.0
bobleesj commented on Oct 2, 2024
@Tieqiong could you please share an update on this issue?
sbillinge commented on Dec 15, 2024
@Tieqiong can we close this?
Tieqiong commented on Dec 16, 2024
Yes let's close this one! @sbillinge @bobleesj thanks
sbillinge commented on Dec 16, 2024
@Tieqiong we need a report on what you did and why it is ok to close it.
Tieqiong commented on Dec 16, 2024
@sbillinge This is along with the utf-8 string issue when dropping py2 support. As I mentioned before this is for serialization protocols. Even if the related error (SystemError related to frexp() as I saw people mentioned) is less likely to occur in py3, it's still no harm to just follow a simpler serialization protocol and have files in the basic ASCII encoding. Also another reason is this function is still being used by other modules so some changes and tests are needed before removing this function.
If we are shooting for cleaning things up as much as possible, then we still want to keep this issue.
sbillinge commented on Dec 16, 2024
yes, we want to keep this open then. But I will move it to a later milestone. No hurry on this.