Calvin Rose 
							
						 
					 
					
						
						
							
						
						c7ca26e9c7 
					 
					
						
						
							
							Merge branch 'master' of github.com:janet-lang/janet  
						
						
						
						
					 
					
						2021-11-18 19:04:43 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						ef7129f45d 
					 
					
						
						
							
							Address  #874  - Call waitpid on waiter thread with WNOWAIT.  
						
						... 
						
						
						
						This doesn't destory the pid until the original thread decides to
call waitpid again. Since the pid is exposed in the C API and now
in the Janet API, we don't want to destroy it until we are ready. 
						
						
					 
					
						2021-11-18 19:03:08 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						3cb604df02 
					 
					
						
						
							
							Merge pull request  #870  from andrewchambers/exposepid  
						
						... 
						
						
						
						Expose process :pid on unix like platforms. 
						
						
					 
					
						2021-11-12 08:20:39 -06:00 
						 
				 
			
				
					
						
							
							
								Andrew Chambers 
							
						 
					 
					
						
						
							
						
						aab0e4315d 
					 
					
						
						
							
							Expose process :pid on unix like platforms.  
						
						... 
						
						
						
						This at least means users can use something like jsys
or the kill command to signal processes when they want
to send unsupported signals (like SIGTERM). 
						
						
					 
					
						2021-11-12 23:43:36 +13:00 
						 
				 
			
				
					
						
							
							
								Andrew Chambers 
							
						 
					 
					
						
						
							
						
						14f6517733 
					 
					
						
						
							
							Fix os/proc-kill doc typo.  
						
						
						
						
					 
					
						2021-11-12 23:29:13 +13:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						dc980081cd 
					 
					
						
						
							
							Fix   #783  - change docstring for x86-64 to x64.  
						
						
						
						
					 
					
						2021-09-05 12:32:33 -05:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						b75b3e3984 
					 
					
						
						
							
							Working example for threaded channels.  
						
						... 
						
						
						
						Still no marshalling more complex values. 
						
						
					 
					
						2021-08-15 15:25:07 -05:00 
						 
				 
			
				
					
						
							
							
								Andrew Chambers 
							
						 
					 
					
						
						
							
						
						f2e8691ad5 
					 
					
						
						
							
							Fix init race for environ lock.  
						
						
						
						
					 
					
						2021-08-09 14:47:41 +12:00 
						 
				 
			
				
					
						
							
							
								Damien Ready 
							
						 
					 
					
						
						
							
						
						934e091410 
					 
					
						
						
							
							Note "int" vs "double" representation of seconds  
						
						
						
						
					 
					
						2021-07-31 11:02:48 -05:00 
						 
				 
			
				
					
						
							
							
								sogaiu 
							
						 
					 
					
						
						
							
						
						8365037be5 
					 
					
						
						
							
							Update os.c with new style core function declarations.  
						
						
						
						
					 
					
						2021-07-26 16:48:04 +09:00 
						 
				 
			
				
					
						
							
							
								bakpakin 
							
						 
					 
					
						
						
							
						
						6f1695ecd4 
					 
					
						
						
							
							Add utitities for interrupting the event loop.  
						
						... 
						
						
						
						janet_loop1_interrupt makes the event loop compatible
