Skip to content

Releases: EtiennePerot/safe-code-execution

v0.8.0

03 Oct 01:08
v0.8.0
eaa142a
Compare
Choose a tag to compare

v0.8.0 is a compatibility-fix release.

  • The default value of the WEB_ACCESSIBLE_DIRECTORY_PATH valve has been fixed. This fixes clickable links to generated files in the Open WebUI code evaluation function. Fixes issue #16.
  • A new REQUIRE_RESOURCE_LIMITING valve has been added. This is enabled by default, but may be turned off to remove the dependency on cgroups v2 for code evaluation sandbox resource limiting. This is unsafe to do in multi-user setups but may be OK for trusted single-user setups, and enables code evaluation sandboxes to run on old Linux distributions that only have cgroups v1. Fixes issue #14.
  • The Open WebUI setup page has been updated to include instructions on how to lock down the code evaluation function and tool for multi-user setups. Fixes issue #5.
  • Memory limits are now enforced in userspace as well as by the host kernel. This should be more effective at proactively killing sandboxes using too many system resources.
  • The structure of the codebase has been reorganized, and documented here. This should be invisible to users.
  • The codebase has tests now. This should be invisible to users other than providing more stability across releases.

v0.7.0

29 Sep 07:53
v0.7.0
6f0f266
Compare
Choose a tag to compare

v0.7.0 contains the following changes over v0.6.0:

  • The code execution tool will now display the code it has run as a citation. Thanks to @xiaopa233 for contributing this feature.
  • The code execution tool will now internally return the code that it has run. This may help the model using the tool to better interpret the result of the code execution. Thanks to @xiaopa233 for contributing this feature.
  • Code execution sandboxes now run with the same timezone setting as the Open WebUI installation. Thanks to @jedwards1230 for contributing this feature.
  • Both the code execution tool and function now include update checking functionality (but not auto-update). This is turned on by default, but may be disabled using a valve or an environment variable; see documentation.
  • The code execution tool and function are now encoded as ASCII files, which fixes issue #20 related to using them in Open WebUI installations that do not use a UTF-8 system encoding.
  • Small compatibility fix for some systems where /proc/self/mountinfo contains more than 10 fields per line.

v0.6.0

23 Sep 03:56
v0.6.0
0ff908d
Compare
Choose a tag to compare

v0.6.0 fixes support for Open WebUI v0.3.22, which had broken this tool (see issue #11 for details).

The tool and function now both support Open WebUI v0.3.22 and are backwards-compatible with earlier Open WebUI versions too.

This release also fixes additional compatibility issues when not using Docker's --privileged=true mode, documented on the setup docs.

v0.5.0

23 Sep 03:54
v0.5.0
44b33e3
Compare
Choose a tag to compare

Release v0.5.0 now supports displaying files created during code execution. This feature exists in the "function" only (not in the "tool"), as the tool is meant to be non-interactive and for the LLM's internal use only, whereas the function is user-facing.

Code execution function

This feature idea came from a comment by @sultanjulyan in this issue. See also issue #4.

v0.4.0

23 Sep 03:52
v0.4.0
088b118
Compare
Choose a tag to compare

Version 0.4.0 fixes issues with cgroups within the container, and adds more debugging information when the sandbox fails to start. It also better differentiates between types of errors, such as "the code that was asked to be executed failed" vs "the code took used too much memory" vs "the code ran for too long" vs "the sandbox failed to initialize".

v0.3.0

23 Sep 03:50
v0.3.0
4a56ad7
Compare
Choose a tag to compare

Initial release to GitHub. The tool's previous versions existed only on the Open WebUI portal prior to this release. Going forward, releases will be available on both the portal and GitHub.