Compare commits
7 Commits
37141e87f6
...
a7fa1b47fe
Author | SHA1 | Date |
---|---|---|
Thomas Hobson | a7fa1b47fe | |
Thomas Hobson | 48102b612f | |
Thomas Hobson | f785f655d5 | |
Shubham Sahai | d8af1ee301 | |
Shubham Sahai | dc4bb294b6 | |
Aetheridon | 18743a3369 | |
devnote-dev | f70ecdd8b4 |
|
@ -204,7 +204,16 @@ class Job {
|
||||||
(timeout >= 0 &&
|
(timeout >= 0 &&
|
||||||
set_timeout(async _ => {
|
set_timeout(async _ => {
|
||||||
this.logger.info(`Timeout exceeded timeout=${timeout}`);
|
this.logger.info(`Timeout exceeded timeout=${timeout}`);
|
||||||
|
try {
|
||||||
process.kill(proc.pid, 'SIGKILL');
|
process.kill(proc.pid, 'SIGKILL');
|
||||||
|
}
|
||||||
|
catch (e) {
|
||||||
|
// Could already be dead and just needs to be waited on
|
||||||
|
this.logger.debug(
|
||||||
|
`Got error while SIGKILLing process ${proc}:`,
|
||||||
|
e
|
||||||
|
);
|
||||||
|
}
|
||||||
}, timeout)) ||
|
}, timeout)) ||
|
||||||
null;
|
null;
|
||||||
this.#active_timeouts.push(kill_timeout);
|
this.#active_timeouts.push(kill_timeout);
|
||||||
|
@ -214,7 +223,16 @@ class Job {
|
||||||
event_bus.emit('stderr', data);
|
event_bus.emit('stderr', data);
|
||||||
} else if (stderr.length > this.runtime.output_max_size) {
|
} else if (stderr.length > this.runtime.output_max_size) {
|
||||||
this.logger.info(`stderr length exceeded`);
|
this.logger.info(`stderr length exceeded`);
|
||||||
|
try {
|
||||||
process.kill(proc.pid, 'SIGKILL');
|
process.kill(proc.pid, 'SIGKILL');
|
||||||
|
}
|
||||||
|
catch (e) {
|
||||||
|
// Could already be dead and just needs to be waited on
|
||||||
|
this.logger.debug(
|
||||||
|
`Got error while SIGKILLing process ${proc}:`,
|
||||||
|
e
|
||||||
|
);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
stderr += data;
|
stderr += data;
|
||||||
output += data;
|
output += data;
|
||||||
|
@ -226,7 +244,16 @@ class Job {
|
||||||
event_bus.emit('stdout', data);
|
event_bus.emit('stdout', data);
|
||||||
} else if (stdout.length > this.runtime.output_max_size) {
|
} else if (stdout.length > this.runtime.output_max_size) {
|
||||||
this.logger.info(`stdout length exceeded`);
|
this.logger.info(`stdout length exceeded`);
|
||||||
|
try {
|
||||||
process.kill(proc.pid, 'SIGKILL');
|
process.kill(proc.pid, 'SIGKILL');
|
||||||
|
}
|
||||||
|
catch (e) {
|
||||||
|
// Could already be dead and just needs to be waited on
|
||||||
|
this.logger.debug(
|
||||||
|
`Got error while SIGKILLing process ${proc}:`,
|
||||||
|
e
|
||||||
|
);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
stdout += data;
|
stdout += data;
|
||||||
output += data;
|
output += data;
|
||||||
|
@ -397,7 +424,7 @@ class Job {
|
||||||
// Then clear them out of the process tree
|
// Then clear them out of the process tree
|
||||||
try {
|
try {
|
||||||
process.kill(proc, 'SIGKILL');
|
process.kill(proc, 'SIGKILL');
|
||||||
} catch {
|
} catch (e) {
|
||||||
// Could already be dead and just needs to be waited on
|
// Could already be dead and just needs to be waited on
|
||||||
this.logger.debug(
|
this.logger.debug(
|
||||||
`Got error while SIGKILLing process ${proc}:`,
|
`Got error while SIGKILLing process ${proc}:`,
|
||||||
|
|
2
packages/crystal/0.36.1/build.sh → packages/crystal/1.9.2/build.sh
vendored
Executable file → Normal file
2
packages/crystal/0.36.1/build.sh → packages/crystal/1.9.2/build.sh
vendored
Executable file → Normal file
|
@ -2,6 +2,6 @@
|
||||||
|
|
||||||
PREFIX=$(realpath $(dirname $0))
|
PREFIX=$(realpath $(dirname $0))
|
||||||
|
|
||||||
curl -L "https://github.com/crystal-lang/crystal/releases/download/0.36.1/crystal-0.36.1-1-linux-x86_64.tar.gz" -o crystal.tar.gz
|
curl -L "https://github.com/crystal-lang/crystal/releases/download/1.9.2/crystal-1.9.2-1-linux-x86_64.tar.gz" -o crystal.tar.gz
|
||||||
tar xzf crystal.tar.gz --strip-components=1
|
tar xzf crystal.tar.gz --strip-components=1
|
||||||
rm crystal.tar.gz
|
rm crystal.tar.gz
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"language": "crystal",
|
"language": "crystal",
|
||||||
"version": "0.36.1",
|
"version": "1.9.2",
|
||||||
"aliases": ["crystal", "cr"]
|
"aliases": ["crystal", "cr"]
|
||||||
}
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
PREFIX=$(realpath $(dirname $0))
|
||||||
|
|
||||||
|
mkdir -p build
|
||||||
|
|
||||||
|
cd build
|
||||||
|
|
||||||
|
curl "https://www.python.org/ftp/python/3.11.0/Python-3.11.0.tgz" -o python.tar.gz
|
||||||
|
tar xzf python.tar.gz --strip-components=1
|
||||||
|
rm python.tar.gz
|
||||||
|
|
||||||
|
./configure --prefix "$PREFIX" --with-ensurepip=install
|
||||||
|
make -j$(nproc)
|
||||||
|
make install -j$(nproc)
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
rm -rf build
|
||||||
|
|
||||||
|
bin/pip3 install numpy scipy pandas pycryptodome whoosh bcrypt passlib sympy xxhash base58 cryptography PyNaCl
|
|
@ -0,0 +1 @@
|
||||||
|
export PATH=$PWD/bin:$PATH
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"language": "python",
|
||||||
|
"version": "3.11.0",
|
||||||
|
"aliases": ["py", "py3", "python3", "python3.11"]
|
||||||
|
}
|
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
python3.11 "$@"
|
|
@ -0,0 +1,7 @@
|
||||||
|
working = True
|
||||||
|
|
||||||
|
match working:
|
||||||
|
case True:
|
||||||
|
print("OK")
|
||||||
|
case False:
|
||||||
|
print()
|
Loading…
Reference in New Issue