with safe interruptions for custom scheduling. Does this by exposing
custom events on the event loop. A custom event schedules a function pointer
to run in a way that can interrupt
epoll_wait/poll/GetQueuedCompletionStatus. 
						
						
					 
					
						2021-07-25 09:08:46 -05:00 
						 
				 
			
				
					
						
							
							
								bakpakin 
							
						 
					 
					
						
						
							
						
						aafc595e3a 
					 
					
						
						
							
							Fix typo.  
						
						
						
						
					 
					
						2021-07-24 12:47:51 -05:00 
						 
				 
			
				
					
						
							
							
								bakpakin 
							
						 
					 
					
						
						
							
						
						202783c67a 
					 
					
						
						
							
							Add :d switch to os/spawn.  
						
						... 
						
						
						
						This allows for starting processes that can be turned into zombies. 
						
						
					 
					
						2021-07-24 11:55:04 -05:00 
						 
				 
			
				
					
						
							
							
								Andrew Owen 
							
						 
					 
					
						
						
							
						
						96b4e71704 
					 
					
						
						
							
							Add TerminateProcess to janet_proc_gc and os_proc_kill on Windows  
						
						
						
						
					 
					
						2021-07-11 03:56:08 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						49f66a936c 
					 
					
						
						
							
							Merge commit 'f4c9064b79d5b32fd74e5ddf25266356c22dd53b'  
						
						
						
						
					 
					
						2021-04-29 15:58:41 -05:00 
						 
				 
			
				
					
						
							
							
								Chris Jones 
							
						 
					 
					
						
						
							
						
						29797b9eb0 
					 
					
						
						
							
							Use _NSGetEnviron() on Apple  
						
						
						
						
					 
					
						2021-04-27 11:54:24 +01:00 
						 
				 
			
				
					
						
							
							
								Andrew Chambers 
							
						 
					 
					
						
						
							
						
						f4c9064b79 
					 
					
						
						
							
							Add config support for custom allocators.  
						
						
						
						
					 
					
						2021-03-23 23:00:48 +13:00 
						 
				 
			
				
					
						
							
							
								John Gabriele 
							
						 
					 
					
						
						
							
						
						0f05aec563 
					 
					
						
						
							
							Update os.c  
						
						... 
						
						
						
						Doc typo 
						
						
					 
					
						2021-03-09 14:39:09 -05:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						f1819c916a 
					 
					
						
						
							
							Fix build error for 1.15.2  
						
						
						
						
					 
					
						2021-02-15 10:27:19 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						7e2c433abc 
					 
					
						
						
							
							Fix   #636  
						
						
						
						
					 
					
						2021-02-14 14:34:52 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						6713b23a65 
					 
					
						
						
							
							Change behavior of empty env table passed to os/execute on windows.  
						
						
						
						
					 
					
						2021-02-14 11:22:20 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						60078e7950 
					 
					
						
						
							
							Change os/execute implementation for windows.  
						
						
						
						
					 
					
						2021-02-14 11:04:59 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						49dcc816ae 
					 
					
						
						
							
							Update os/shell to be non-blocking as well.  
						
						
						
						
					 
					
						2021-01-18 16:44:22 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						634219da2c 
					 
					
						
						
							
							Fix windows swallowing IOCP events in many cases.  
						
						... 
						
						
						
						This fixes windows hanging on "failed" IO operations. 
						
						
					 
					
						2021-01-17 20:41:59 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						462e74ef87 
					 
					
						
						
							
							Add os/proc-close to close all pipes associated with a subprocess.  
						
						... 
						
						
						
						This will not leak handles until the GC runs in most use cases. 
						
						
					 
					
						2021-01-16 15:11:07 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						c79480342b 
					 
					
						
						
							
							Remove unused defines.  
						
						
						
						
					 
					
						2021-01-16 07:19:28 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						a1cc5ca045 
					 
					
						
						
							
							Fix   #593 .  
						
						... 
						
						
						
						Also add ev/give-supervisor to the core. 
						
						
					 
					
						2021-01-16 07:18:07 -06:00 
						 
				 
			
				
					
						
							
							
								sogaiu 
							
						 
					 
					
						
						
							
						
						122e2a9378 
					 
					
						
						
							
							Tweak os docs  
						
						
						
						
					 
					
						2021-01-14 08:44:56 +09:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						61cca10cf6 
					 
					
						
						
							
							Allow iterating through the properties of core abstract types.  
						
						
						
						
					 
					
						2021-01-11 23:14:07 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						bf01bf631d 
					 
					
						
						
							
							More work on windows networking code.  
						
						... 
						
						
						
						Remove use of WSARecv and WSASend since for whatever reason
