From 194debd877431e1e1f2982edc899588bfa4f0a2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herman=20Zvonimir=20Do=C5=A1ilovi=C4=87?= Date: Thu, 7 May 2020 02:11:59 +0200 Subject: [PATCH 01/15] Adapt API for extra languages. --- Dockerfile | 4 +- app/helpers/config.rb | 4 +- app/jobs/isolate_job.rb | 3 +- db/languages/active.rb | 330 +++++---------------------------------- db/languages/archived.rb | 320 ------------------------------------- docs/api/docs.md | 2 +- judge0-api.conf | 4 +- public/docs.html | 4 +- 8 files changed, 54 insertions(+), 617 deletions(-) diff --git a/Dockerfile b/Dockerfile index 717274fd..2cde8341 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM judge0/api-base:1.2.1 AS production +FROM judge0/api-base:1.2.1-extra AS production ENV JUDGE0_HOMEPAGE "https://judge0.com" LABEL homepage=$JUDGE0_HOMEPAGE @@ -38,7 +38,7 @@ COPY . . ENTRYPOINT ["./docker-entrypoint.sh"] CMD ["./scripts/server"] -ENV JUDGE0_VERSION "1.7.1" +ENV JUDGE0_VERSION "1.7.1-extra" LABEL version=$JUDGE0_VERSION diff --git a/app/helpers/config.rb b/app/helpers/config.rb index 010e2d60..6912e4b8 100644 --- a/app/helpers/config.rb +++ b/app/helpers/config.rb @@ -27,8 +27,8 @@ module Config ALLOW_ENABLE_PER_PROCESS_AND_THREAD_TIME_LIMIT = ENV['ALLOW_ENABLE_PER_PROCESS_AND_THREAD_TIME_LIMIT'] != "false" ENABLE_PER_PROCESS_AND_THREAD_MEMORY_LIMIT = ENV['ENABLE_PER_PROCESS_AND_THREAD_MEMORY_LIMIT'] == "true" ALLOW_ENABLE_PER_PROCESS_AND_THREAD_MEMORY_LIMIT = ENV['ALLOW_ENABLE_PER_PROCESS_AND_THREAD_MEMORY_LIMIT'] != "false" - MAX_FILE_SIZE = (ENV['MAX_FILE_SIZE'].presence || 1024).to_i - MAX_MAX_FILE_SIZE = (ENV['MAX_MAX_FILE_SIZE'].presence || 4096).to_i + MAX_FILE_SIZE = (ENV['MAX_FILE_SIZE'].presence || 5120).to_i + MAX_MAX_FILE_SIZE = (ENV['MAX_MAX_FILE_SIZE'].presence || 10240).to_i NUMBER_OF_RUNS = (ENV['NUMBER_OF_RUNS'].presence || 1).to_i MAX_NUMBER_OF_RUNS = (ENV['MAX_NUMBER_OF_RUNS'].presence || 20).to_i REDIRECT_STDERR_TO_STDOUT = ENV['REDIRECT_STDERR_TO_STDOUT'] == "true" diff --git a/app/jobs/isolate_job.rb b/app/jobs/isolate_job.rb index c10b6584..d1b8303c 100644 --- a/app/jobs/isolate_job.rb +++ b/app/jobs/isolate_job.rb @@ -184,7 +184,7 @@ def run command_line_arguments = submission.command_line_arguments.to_s.strip.encode("UTF-8", invalid: :replace).gsub(/[$&;<>|`]/, "") run_script = boxdir + "/" + "run" - File.open(run_script, "w") { |f| f.write("#{submission.language.run_cmd} #{command_line_arguments}")} + File.open(run_script, "w") { |f| f.write("#{submission.language.run_cmd % command_line_arguments}")} command = "isolate #{cgroups} \ -s \ @@ -199,6 +199,7 @@ def run #{submission.enable_per_process_and_thread_time_limit ? (cgroups.present? ? "--no-cg-timing" : "") : "--cg-timing"} \ #{submission.enable_per_process_and_thread_memory_limit ? "-m " : "--cg-mem="}#{submission.memory_limit} \ -f #{submission.max_file_size} \ + --share-net \ -E HOME=#{workdir} \ -E PATH=\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\" \ -E LANG -E LANGUAGE -E LC_ALL -E JUDGE0_HOMEPAGE -E JUDGE0_SOURCE_CODE -E JUDGE0_MAINTAINER -E JUDGE0_VERSION \ diff --git a/db/languages/active.rb b/db/languages/active.rb index 2fa050aa..644c781e 100644 --- a/db/languages/active.rb +++ b/db/languages/active.rb @@ -2,325 +2,81 @@ @languages += [ { - id: 43, - name: "Plain Text", - is_archived: false, - source_file: "text.txt", - run_cmd: "/bin/cat text.txt" - }, - { - id: 44, - name: "Executable", - is_archived: false, - source_file: "a.out", - run_cmd: "/bin/chmod +x a.out && ./a.out" - }, - { - id: 45, - name: "Assembly (NASM 2.14.02)", - is_archived: false, - source_file: "main.asm", - compile_cmd: "/usr/local/nasm-2.14.02/bin/nasmld -f elf64 %s main.asm", - run_cmd: "./a.out" - }, - { - id: 46, - name: "Bash (5.0.0)", - is_archived: false, - source_file: "script.sh", - run_cmd: "/usr/local/bash-5.0/bin/bash script.sh" - }, - { - id: 47, - name: "Basic (FBC 1.07.1)", - is_archived: false, - source_file: "main.bas", - compile_cmd: "/usr/local/fbc-1.07.1/bin/fbc %s main.bas", - run_cmd: "./main" - }, - { - id: 48, - name: "C (GCC 7.4.0)", + id: 1, + name: "C (Clang 10.0.1)", is_archived: false, source_file: "main.c", - compile_cmd: "/usr/local/gcc-7.4.0/bin/gcc %s main.c", - run_cmd: "./a.out" - }, - { - id: 49, - name: "C (GCC 8.3.0)", - is_archived: false, - source_file: "main.c", - compile_cmd: "/usr/local/gcc-8.3.0/bin/gcc %s main.c", - run_cmd: "./a.out" - }, - { - id: 50, - name: "C (GCC 9.2.0)", - is_archived: false, - source_file: "main.c", - compile_cmd: "/usr/local/gcc-9.2.0/bin/gcc %s main.c", - run_cmd: "./a.out" - }, - { - id: 51, - name: "C# (Mono 6.6.0.161)", - is_archived: false, - source_file: "Main.cs", - compile_cmd: "/usr/local/mono-6.6.0.161/bin/mcs %s Main.cs", - run_cmd: "/usr/local/mono-6.6.0.161/bin/mono Main.exe" + compile_cmd: "/usr/bin/clang-10 %s main.c", + run_cmd: "./a.out %s" }, { - id: 52, - name: "C++ (GCC 7.4.0)", + id: 2, + name: "C++ (Clang 10.0.1)", is_archived: false, source_file: "main.cpp", - compile_cmd: "/usr/local/gcc-7.4.0/bin/g++ %s main.cpp", - run_cmd: "LD_LIBRARY_PATH=/usr/local/gcc-7.4.0/lib64 ./a.out" - }, - { - id: 53, - name: "C++ (GCC 8.3.0)", - is_archived: false, - source_file: "main.cpp", - compile_cmd: "/usr/local/gcc-8.3.0/bin/g++ %s main.cpp", - run_cmd: "LD_LIBRARY_PATH=/usr/local/gcc-8.3.0/lib64 ./a.out" - }, - { - id: 54, - name: "C++ (GCC 9.2.0)", - is_archived: false, - source_file: "main.cpp", - compile_cmd: "/usr/local/gcc-9.2.0/bin/g++ %s main.cpp", - run_cmd: "LD_LIBRARY_PATH=/usr/local/gcc-9.2.0/lib64 ./a.out" - }, - { - id: 55, - name: "Common Lisp (SBCL 2.0.0)", - is_archived: false, - source_file: "script.lisp", - run_cmd: "SBCL_HOME=/usr/local/sbcl-2.0.0/lib/sbcl /usr/local/sbcl-2.0.0/bin/sbcl --script script.lisp" - }, - { - id: 56, - name: "D (DMD 2.089.1)", - is_archived: false, - source_file: "main.d", - compile_cmd: "/usr/local/d-2.089.1/linux/bin64/dmd %s main.d", - run_cmd: "./main" - }, - { - id: 57, - name: "Elixir (1.9.4)", - is_archived: false, - source_file: "script.exs", - run_cmd: "/usr/local/elixir-1.9.4/bin/elixir script.exs" - }, - { - id: 58, - name: "Erlang (OTP 22.2)", - is_archived: false, - source_file: "main.erl", - run_cmd: "/bin/sed -i '1s/^/\\n/' main.erl && /usr/local/erlang-22.2/bin/escript main.erl" - }, - { - id: 59, - name: "Fortran (GFortran 9.2.0)", - is_archived: false, - source_file: "main.f90", - compile_cmd: "/usr/local/gcc-9.2.0/bin/gfortran %s main.f90", - run_cmd: "LD_LIBRARY_PATH=/usr/local/gcc-9.2.0/lib64 ./a.out" - }, - { - id: 60, - name: "Go (1.13.5)", - is_archived: false, - source_file: "main.go", - compile_cmd: "GOCACHE=/tmp/.cache/go-build /usr/local/go-1.13.5/bin/go build %s main.go", - run_cmd: "./main" + compile_cmd: "/usr/bin/clang++-10 %s main.cpp", + run_cmd: "./a.out %s" }, { - id: 61, - name: "Haskell (GHC 8.8.1)", + id: 3, + name: "C3 (latest)", is_archived: false, - source_file: "main.hs", - compile_cmd: "/usr/local/ghc-8.8.1/bin/ghc %s main.hs", - run_cmd: "./main" + source_file: "main.c3", + compile_cmd: "/usr/local/c3/c3c %s compile main.c3; /usr/bin/clang-10 main.o", + run_cmd: "./a.out %s" }, { - id: 62, - name: "Java (OpenJDK 13.0.1)", + id: 4, + name: "Java (OpenJDK 14.0.1)", is_archived: false, source_file: "Main.java", - compile_cmd: "/usr/local/openjdk13/bin/javac %s Main.java", - run_cmd: "/usr/local/openjdk13/bin/java Main" + compile_cmd: "/usr/local/openjdk14/bin/javac %s Main.java", + run_cmd: "/usr/local/openjdk14/bin/java Main %s" }, { - id: 63, - name: "JavaScript (Node.js 12.14.0)", + id: 5, + name: "Java Test (OpenJDK 14.0.1, JUnit Platform Console Standalone 1.6.2)", is_archived: false, - source_file: "script.js", - run_cmd: "/usr/local/node-12.14.0/bin/node script.js" + source_file: "MainTest.java", + compile_cmd: "/usr/local/openjdk14/bin/javac -cp /usr/local/junit-platform-console-standalone-1.6.2/launcher.jar %s MainTest.java", + run_cmd: "/usr/local/openjdk14/bin/java -jar /usr/local/junit-platform-console-standalone-1.6.2/launcher.jar --disable-ansi-colors --disable-banner -cp . -c MainTest %s" }, { - id: 64, - name: "Lua (5.3.5)", - is_archived: false, - source_file: "script.lua", - compile_cmd: "/usr/local/lua-5.3.5/luac53 %s script.lua", - run_cmd: "/usr/local/lua-5.3.5/lua53 ./luac.out" - }, - { - id: 65, - name: "OCaml (4.09.0)", - is_archived: false, - source_file: "main.ml", - compile_cmd: "/usr/local/ocaml-4.09.0/bin/ocamlc %s main.ml", - run_cmd: "./a.out" - }, - { - id: 66, - name: "Octave (5.1.0)", - is_archived: false, - source_file: "script.m", - run_cmd: "/usr/local/octave-5.1.0/bin/octave-cli -q --no-gui --no-history script.m" - }, - { - id: 67, - name: "Pascal (FPC 3.0.4)", - is_archived: false, - source_file: "main.pas", - compile_cmd: "/usr/local/fpc-3.0.4/bin/fpc %s main.pas", - run_cmd: "./main" - }, - { - id: 68, - name: "PHP (7.4.1)", - is_archived: false, - source_file: "script.php", - run_cmd: "/usr/local/php-7.4.1/bin/php script.php" - }, - { - id: 69, - name: "Prolog (GNU Prolog 1.4.5)", - is_archived: false, - source_file: "main.pro", - compile_cmd: "PATH=\"/usr/local/gprolog-1.4.5/gprolog-1.4.5/bin:$PATH\" /usr/local/gprolog-1.4.5/gprolog-1.4.5/bin/gplc --no-top-level %s main.pro", - run_cmd: "./main" - }, - { - id: 70, - name: "Python (2.7.17)", - is_archived: false, - source_file: "script.py", - run_cmd: "/usr/local/python-2.7.17/bin/python2 script.py" - }, - { - id: 71, - name: "Python (3.8.1)", - is_archived: false, - source_file: "script.py", - run_cmd: "/usr/local/python-3.8.1/bin/python3 script.py" - }, - { - id: 72, - name: "Ruby (2.7.0)", - is_archived: false, - source_file: "script.rb", - run_cmd: "/usr/local/ruby-2.7.0/bin/ruby script.rb" - }, - { - id: 73, - name: "Rust (1.40.0)", - is_archived: false, - source_file: "main.rs", - compile_cmd: "/usr/local/rust-1.40.0/bin/rustc %s main.rs", - run_cmd: "./main" - }, - { - id: 74, - name: "TypeScript (3.7.4)", - is_archived: false, - source_file: "script.ts", - compile_cmd: "/usr/bin/tsc %s script.ts", - run_cmd: "/usr/local/node-12.14.0/bin/node script.js" - }, - { - id: 75, - name: "C (Clang 7.0.1)", + id: 6, + name: "MPI (OpenRTE 3.1.3) with C (GCC 8.3.0)", is_archived: false, source_file: "main.c", - compile_cmd: "/usr/bin/clang-7 %s main.c", - run_cmd: "./a.out" + compile_cmd: "/usr/bin/mpicc %s main.c", + run_cmd: "/usr/bin/mpiexec --allow-run-as-root --oversubscribe %s ./a.out" }, { - id: 76, - name: "C++ (Clang 7.0.1)", + id: 7, + name: "MPI (OpenRTE 3.1.3) with C++ (GCC 8.3.0)", is_archived: false, source_file: "main.cpp", - compile_cmd: "/usr/bin/clang++-7 %s main.cpp", - run_cmd: "./a.out" - }, - { - id: 77, - name: "COBOL (GnuCOBOL 2.2)", - is_archived: false, - source_file: "main.cob", - compile_cmd: "/usr/local/gnucobol-2.2/bin/cobc -free -x %s main.cob", - run_cmd: "LD_LIBRARY_PATH=/usr/local/gnucobol-2.2/lib ./main" - }, - { - id: 78, - name: "Kotlin (1.3.70)", - is_archived: false, - source_file: "Main.kt", - compile_cmd: "/usr/local/kotlin-1.3.70/bin/kotlinc %s Main.kt", - run_cmd: "/usr/local/kotlin-1.3.70/bin/kotlin MainKt" + compile_cmd: "/usr/bin/mpicxx %s main.cpp", + run_cmd: "/usr/bin/mpiexec --allow-run-as-root --oversubscribe %s ./a.out" }, { - id: 79, - name: "Objective-C (Clang 7.0.1)", + id: 8, + name: "MPI (OpenRTE 3.1.3) with Python (3.7.3)", is_archived: false, - source_file: "main.m", - compile_cmd: "/usr/bin/clang-7 `gnustep-config --objc-flags | sed 's/-W[^ ]* //g'` `gnustep-config --base-libs | sed 's/-shared-libgcc//'` -I/usr/lib/gcc/x86_64-linux-gnu/8/include main.m %s", - run_cmd: "./a.out" - }, - { - id: 80, - name: "R (4.0.0)", - is_archived: false, - source_file: "script.r", - run_cmd: "/usr/local/r-4.0.0/bin/Rscript script.r" - }, - { - id: 81, - name: "Scala (2.13.2)", - is_archived: false, - source_file: "Main.scala", - compile_cmd: "/usr/local/scala-2.13.2/bin/scalac %s Main.scala", - run_cmd: "/usr/local/scala-2.13.2/bin/scala Main" - }, - { - id: 82, - name: "SQL (SQLite 3.27.2)", - is_archived: false, - source_file: "script.sql", - run_cmd: "/bin/cat script.sql | /usr/bin/sqlite3 db.sqlite" + source_file: "script.py", + run_cmd: "/usr/bin/mpiexec --allow-run-as-root --oversubscribe %s /usr/bin/python3 script.py" }, { - id: 83, - name: "Swift (5.2.3)", + id: 9, + name: "Nim (stable)", is_archived: false, - source_file: "Main.swift", - compile_cmd: "/usr/local/swift-5.2.3/bin/swiftc %s Main.swift", - run_cmd: "./Main" + source_file: "main.nim", + compile_cmd: "/usr/local/nim/bin/nim compile --nimcache:.cache/nim %s main.nim", + run_cmd: "./main %s" }, { - id: 84, - name: "Visual Basic.Net (vbnc 0.0.0.5943)", + id: 10, + name: "Python for ML (3.7.3)", is_archived: false, - source_file: "Main.vb", - compile_cmd: "/usr/bin/vbnc %s Main.vb", - run_cmd: "/usr/bin/mono Main.exe" + source_file: "script.py", + run_cmd: "/usr/bin/python3 script.py %s" } ] \ No newline at end of file diff --git a/db/languages/archived.rb b/db/languages/archived.rb index baaaf7e2..fbec8aed 100644 --- a/db/languages/archived.rb +++ b/db/languages/archived.rb @@ -1,324 +1,4 @@ @languages ||= [] @languages += [ - { - id: 1, - name: "Bash (4.4)", - is_archived: true, - source_file: "script.sh", - run_cmd: "/usr/local/bash-4.4/bin/bash script.sh" - }, - { - id: 2, - name: "Bash (4.0)", - is_archived: true, - source_file: "script.sh", - run_cmd: "/usr/local/bash-4.0/bin/bash script.sh" - }, - { - id: 3, - name: "Basic (fbc 1.05.0)", - is_archived: true, - source_file: "main.bas", - compile_cmd: "/usr/local/fbc-1.05.0/bin/fbc %s main.bas", - run_cmd: "./main" - }, - { - id: 4, - name: "C (gcc 7.2.0)", - is_archived: true, - source_file: "main.c", - compile_cmd: "/usr/local/gcc-7.2.0/bin/gcc %s main.c", - run_cmd: "./a.out" - }, - { - id: 5, - name: "C (gcc 6.4.0)", - is_archived: true, - source_file: "main.c", - compile_cmd: "/usr/local/gcc-6.4.0/bin/gcc %s main.c", - run_cmd: "./a.out" - }, - { - id: 6, - name: "C (gcc 6.3.0)", - is_archived: true, - source_file: "main.c", - compile_cmd: "/usr/local/gcc-6.3.0/bin/gcc %s main.c", - run_cmd: "./a.out" - }, - { - id: 7, - name: "C (gcc 5.4.0)", - is_archived: true, - source_file: "main.c", - compile_cmd: "/usr/local/gcc-5.4.0/bin/gcc %s main.c", - run_cmd: "./a.out" - }, - { - id: 8, - name: "C (gcc 4.9.4)", - is_archived: true, - source_file: "main.c", - compile_cmd: "/usr/local/gcc-4.9.4/bin/gcc %s main.c", - run_cmd: "./a.out" - }, - { - id: 9, - name: "C (gcc 4.8.5)", - is_archived: true, - source_file: "main.c", - compile_cmd: "/usr/local/gcc-4.8.5/bin/gcc %s main.c", - run_cmd: "./a.out" - }, - - { - id: 10, - name: "C++ (g++ 7.2.0)", - is_archived: true, - source_file: "main.cpp", - compile_cmd: "/usr/local/gcc-7.2.0/bin/g++ %s main.cpp", - run_cmd: "LD_LIBRARY_PATH=/usr/local/gcc-7.2.0/lib64 ./a.out" - }, - { - id: 11, - name: "C++ (g++ 6.4.0)", - is_archived: true, - source_file: "main.cpp", - compile_cmd: "/usr/local/gcc-6.4.0/bin/g++ %s main.cpp", - run_cmd: "LD_LIBRARY_PATH=/usr/local/gcc-6.4.0/lib64 ./a.out" - }, - { - id: 12, - name: "C++ (g++ 6.3.0)", - is_archived: true, - source_file: "main.cpp", - compile_cmd: "/usr/local/gcc-6.3.0/bin/g++ %s main.cpp", - run_cmd: "LD_LIBRARY_PATH=/usr/local/gcc-6.3.0/lib64 ./a.out" - }, - { - id: 13, - name: "C++ (g++ 5.4.0)", - is_archived: true, - source_file: "main.cpp", - compile_cmd: "/usr/local/gcc-5.4.0/bin/g++ %s main.cpp", - run_cmd: "LD_LIBRARY_PATH=/usr/local/gcc-5.4.0/lib64 ./a.out" - }, - { - id: 14, - name: "C++ (g++ 4.9.4)", - is_archived: true, - source_file: "main.cpp", - compile_cmd: "/usr/local/gcc-4.9.4/bin/g++ %s main.cpp", - run_cmd: "LD_LIBRARY_PATH=/usr/local/gcc-4.9.4/lib64 ./a.out" - }, - { - id: 15, - name: "C++ (g++ 4.8.5)", - is_archived: true, - source_file: "main.cpp", - compile_cmd: "/usr/local/gcc-4.8.5/bin/g++ %s main.cpp", - run_cmd: "LD_LIBRARY_PATH=/usr/local/gcc-4.8.5/lib64 ./a.out" - }, - { - id: 16, - name: "C# (mono 5.4.0.167)", - is_archived: true, - source_file: "Main.cs", - compile_cmd: "/usr/local/mono-5.4.0.167/bin/mcs %s Main.cs", - run_cmd: "/usr/local/mono-5.4.0.167/bin/mono Main.exe" - }, - { - id: 17, - name: "C# (mono 5.2.0.224)", - is_archived: true, - source_file: "Main.cs", - compile_cmd: "/usr/local/mono-5.2.0.224/bin/mcs %s Main.cs", - run_cmd: "/usr/local/mono-5.2.0.224/bin/mono Main.exe" - }, - { - id: 18, - name: "Clojure (1.8.0)", - is_archived: true, - source_file: "main.clj", - run_cmd: "/usr/bin/java -cp /usr/local/clojure-1.8.0/clojure-1.8.0.jar clojure.main main.clj" - }, - { - id: 19, - name: "Crystal (0.23.1)", - is_archived: true, - source_file: "main.cr", - compile_cmd: "/usr/local/crystal-0.23.1-3/bin/crystal build %s main.cr", - run_cmd: "./main" - }, - { - id: 20, - name: "Elixir (1.5.1)", - is_archived: true, - source_file: "main.exs", - run_cmd: "/usr/local/elixir-1.5.1/bin/elixir main.exs" - }, - { - id: 21, - name: "Erlang (OTP 20.0)", - is_archived: true, - source_file: "main.erl", - run_cmd: "/bin/sed -i \"s/^/\\n/\" main.erl && /usr/local/erlang-20.0/bin/escript main.erl" - }, - { - id: 22, - name: "Go (1.9)", - is_archived: true, - source_file: "main.go", - compile_cmd: "/usr/local/go-1.9/bin/go build %s main.go", - run_cmd: "./main" - }, - { - id: 23, - name: "Haskell (ghc 8.2.1)", - is_archived: true, - source_file: "main.hs", - compile_cmd: "/usr/local/ghc-8.2.1/bin/ghc %s main.hs", - run_cmd: "./main" - }, - { - id: 24, - name: "Haskell (ghc 8.0.2)", - is_archived: true, - source_file: "main.hs", - compile_cmd: "/usr/local/ghc-8.0.2/bin/ghc %s main.hs", - run_cmd: "./main" - }, - { - id: 25, - name: "Insect (5.0.0)", - is_archived: true, - source_file: "main.ins", - run_cmd: "/usr/local/insect-5.0.0/insect main.ins" - }, - { - id: 26, - name: "Java (OpenJDK 9 with Eclipse OpenJ9)", - is_archived: true, - source_file: "Main.java", - compile_cmd: "/usr/local/openjdk9-openj9/bin/javac %s Main.java", - run_cmd: "/usr/local/openjdk9-openj9/bin/java Main" - }, - { - id: 27, - name: "Java (OpenJDK 8)", - is_archived: true, - source_file: "Main.java", - compile_cmd: "/usr/lib/jvm/java-8-openjdk-amd64/bin/javac %s Main.java", - run_cmd: "/usr/lib/jvm/java-8-openjdk-amd64/bin/java Main", - }, - { - id: 28, - name: "Java (OpenJDK 7)", - is_archived: true, - source_file: "Main.java", - compile_cmd: "/usr/lib/jvm/java-7-openjdk-amd64/bin/javac %s Main.java", - run_cmd: "/usr/lib/jvm/java-7-openjdk-amd64/bin/java Main", - }, - { - id: 29, - name: "JavaScript (nodejs 8.5.0)", - is_archived: true, - source_file: "main.js", - run_cmd: "/usr/local/node-8.5.0/bin/node main.js" - }, - { - id: 30, - name: "JavaScript (nodejs 7.10.1)", - is_archived: true, - source_file: "main.js", - run_cmd: "/usr/local/node-7.10.1/bin/node main.js" - }, - { - id: 31, - name: "OCaml (4.05.0)", - is_archived: true, - source_file: "main.ml", - compile_cmd: "/usr/local/ocaml-4.05.0/bin/ocamlc %s main.ml", - run_cmd: "./a.out" - }, - { - id: 32, - name: "Octave (4.2.0)", - is_archived: true, - source_file: "file.m", - run_cmd: "/usr/local/octave-4.2.0/bin/octave-cli -q --no-gui --no-history file.m" - }, - { - id: 33, - name: "Pascal (fpc 3.0.0)", - is_archived: true, - source_file: "main.pas", - compile_cmd: "/usr/local/fpc-3.0.0/bin/fpc %s main.pas", - run_cmd: "./main" - }, - { - id: 34, - name: "Python (3.6.0)", - is_archived: true, - source_file: "main.py", - run_cmd: "/usr/local/python-3.6.0/bin/python3 main.py" - }, - { - id: 35, - name: "Python (3.5.3)", - is_archived: true, - source_file: "main.py", - run_cmd: "/usr/local/python-3.5.3/bin/python3 main.py" - }, - { - id: 36, - name: "Python (2.7.9)", - is_archived: true, - source_file: "main.py", - run_cmd: "/usr/local/python-2.7.9/bin/python main.py" - }, - { - id: 37, - name: "Python (2.6.9)", - is_archived: true, - source_file: "main.py", - run_cmd: "/usr/local/python-2.6.9/bin/python main.py" - }, - { - id: 38, - name: "Ruby (2.4.0)", - is_archived: true, - source_file: "main.rb", - run_cmd: "/usr/local/ruby-2.4.0/bin/ruby main.rb" - }, - { - id: 39, - name: "Ruby (2.3.3)", - is_archived: true, - source_file: "main.rb", - run_cmd: "/usr/local/ruby-2.3.3/bin/ruby main.rb" - }, - { - id: 40, - name: "Ruby (2.2.6)", - is_archived: true, - source_file: "main.rb", - run_cmd: "/usr/local/ruby-2.2.6/bin/ruby main.rb" - }, - { - id: 41, - name: "Ruby (2.1.9)", - is_archived: true, - source_file: "main.rb", - run_cmd: "/usr/local/ruby-2.1.9/bin/ruby main.rb" - }, - { - id: 42, - name: "Rust (1.20.0)", - is_archived: true, - source_file: "main.rs", - compile_cmd: "/usr/local/rust-1.20.0/bin/rustc %s main.rs", - run_cmd: "./main" - } ] \ No newline at end of file diff --git a/docs/api/docs.md b/docs/api/docs.md index 0dc03661..d26c0c5f 100644 --- a/docs/api/docs.md +++ b/docs/api/docs.md @@ -34,7 +34,7 @@ For the production use, consider [deploying your own instance](https://github.co ::: ## Version -This document describes Judge0 API [v1.7.1](https://github.com/judge0/api/tree/v1.7.1). +This document describes Judge0 API [v1.7.1-extra](https://github.com/judge0/api/tree/v1.7.1-extra). ## Date and time formats [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) standard is used. diff --git a/judge0-api.conf b/judge0-api.conf index e7f2846d..d6ad7c93 100644 --- a/judge0-api.conf +++ b/judge0-api.conf @@ -282,11 +282,11 @@ ENABLE_PER_PROCESS_AND_THREAD_MEMORY_LIMIT= ALLOW_ENABLE_PER_PROCESS_AND_THREAD_MEMORY_LIMIT= # Limit size of files created (or modified) by the program in kilobytes. -# Default: 1024 +# Default: 5120 MAX_FILE_SIZE= # Maximum custom MAX_FILE_SIZE. -# Default: 4096 +# Default: 10240 MAX_MAX_FILE_SIZE= # Run each program this many times and take average of time and memory. diff --git a/public/docs.html b/public/docs.html index bbbcc69b..9ecd8cc9 100644 --- a/public/docs.html +++ b/public/docs.html @@ -49,7 +49,7 @@

Official public API deploying your own instance of the Judge0 API.

Version

-

This document describes Judge0 API v1.7.1.

+

This document describes Judge0 API v1.7.1-extra.

Date and time formats

ISO 8601 standard is used.

Example: 2016-09-11T10:19:35Z

@@ -1653,7 +1653,7 @@

Example URI

GET& }

Version

Version
GET/version

Returns current version.

Example URI

GET https://api.judge0.com/version

Isolate

Isolate
GET/isolate

Returns result of isolate --version.

Example URI

GET https://api.judge0.com/isolate

License

License
GET/license

Returns a license.

-

Example URI

GET https://api.judge0.com/license

Generated by aglio on 06 May 2020