Commit Graph

172 Commits

Author SHA1 Message Date
Etienne Perot
fdd27aa321
fix: close temporary file after creating it.
This fixes "The process cannot access the file
because it is being used by another process"
errors on Windows.

The file is still automatically deleted by the
`os.unlink` call later in the function.

Updates #5606
Fixes #5642
2024-09-23 23:22:47 -07:00
Timothy J. Baek
00f6b4bf09 refac 2024-09-21 15:35:35 +02:00
Timothy J. Baek
9126ceac08 fix: WEBUI_AUTH=False not working issue 2024-09-21 15:33:34 +02:00
Timothy J. Baek
eb9ad47ef8 refac: temp tools & functions files 2024-09-20 00:12:52 +02:00
Etienne Perot
6477bf37fe
fix: restore __file__ variable for imported toolkits and functions
Commit cf86ba7786 changed the way toolkits
and functions were imported to use `exec`, whereas they previously were
written to files and `import`ed. The use of `exec` means that
module-global variables such as `__file__` are no longer defined.

This breaks https://github.com/EtiennePerot/open-webui-code-execution
(code execution tool for Open WebUI), as the module needs to re-execute
its own code in a subprocess in order to properly sandbox itself. This
is done using `__file__` in order to know where the module's code is
located.

This PR creates a temporary in-memory file that contains the imported
toolkit or function's code and exists only during the import process.
Then it injects the path to this in-memory file as the `__file__`
variable in the `exec` context. This restores the ability for the
toolkit or function being imported to rely on `__file__`.
2024-09-18 01:08:30 -07:00
Timothy J. Baek
db0c576f48 refac 2024-09-16 07:14:17 +02:00
Timothy J. Baek
d0df2cbe53 fix: disable "enable new sign ups" not working issue 2024-09-14 23:13:52 +01:00
Timothy J. Baek
47e9c12fc2 refac 2024-09-13 00:41:20 -04:00
Timothy J. Baek
522afbb0a0 refac 2024-09-10 04:37:06 +01:00
Timothy J. Baek
4354f270ce refac 2024-09-10 02:27:50 +01:00
Timothy J. Baek
5c8fb4b3d5 refac: web search 2024-09-07 04:50:29 +01:00
Timothy J. Baek
ff46fe2b4a refac 2024-09-07 03:09:57 +01:00
Timothy J. Baek
02d5bca44d fix: tools & function not installing requirements 2024-09-06 18:35:43 +02:00
Timothy J. Baek
14eda1bf5b fix: pdf download FONTS_DIR issue 2024-09-06 15:52:23 +02:00
Timothy J. Baek
b35bbaade2 fix: extract_frontmatter issue 2024-09-05 20:35:58 +02:00
Timothy J. Baek
0c1fab09ff refac 2024-09-05 18:55:31 +02:00
Timothy J. Baek
92a88df484 refac 2024-09-04 20:00:47 +02:00
Timothy J. Baek
f2f713023d refac 2024-09-04 19:57:41 +02:00
Timothy J. Baek
cf86ba7786 refac: tools & functions 2024-09-04 19:55:20 +02:00
Timothy J. Baek
d6fc0ccf65 fix 2024-09-04 19:03:51 +02:00
Timothy J. Baek
3afd66d50f fix: tools & functions import 2024-09-04 18:59:50 +02:00
Timothy J. Baek
03d5a670f6 refac: mv backend files to /open_webui dir 2024-09-04 16:54:48 +02:00