KernelDeimos
e7c0b8320a
feat: add querystring-informed errors
2024-06-19 00:51:16 -04:00
KernelDeimos
616f28d1d4
tweak: change default static hosting domain
2024-06-19 00:51:16 -04:00
KernelDeimos
56e527d3ee
db: add protected flag to app and subdomain
2024-06-19 00:51:16 -04:00
KernelDeimos
360ad2e252
refactor: move FilesystemService to BaseService
2024-06-19 00:51:16 -04:00
KernelDeimos
3e98f1a8a8
tweak: acl update
2024-06-19 00:10:40 -04:00
KernelDeimos
cd65217f5c
fix: switch share notif username to sender
2024-06-18 23:43:10 -04:00
KernelDeimos
d96f924cad
fix: type error in puter-site
2024-06-18 13:03:40 -04:00
KernelDeimos
7eabb43bd4
fix: i forgot to test reloading
2024-06-18 05:09:29 -04:00
KernelDeimos
de5886698e
fix: fix permission cascade properly this time
2024-06-18 03:56:38 -04:00
KernelDeimos
10cbf08233
fix: peers array assumption
2024-06-18 02:44:20 -04:00
KernelDeimos
b126b67094
fix: fix that fix
2024-06-18 01:40:27 -04:00
KernelDeimos
e63ab3a67f
fix: add permission implicator for file modes
2024-06-18 01:39:13 -04:00
KernelDeimos
34d4d606c3
tweak: add more information to errors
2024-06-17 22:45:05 -04:00
KernelDeimos
831c29f23b
tweak: report permission for file shares
2024-06-17 22:13:06 -04:00
KernelDeimos
6cdbc92ae3
tweak: add dry-run and tweak response for /share
2024-06-17 18:34:45 -04:00
KernelDeimos
846fdc20d4
feat: multi-recipient multi-file share endpoint
2024-06-17 18:34:45 -04:00
KernelDeimos
f7a054956b
fix: add app_uid param to kv interface
2024-06-17 17:33:37 -04:00
KernelDeimos
35cbec43e6
tweak: add full fsentry to share notification
2024-06-16 22:00:15 -04:00
KernelDeimos
31d4eb090e
feat: implicit access from apps to shared appdata dirs
2024-06-16 21:09:04 -04:00
KernelDeimos
a2a10b94be
fix: do not delegate to select on read like ever that is really dumb
2024-06-16 20:57:32 -04:00
KernelDeimos
9b39309e18
fix: database migration
2024-06-16 18:59:45 -04:00
KernelDeimos
f7216b9567
feat: add app metadata
2024-06-16 16:41:28 -04:00
KernelDeimos
632c536616
fix: correct shown flag behavior
2024-06-16 02:19:37 -04:00
KernelDeimos
8c49ba2553
feat: add share list to stat
2024-06-16 01:54:25 -04:00
KernelDeimos
b648817f27
fix: incorrect error from suggested_apps
2024-06-15 23:21:54 -04:00
KernelDeimos
2f6c428a40
feat: send notification when file gets shared
2024-06-15 22:39:47 -04:00
KernelDeimos
f9d2a87d25
chore: choose end-user-facing name for fs nodes
2024-06-15 22:39:47 -04:00
KernelDeimos
0f05a41ea8
tweak: add improvements to share/file-by-username
2024-06-15 22:39:47 -04:00
KernelDeimos
9ac8535832
Add support for optional auth
2024-06-15 22:39:47 -04:00
KernelDeimos
f2c6e01296
fix: remove legacy permission check in stat
2024-06-15 22:39:47 -04:00
KernelDeimos
d128ceed6f
fix: handle subpaths under another user
2024-06-15 22:39:47 -04:00
KernelDeimos
19a5eb0076
feat: add readdir delegate for sharing user homedirs
2024-06-15 22:39:47 -04:00
KernelDeimos
8424d44609
feat: add readdir delegate for shares in a user directory
2024-06-15 22:39:47 -04:00
KernelDeimos
1166e69c76
fix: remove last component when share URL is file
2024-06-15 22:39:47 -04:00
KernelDeimos
079e25a9fe
feat: add /show urls
2024-06-15 22:39:47 -04:00
KernelDeimos
5d214c7b52
feat: add /share/file-by-username endpoint
2024-06-15 22:39:47 -04:00
KernelDeimos
d5d987ead6
chore: fix typo because acknowledge is not spelled awknowledge in any variant of the english language
2024-06-15 19:25:09 -04:00
KernelDeimos
20542b0565
tweak: update notification format
2024-06-15 18:59:32 -04:00
KernelDeimos
ef8f4de962
tweak: use timestamps to track notif awks
2024-06-15 18:59:32 -04:00
KernelDeimos
f06cb30447
tweak: set limit to 200 for notification select
2024-06-15 18:59:32 -04:00
KernelDeimos
c5334b0e19
feat: introduce notification selection via driver
2024-06-15 18:59:32 -04:00
KernelDeimos
0101f425d4
feat: add mark-read endpoint
2024-06-15 18:59:32 -04:00
KernelDeimos
02fc4d86b7
feat: re-send unreads on login
2024-06-15 18:59:32 -04:00
KernelDeimos
a1e6887bf9
feat: add service for notifications
2024-06-15 18:59:32 -04:00
KernelDeimos
a623c94728
tweak: set app/subdomain query limit very high
2024-06-15 16:41:51 -04:00
KernelDeimos
ba58c3fbeb
Add a debug logger for backend
2024-06-15 16:02:07 -04:00
KernelDeimos
502c9a36c7
chore: cleanup console log in BroadcastService
2024-06-15 13:53:53 -04:00
KernelDeimos
1207a158bd
feat: add cross-server event broadcasting
2024-06-14 23:17:58 -04:00
KernelDeimos
2cc1c5ac6c
chore: fix linter errors
2024-06-14 22:01:31 -04:00
KernelDeimos
8e0f150fab
Fix ESM-interop issue
2024-06-11 13:57:03 -04:00
KernelDeimos
684b0dc059
Support configurable mod locations
2024-06-10 03:02:17 -04:00
KernelDeimos
8d22276f13
fix(backend): remove a bad thing that really doesn't work
2024-06-09 14:21:07 -04:00
KernelDeimos
eb05fbd2dc
feat: add external mod loading
...
A package called "useapi" is introduced to provide a dynamic import
system. This import system, rather than relying on the state of the
filesystem, is populated as modules are installed into Puter's kernel.
The "useapi" package is then used to add support for loading external
mod directories as Puter kernel modules, making it possible to mod puter
without any tooling.
2024-06-09 13:14:48 -04:00
Eric Dubé
fa7bec3854
refactor: flatten the monorepo
2024-06-08 01:07:42 -04:00
KernelDeimos
f88c4a5c9c
doc(backend): document modules, services, and service-scripts
2024-06-06 20:10:23 -04:00
KernelDeimos
30550fcddd
feat(backend): add script service
...
The script service allows other services to register re-runnable tasks
called "scripts". These can be invoked via "script:run" in the console.
2024-06-05 16:17:03 -04:00
KernelDeimos
0b0707363c
Fix potential race condition
2024-06-04 16:28:53 -04:00
KernelDeimos
665b2d4e4e
refactor(backend): de-couple driver registration from DriverService
2024-06-01 18:20:27 -04:00
KernelDeimos
2d8e6240c6
feat(backend): add tip of day
2024-05-31 20:36:14 -04:00
KernelDeimos
4bdad75766
feat(backend): improve logger and reduce logs
2024-05-31 19:40:13 -04:00
KernelDeimos
522664d415
feat(backend): allow services to provide user properties
2024-05-31 18:10:11 -04:00
KernelDeimos
fccabf1bc0
feat(backend): allow services to provide whoami values
2024-05-30 17:11:06 -04:00
Eric Dubé
0672562c8a
Merge pull request #442 from HeyPuter/eric/extensibility
...
class registry for service scripts
2024-05-28 20:10:03 -04:00
KernelDeimos
e050506a05
Add class registry (second pass)
...
ExportService gets removed and instead a global class registry is added.
The `init.js` file is split into `init_sync.js` and `init_async.js`
so that synchronous code that isn't dependent on imports is guarenteed
to run before initgui.js. The globalThis scope and service-script API
now expose `def`, a function for registering class definitions, and
`use`, a function for obtaining registered classes.
2024-05-28 19:06:00 -04:00
KernelDeimos
cd574c87ef
Fix the previous fix
2024-05-28 16:10:43 -04:00
KernelDeimos
4e3a24e609
fix: check subdomain earlier for /apps
2024-05-28 15:51:22 -04:00
Eric Dubé
c495ccff65
Merge pull request #408 from AtkinsSJ/git-client
...
Add a git client
2024-05-28 12:10:01 -04:00
KernelDeimos
51bac4486f
Add class registry (first pass)
...
In the first pass I add a `register` method and update `defineComponent`
so it calls `register` as well. This made it possible to create a
proof-of-concept for registered classes. Additionally ExportService was
added to expose registered classes to service scripts. This first pass
works, but it would be better if all types of classes (components or
otherwise) were registered via the same method.
2024-05-27 21:16:50 -04:00
KernelDeimos
c0cb1cd2b8
refactor: add GetUserService
2024-05-26 00:31:51 -04:00
KernelDeimos
cbfad2ef7a
refactor(gui): add service scripts
2024-05-24 19:29:07 -04:00
KernelDeimos
a1cfe7aef2
Allow services to register additional js files for gui
2024-05-23 18:41:34 -04:00
KernelDeimos
5042d49935
Simplify debugging runtime config object changes
2024-05-23 18:40:41 -04:00
KernelDeimos
c89b50bf31
Refactor gui loading
2024-05-23 18:13:57 -04:00
Sam Atkins
0d2ffdb380
Add boilerplate for empty git app
...
It does nothing but output a message to the console.
2024-05-22 08:56:50 +01:00
KernelDeimos
1f6a2093fb
Disallow negative size values
2024-05-21 18:46:34 -04:00
KernelDeimos
90463a0732
Add support for webhook endpoints
2024-05-21 17:25:28 -04:00
KernelDeimos
8cca067991
Fix 8688ha84v
2024-05-17 22:55:40 -04:00
Eric Dubé
80b763c47c
Merge pull request #407 from AtkinsSJ/clean-suggested-apps
...
fix: Remove null or duplicate app entries from suggest_app_for_fsentry()
2024-05-17 15:46:06 -04:00
KernelDeimos
e4543c5f35
Fix 8688ggu00 (2)
2024-05-17 12:32:16 -04:00
Sam Atkins
6900233c5a
fix: Remove null or duplicate app entries from suggest_app_for_fsentry()
2024-05-17 15:34:36 +01:00
KernelDeimos
c55b1e4680
Remove verification requirement on contact us form
2024-05-16 19:08:51 -04:00
KernelDeimos
e3f57ee20e
Add path builder
2024-05-16 19:02:58 -04:00
KernelDeimos
5031cea040
Update _default.js for deployment purposes
2024-05-16 18:55:59 -04:00
KernelDeimos
49b257ecff
fix(security): Move token for socket.io to request body
...
Currently this commit breaks websocket events and needs to
be updated.
2024-05-16 17:58:44 -04:00
KernelDeimos
f042b095f1
Fix 8688gxkuj
2024-05-16 17:25:41 -04:00
KernelDeimos
691c8f1436
Add locking to save_account
2024-05-15 18:22:54 -04:00
Eric Dubé
b72e5b7e02
Merge pull request #401 from HeyPuter/eric/service-patches
...
Allow patching services
2024-05-15 15:47:14 -04:00
KernelDeimos
c70e378973
Add error id for expired auth tokens
2024-05-15 15:42:00 -04:00
KernelDeimos
21444daefb
Add jsdoc comments to registerService and patchService
2024-05-15 15:41:37 -04:00
KernelDeimos
2e0d7361cb
Add method to patch services
2024-05-15 15:32:18 -04:00
Eric Dubé
6e0b6d84d2
Merge pull request #400 from AtkinsSJ/fix-apierror-includes
...
fix: Correct APIError imports
2024-05-15 13:51:04 -04:00
Sam Atkins
062e23b5c9
fix: Correct APIError imports
...
APIError is the only thing exported from its file, so we must not wrap
it in {}.
2024-05-15 17:47:15 +01:00
Sam Atkins
a8160a8cdc
fix: Add missing file extension to 0009_app-prefix-fix.sql in DB init
2024-05-15 10:18:28 +01:00
KernelDeimos
0b093dd57e
Revoke other sessions when password is changed
2024-05-14 19:40:57 -04:00
KernelDeimos
923d5878c3
Prevent enable of 2FA without configure
2024-05-14 17:33:14 -04:00
KernelDeimos
800aef1942
Implement anti-CSRF for logout
2024-05-13 20:40:27 -04:00
KernelDeimos
da7f73baa6
Add AntiCSRFService
2024-05-13 19:08:51 -04:00
KernelDeimos
afb9d866b5
fix: Fix phoenix app prefix and TokenService test
2024-05-13 18:17:39 -04:00
KernelDeimos
c2f1694107
Require password entry to disable 2FA
2024-05-13 16:00:07 -04:00
KernelDeimos
23215bd6f7
Move change_email/start to password-protected endpoint
2024-05-13 16:00:07 -04:00