Sam Atkins
955154468f
feat(git): Make git add
work for deleted files
...
Previously, this:
```sh
> rm deleted.txt
> git add deleted.txt
```
...would unhelpfully complain that deleted.txt cannot be found. Now, it
records the deleted file to the index, just as canonical git does.
2024-06-28 14:19:23 -04:00
Sam Atkins
057b3acf00
feat(git): Allow checking out a commit instead of a branch
2024-06-28 14:19:23 -04:00
Sam Atkins
2c9b1a3ffc
feat(git): Handle detached HEAD in git status
and git branch --list
2024-06-28 14:19:23 -04:00
Sam Atkins
d6dd1a5bb0
feat(git): Add --color and --no-color options
...
These allow the user to force color on or off. The chalk library is used
for the output, because it's already used elsewhere in Puter and seems
like a good choice.
Ideally, the default will be based on whether stdout is a tty, but Puter
doesn't yet have that concept, so we just default to color.
2024-06-28 14:19:23 -04:00
Sam Atkins
364d580ff8
feat(git): Add authentication to clone, fetch, and pull.
2024-06-28 14:19:23 -04:00
Sam Atkins
8c70229a18
feat(git): Implement git push
...
For now, the authentication is by --username and --password options,
which obviously is not good because the password is visible. But doing
it in a nicer way requires features that Phoenix or Puter are currently
missing.
2024-06-28 14:19:23 -04:00
Sam Atkins
3cad1ec436
feat(git): Add diff display to show
and log
subcommands
2024-06-28 14:19:23 -04:00
Sam Atkins
c436460b8c
tweak(git): Move proxy url definition into config files
...
We'll likely want to host our own proxy. Self-hosters likewise may have
their own, but it's convenient to use isomorphic-git's for development.
2024-06-28 14:19:23 -04:00
Sam Atkins
a68194090e
tweak(git): Check for 'ENOENT' instead of ErrorCodes.ENOENT
...
This is functionally the same, but removes one place where we
unnecessarily relied on Puter code.
2024-06-28 14:19:23 -04:00
Sam Atkins
c0562d78a2
docs(git): Document git client
2024-06-28 14:19:23 -04:00
Sam Atkins
622b6a9b92
feat(git): Implement git diff
2024-06-28 14:19:23 -04:00
Sam Atkins
49c2f16351
feat(git): Add start-revision and file arguments to git log
2024-06-28 14:19:23 -04:00
Sam Atkins
eb2b6a08b0
feat(git): Implement git pull
2024-06-28 14:19:23 -04:00
Sam Atkins
1822ace296
refactor(git): Use dir/gitdir variable names like isogit does
...
I prefer the other names, but being able to type `{ dir, gitdir }` is
shorter and a lot less error-prone than `{ dir: repository_dir, gitdir:
git_dir }`.
2024-06-28 14:19:23 -04:00
Sam Atkins
35e4453930
feat(git): Implement git checkout
...
For now this only lets you check out branches, not files.
2024-06-28 14:19:23 -04:00
Sam Atkins
98a4b9ede3
feat(git): Implement git fetch
...
Sporadically we hang while trying to fetch. I haven't been able to
identify why but it seems like a race condition in isomorphic-git
somewhere.
2024-06-28 14:19:23 -04:00
Sam Atkins
c86e4dfdce
Remove unused imports from git subcommands
2024-06-28 14:19:23 -04:00
Sam Atkins
ad4f13255d
feat(git): Implement git branch
...
Create, delete, copy, rename, and list branches.
2024-06-28 14:19:23 -04:00
Sam Atkins
43ce0d5b45
feat(git): Implement git remote
2024-06-28 14:19:23 -04:00
Sam Atkins
95c8235a4a
feat(git): Implement git clone
2024-06-28 14:19:23 -04:00
Sam Atkins
fa81dca950
feat(backend): Add tab completion to server console command arguments
...
A command can optionally define a `completer(args)` function. It takes
an array of strings for the current arguments, and returns an array of
completion results for the last argument.
Includes a few completers:
- alarm:info/clear/inspect completes the first argument as an alarm id
or short_id
- script:run completes the first argument as a script name
- params:get/set completes the first argument as a parameter name
2024-06-28 11:18:29 -04:00
Sam Atkins
e1e76c6be7
feat(backend): Add tab-completion to server console command names
2024-06-28 11:18:29 -04:00
KernelDeimos
ecb997885c
fix: bug introduced when refactoring /share to Sequence
2024-06-27 18:27:20 -04:00
KernelDeimos
c374b0cbca
feat: add group permission endpoints
2024-06-27 18:27:20 -04:00
KernelDeimos
4216346384
feat: add group management endpoints
2024-06-27 18:27:20 -04:00
KernelDeimos
00149402e0
feat: add user-group permission check
2024-06-27 18:27:20 -04:00
KernelDeimos
b817a78efa
sql: group permissions table
2024-06-27 18:27:20 -04:00
KernelDeimos
0ddb13e8ee
sql: group table
2024-06-27 18:27:20 -04:00
KernelDeimos
e132a203d1
refactor: move check-user-permission to Sequence
2024-06-27 18:27:20 -04:00
KernelDeimos
b78c83a4ab
refactor: share endpoint
2024-06-25 16:59:50 -04:00
KernelDeimos
5551326c98
doc: add documentation for app shares
2024-06-24 20:13:40 -04:00
KernelDeimos
9033f6f8c7
fix: update email share object
2024-06-24 19:12:21 -04:00
KernelDeimos
9751fd92a5
feat: add appdata permission (if applicable) on app share
2024-06-24 19:12:21 -04:00
KernelDeimos
13e2f72c9f
feat: add subdomain permission (if applicable) on app share
2024-06-24 19:12:21 -04:00
KernelDeimos
0cf90ee39a
fix: fix issues with apps in /share endpoint
2024-06-24 19:12:21 -04:00
Sam Atkins
46eb4ed2b9
fix: Throw an error when readdir is called on a non-directory
2024-06-24 19:08:56 -04:00
KernelDeimos
a136ee5edd
fix: oops
2024-06-24 14:05:08 -04:00
KernelDeimos
15465bfc50
fix: improve console experience on mac
2024-06-24 14:01:00 -04:00
KernelDeimos
c79f500364
tweak: improve dev console
2024-06-24 13:53:00 -04:00
KernelDeimos
742f625309
feat: add /sharelink/request endpoint
2024-06-24 01:11:40 -04:00
KernelDeimos
a72ec9799a
fix: readdir on file
2024-06-22 19:10:25 -04:00
KernelDeimos
301ffaf61d
feat: add endpoints for share tokens
2024-06-20 22:15:57 -04:00
KernelDeimos
db5990a989
feat: add share service and share-by-email to /share
2024-06-20 22:15:57 -04:00
KernelDeimos
fc4ae19d99
chore: cleanup share.js
2024-06-20 22:15:57 -04:00
KernelDeimos
dd5fde5130
feat: update share endpoint to support more things
2024-06-20 12:58:04 -04:00
Nariman Jelveh
1500f84d46
close #483
2024-06-19 22:30:42 -07:00
KernelDeimos
82f86ee4ab
doc(backend): protected apps; function and permissions
2024-06-20 00:43:52 -04:00
KernelDeimos
16c4907be5
feat: add permission rewriter for app by name
2024-06-20 00:32:12 -04:00
KernelDeimos
3ae0081b41
tweak: update this too to avoid confusion
2024-06-20 00:01:22 -04:00
KernelDeimos
f2f3d6ff46
feat: add protected apps
2024-06-19 23:44:42 -04:00