Commit Graph

3701 Commits

Author SHA1 Message Date
Neal Shah d8a4180b4f Puter.js workers api (#1339)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
2025-07-08 13:29:02 -07:00
Zac0511 858929a3b9 Add a basic Firebase Studio config file (#1338) 2025-07-08 08:32:19 -07:00
jelveh 1952549f5a Add new Mistral model coercions to puter.js
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
2025-07-07 23:07:32 -07:00
jelveh f50ac9e8f9 Update Mistral models 2025-07-07 22:50:47 -07:00
KernelDeimos cbfb9283d1 fix: add safeguard in case server response is wrong
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
2025-07-07 17:25:01 -04:00
KernelDeimos 405564f55f fix: update refresh_actor cache invalidation 2025-07-07 15:20:43 -04:00
jelveh 74a01a8752 Add reset results functionality to test UI
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
- Introduced a "Reset results" button to clear test container backgrounds and remove error messages.
- Implemented hover styles for the reset button to enhance user interaction.
- Ensured the reset functionality hides the progress panel and resets progress tracking.
2025-07-06 18:54:31 -07:00
jelveh 190f8352f0 Add performance tests for get and set methods in kv module
- Introduced two new tests: testGetPerformance and testSetPerformance.
- Each test measures the execution time of the respective method and asserts that it completes in under 100ms.
- Ensured correct value retrieval and performance metrics are logged for both tests.
2025-07-06 17:52:32 -07:00
jelveh 41cb7a06b7 Implement progress panel for test execution tracking
- Added a progress panel to display real-time test execution status, including current test, progress percentage, and elapsed time.
- Introduced styles for the progress panel and its components to enhance visibility and user experience.
- Implemented JavaScript functions to manage progress tracking, including starting and stopping timers, and updating the panel with test results.
- Ensured the progress panel is responsive to test selections and updates dynamically during test execution.
2025-07-06 15:42:02 -07:00
jelveh f23216b122 partially selected checkboxes should are reflected in the heading master checkbox 2025-07-06 15:20:12 -07:00
jelveh f06c13a427 Update test counter styles for improved visibility
- Adjusted the styles for the test counter to enhance its appearance.
- Removed inline styles from the test counter span for cleaner HTML structure.
- Ensured consistent font size and color for better readability.
2025-07-06 15:16:11 -07:00
jelveh a605ef42a1 Enhance test UI with navigation and counter display
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
- Added a fixed navigation bar for improved accessibility and layout.
- Introduced a test counter to display the number of selected tests.
- Updated styles for better alignment and spacing in the test UI.
- Ensured the counter updates dynamically based on checkbox selections.
2025-07-06 15:11:47 -07:00
jelveh b4143a6f39 Enhance test UI with master checkbox functionality
- Updated the test UI to include a master checkbox that controls the selection of individual test checkboxes.
- Implemented logic to update the master checkbox state based on the selection of individual checkboxes and group checkboxes.
- Adjusted the margin for h2 checkboxes for improved layout.
2025-07-06 14:59:51 -07:00
jelveh afa6333224 Merge branch 'main' of https://github.com/heyputer/puter 2025-07-06 14:55:03 -07:00
jelveh e58d6f0770 Enhance test UI with sticky headers and checkbox groups
- Added sticky positioning for h2 headers in the test section.
- Updated h2 elements to include checkboxes for grouping tests (File System, Key Value Store, AI).
- Implemented event listeners to synchronize individual test checkboxes with their respective group checkboxes.
- Simplified select/unselect all functionality to update group checkboxes accordingly.
2025-07-06 14:54:55 -07:00
KernelDeimos f6e6e8dff8 fix: shortcut KV permissions
All users have access to KV, however the permission system is used
because:
1. KV is a driver, and all drivers have access checks
2. The rate limit policy comes from the permission system

This change uses support for implicit permission shortcuts to prevent
any of the permission association tables from being read. It also
hard-codes the policy so that KV's rate-limit policy is not read from
the policy.json file.
2025-07-06 15:59:07 -04:00
KernelDeimos 3f0e7659f3 dev: add support to imply shortcut permissions
Permission implicators with the "shortcut" option will be checked prior
to concurrent permission scanning. If any of these permissions are
granted, then the concurrent phase of permission scanning will not be
invoked; instead, the user will only see the shortcut permission.

It may be useful to add an option in the future for a full permission
scan, which could be useful in such things as a user interface to help
with permission management.
2025-07-06 15:59:07 -04:00
KernelDeimos 3f483c5bf5 dev: add otel spans for permission scans and db 2025-07-06 15:59:07 -04:00
KernelDeimos fd956cb1cd fix: improvements to jaeger trace service
- migrate config location (legacy location still supported)
- allow passing additional otel options when creating spans
2025-07-06 15:59:07 -04:00
Neal Shah bddc872e00 feat: puter workers
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
* experimental Cloudflare Workers for Platforms support

* add support for the puter driver

* stop hardcoding api.puter.localhost

* support destroy from express route as well

* initial worker support

* xhrshim + fixes (incomplete)

* change order of readyState + load event

* remove some debug logs

* change worker/puterUtils into a cjs module

* Cloudflare workers eventtarget workaround

* worker preamble webpack

* edit worker readme to reflect reality

* allow a way to code in api endpoint instead of hardcoding it to api.puter.com

* move cloudflare eventtarget fix to puter-portable template

This is so it gets run before the rest of puter-js initializes

* remove express route for worker
2025-07-05 17:01:44 -04:00
jelveh 8fa8dd0987 Add tests for App Directory isolation 2025-07-05 12:24:45 -07:00
jelveh af9bf0980c Add puter.ai streaming test 2025-07-05 11:36:29 -07:00
jelveh a2d05af556 Add support for Uint8Array in puter.fs.write 2025-07-05 11:18:13 -07:00
jelveh b0a2590426 Remove redundant tests in puter.js 2025-07-05 10:53:14 -07:00
jelveh 779ee8d5d2 Add human-readable descriptions to Puter.js tests 2025-07-05 10:50:06 -07:00
jelveh 1fb1edd621 remove unused tests from GUI 2025-07-05 10:26:56 -07:00
jelveh 4ca7e852d8 fix toolbar showing scroll on disabling autohide 2025-07-05 09:41:00 -07:00
jelveh 7ccc704694 Use better font for the test UI
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
2025-07-04 19:14:18 -07:00
jelveh a02a228bf6 Add a 'test' button to each test in Puter.js's test suite 2025-07-04 19:12:06 -07:00
jelveh 6da8ebfe96 Fix the copy assertion rule in puter.js test suites 2025-07-04 19:05:04 -07:00
jelveh 9698761b2b AND MOOOAREEE AI tests 2025-07-04 19:01:16 -07:00
jelveh 3fdee779c7 MOAAAAREEE AI tests! 2025-07-04 18:43:10 -07:00
jelveh 478aed7bda Add basic tests for puter.ai 2025-07-04 18:20:31 -07:00
Nariman Jelveh 3eef18c578 Remove captcha from frotnend (#1335) 2025-07-04 16:31:42 -07:00
KernelDeimos f3c658c011 chore: sync package-lock.json 2025-07-04 18:30:00 -04:00
KernelDeimos 354b116b42 fix: make sharp optional 2025-07-04 18:29:29 -04:00
KernelDeimos 502204a7b7 test: update tests, migrate backend to vitest
Backend had tests written in mocha as well as a test written for jest
(created by an AI utility, wasn't compatible with mocha tests). The AI
generated test had merit so it was migrated to vitest along with all the
mocha tests, which supports conventions from both frameworks.

Vitest also has an excellent watcher cli.

The root repo package.json now runs unit tests in backend. Before it was
only running tests defined in the _test method of backend services.
2025-07-04 18:21:45 -04:00
Nariman Jelveh 87e15cac2d Update SECURITY.md to use the warning tag in the markdown
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
2025-07-04 06:51:48 -07:00
Xiaochen Cui ade213b88b fix: return proper error message when the model is not found (#1331)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
* fix: return proper error message when the model is not found

* use global source for the domain

Co-authored-by: Eric Dubé <eric.alex.dube@gmail.com>

---------

Co-authored-by: Eric Dubé <eric.alex.dube@gmail.com>

Closes #1326
2025-07-03 17:58:04 -04:00
KernelDeimos c7970fd1a8 fix: include base reserved words by default 2025-07-03 17:41:10 -04:00
jelveh b0b131f214 add expire mthod to puter.kv
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
2025-07-02 22:54:55 -07:00
jelveh 6df1d4d5f2 Fix puter.js test for incr and decr in KV 2025-07-02 22:31:25 -07:00
jelveh 2bad220602 Update KVStoreInterfaceService.js
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
2025-07-02 20:10:00 -07:00
jelveh 0947b90c87 Make puter.js tests print out error results 2025-07-02 20:06:25 -07:00
jelveh 37d09a63d4 Only support language and voice (ordered) in puter.js txt2speech 2025-07-02 18:08:54 -07:00
Nariman Jelveh aa3032da8e Add preliminary support for different voices (#1325) 2025-07-02 17:09:48 -07:00
jelveh 62e786faa6 Do not activate toolbar when desktop selectable is active 2025-07-02 16:14:18 -07:00
jelveh 7285a27be4 Fix toolbar autohide/hide timing
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
2025-07-01 22:42:50 -07:00
Nariman Jelveh 2103374854 Dynamic toolbar: allow users to customize toolbar sticky (#1330)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
* close #1329
2025-07-01 18:37:36 -07:00
Nariman Jelveh 485f9a6f14 Don't hide the toolbar on mobile and tablet (#1328)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
2025-06-30 17:18:56 -07:00