- 
          
 - 
                Notifications
    
You must be signed in to change notification settings  - Fork 833
 
defer stream support within stitching #1941
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
          
     Open
      
      
            yaacovCR
  wants to merge
  49
  commits into
  master
  
    
      
        
          
  
    
      Choose a base branch
      
     
    
      
        
      
      
        
          
          
        
        
          
            
              
              
              
  
           
        
        
          
            
              
              
           
        
       
     
  
        
          
            
          
            
          
        
       
    
      
from
defer-stream
  
      
      
   
  
    
  
  
  
 
  
      
    base: master
Could not load branches
            
              
  
    Branch not found: {{ refName }}
  
            
                
      Loading
              
            Could not load tags
            
            
              Nothing to show
            
              
  
            
                
      Loading
              
            Are you sure you want to change the base?
            Some commits from the old base branch may be removed from the timeline,
            and old review comments may become outdated.
          
          
                
     Open
            
            
          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
    
  
  
    
    1e7391d    to
    9269c2c      
    Compare
  
    b22640c    to
    1dc6b4d      
    Compare
  
    1dc6b4d    to
    421166b      
    Compare
  
    bb7bd64    to
    431ac4e      
    Compare
  
    f8134f0    to
    e49c793      
    Compare
  
    ade4e70    to
    34c31de      
    Compare
  
    b1c69a3    to
    a9e6cd1      
    Compare
  
    3f6ec05    to
    50609df      
    Compare
  
    4946aeb    to
    4be9073      
    Compare
  
    | 
           So... is this done? #4796 :D  | 
    
| 
           Not yet :( still can't stitch  | 
    
      
        
      
      
  
    3 tasks
  
d34fb65    to
    b8bf584      
    Compare
  
    
  
    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.
  
    
  
    
A work in progress...
Help wanted...
In terms of mechanism, have settled on external values that are from asyncIterables being converted to an initial result with an associated
Receiverobject, which is passed down the execution tree. If a field is not present on the result, and aReceivercan be found, the default merging resolver will request to be notified when the field is available.think more broadly about how to implement the Receiver, maybe we should use Repeaters rather than raw async iterables, and what the best pattern is for consuming async iterables.... see Not that great for implementing transducers? repeaterjs/repeater#48 (comment)
update all transforms that touch results - some result transformers parse the request and transform the response based on saved state -- these transformers may require rewriting patch labels so that state does not overlap between different fragments...
update batch-execute
update batch-delegate
test errors
test timeouts
graphql/graphql-js#2319
graphql/graphql-spec#742