-
Notifications
You must be signed in to change notification settings - Fork 533
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
FIX: Correctly pickle OuputMulti{Object,Path}
traits
#2983
FIX: Correctly pickle OuputMulti{Object,Path}
traits
#2983
Conversation
It seems that nipy#2944 has uncovered a rats-nest hidden in the engine. In resolving that issue, I found out that a great deal of boilerplate was set in place when loading/saving results to deal with ``OutputMulti{Object,Path}`` traits. The reason being that these traits flatten single-element-list values. This PR fixes the pickling behavior of traited specs containing these types of traits. Additionally, this PR also avoids the ``modify_paths`` function that was causing problems originally in nipy#2944. Therefore, this PR effectively make results files static, meaning: caching if the ``base_dir`` of the workflow is changed will not work anymore. I plan to re-insert this feature (results file mobility) with nipy#2971. This PR is just to split that one in more digestible bits. All the boilerplate mentioned above has been cleaned up.
And most of the green are doctests 🥇 |
|
Co-Authored-By: Chris Markiewicz <effigies@gmail.com>
Co-Authored-By: Chris Markiewicz <effigies@gmail.com>
All green (c8a3797) |
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.
LGTM
Codecov Report
@@ Coverage Diff @@
## master #2983 +/- ##
==========================================
- Coverage 67.65% 64.26% -3.39%
==========================================
Files 344 342 -2
Lines 43835 43747 -88
Branches 5486 5475 -11
==========================================
- Hits 29657 28115 -1542
- Misses 13466 14537 +1071
- Partials 712 1095 +383
Continue to review full report at Codecov.
|
4 similar comments
Codecov Report
@@ Coverage Diff @@
## master #2983 +/- ##
==========================================
- Coverage 67.65% 64.26% -3.39%
==========================================
Files 344 342 -2
Lines 43835 43747 -88
Branches 5486 5475 -11
==========================================
- Hits 29657 28115 -1542
- Misses 13466 14537 +1071
- Partials 712 1095 +383
Continue to review full report at Codecov.
|
Codecov Report
@@ Coverage Diff @@
## master #2983 +/- ##
==========================================
- Coverage 67.65% 64.26% -3.39%
==========================================
Files 344 342 -2
Lines 43835 43747 -88
Branches 5486 5475 -11
==========================================
- Hits 29657 28115 -1542
- Misses 13466 14537 +1071
- Partials 712 1095 +383
Continue to review full report at Codecov.
|
Codecov Report
@@ Coverage Diff @@
## master #2983 +/- ##
==========================================
- Coverage 67.65% 64.26% -3.39%
==========================================
Files 344 342 -2
Lines 43835 43747 -88
Branches 5486 5475 -11
==========================================
- Hits 29657 28115 -1542
- Misses 13466 14537 +1071
- Partials 712 1095 +383
Continue to review full report at Codecov.
|
Codecov Report
@@ Coverage Diff @@
## master #2983 +/- ##
==========================================
- Coverage 67.65% 64.26% -3.39%
==========================================
Files 344 342 -2
Lines 43835 43747 -88
Branches 5486 5475 -11
==========================================
- Hits 29657 28115 -1542
- Misses 13466 14537 +1071
- Partials 712 1095 +383
Continue to review full report at Codecov.
|
It seems that #2944 has uncovered a rats-nest hidden in the engine. In
resolving that issue, I found out that a great deal of boilerplate was
set in place when loading/saving results to deal with
OutputMulti{Object,Path}
traits. The reason being that these traitsflatten single-element-list values.
This PR fixes the pickling behavior of traited specs containing these
types of traits.
Additionally, this PR also avoids the
modify_paths
function that wascausing problems originally in #2944. Therefore, this PR effectively
make results files static, meaning: caching if the
base_dir
of theworkflow is changed will not work anymore.
I plan to re-insert this feature (results file mobility) with #2971.
This PR is just to split that one in more digestible bits.
All the boilerplate mentioned above has been cleaned up.
Fixes #2968
Acknowledgment