Commit Graph

4482 Commits

Author SHA1 Message Date
Daniel Salazar
e8e8fa92c2 cleanup: more benign changes (#1889) 2025-11-02 06:30:30 -08:00
Daniel Salazar
93aaeef9e0 fix: add back non-functional changes (#1888) 2025-11-02 06:17:59 -08:00
Daniel Salazar
758bef0582 Revert: commits for user metadata changes (#1887) 2025-11-02 06:09:13 -08:00
Daniel Salazar
823c06c371 fix: don't set metadata until migration (#1886) 2025-11-02 04:42:08 -08:00
Daniel Salazar
89a3a3228f fix: bad amount of sql params (#1880) 2025-11-01 17:52:43 -07:00
Daniel Salazar
98cf4bbb08 fix: bad amount of sql params (#1879) 2025-11-01 17:48:54 -07:00
Daniel Salazar
7085bcbb93 fix: bad naming (#1878) 2025-11-01 17:42:22 -07:00
Daniel Salazar
71fb04cd55 fix: allow stripe header and commit db migration (#1877)
* fix: allow stripe header

* fix: commit db migration
2025-11-01 16:16:49 -07:00
Xiaochen Cui
a0cd6ed781 ci: expose server logs (#1860) 2025-10-31 15:56:49 -07:00
Xiaochen Cui
38aa9009af ci: disable job "puterjs (browser env, playwright)" (#1871) 2025-10-31 15:56:21 -07:00
Daniel Salazar
603746951b feat: ui for dev account + util decorators for controllers in extension (#1864)
* fix: IPC trigger for dev account setup + util decorators for ext controllers

* feat: allow extension to bypass json

* fix: ts building in volatile
2025-10-31 15:48:21 -07:00
KernelDeimos
7cc79077d1 fix(fs): better errors for unresolved selectors
Adds an appropriate error at a couple different levels. The first is in
FilesystemService. Callers of FilesystemService.node are expected to
provide either an absolute path or an instance of a filesystem node
selector, but there wasn't an explicit check for this so instead an
arbitrary error (read property of undefined) would be thrown. The second
is a higher-level APIError in the batch executor that's a bit more
helpful than a 500 Internal Server Error.
2025-10-31 15:26:15 -04:00
Nariman Jelveh
d6a168e402 Revert "Update Norwegian Nynorsk translations in nn.js (#1859)" (#1874)
This reverts commit 783cd24e8b.
2025-10-31 11:33:20 -07:00
Palla. Gnana Sai Kiran
783cd24e8b Update Norwegian Nynorsk translations in nn.js (#1859)
Co-authored-by: Gnanasaikiran <gnanasaikiranpalla@gmail.com>
2025-10-31 11:33:06 -07:00
KernelDeimos
08e9ab399a clean: use window.sleep in place of setTimeout
Also another change to make duration handling consistent for the two
blocks of code that have the "ensure 2 seconds" logic.
2025-10-30 19:40:50 -04:00
KernelDeimos
e37e009305 refactor: reduce indentation and arithmetic
This commit reduces the indentation level and complex arithmetic inside
the createTempUser function in initgui. It is suspected that this change
should greatly reduce measures of the "cognitive complexity" metric.
2025-10-30 19:03:39 -04:00
KernelDeimos
52d4ca6caf fix: according to jquery spec, this is more robust
Apparently the callback operand of $.fn.fadeOut may be called more than
once if there are multiple matching elements. Although we expect there
to only be one element matching the selector `".captcha-modal"`, someone
editing the CSS and HTML would not expect such consequences to the
logic of captcha.
2025-10-30 19:03:39 -04:00
KernelDeimos
ec505366e6 fix: do not animate non-existing captcha modal
Calling `.fadeOut()` on the result of a jquery selector (i.e. the
evaluation of `$('.some-element-class')`, when it returns an object with
`length=0`) is a NOOP. That's right, it doesn't throw an error; it just
does nothing. This was preventing a temporary user from being created
when `.captcha-modal` isn't present because [the code intended to execute
after the animation] was never run. (square brackets for clarity because
the English is inherently ambiguous)
2025-10-30 19:03:39 -04:00
jelveh
e70c871c4d Update ExecService.js 2025-10-30 14:55:14 -07:00
jelveh
9b7c4205fe I swear taskbar is fixed now 2025-10-30 13:02:32 -07:00
KernelDeimos
c12485995a dev: restore simplification in api.d.ts
The PR I merged before putting this one up had my changes to api.d.ts
which I thought where on this branch - turns out I only thought that
because this branch had that one as a parent.

However #1818 has a simplification that this change overwrites. I'd like
to keep this simplification so this commit is restoring it.
2025-10-30 14:06:28 -04:00
KernelDeimos
571cd91380 dev: update deleteUser to use FS provider
The previous implementation of deleteUser was hard-coded to use the
PuterFSProvider file system type's storage implementation specifically,
even if a different filesystem type is mounted as root or for a
particular user.

This change was tested by creating a user, adding some fsentries, and
then deleting that user. The following classes of filesystem entry were
checked:
- [x] user created directory (with contents)
  - [x] directory fsentry was deleted
- [x] user created directory (empty)
  - [x] directory fsentry was deleted
- [x] immutable directory
  - [x] directory fsentry was deleted
- [x] user created file
  - [x] file fsentry was deleted
  - [x] file storage was deleted
- [x] user created file in trash
  - [x] file fsentry was deleted
  - [x] file storage was deleted
2025-10-30 14:06:28 -04:00
KernelDeimos
896082ba62 refactor: use ll_read in file.js
Accessing the storage object directly duplicates effort of locating the
correct filesystem provider based on the mountpoint of the file with the
contents being requested; an effort that file.js did not perform which
made it incompatible with filesystem mountpoints.

This change has been made to make it easier to move filesystem type
implementations to extensions, because accessing storage directly will
not be supported after puterfs is an extension.
2025-10-30 14:06:28 -04:00
Xiaochen Cui
831d9017de ai: return reasoning tokens in the streaming mode (#1356) 2025-10-30 10:47:30 -04:00
jelveh
5d22ad1edb Update UIWindow.js 2025-10-29 18:30:36 -07:00
Nariman Jelveh
64f86daddb feat: add speech2text (#1855)
- A new stt driver in `AIInterfaceService` and `PuterAIModule`.
- added methods for audio transcription and translation in the speech-to-text interface.
- updated cost mapping for stt models in `openAiCostMap.ts`.
- Updated permissions and interfaces to support new speech-to-text features.
2025-10-29 12:04:09 -07:00
Nariman Jelveh
b6af2df257 Revert "Complete Traditional Chinese translations (#1501) (#1822)" (#1856)
This reverts commit ff7f6d7f94.
2025-10-28 23:04:29 -07:00
Arun kumar
ff7f6d7f94 Complete Traditional Chinese translations (#1501) (#1822)
Co-authored-by: Arun24-8 <arunkumarbenuku118@gmail.com>
2025-10-28 23:04:10 -07:00
Nariman Jelveh
861aeddf3e feat: add OpenAI support to text-to-speech (#1853)
- added support for OpenAI as a tts provider in `AIInterfaceService` and `PuterAIModule`.
- Updated cost mapping for OpenAI tts models in `openAiCostMap.ts`.
- improved `Txt2SpeechOptions` interface to include new parameters for provider, model, and response format.
- added tests for OpenAI provider in `txt2speech.test.js` to ensure functionality.
2025-10-28 18:51:04 -07:00
Daniel Salazar
62b6582d85 feat: meter ll_read for the person reading (#1854) 2025-10-28 18:35:27 -07:00
Nariman Jelveh
0507f1782d Merge branch 'main' of https://github.com/HeyPuter/puter 2025-10-28 17:09:40 -07:00
Nariman Jelveh
507b6d343e Fix multiple issues with taskbar and windows being affected by the side panel 2025-10-28 17:09:28 -07:00
Xiaochen Cui
c93a53ead2 ci: init e2e test for browser env, tidy other tests (#1796)
* ci: init e2e test for browser env

stash changes

* test: update fsentry definition, add tests

stash changes

* test: pass puter-js mkdir test

* test: add test for puter-js move

* tidy code

* tidy code

* doc: add docs for playwright test

* recover memoryfs

* test: puter-js readdir/stat

* test: puter-js write

* test: puter-js read

* test: puter-js move_cart

* test: fix failed tests on move

* tests: rename files

* test: puter-js copy_cart

* tests: puter-js batch/delete, read config from file

* ci: add vitest

* ci: update names and timeout

* ci: simplify playwright-test

* ci: simplify api-test

* move "api-tester" from tools to tests

* test: update example config

* test: remove folder tests/api-tester/ci

* test: unify config location

* test: remove unused files

* ci: fix wrong config

* ci: fix wrong path

* test: add docs

* ci: update timeout, print artifact url
2025-10-28 16:35:37 -07:00
Eric Dubé
c3d66503ab dev: add /update-fsentry-thumbnail (#1794) 2025-10-28 17:31:17 -04:00
Daniel Salazar
0bb14261c2 feat: devCenter open ui message (#1850) 2025-10-28 13:41:00 -07:00
Nariman Jelveh
d7f10b2205 Update call.js (#1849) 2025-10-28 13:25:07 -07:00
Daniel Salazar
ff9932b2f3 fix: dbkv raw import (#1848) 2025-10-28 13:04:54 -07:00
Nariman Jelveh
b1e3430a9d Set correct URL for test video in txt2vid 2025-10-27 19:00:40 -07:00
Reynaldi Chernando
117f8e393d Add UploadOptions for Puter.js types (#1832)
* Add UploadOptions

* Add name option
2025-10-27 18:15:27 -07:00
Daniel Salazar
d1ae2bfe80 chore: update typedefs and fix dbkv issue (#1840)
* chore: update typedefs

* fix:dbkv decr
2025-10-27 18:13:49 -07:00
KernelDeimos
cd5d0ca5dc dev(extensions): [+] puterfs (copies memoryfs)
This extension has a copy of memoryfs which is exposed as `testfs`. The
purpose of this is to register a new filesystem type from an extension
to ensure it works as expected and to get feedback on a working example.
2025-10-27 19:54:36 -04:00
KernelDeimos
dda1c00614 dev(extensions): exports and types for FS 2025-10-27 19:54:36 -04:00
KernelDeimos
a36b76e030 dev(extensions): event to register FS providers 2025-10-27 19:54:36 -04:00
Hariz S.
2487251bb9 Improved public folder file links (#1687)
* Don't update URL when opening public files via direct URL

* Alert user when attempting to open a nonexistent file

* Fix toolbar autohide in public file urls

* Remove extraneous debug logs

* Properly define stat var in public folder URL handling

* Update window URL when focusing an app opened through file URL

* Localize error messages
2025-10-27 15:35:11 -07:00
Daniel Salazar
fd8a88b8f4 fix: lessen alert triggering for metering (#1837) 2025-10-27 12:41:48 -07:00
Nariman Jelveh
2c7343115a Add sora 2 support (#1834)
* Update OpenAI package to version 6.7.0 and add video generation capabilities

- Updated `openai` dependency in `package-lock.json` and `package.json`.
- Introduced new permissions for video generation in `hardcoded-permissions.js`.
- Added video generation service in `AIInterfaceService.js` and registered it in `PuterAIModule.js`.
- Implemented coercion for video streams in `CoercionService.js`.
- Updated driver service to include video generation.
- Added `txt2video` method and options in `AI.js` and corresponding TypeScript definitions in `index.d.ts`.

* Update openaiVideoCostMap.ts

* Revert "Update openaiVideoCostMap.ts"

This reverts commit 9e66f93605.

* change `txt2video` to `txt2vid`
2025-10-27 12:27:52 -07:00
Nariman Jelveh
5ae8ed98eb Fix issues with Settings accessibility 2025-10-26 17:42:56 -07:00
Nariman Jelveh
bce244b867 Remove taskbar item animation 2025-10-26 17:12:21 -07:00
Nariman Jelveh
3720369d87 default txt2img model set to gpt-image-1-mini 2025-10-26 11:52:28 -07:00
Nariman Jelveh
5476389795 add support for gpt-image-1-mini 2025-10-26 11:33:44 -07:00