forked from goodboy/tractor
				
			Don't kill root's immediate children when in debug
If the root calls `trio.Process.kill()` on immediate child proc teardown when the child is using pdb, we can get stdstreams clobbering that results in a pdb++ repl where the user can't see what's been typed. Not killing such children on cancellation / error seems to resolve this issue whilst still giving reliable termination. For now, code that special path until a time it becomes a problem for ensuring zombie reaps.infect_asyncio_backup
							parent
							
								
									7cc25fc99f
								
							
						
					
					
						commit
						02fbe9721b
					
				| 
						 | 
				
			
			@ -366,6 +366,7 @@ async def new_proc(
 | 
			
		|||
            bind_addr=bind_addr,
 | 
			
		||||
            parent_addr=parent_addr,
 | 
			
		||||
            _runtime_vars=_runtime_vars,
 | 
			
		||||
            infect_asyncio=infect_asyncio,
 | 
			
		||||
            task_status=task_status,
 | 
			
		||||
        )
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -381,6 +382,7 @@ async def mp_new_proc(
 | 
			
		|||
    parent_addr: Tuple[str, int],
 | 
			
		||||
    _runtime_vars: Dict[str, Any],  # serialized and sent to _child
 | 
			
		||||
    *,
 | 
			
		||||
    infect_asyncio: bool = False,
 | 
			
		||||
    task_status: TaskStatus[Portal] = trio.TASK_STATUS_IGNORED
 | 
			
		||||
 | 
			
		||||
) -> None:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue