Kovid Goyal
9d471782dd
Increase some more timeouts
2022-11-03 13:13:14 +05:30
Kovid Goyal
a8ab4eaf23
Use a larger timeout when running prewarm test
2022-10-30 10:36:10 +05:30
Kovid Goyal
b1fa1c9820
Make test a bit more robust
2022-09-21 23:16:34 +05:30
Kovid Goyal
89a0c04d19
Fix exec in prewarm forked process sometimes inheriting env vars from grandparent process
2022-08-30 19:03:32 +05:30
Kovid Goyal
44ccdd36d6
Remove socket prewarming
...
The potential for breakage is too high, and I am working on an
alternative solution that will be better long term.
Prewarming is still used for kittens launched via keybindings
2022-08-20 13:38:33 +05:30
Kovid Goyal
cc7e668ad6
Cleanup editing of proc environ
2022-08-01 19:03:03 +05:30
Kovid Goyal
e0ce0a67cc
ensure setting KITTY_PREWARM_SOCKET_REAL_TTY does not clobber the environ
2022-08-01 19:03:03 +05:30
Kovid Goyal
0d83a8866b
Make setting the real tty name more robust
2022-08-01 19:03:03 +05:30
Kovid Goyal
f7a7e39a36
prewarm wrapper should indicate it is active via the process environment
2022-08-01 19:03:03 +05:30
Kovid Goyal
376688ab9f
Add a test for SIGTSTP via ctrl-z
2022-08-01 19:03:03 +05:30
Kovid Goyal
94551623ec
Make JSON reading test a bit more robust
2022-08-01 19:03:02 +05:30
Kovid Goyal
cb0d23bae8
Use sub tests for the various prewarm things
2022-08-01 19:03:02 +05:30
Kovid Goyal
32dcbbb5e1
...
2022-08-01 19:03:02 +05:30
Kovid Goyal
78542ede14
Separate test for SIGWINCH handling
2022-08-01 19:03:02 +05:30
Kovid Goyal
2d8113e0e0
Give up on signal delivery tests
2022-08-01 19:03:02 +05:30
Kovid Goyal
e881850bb4
...
2022-08-01 19:03:02 +05:30
Kovid Goyal
4cbae1db89
...
2022-08-01 19:03:02 +05:30
Kovid Goyal
97bce7be18
and again
2022-08-01 19:03:01 +05:30
Kovid Goyal
5d2a276172
...
2022-08-01 19:03:01 +05:30
Kovid Goyal
762dfe8315
increase timeout since signal delivery on CI is flakey
2022-08-01 19:03:01 +05:30
Kovid Goyal
1c0d1ec8a9
wait for child events explicitly
2022-08-01 19:03:01 +05:30
Kovid Goyal
e650699217
py3.8 compat
2022-08-01 19:03:01 +05:30
Kovid Goyal
5ff2b5be1c
Clear out any signals before ending test
2022-08-01 19:03:01 +05:30
Kovid Goyal
f1841d7c81
DRYer
2022-08-01 19:03:01 +05:30
Kovid Goyal
751a52153d
Restore python signal handlers properly after the test
2022-08-01 19:03:01 +05:30
Kovid Goyal
61b733bae9
Add a test for SIGCHLD on SIGTSTP
2022-08-01 19:03:01 +05:30
Kovid Goyal
624e96df9b
wrapper process should exit with signal if prewarmed worker exits with signal
2022-08-01 19:03:01 +05:30
Kovid Goyal
a3f1a44d83
OK I give up I cant get signal delivery to work reliably
2022-08-01 19:03:01 +05:30
Kovid Goyal
9379853d47
Get the SIGINT test working on macOS
2022-08-01 19:03:01 +05:30
Kovid Goyal
6ccfebd9e3
...
2022-08-01 19:03:01 +05:30
Kovid Goyal
0841be7803
Test sigwinch handling
2022-08-01 19:03:00 +05:30
Kovid Goyal
285c399ae5
...
2022-08-01 19:03:00 +05:30
Kovid Goyal
8998970adc
Make the socket prewarm test a bit more robust
2022-08-01 19:03:00 +05:30
Kovid Goyal
d080bf3b9c
Forward termination signals
2022-08-01 19:02:59 +05:30
Kovid Goyal
4154926be7
Get the test to pass on macOS
2022-08-01 19:02:59 +05:30
Kovid Goyal
dc84e3de67
Do not hang forever waiting for child death
2022-08-01 19:02:59 +05:30
Kovid Goyal
dfec88ed15
Inherit full outside env
2022-08-01 19:02:59 +05:30
Kovid Goyal
af1c48e0f7
Dont rely on having source of test modules available
2022-08-01 19:02:58 +05:30
Kovid Goyal
a6c3c57d40
Test stdio redirection with socket prewarm
2022-08-01 19:02:58 +05:30
Kovid Goyal
de9263a117
Verify uid/gid of connection from a prewarm client
2022-08-01 19:02:58 +05:30
Kovid Goyal
7b7f1ecc54
Add basic tests for socket prewarm
2022-08-01 19:02:58 +05:30
Kovid Goyal
7e3bd8586f
Dont use SIGTSTP and SIGCONT in the test as they are very flaky
2022-06-13 20:29:58 +05:30
Kovid Goyal
d5df301317
Finer grained polling
2022-06-13 19:41:40 +05:30
Kovid Goyal
628246c3da
Workaround for python 3.8 that doesnt have the CLD_* constants
2022-06-13 19:22:37 +05:30
Kovid Goyal
d228acd30a
Use a busy loop for signaled process
2022-06-13 19:11:29 +05:30
Kovid Goyal
18cd97d914
Skip SIGSTSTP test when CLD_STOPPED is not available
2022-06-13 19:05:49 +05:30
Kovid Goyal
5f13946bac
Allow using our signal handlers in python event loops via an fd
...
pythons signal fd only return signal numbers not the full siginfo struct
2022-06-13 18:52:23 +05:30
Kovid Goyal
da6faa656c
Use a fork() without exec() to create prewarm process
...
This has the advantages:
1) Even first kitten use is fast
2) Computer has to do less work overall since prewarm process is itself prewarmed
2022-06-12 18:06:51 +05:30
Kovid Goyal
2dd1201c3f
Dont use a kitten for prewarm
2022-06-09 06:53:51 +05:30
Kovid Goyal
6afbdbe94f
Use correct kitty config in prewarmed process
2022-06-07 12:53:39 +05:30