Skip to content

Conversation

ForeverWintr
Copy link
Owner

Lots of new stuff:

  • CallState: Stores the internal state of the pipeline during a call. This replaces the previous state tracking on the outermost MetaFunction. See Call State #4.
  • & Operator: Use f1 & f2 to create a FunctionMerge that combines its output in a tuple. See And operator #5.
  • A New Call Signature for FunctionMerge: Now, if >1 args are provided, each is sent to a single function in the FunctionMerge. See Merge call signature #8 for more explanation of why and how this works.
  • star: Wraps a function and calls it with *args. Facilitates a 'split' to complement the 'merge' of FunctionMerge. See New star #9 for discussion.
  • mmap: Allows you to loop in function chains! Name provisional, pending a better one. See Map #10;
  • concurrent preserves CallState data, so store and recall work in ConcurrentMerges. It also handles pickle errors better. See Concurrent call state #11.

This is all of the major features I envisioned. The api should now be fairly stable, with the possible exception of reorganizing for readability.

I think this is the 4th time I've done this.
I think the pre-call init idea won't work.
The world of nested metafunctions is a strange place
Prepare for a big refactor to remove meta-binding
It actually exposed a bug, so it is quite usefull.
Call State. The name of this branch is out of date.
Mark it as NotImplemented on SimpleFunctions
@codecov
Copy link

codecov bot commented Jul 31, 2017

Codecov Report

Merging #12 into master will increase coverage by 6.16%.
The diff coverage is 100%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master      #12      +/-   ##
==========================================
+ Coverage   93.24%   99.41%   +6.16%     
==========================================
  Files           5       10       +5     
  Lines         222      340     +118     
  Branches       21       28       +7     
==========================================
+ Hits          207      338     +131     
+ Misses         12        1      -11     
+ Partials        3        1       -2
Impacted Files Coverage Δ
metafunctions/map.py 100% <100%> (ø)
metafunctions/core/_call_state.py 100% <100%> (ø)
metafunctions/core/__init__.py 100% <100%> (ø)
metafunctions/concurrent.py 100% <100%> (+27.27%) ⬆️
metafunctions/operators.py 100% <100%> (ø)
metafunctions/core/_decorators.py 100% <100%> (ø)
metafunctions/exceptions.py 100% <100%> (ø) ⬆️
metafunctions/core/_base.py 100% <100%> (ø)
metafunctions/util.py 96.92% <100%> (+1.17%) ⬆️
... and 6 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update b13ecb2...626600c. Read the comment docs.

@codecov
Copy link

codecov bot commented Jul 31, 2017

Codecov Report

Merging #12 into master will increase coverage by 6.16%.
The diff coverage is 100%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master      #12      +/-   ##
==========================================
+ Coverage   93.24%   99.41%   +6.16%     
==========================================
  Files           5       10       +5     
  Lines         222      340     +118     
  Branches       21       28       +7     
==========================================
+ Hits          207      338     +131     
+ Misses         12        1      -11     
+ Partials        3        1       -2
Impacted Files Coverage Δ
metafunctions/concurrent.py 100% <100%> (+27.27%) ⬆️
metafunctions/core/_decorators.py 100% <100%> (ø)
metafunctions/core/_call_state.py 100% <100%> (ø)
metafunctions/operators.py 100% <100%> (ø)
metafunctions/exceptions.py 100% <100%> (ø) ⬆️
metafunctions/core/__init__.py 100% <100%> (ø)
metafunctions/map.py 100% <100%> (ø)
metafunctions/core/_base.py 100% <100%> (ø)
metafunctions/util.py 96.92% <100%> (+1.17%) ⬆️
... and 6 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update b13ecb2...626600c. Read the comment docs.

@ForeverWintr ForeverWintr merged commit 2d1970b into master Jul 31, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant