Skip to content

Judge0 Extra CE v1.13.0

Choose a tag to compare

@hermanzdosilovic hermanzdosilovic released this 10 Mar 00:12
· 175 commits to master since this release

v1.13.0-extra (2021-03-10)

Huge thanks to Filtered for sponsoring this release.

New Features

  • Added 4 new languages and archived 4 languages. In total, there are 21 active languages. Archived languages cannot be used anymore.
ID Name Status
16 C# (.NET Core SDK 3.1.302) archived
17 C# (Mono 6.10.0.104) archived
18 C# Test (.NET Core SDK 3.1.302, NUnit 3.12.0) archived
19 F# (.NET Core SDK 3.1.302) archived
21 C# (.NET Core SDK 3.1.406) NEW
22 C# (Mono 6.12.0.122) NEW
23 C# Test (.NET Core SDK 3.1.406, NUnit 3.12.0) NEW
24 F# (.NET Core SDK 3.1.406) NEW
  • Added support for enable_network configuration flag. With the new ALLOW_ENABLE_NETWORK configuration variable, usage of this flag can be permitted or denied. Furthermore, with the new ENABLE_NETWORK configuration variable the default value of this flag can be set for every submission.
  • Added USE_DOCS_AS_HOMEPAGE configuration variable, which allows you to show or hide Judge0 homepage. Now, by default, Judge0 homepage is empty and does not show the API documentation. However, you can still access the API documentation via /docs.

Bug Fixes

  • Fixed the bug where the wrong number of workers would be reported via /workers.

Security Fixes

  • HIGH Fixed a security bug where certain submission configuration settings would allow the user to run a program that would run infinetly long. With this fix wall_time_limit must be at least 1 second.

Other Changes

  • Allow setting the max_file_size and stack_limit to 0 kB.
  • Allow setting the cpu_time_limit and cpu_extra_time to 0 seconds.
  • Updated to a port 2358 as a new default port for Judge0 as a online code execution service.
  • Updated the default number of Judge0 Workers, those that acutally run the user's code, to the 2*nproc. This has been shown as a good choice for general purpose use-case.
  • Updated the default number of Rails threads to nproc and Rails processes to 2. This has been shown as a good choice for general purpose use-case.
  • Updated Let's Encrypt Docker image for deployment with HTTPS.
  • Updated Nginx proxy Docker image that is used in development setup and deployment with HTTPS.
  • Fixed documentation typos. Thank you @balababa.
    • Pull Requests: #245
  • Updated base image to judge0/compilers:1.4.0 which uses updated Isolate to @ad39cc4d.

Deployment Procedure

Judge0 is collecting telemetry data to help understand how to improve the product and to better understand how Judge0 is used in various production environments. Read more about telemetry here.

Please note that Judge0 has only been tested on Linux and macOS, and might not work on Windows, thus we do not provide support for it.

With HTTP

  1. Install Docker and Docker Compose.
  2. Download and extract the release archive:
wget https://github.com/judge0/judge0/releases/download/v1.13.0-extra/judge0-v1.13.0-extra.zip
unzip judge0-v1.13.0-extra.zip
  1. Run all services and wait a few seconds until everything is initialized:
cd judge0-v1.13.0-extra
docker-compose up -d db redis
sleep 10s
docker-compose up -d
sleep 5s
  1. Your instance of Judge0 Extra CE v1.13.0 is now available at http://<IP ADDRESS OF YOUR SERVER>.

With HTTPS (SSL/TLS)

  1. Install Docker and Docker Compose.
  2. Download and extract the release archive:
wget https://github.com/judge0/judge0/releases/download/v1.13.0-extra/judge0-v1.13.0-extra-https.zip
unzip judge0-v1.13.0-extra-https.zip
  1. Change directory to judge0-v1.13.0-extra-https:
cd judge0-v1.13.0-extra-https
  1. Edit docker-compose.yml and change variables VIRTUAL_HOST, LETSENCRYPT_HOST and LETSENCRYPT_EMAIL.
  2. Run all services and wait a few seconds until everything is initialized:
docker-compose up -d db redis
sleep 10s
docker-compose up -d
sleep 5s
  1. Your instance of Judge0 Extra CE v1.13.0 is now available at https://<YOUR DOMAIN>.