Commit Graph

291 Commits

Author SHA1 Message Date
Sam Atkins
0377015190 Implement git config
This is also basic:

git config key             # To read a value
git config key value       # To set a value
git config --unset key     # To delete a value

As noted, --list is not possible to implement currently.
2024-05-22 16:00:42 +01:00
Sam Atkins
98c33fb3cc Implement git log
This is quite barebones for now.

Commit formatting is done in a separate file, as this is used by other
git commands, such as `show`.
2024-05-22 16:00:42 +01:00
Sam Atkins
b4e2ba4544 Implement git commit 2024-05-22 16:00:42 +01:00
Sam Atkins
32c172d145 Implement git add 2024-05-22 16:00:42 +01:00
Sam Atkins
5a308a2a53 Implement git status 2024-05-22 16:00:42 +01:00
Sam Atkins
71873a9c27 Add a helper function for finding the git repo 2024-05-22 16:00:42 +01:00
Sam Atkins
5e3db870ec Implement git init 2024-05-22 16:00:42 +01:00
Sam Atkins
85b7587c42 Implement git help, git version, and subcommand infrastructure
Each subcommand is its own file, modeled after Phoenix's coreutils.
2024-05-22 16:00:42 +01:00
Sam Atkins
b75c42b39f Implement Puter filesystem wrapper for git app 2024-05-22 08:56:50 +01: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
Sam Atkins
8f1c4fcda9 feat(Phoenix): Pass command line arguments and ENV when launching apps 2024-05-22 08:56:50 +01:00
Sam Atkins
bf33fd752d Remove outdated FIXMEs about consuming extra stdin data 2024-05-22 08:56:50 +01:00
Sam Atkins
c08c8bd073 Expose POSIX error name as PosixError.code
This matches the behaviour of Node.JS's errors, and some libraries
expect it.
2024-05-22 08:56:50 +01:00
Sam Atkins
8098dc9dcc Move error-conversion functions into PosixError
Specifically, this makes the Puter->PosixError conversion available to
the in-progress git client.
2024-05-22 08:56:50 +01:00
Sam Atkins
e43b21387c Move PosixError into puter-js-common
The in-progress git client also needs to use this. puter-js-common uses
commonjs modules, so it had to be adjusted for that.
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
Karan Parmar
cc45a08388 updated the github links displayed in the Terminal welcome message 2024-05-19 11:52:26 +01: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
639e40d355 Phoenix shell deployment update 2024-05-17 13:26:44 -04:00
KernelDeimos
f964f06f3f Fix 8688h4bwg 2024-05-17 13:05:13 -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
Eric Dubé
f54657a569
Merge pull request #402 from HeyPuter/eric/email-lock
Add locking to save_account
2024-05-15 18:49:03 -04:00
Eric Dubé
1aa27084d0
Merge pull request #396 from AtkinsSJ/xterm-fix
fix(Terminal): Accept input from Chrome on Android
2024-05-15 18:24:02 -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
Sam Atkins
4ef3e53de3 fix(Terminal): Accept input from Chrome on Android
Xterm.js produces two kinds of events: onKey and onData. On a desktop,
these are effectively the same, but on mobile, IME inputs produce data
but not key presses. By listening to onData instead of onKey, we get
that input.

With some experimentation, I also found that we don't need the code to
handle enter, home, end, or Ctrl-Shift-V. All of these function as
expected without that code, so we can remove it and simplify this
further. :^)
2024-05-14 16:10:30 +01:00
Sam Atkins
2656b47640 chore: Update xterm
From version 5.4.0 onwards, xterm scopes its package names as
`@xterm/foo` instead of just `xterm-foo`.

We currently have a copy of xterm.css which we use instead of directly
including the one from the `@xterm/xterm` package, so I've updated the
contents of that too.
2024-05-14 16:10:30 +01:00
Sam Atkins
fafbc292ca Remove xterm dependency from Phoenix
This is used by Terminal, not Phoenix.
2024-05-14 16:10:30 +01: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
KernelDeimos
1493cacb69 Add rate-limiting to new password change endpoint 2024-05-13 16:00:07 -04:00