51 Commits

Author SHA1 Message Date
Daniel Salazar
797b87b004 cleanup: remove dead cloudwatch call (#2155) 2025-12-12 17:08:26 -08:00
Nariman Jelveh
ef9f240a45 Remove terminal phoenix emulator (#2141)
* Remove terminal and phoenix built-in apps and emulator

This commit removes the terminal and phoenix built-in apps from the backend, database migrations, and permissions. It also deletes the entire emulator and phoenix/terminal app source directories, assets, and related configuration files. References to these apps in the backend module loader and router are removed, and related SQL migrations are updated to reflect their removal.

* Remove emulator references from SelfHostedModule

* Remove emulator integration and related references

* Remove parsers and pty modules

* Update package-lock.json
2025-12-11 16:53:21 -08:00
Nariman Jelveh
7524933ca1 Remove backend-core-0 and inline validation helpers (#2138)
Deleted the src/backend-core-0 package and moved its validation helpers directly into src/backend/src/validation.js. Updated references in CoreModule.js and helpers.js to use the new local validation module. Adjusted ESLint configs to remove backend-core-0 references.
2025-12-11 13:22:32 -08:00
Daniel Salazar
34134a2e35 chore: add typedefs for puter.js (#2086) 2025-12-02 13:04:26 -08:00
Daniel Salazar
cce2c4ac27 fix: stricten undef checks (#2082) 2025-12-01 20:26:33 -08:00
Daniel Salazar
405e02cf9c test: claudeService (#2074) 2025-12-01 13:39:55 -08:00
Daniel Salazar
e8f00e1121 fix: typo in dbkvStore (#2066) 2025-11-29 13:18:37 -08:00
Daniel Salazar
dccfa8085e chore: some type and eslint fixes for tests (#2065) 2025-11-28 23:38:04 -08:00
Daniel Salazar
e2f1200ad5 test: add test infra to run vitest on all of backend wip (#2023) 2025-11-24 19:20:09 -08:00
Daniel Salazar
262b359633 fix: fallback models (#2005) 2025-11-21 20:09:19 -08:00
Daniel Salazar
11e057557d fix: eslint autofixable errors (#2002) 2025-11-21 13:22:19 -08:00
Daniel Salazar
3592c4bfe8 chore: ts lint stuff (#1934) 2025-11-06 15:26:40 -08:00
KernelDeimos
215bc9020b lint: configure eslint not operator spacing
The styleguide for Puter's backend expects spaces after top-level not
operators inside conditions. This commit adds an AI-generated eslint
plugin and, since it conflicts with the existing space-unary-ops plugin
from stylistic, also adds a wrapped version of space-unary-ops that
ignores top-level not operators so that this plugin will work as
expected.
2025-11-05 16:06:35 -05:00
Daniel Salazar
5ff8c7e040 feat: rawBody parser, user metadata column + other misc fixes (#1904) 2025-11-04 18:19:55 -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
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
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
Daniel Salazar
ff9932b2f3 fix: dbkv raw import (#1848) 2025-10-28 13:04:54 -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
Daniel Salazar
3229fe0b61 Revert "Revert: fs metering (#1790)" (#1795)
This reverts commit 4b14ef863c.
2025-10-21 11:07:05 -07:00
Daniel Salazar
4b14ef863c Revert: fs metering (#1790) 2025-10-20 21:58:44 -07:00
Daniel Salazar
0260a9cbce Revert "Revert "Revert "Revert "feat: alert when going over usage limits sign…"
This reverts commit f2265cca59.
2025-10-20 18:45:08 -07:00
Daniel Salazar
f2265cca59 Revert "Revert "Revert "feat: alert when going over usage limits significantl…" (#1787)
This reverts commit 0d0cdce1cf.
2025-10-20 16:51:31 -07:00
Daniel Salazar
0d0cdce1cf Revert "Revert "feat: alert when going over usage limits significantly + egre…" (#1786)
This reverts commit 54d73b1998.
2025-10-20 15:56:34 -07:00
Daniel Salazar
54d73b1998 Revert "feat: alert when going over usage limits significantly + egress meter…" (#1785)
This reverts commit 27f24118f3.
2025-10-20 15:25:52 -07:00
Daniel Salazar
27f24118f3 feat: alert when going over usage limits significantly + egress metering (#1782)
* feat: alert when going over usage limits significantly + meter egress/ingress

* fix: metering roundings
2025-10-20 13:54:21 -07:00
Daniel Salazar
e51d0c4600 feat: metering service allowence checks and subscription integration 🚀 (#1749)
* feat: metering allowence checks

* fix: bad math
2025-10-15 02:28:25 -07:00
Daniel Salazar
d9c64a9378 feat: manage permission for user to user and dev to app file sharing (#1567)
* perf: move user-user perm checks to flat kv entries

* feat: manage permission for user to user and dev to app file sharing

* fix typings cuz macos sucks

* fix: mac os typecase

* fix: chore macOs typecase

* fix: bad join of permissions

* feat: add check-permissions endpoint for checking an users perms

* Add 'manage' to permission lists in the Sharing dialog

* fix: manage being allowed through our ACL

---------

Co-authored-by: Nariman Jelveh <nj@puter.com>
2025-10-07 13:46:00 -07:00
KernelDeimos
36ddad0ecc lint: add config global to extensions 2025-10-01 16:58:46 -04:00
KernelDeimos
62e77a15a2 conf: add block in eslint.config.js for extensions 2025-09-26 15:27:59 -04:00
Daniel Salazar
3fc183297f revert: eslint config rules (#1625) 2025-09-26 10:52:00 -07:00
Daniel Salazar
d70d412115 feat: DAV Locks support + refactor of DAV method handler (#1486)
* feat: DAV Locks support + refactor of DAV method handler

* format: Restore old whitespace for CoreModule.js

* fix: options route registering after likecycle hooks

---------

Co-authored-by: Neal Shah <30693865+ProgrammerIn-wonderland@users.noreply.github.com>
2025-09-26 11:00:29 -04:00
KernelDeimos
fe1d78d5bf conf(eslint): fix backend rule, -@stylistic/quotes
This commit fixes the block that's meant to match backend files. There
was an error in the arguments for '@stylistic/indent' which was
effectively disabling the entire block. In vscode, it is very unclear
that this is happening, so I had to manually run this command:

npx eslint "src/backend/**/*.js" --debug

This commit also disables @stylistic/quotes; I disagree with this
rule for several reasons:
1. Sometimes the appropriate quote depends on the contents:
   i.e. '""""' + "''''" is cleaner than '""""\'\'\'\''.
2. If you argue that mixing quotes between concatenated strings
   (like the previous example) is a bad idea, then I can further
   state that this rule forces me to mix quotes:
   `we use a ${templateString}` + "but can't do it here"
2025-09-24 16:58:28 -04:00
Daniel Salazar
f8ea790824 feat: add expiry support to DBKV, and eslint config 2025-09-10 11:33:21 -07:00
KernelDeimos
947dca96a2 chore: remove eslint.config.js
ESLint cannot support our preferred code style for backend without
writing custom plugins. On frontend, we already decided ESLint wasn't a
good fit several months ago. This commit removes the eslint config to
avoid other developer's editors making unwanted whitespace changes.

In backend, we use spaces within control structure parens. This really
does make the code easier to read. In the future, maybe we'll write our
own linter.
2025-03-16 00:52:56 -04:00
Nariman Jelveh
40ea2a3f02 Revert "Created test cases for issue #878 " 2024-12-08 11:31:47 -08:00
e5z26
2ca1f71595 removed jsdom in test file
removed because wasn't being used
2024-12-07 19:09:22 -05:00
4nshuman
857c3b88b3 added fflate to lint check 2024-10-06 21:27:03 +05:30
4nshuman
822d850513 purge JSZip 2024-10-06 21:25:46 +05:30
KernelDeimos
2a91edb965 chore: add Buffer to eslint 2024-07-07 17:12:55 -04:00
KernelDeimos
edc5743a61 chore: add incubator/ to eslint ignores 2024-07-07 17:12:55 -04:00
KernelDeimos
7c227ad967 chore: update eslint config 2024-07-07 17:12:55 -04:00
Sam Atkins
00765d0fce chore: Add mods/ directory to eslint 2024-06-24 19:15:02 -04:00
KernelDeimos
cb050b079a chore: update eslint config 2024-06-16 16:41:28 -04:00
KernelDeimos
d5cbc24cfe chore: update lint config 2024-06-15 18:59:32 -04:00
KernelDeimos
e77c5f8bbc chore: update lint config 2024-06-14 23:22:23 -04:00
KernelDeimos
2cc1c5ac6c chore: fix linter errors 2024-06-14 22:01:31 -04:00
KernelDeimos
b85cb50ea2 tweak: update eslint config 2024-06-09 13:14:48 -04:00
KernelDeimos
d047abf31c Update eslint 2024-05-28 19:06:00 -04:00