they seem suspect. We may want to revisit this later. 
						
						
					 
					
						2021-01-11 18:00:31 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						f0dbc2e404 
					 
					
						
						
							
							Fix subprocess spawning on windows.  
						
						... 
						
						
						
						Also fix (:read stream :all) 
						
						
					 
					
						2021-01-11 11:10:23 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						4df1ac5b23 
					 
					
						
						
							
							Fix some issues in os.c to diagnose improve windows subprocess code.  
						
						
						
						
					 
					
						2021-01-11 09:06:39 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						7b030fe70d 
					 
					
						
						
							
							Fix some return issues.  
						
						
						
						
					 
					
						2021-01-03 11:54:31 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						9760cf1f4e 
					 
					
						
						
							
							Fix MSVC warning.  
						
						
						
						
					 
					
						2021-01-03 11:47:29 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						47bb7fd21b 
					 
					
						
						
							
							Begin implementing async subproccesses for windows.  
						
						
						
						
					 
					
						2021-01-03 11:21:44 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						1c7ed8ca48 
					 
					
						
						
							
							Use PostQueuedCompletionStatus for threaded calls on windows.  
						
						... 
						
						
						
						Ore efficient than using a self pipe. 
						
						
					 
					
						2021-01-03 11:08:12 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						05166b3673 
					 
					
						
						
							
							Fix proc getter bug.  
						
						
						
						
					 
					
						2020-12-31 16:23:20 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						0a1c93b869 
					 
					
						
						
							
							Add ev api for making threaded calls.  
						
						... 
						
						
						
						Easy way to make arbitrary functions in C async. 
						
						
					 
					
						2020-12-31 16:12:42 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						788f91a36f 
					 
					
						
						
							
							Remove unneeded book keeping for sub processes.  
						
						... 
						
						
						
						Since we are not using signals we no longer need some bookkeeping. 
						
						
					 
					
						2020-12-31 11:52:12 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						c831ecf5d2 
					 
					
						
						
							
							Working implementation of process waiting with threads.  
						
						... 
						
						
						
						Does not require all sorts of signal handling code
that is not thread-safe and can "steal processes".
However, there is a much simpler way to add this functionality
by creating a new stream and thread for each subprocess when it is
waited on. This is perhaps _slightly_ less efficient but oh so much
simpler, since we can reuse all of our concepts from streams and there
is no need to implement a whole system around the selfpipe. 
						
						
					 
					
						2020-12-31 11:22:18 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						9e42ee153c 
					 
					
						
						
							
							Merge branch 'master' into HEAD  
						
						
						
						
					 
					
						2020-12-30 12:19:13 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						d7954be5e5 
					 
					
						
						
							
							Update docstring for os/open.  
						
						
						
						
					 
					
						2020-12-28 11:00:15 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						d53007739e 
					 
					
						
						
							
							Invert read/write bits on pipe in os/execute.  
						
						... 
						
						
						
						It was backwards, breaking this functionality. 
						
						
					 
					
						2020-12-09 19:04:05 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						cbdea8f331 
					 
					
						
						
							
							Make os/execute cooperate with ev module.  
						
						... 
						
						
						
						os/execute, os/proc-wait do not block (currently posix only).
This uses the self-pipe trick to turn signals into a pollable entity. 
						
						
					 
					
						2020-11-29 15:36:21 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						53aa19a916 
					 
					
						
						
							
							Several changes to move pipe creation back into ev.c  
						
						
						
						
					 
					
						2020-11-18 10:53:36 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						1b6272db2e 
					 
					
						
						
							
							Fix windows ifdef.  
						
						
						
						
					 
					
						2020-11-15 19:55:58 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						6e6900fa3a 
					 
					
						
						
							
							os/execute and os/spawn can take streams.  
						
						
						
						
					 
					
						2020-11-15 12:17:29 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						a7ed3dea4b 
					 
					
						
						
							
							Remove some flags in os/open.  
						
						
						
						
					 
					
						2020-11-15 10:06:20 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						cdcb774dc8 
					 
					
						
						
							
							Add os/pipe and os/open.  
						
						... 
						
						
						
						ev/pipe -> os/pipe, and os/open is a wrapper
around the open system call. 
						
						
					 
					
						2020-11-15 09:57:29 -06:00 
						 
				 
			
				
					
						
							
							
								Calvin Rose 
							
						 
					 
					
						
						
							
						
						540425a41b 
					 
					
						
						
							
							Make docstring less confusing -  Fix   #493 .  
						
						
						
						
					 
					
						2020-11-02 09:09:22 -06:00