Skip to content

Releases: srtab/daiv-sandbox

v0.1.0-rc.10

30 Dec 01:15
Compare
Choose a tag to compare
v0.1.0-rc.10 Pre-release
Pre-release

Changed

  • Moved LANGUAGE_BASE_IMAGES from daiv_sandbox/main.py to daiv_sandbox/languages.py.

Fixed

  • Changed strategy to determine where the run will execute inside the container. Now the default user and working directory are considered to avoid privileges issues.

v0.1.0-rc.9

27 Dec 02:37
Compare
Choose a tag to compare
v0.1.0-rc.9 Pre-release
Pre-release

Fixed

  • Fixed issue when images have limited privileges.

Chore:

  • Updated dependencies:
    • ipython from 8.30 to 8.31
    • pydantic from 2.10.3 to 2.10.4
    • pydantic-settings from 2.6.1 to 2.7.0
    • ruff from 0.8.2 to 0.8.4
    • mypy from 1.13.0 to 1.14.0

v0.1.0-rc.8

27 Dec 00:55
Compare
Choose a tag to compare
v0.1.0-rc.8 Pre-release
Pre-release

Added

  • Added HOST and PORT settings to allow overriding the host and port of the service.
  • Added LOG_LEVEL setting to allow overriding the log level of the service.

Fixed

  • Fixed logging configuration for daiv_sandbox logger, no logs where being written to the console.
  • Fixed SENTRY_ENABLE_TRACING setting to be a boolean or an integer.

v0.1.0-rc.7

16 Dec 16:10
Compare
Choose a tag to compare
v0.1.0-rc.7 Pre-release
Pre-release

Added

  • Added ping method to SandboxDockerSession to check if the Docker client is responding.

Changed

  • Changed health endpoint to check if the Docker client is responding and avoid starting the service if it is not responding.
  • Changed default DOCKER_GID to 991.

v0.1.0-rc.6

12 Dec 01:10
Compare
Choose a tag to compare
v0.1.0-rc.6 Pre-release
Pre-release

Added

  • Added SENTRY_ENABLE_TRACING configuration to enable Sentry tracing.
  • Added EXPOSE 8000 to the Dockerfile to explicitly expose the port.

Changed

  • Updated dependencies:
    • ipython from 8.29 to 8.30
    • pyopenssl from 24.2.1 to 24.3.0
    • ruff from 0.8.0 to 0.8.2

v0.1.0-rc.5

11 Dec 13:15
Compare
Choose a tag to compare
v0.1.0-rc.5 Pre-release
Pre-release

Added

  • Added Dockerfile args to allow overriding the application UID and GID, and docker GID.

Fixed

  • Fixed the Dockerfile to create the app user with the correct group and user IDs to avoid permission issues.
  • Fixed the Dockerfile to create the docker group with the correct GID to allow the app user to access the docker socket.

v0.1.0-rc.4

07 Dec 13:41
Compare
Choose a tag to compare
v0.1.0-rc.4 Pre-release
Pre-release

Added

  • Added HEALTHCHECK to the Dockerfile.

Fixed

  • Fixed Dockerfile to create the app user with the correct home directory defined.

Changed

  • Changed /health/ endpoint to /-/health/.
  • Changed /version/ endpoint to /-/version/.

v0.1.0-rc.3

07 Dec 11:04
Compare
Choose a tag to compare
v0.1.0-rc.3 Pre-release
Pre-release

Changed

  • Improved Dockerfile for production use.
  • Updated dependencies:
    • fastapi;
    • pydantic;
    • sentry-sdk.

Fixed

  • Fixed issue on run_id being passed as an UUID to the SandboxDockerSession class instead of a str.
  • Fixed missing curl dependency on Dockerfile for healthcheck.

v0.1.0-rc.1

20 Nov 23:50
Compare
Choose a tag to compare
v0.1.0-rc.1 Pre-release
Pre-release

Added

  • Added logging to the application.
  • Added __version__ to the project.
  • Added health endpoint to check if the service is healthy.
  • Added version endpoint to get the version of the service.
  • Added API Key authentication to command run endpoint.
  • Added more metadata to the OpenAPI schema.
  • Added support to pass a workdir to the command run endpoint.
  • Added to settings KEEP_TEMPLATE to allow keeping image templates after command execution.
  • Added to settings RUNTIME to allow choosing the container runtime.

Changed

  • Changed Pydantic models to specific schemas.py file.
  • Changed way to declare root_path of endpoints to be more maintainable.
  • Changed the way to extract changed files from the container, now it returns changed files by the executed command.
  • Changed README.md to include usage examples, security information and configuration options.
  • Changed settings to support loading secrets from /run/secrets directory.
  • Changed settings to prefix all environment variables with DAIV_SANDBOX_.
  • Moved ipython dependency to dev-dependencies.

Removed

  • Removed --workers from the CMD in the Dockerfile to allow scaling using docker replicas.
  • Removed PROJECT_NAME from the configuration.
  • Removed get-docker-secret dependency.
  • Removed python-decouple dependency.
  • Removed python-multipart dependency.

Fixed

  • Fixed issue on command quoting using shlex.quote, which was causing double quoting of the command.
  • Fixed issue on extracting changed files from the container, it was returning a tar inside another tar.
  • Fixed Docker image with latest tag not being pushed to the repository.

v0.1.0-alpha.2

18 Nov 19:03
Compare
Choose a tag to compare
v0.1.0-alpha.2 Pre-release
Pre-release

Changed

  • Changed execute_command method to use /bin/sh -c to properly handle shell quoting.

Fixed

  • Fixed issue extracting changed files from the container when command exited with non-zero code.
  • Fixed containers.run method to use tty=True to properly handle interactive sessions.