generated from ni/github-repo-template
-
Notifications
You must be signed in to change notification settings - Fork 3
Fix unpickling issues with Waveform and Signal #237
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
Merged
mikeprosserni
merged 3 commits into
main
from
users/mprosser/bug-234-on-key-change-pickling
Dec 15, 2025
Merged
Fix unpickling issues with Waveform and Signal #237
mikeprosserni
merged 3 commits into
main
from
users/mprosser/bug-234-on-key-change-pickling
Dec 15, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…s causing the new tests to fail
Contributor
…4-on-key-change-pickling
bkeryan
approved these changes
Dec 15, 2025
Collaborator
bkeryan
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I merged the tests PR, so you will have to resolve merge conflicts. I don't think it's critical to cherry-pick the new tests to 1.0.1.
mikeprosserni
added a commit
that referenced
this pull request
Dec 15, 2025
* add versioned unpickling tests for waveform and signal, and fix issues causing the new tests to fail * skip unpickle tests in oldest_deps test run --------- Co-authored-by: Mike Prosser <[email protected]>
1 task
mikeprosserni
added a commit
that referenced
this pull request
Dec 16, 2025
…als (#222) (#233) * Reverse Indices for Digital Waveform Signals (#222) * add _raw_index * line_index and line_names * more tests * fix new test * data_index and documentation * fix doc types * documentation improvements * documentation improvements * documentation improvements * clean up NI_LineNames in tests * remove DigitalWaveformFailure.data_index * test___signal_with_line_names___change_line_names_property___signal_returns_new_line_name and _DigitalWaveformExtendedProperties * signal_column_index * line lengths * italics for 'See "Signal index vs. signal column index"' notes * add bitorder to from_port, and default to the industry standard 'big' * rename to column_index * bitorder != sys.byteorder * add on_key_changed to ExtendedPropertyDictionary * change tests to big-endian * make on_key_changed private * cleanup * from typing_extensions import TypeAlias, to fix python 3.9 * fix pickling and copying issues with callbacks * change on_key_changed to a list of weak methods, so ExtendedPropertyDictionaries can be shared by waveforms --------- Co-authored-by: Mike Prosser <[email protected]> * Fix unpickling issues with Waveform and Signal (#237) * add versioned unpickling tests for waveform and signal, and fix issues causing the new tests to fail * skip unpickle tests in oldest_deps test run --------- Co-authored-by: Mike Prosser <[email protected]> --------- Co-authored-by: Mike Prosser <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What does this Pull Request accomplish?
This PR makes unpickling
DigitalWaveformSignalandDigitalWaveformmore robust, so that old versions can be unpickled without error. Specifically:DigitalWaveformSignal.column_indexdid not exist. If not provided, this defaults tosignal_index.ExtendedPropertyDictionary._on_key_changeddid not exist.DigitalWaveformnow creates this before adding to it, if necessary.Why should this Pull Request be merged?
Fixes bug #234
What testing has been done?
The new
test___pickled_value___unpickle___is_compatibletests pass